ENV_PATH ?= .venv PYTHON_PATH = $(ENV_PATH)/bin/python3 PYTHON_VERSION ?= 3.12.9 UV_ARGS ?= --offline DOCKER ?= podman COMPOSE ?= podman compose venv_extract_requirements: $(ENV_PATH)/bin/tomlq \ -r '.project.dependencies | join("\n")' \ pyproject.toml > requirements.in venv_compile: for requirements_name in requirements requirements.torch; do\ uv pip compile \ $(UV_ARGS) \ -p $(PYTHON_VERSION) \ --generate-hashes \ $$requirements_name.in > \ $$requirements_name.txt; \ cat $$requirements_name.in | grep 'index-url' >> $$requirements_name.txt; \ done venv: uv \ venv \ -p 3.13 \ $(UV_ARGS) \ --seed \ $(ENV_PATH) uv \ pip install \ $(UV_ARGS) \ -p $(ENV_PATH) \ -r requirements.txt PYRIGHT_ARGS ?= --threads 3 pyright: $(ENV_PATH)/bin/python3 -m pyright \ -p pyproject.toml \ --pythonpath $(PYTHON_PATH) \ $(PYRIGHT_ARGS) pyright_watch: make \ PYRIGHT_ARGS=-w \ pyright ruff_check: $(ENV_PATH)/bin/python3 -m ruff \ check ruff_format_check: $(ENV_PATH)/bin/python3 -m ruff \ format --check ruff_format: $(ENV_PATH)/bin/python3 -m ruff \ format ruff: ruff_format_check ruff_check compose_env: cat docker/postgresql/.env .env/postgresql.env > .env/postgresql.patched.env cat docker/web/.env .env/web.env > .env/web.patched.env for app in summarizer payloads; do \ cat docker/web/$$app.env .env/$$app.env > .env/$$app.patched.env; \ done compose_build_web: $(COMPOSE) build web compose_build_summarizer: $(COMPOSE) build summarizer compose_build_payloads: $(COMPOSE) build payloads git-release: mkdir -p releases/tar git archive \ --format=tar \ -o "releases/tar/repo-$$(git describe --tags).tar" \ HEAD ALEMBIC_CMD ?= --help alembic: $(ENV_PATH)/bin/alembic \ -c pyproject.toml \ $(ALEMBIC_CMD) deploy_wheel: make pyright make deploy_wheel_unsafe deploy_wheel_unsafe: $(PYTHON_PATH) -m build -o releases/whl -w -n