.PHONY: pip_dev test_unit lint fmt

env pip_dev:  ## Prepare environment
	poetry install

dev: ## Run local for development
	poetry run python src/dev.py

test_unit: pip_dev ## Run unit tests
	poetry run pytest -v tests

lint: pip_dev ## Run code linters
	poetry run ruff check src tests
	poetry run ruff format src tests --diff

fmt: pip_dev ## Run code formatters
	poetry run ruff check src tests --fix
	poetry run ruff format src tests

docker_unit_lint:
	docker compose run --build lint-and-test

docker_up:
	docker compose up function --build -d

docker_restart:
	docker compose restart function

docker_down:
	docker compose down