COMPOSE := cd .. && docker compose
<<<<<<< before updating
IMAGE := beavergram/backend
IMAGE_INPUTS := pyproject.toml uv.lock Dockerfile
CODE := src scripts ../frontend
SERVICES := api userbot watcher
changed = ! git diff --quiet $(1) -- $(2) 2>/dev/null
stamp = { git update-ref $(1) HEAD 2>/dev/null || true; }
=======
>>>>>>> after updating

.PHONY: fmt check build migrate revision session

fmt:
	uv run ruff format
	uv run ruff check --fix

check:
	uv run ruff format --check
	uv run ruff check
	uv run ty check
	uv run python scripts/check_imports.py

build:
	$(COMPOSE) build api

migrate:
	$(COMPOSE) run --rm migrator $(or $(filter-out $@,$(MAKECMDGOALS)),upgrade head)

revision:
	$(COMPOSE) run --rm migrator revision --autogenerate -m "$(m)"

%:
	@:

session:
	uv run python scripts/session/create.py
