| 12345678910111213141516171819202122232425262728293031 |
- .PHONY: check check-fmt check-test check-clippy check-lines
- # Run all quality gates
- check: check-fmt check-test check-clippy check-lines
- check-fmt:
- cargo fmt --check
- check-test:
- cargo test
- check-clippy:
- cargo clippy --all-targets -- -D warnings
- # Ensure no Rust source file exceeds 500 lines
- check-lines:
- @exit_code=0; \
- max=500; \
- for f in src/**/*.rs src/*.rs; do \
- [ -f "$$f" ] || continue; \
- lines=$$(wc -l < "$$f"); \
- if [ "$$lines" -gt "$$max" ]; then \
- echo "FAIL: $$f has $$lines lines (max $$max)"; \
- exit_code=1; \
- fi; \
- done; \
- if [ "$$exit_code" -eq 0 ]; then \
- echo "✅ All Rust source files are under $$max lines"; \
- else \
- exit "$$exit_code"; \
- fi
|