Root check now loops app then blogex then the pin check, mirroring the shape the Lens pass will use. blogex gains a check target (compile with warnings fatal + format); credo is a marked slot until its dep exists, and the gate never claims a sensor it did not run.
36 lines
946 B
Makefile
36 lines
946 B
Makefile
# Makefile for Blogex library
|
|
|
|
MISE_BIN ?= mise
|
|
MISE_EXEC = $(MISE_BIN) exec --
|
|
|
|
.PHONY: check precommit deps compile test format
|
|
|
|
# Cheap static gate for this library (no database, no coverage). Runs from the
|
|
# root `make check`, which loops app then blogex.
|
|
#
|
|
# Sensor slot: add `credo` once the "credo strict, tuned config (both apps)"
|
|
# yak lands blogex's credo dep + .credo.exs. Do not list it before then — a
|
|
# gate that claims a check it did not run is worse than no gate.
|
|
check: compile format
|
|
|
|
# Per-app precommit loop: same target name and alias shape as app/, so both
|
|
# apps share one habit (compile --warning-as-errors, format, test).
|
|
precommit:
|
|
$(MISE_EXEC) mix precommit
|
|
|
|
# Sync dependencies
|
|
deps:
|
|
$(MISE_EXEC) mix deps.get
|
|
|
|
# Compile the project (warnings are fatal)
|
|
compile:
|
|
$(MISE_EXEC) mix compile --warnings-as-errors
|
|
|
|
# Run the test suite
|
|
test: deps
|
|
$(MISE_EXEC) mix test
|
|
|
|
# Format code
|
|
format:
|
|
$(MISE_EXEC) mix format
|