Skip to content

Commit 5696342

Browse files
committed
Swap machete with shear
1 parent 71ca190 commit 5696342

5 files changed

Lines changed: 121 additions & 106 deletions

File tree

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ end_of_line = lf
77
charset = utf-8
88
trim_trailing_whitespace = true
99

10-
[*.toml]
10+
[*.{toml,yml}]
1111
indent_size = 2

.github/workflows/ci.yml

Lines changed: 111 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -1,103 +1,117 @@
11
name: CI
22
on:
3-
push:
4-
branches:
5-
- main
6-
- ci
7-
pull_request:
3+
push:
4+
branches:
5+
- main
6+
- ci
7+
pull_request:
88

99
env:
10-
SQLX_OFFLINE: true
10+
SQLX_OFFLINE: true
1111

1212
jobs:
13-
rustfmt:
14-
runs-on: ubuntu-latest
15-
steps:
16-
- name: Checkout
17-
uses: actions/checkout@v3
18-
19-
- name: Nightly Rust
20-
uses: actions-rs/toolchain@v1
21-
with:
22-
toolchain: nightly
23-
components: rustfmt
24-
25-
- name: Rustfmt
26-
run: cargo fmt -- --check
27-
28-
clippy:
29-
runs-on: ubuntu-latest
30-
steps:
31-
- name: Checkout
32-
uses: actions/checkout@v3
33-
34-
- name: Stable Rust
35-
uses: actions-rs/toolchain@v1
36-
with:
37-
toolchain: stable
38-
components: clippy
39-
40-
- name: Clippy
41-
run: cargo clippy --all-targets -- -D warnings
42-
43-
test:
44-
runs-on: ubuntu-latest
45-
steps:
46-
- name: Checkout
47-
uses: actions/checkout@v3
48-
49-
- name: Stable Rust
50-
uses: actions-rs/toolchain@v1
51-
with:
52-
toolchain: stable
53-
54-
- name: Test all targets
55-
run: cargo test --all-targets
56-
57-
- name: Test docs
58-
run: cargo test --doc
59-
60-
typos:
61-
runs-on: ubuntu-latest
62-
steps:
63-
- name: Checkout
64-
uses: actions/checkout@v3
65-
66-
- name: Check typos in `rust` folder
67-
uses: crate-ci/typos@master
68-
with:
69-
files: .
70-
71-
cargo_sort:
72-
runs-on: ubuntu-latest
73-
steps:
74-
- name: Checkout
75-
uses: actions/checkout@v3
76-
77-
- name: Stable Rust
78-
uses: actions-rs/toolchain@v1
79-
with:
80-
toolchain: stable
81-
82-
- name: Install cargo-sort
83-
run: cargo install --locked cargo-sort
84-
85-
- name: Check `Cargo.toml` sort
86-
run: cargo sort -c
87-
88-
machete:
89-
runs-on: ubuntu-latest
90-
steps:
91-
- name: Checkout
92-
uses: actions/checkout@v3
93-
94-
- name: Stable Rust
95-
uses: actions-rs/toolchain@v1
96-
with:
97-
toolchain: stable
98-
99-
- name: Install `cargo-machete`
100-
run: cargo install --locked cargo-machete
101-
102-
- name: Check unused Cargo dependencies
103-
run: cargo machete
13+
rustfmt:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v4
18+
19+
- name: Nightly Rust
20+
uses: dtolnay/rust-toolchain@master
21+
with:
22+
toolchain: nightly
23+
components: rustfmt
24+
25+
- name: Rustfmt
26+
run: cargo +nightly fmt -- --check
27+
28+
clippy:
29+
runs-on: ubuntu-latest
30+
steps:
31+
- name: Checkout
32+
uses: actions/checkout@v4
33+
34+
- name: Stable Rust
35+
uses: dtolnay/rust-toolchain@master
36+
with:
37+
toolchain: stable
38+
components: clippy
39+
40+
- name: Clippy
41+
run: cargo clippy --all-targets --all-features -- -D warnings
42+
43+
rustdoc:
44+
runs-on: ubuntu-latest
45+
steps:
46+
- name: Checkout
47+
uses: actions/checkout@v4
48+
49+
- name: Stable Rust
50+
uses: dtolnay/rust-toolchain@master
51+
with:
52+
toolchain: stable
53+
54+
- name: Rustdoc
55+
run: cargo rustdoc --all-features -- -D warnings
56+
57+
test:
58+
runs-on: ubuntu-latest
59+
steps:
60+
- name: Checkout
61+
uses: actions/checkout@v4
62+
63+
- name: Stable Rust
64+
uses: dtolnay/rust-toolchain@master
65+
with:
66+
toolchain: stable
67+
68+
- name: Test all targets
69+
run: cargo test --all-targets
70+
71+
- name: Test docs
72+
run: cargo test --doc
73+
74+
typos:
75+
runs-on: ubuntu-latest
76+
steps:
77+
- name: Checkout
78+
uses: actions/checkout@v4
79+
80+
- name: Check typos
81+
uses: crate-ci/typos@master
82+
with:
83+
files: .
84+
85+
cargo_sort:
86+
runs-on: ubuntu-latest
87+
steps:
88+
- name: Checkout
89+
uses: actions/checkout@v4
90+
91+
- name: Stable Rust
92+
uses: dtolnay/rust-toolchain@master
93+
with:
94+
toolchain: stable
95+
96+
- name: Install cargo-sort
97+
run: cargo install --locked cargo-sort
98+
99+
- name: Check `Cargo.toml` sort
100+
run: cargo sort -c
101+
102+
shear:
103+
runs-on: ubuntu-latest
104+
steps:
105+
- name: Checkout
106+
uses: actions/checkout@v4
107+
108+
- name: Stable Rust
109+
uses: dtolnay/rust-toolchain@master
110+
with:
111+
toolchain: stable
112+
113+
- name: Install `cargo-shear`
114+
run: cargo install --locked cargo-shear
115+
116+
- name: Check unused Cargo dependencies
117+
run: cargo shear

