1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
.DEFAULT_GOAL := help
.PHONY: help
help:
@fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
.PHONY: install
install: ## Install dependencies
flit install --deps develop --symlink
.PHONY: lint
lint: ## Run code linters
ruff format --check ninja tests
ruff check ninja tests
mypy ninja
.PHONY: fmt format
fmt format: ## Run code formatters
ruff format ninja tests
ruff check --fix ninja tests
.PHONY: test
test: ## Run tests
pytest .
.PHONY: test-cov
test-cov: ## Run tests with coverage
pytest --cov=ninja --cov-report term-missing tests
.PHONY: docs
docs: ## Serve documentation locally
pip install -r docs/requirements.txt
cd docs && mkdocs serve -a localhost:8090
|