49 lines
1.4 KiB
YAML
49 lines
1.4 KiB
YAML
repos:
|
|
- repo: local
|
|
hooks:
|
|
# ─────────────── PRE-COMMIT (fast checks) ───────────────
|
|
- id: fmt
|
|
name: rustfmt
|
|
entry: cargo fmt -- --check
|
|
language: system
|
|
types: [rust]
|
|
pass_filenames: false
|
|
stages: [pre-commit]
|
|
|
|
- id: clippy
|
|
name: clippy
|
|
entry: bash -c 'SQLX_OFFLINE=true cargo clippy -- -D warnings'
|
|
language: system
|
|
types: [rust]
|
|
pass_filenames: false
|
|
stages: [pre-commit]
|
|
|
|
# ─────────────── PRE-PUSH (heavy checks) ───────────────
|
|
- id: sqlx-prepare-check
|
|
name: sqlx prepare check
|
|
entry: cargo sqlx prepare --check
|
|
language: system
|
|
pass_filenames: false
|
|
stages: [pre-push]
|
|
|
|
- id: test
|
|
name: cargo test
|
|
entry: bash -c 'SQLX_OFFLINE=true cargo test --all'
|
|
language: system
|
|
pass_filenames: false
|
|
stages: [pre-push]
|
|
|
|
- id: build
|
|
name: cargo build release
|
|
entry: bash -c 'SQLX_OFFLINE=true cargo build --release'
|
|
language: system
|
|
pass_filenames: false
|
|
stages: [pre-push]
|
|
|
|
- id: audit
|
|
name: cargo audit
|
|
entry: cargo audit
|
|
language: system
|
|
pass_filenames: false
|
|
stages: [pre-push]
|