.PHONY: build, check, format, install-dev, install-examples, test, examples

build:
	uv pip install -U build
	uv build

check:
	ruff check .

	@echo ""
	ruff format --check .

	@echo ""
	ty check

format:
	ruff check --fix .
	ruff format .

install-dev:
	uv sync --extra dev --extra examples
	pre-commit install

install-examples:
	uv sync --extra examples

test:
	pytest

examples:
	mbqs protocol -J 1. -L 4 -o examples/protocol_single.json
	mbqs protocol -J 1. -L $(shell seq 4 6) -o examples/protocol_multiple.json
	mbqs protocol -J 1. -L 4 --include-rydberg -o examples/protocol_single_rydberg.json
	mbqs protocol -J 1. -L $(shell seq 4 6) --include-rydberg -o examples/protocol_multiple_rydberg.json
	mbqs correlations -i examples/samples.json -o examples/correlations_samples.json
	mbqs correlations -L 4 -o examples/correlations_exact.json
