venv_compile:
	uv pip compile \
		-p 3.12 \
		--generate-hashes \
		-f deps/whl \
		requirements.in > \
		requirements.txt

venv:
	uv venv -p 3.12 .venv
	uv pip install \
		-p .venv/bin/python3 \
		-f deps/whl \
		-r requirements.txt

PYRIGHT_CMD ?= --threads 3

pyright:
	.venv/bin/python3 \
		-m pyright \
		--pythonpath .venv/bin/python3 \
		-p pyproject.toml \
		$(PYRIGHT_CMD) \
		.

RUFF_CMD ?= format
ruff:
	.venv/bin/python3 -m ruff --config  pyproject.toml $(RUFF_CMD) .
