UV ?= uv
UV_RUN ?= $(UV) run
SRC := ops_bot
TESTS := tests
SHELL := $(shell which bash)
fmt:
	$(UV_RUN) black $(SRC)
	$(UV_RUN) black $(TESTS)
	$(UV_RUN) isort --profile black $(SRC)
	$(UV_RUN) isort --profile black $(TESTS)

lint:
	$(UV_RUN) flake8 $(SRC)
	$(UV_RUN) bandit --silent --recursive $(SRC)
types:
	$(UV_RUN) mypy $(SRC)

test:
	$(UV_RUN) pytest $(TESTS)

check:
	$(MAKE) fmt
	$(MAKE) lint
	$(MAKE) types
	$(MAKE) test
