blob: 31d3a8b2370e7feb049899099d4476f10cf85ba5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
alias fmt := format
head := `git rev-parse HEAD`
_default:
@just --list
# Auto-format source code.
format:
cargo fmt --all
env RUST_LOG=warn taplo format
find . -type f -iname justfile -print0 | xargs -0rn 1 just --fmt --unstable --justfile
find . -type f -name '*.nix' -print0 | xargs -0rn 1 nixfmt
# Run all checks.
check:
@# Check format
cargo fmt --all --check
env RUST_LOG=warn taplo format --check
find . -type f -iname justfile -print0 | xargs -0rn 1 just --fmt --unstable --check --justfile
@# nix fmt -- --ci # treefmt --ci is not read-only
find . -type f -name '*.nix' -print0 | xargs -0rn 1 nixfmt --check
@# Lint
env RUST_LOG=warn taplo lint
cargo clippy --workspace --all-targets --all-features -- --deny warnings
@# Build
cargo build --workspace --all-targets --all-features
env RUSTDOCFLAGS="-Dwarnings" cargo doc --all-features --no-deps --document-private-items
@# Test
cargo test --workspace --all-targets --all-features
@# Check dependencies for known security vulnerabilities, licenses, etc.
cargo audit
cargo deny --workspace --all-features check --show-stats bans licenses sources
@# Check Nix flake
nix flake check --print-build-logs --verbose
cd examples/nixos/ && nix flake check --print-build-logs --verbose --override-input temp-postgres ../..
# Update Nix flake inputs, and Rust dependencies.
update:
@# Update Nix flake inputs.
git diff --stat --exit-code
nix flake update
nix develop --command just check
git diff --stat --exit-code -- . ':(exclude)flake.lock'
git diff --no-patch --exit-code flake.lock || git commit --message 'Update Nix flake inputs' flake.lock
@# Update Rust dependencies.
git diff --stat --exit-code
nix develop --command cargo upgrade
nix develop --command cargo update
nix develop --command just check
git diff --stat --exit-code -- . ':(exclude)Cargo.toml' ':(exclude)Cargo.lock'
git diff --no-patch --exit-code Cargo.lock || git commit --message 'Update Rust dependencies' Cargo.toml Cargo.lock
@# Show commits.
git --no-pager log --stat {{ head }}..
|
for my tech blog and contact information.