.PHONY: requirements analyse test build audit


requirements:
	rm -rf .venv
	export UV_LINK_MODE=copy && uv lock && uv sync --all-extras

analyse:
	uv run ruff format code_framework
	uv run ruff check code_framework --fix
	uv run bandit -c pyproject.toml -r code_framework
	uv run semgrep scan --config=auto code_framework
	uv run pip-audit --skip-editable --ignore-vuln GHSA-5239-wwwm-4pmq

test:
	uv run pytest --cov=code_framework --cov-report=term-missing

build:
	uv build
