Fork 0
yaspin/Makefile
Daniel Baumann ca20363ae6
Adding upstream version 3.4.0.
Signed-off-by: Daniel Baumann <daniel@debian.org>
2026-07-03 18:05:20 +02:00

91 lines
2.4 KiB
Makefile

OK_COLOR := $(shell tput -Txterm setaf 2)
NO_COLOR := $(shell tput -Txterm sgr0)
name='yaspin'
# Use $$ if running awk inside make
# https://lists.freebsd.org/pipermail/freebsd-questions/2012-September/244810.html
version := $(shell poetry version | awk '{ print $$2 }')
pypi_usr := $(shell grep username ~/.pypirc | awk -F"= " '{ print $$2 }')
pypi_pwd := $(shell grep password ~/.pypirc | awk -F"= " '{ print $$2 }')
.PHONY: lint
lint:
@poetry run ruff check --fix ./$(name) ./tests ./examples
.PHONY: check-lint
check-lint:
@poetry run ruff check --diff ./$(name) ./tests ./examples
.PHONY: fmt
fmt:
@poetry run ruff format ./$(name) ./tests ./examples
.PHONY: check-fmt
check-fmt:
@poetry run ruff format --check ./$(name) ./tests ./examples
.PHONY: spellcheck
spellcheck:
@cspell -c .cspell.json $(name)/*.py tests/*.py examples/*.py README.md HISTORY.rst pyproject.toml Makefile
.PHONY: clean
clean:
@echo "$(OK_COLOR)==> Cleaning up files that are already in .gitignore...$(NO_COLOR)"
@for pattern in `cat .gitignore`; do find . -name "*/$$pattern" -delete; done
.PHONY: clean-pyc
clean-pyc:
@echo "$(OK_COLOR)==> Cleaning bytecode ...$(NO_COLOR)"
@find . -type d -name '__pycache__' -exec rm -rf {} +
@find . -name '*.pyc' -exec rm -f {} +
@find . -name '*.pyo' -exec rm -f {} +
@find . -name '*~' -exec rm -f {} +
.PHONY: test
test: clean-pyc
@echo "$(OK_COLOR)==> Runnings tests ...$(NO_COLOR)"
@poetry run py.test -n auto -v
.PHONY: coverage
coverage: clean-pyc
@echo "$(OK_COLOR)==> Calculating coverage...$(NO_COLOR)"
@poetry run py.test --cov-report=term --cov-report=html --cov-report=xml --cov $(name) tests/
@echo "open file://`pwd`/htmlcov/index.html"
.PHONY: rm-build
rm-build:
@rm -rf build dist .egg $(name).egg-info
.PHONY: build
build: rm-build
@echo "$(OK_COLOR)==> Building...$(NO_COLOR)"
@poetry build
.PHONY: publish
publish: build
@echo "$(OK_COLOR)==> Publishing...$(NO_COLOR)"
@poetry publish -u $(pypi_usr) -p $(pypi_pwd)
.PHONY: tag
tag:
@echo "$(OK_COLOR)==> Creating tag $(version) ...$(NO_COLOR)"
@git tag -a "v$(version)" -m "Version $(version)"
@echo "$(OK_COLOR)==> Pushing tag $(version) to origin ...$(NO_COLOR)"
@git push origin "v$(version)"
.PHONY: bump
bump:
@poetry version patch
.PHONY: bump-minor
bump-minor:
@poetry version minor
.PHONY: semgrep
semgrep:
poetry run semgrep --error --config "p/secrets" --config "p/bandit" --config "p/secrets" .
.PHONY: mypy
mypy:
@poetry run mypy $(name)/