-
Notifications
You must be signed in to change notification settings - Fork 13
Expand file tree
/
Copy pathMakefile
More file actions
41 lines (30 loc) · 948 Bytes
/
Makefile
File metadata and controls
41 lines (30 loc) · 948 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
39
40
41
SHELL := env PYTHON_VERSION=3.12 /bin/bash
.SILENT: install devinstall tools test run lint format precommit precommit-run
PYTHON_VERSION ?= 3.12
setup:
curl -LsSf https://astral.sh/uv/install.sh | sh
install:
uv python pin $(PYTHON_VERSION)
uv sync --no-dev
devinstall:
uv python pin $(PYTHON_VERSION)
uv sync --all-extras --dev
@echo "Tip: run 'make precommit' to enable automatic linting on commit"
test:
uv run pytest tests/ --ignore=tests/integration
run:
uv run python main.py
lint:
uv run ruff check -q
format:
uv run ruff format
# Developer tools:
# make precommit → installs git pre-commit hooks (one-time, per dev)
# make precommit-run → runs all pre-commit hooks on the entire repo
# These are optional but recommended for contributors.
precommit:
uv run pre-commit install
@echo "pre-commit hooks installed."
precommit-run:
uv run pre-commit run --all-files
all: devinstall tools lint format test