this repo has no description
1# https://taskfile.dev
2
3# These are the helper commands used for managing/testing the repo.
4
5# 3.17 is required to use aliases in the Taskfile.
6version: "3.17"
7
8vars:
9 BIN: "{{.ROOT_DIR}}/bin"
10
11tasks:
12 default:
13 cmd: task --list
14 silent: true
15 ci:full:
16 desc: Run CI locally in containers
17 cmd: act
18 ci:
19 desc: Run CI locally
20 aliases: [ci:local]
21 deps: [audit, fmt, test, clippy, build, build:release]
22 clippy:
23 desc: Run clippy
24 cmd: cargo clippy --all-targets --all-features -- -D warnings
25 clippy:fix:
26 desc: Run clippy and fix errors
27 cmd: cargo clippy --fix --allow-dirty --allow-staged --all-targets --all-features
28 fmt:
29 desc: Run all formatters
30 cmds:
31 - cargo fmt
32 - alejandra .
33 - prettier --write .
34 audit:
35 desc: Run cargo security audit
36 sources:
37 - Cargo.lock
38 - flake.lock
39 cmd: cargo audit
40 build:
41 desc: Build the project
42 aliases: [b]
43 cmd: cargo build
44 build:release:
45 desc: Build the project in release mode
46 aliases: [b:release]
47 cmd: cargo build --release
48 commit:
49 desc: Commit changes using custom script
50 cmd: "{{.BIN}}/commit.sh"
51 test:
52 desc: Run all tests
53 aliases: [t]
54 cmd: cargo nextest run --no-default-features
55 test:full:
56 desc: Run comparisons against official tools
57 cmd: "{{.BIN}}/test.sh {{.CLI_ARGS}}"
58 coverage:
59 desc: Run coverage
60 aliases: [cov]
61 # Many tools don't like the file references from `nix build .#coverage`, so we need to run this outside nix
62 cmd: cargo tarpaulin --skip-clean --include-tests --output-dir coverage --out lcov --no-default-features
63 nix:coverage:
64 desc: Create coverage using nix
65 cmd: nix build .#coverage --out-link coverage
66 nix:ci:
67 desc: Run CI locally under nix
68 deps: [nix:check, nix:fmt, nix:build]
69 nix:check:
70 desc: Run Nix CI checks
71 cmd: nix flake check
72 nix:build:
73 desc: Build with Nix
74 cmd: nix build
75 nix:fmt:
76 desc: Run all formatters using treefmt
77 cmd: nix fmt