.pre-commit.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ set -x
1616

1717
# Install tools
1818
cargo clippy --version &>/dev/null || rustup component add clippy
19-
cargo machete --version &>/dev/null || cargo install --locked cargo-machete
19+
cargo shear --version >/dev/null 2>&1 || cargo install --locked cargo-shear
2020
cargo sort --version &>/dev/null || cargo install --locked cargo-sort
2121
cargo sqlx --version &>/dev/null || cargo install --locked sqlx-cli
2222
typos --version &>/dev/null || cargo install --locked typos-cli
@@ -26,7 +26,7 @@ cargo +nightly fmt --version &>/dev/null || rustup component add rustfmt --toolc
2626

2727
# Checks
2828
typos .
29-
cargo machete
29+
cargo shear
3030
cargo +nightly fmt -- --check
3131
cargo sort -c
3232
cargo test --all-targets

AGENTS.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ cargo +nightly fmt
3838
Make checks pass:
3939

4040
```sh
41-
./.pre-commit.sh
41+
SQLX_OFFLINE=true cargo clippy --all-targets -- -D warnings
42+
cargo shear
4243
```
4344

4445
#### Coding style

Cargo.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ serde = { version = "1", features = ["derive"] }
1616
serde_json = "1"
1717
source-chain = "0.1"
1818
sqlx = { version = "0.8", features = [
19-
"json",
20-
"chrono",
21-
"postgres",
22-
"runtime-tokio-rustls",
23-
"uuid",
19+
"json",
20+
"chrono",
21+
"postgres",
22+
"runtime-tokio-rustls",
23+
"uuid",
2424
] }
2525
thiserror = "2"
2626
tokio = "1"

0 commit comments

Comments
 (0)