-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
38 lines (31 loc) · 868 Bytes
/
Copy pathMakefile
File metadata and controls
38 lines (31 loc) · 868 Bytes
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
34
35
36
37
38
.PHONY: setup lint test precommit clean check deps
setup:
@echo "🚀 Setting up development environment"
@uv sync
test: # tests and coverage
@echo "🚀 Running tests"
@uv run pytest --cov --cov-config=pyproject.toml --cov-report=html tests
precommit: # run pre-commit hooks
@echo "🚀 Running pre-commit hooks"
@uv run pre-commit run -a
check: # run code quality tools
@echo "🚀 Checking code quality"
@uv lock --locked
@uv run mypy .
@uv run ruff check .
@uv run deptry .
@uv run isort .
clean: # clean up
@echo "🚀 Cleaning up"
rm -rf .pytest_cache .mypy_cache
rm -rf .ruff_cache .ruff-cache .ruff-history .ruff-temp
rm -rf .coverage .coverage.*
rm -rf htmlcov
@uv clean
build: # build package
@echo "🚀 Building package"
@uv build
@uvx twine check dist/*
publish: # publish package
@echo "🚀 Publishing package"
@uv publish