SRC ?= nextcloud_tasks_api
VENV ?= venv
ACTIVATE = $(VENV)/bin/activate
.PHONY: deps
deps: $(VENV)/.requirements.txt
.PHONY: dev-deps
dev-deps: $(VENV)/.requirements-dev.txt
$(ACTIVATE):
python3 -m venv $(VENV)
. $(ACTIVATE) ; pip install setuptools wheel
@touch $(@)
$(VENV)/.%: % $(ACTIVATE)
. $(ACTIVATE) ; pip install -r $(patsubst .%,%,$(notdir $(@)))
@touch $(@)
.PHONY: check
check: dev-deps
. $(ACTIVATE) ; mypy --ignore-missing-imports $(SRC)
. $(ACTIVATE) ; flake8 --max-line-length 120 $(SRC)
.PHONY: install
install:
pip install .[lxml]
.PHONY: uninstall
uninstall:
pip uninstall $(subst _,-,$(SRC))
.PHONY: clean
clean:
rm -rf $(VENV) .mypy_cache build $(SRC).egg-info
find . -ignore_readdir_race -type d -name '__pycache__' -exec rm -rf {} \; >/dev/null 2>&1 || true