10
10
11
11
jobs :
12
12
fmt :
13
+ strategy :
14
+ matrix :
15
+ toolchain :
16
+ - nightly
13
17
runs-on : ubuntu-latest
14
18
steps :
15
19
- uses : actions/checkout@v4
16
-
17
- - name : Setup Rust
18
- uses : ./.github/actions/setup-rust
20
+ - uses : dtolnay/rust-toolchain@master
19
21
with :
20
- key : fmt
21
- toolchain : nightly
22
+ toolchain : ${{ matrix.toolchain }}
22
23
components : rustfmt
23
-
24
24
- run : cargo fmt --all -- --check
25
25
26
26
clippy :
27
27
strategy :
28
28
matrix :
29
29
toolchain :
30
- - stable
30
+ - nightly
31
31
runs-on : ubuntu-latest
32
32
steps :
33
33
- uses : actions/checkout@v4
34
-
35
- - name : Setup Rust
36
- uses : ./.github/actions/setup-rust
34
+ - uses : dtolnay/rust-toolchain@master
37
35
with :
38
- key : clippy
39
36
toolchain : ${{ matrix.toolchain }}
40
37
components : clippy
41
-
42
38
- run : cargo clippy --workspace --all-targets -- -D warnings
43
39
44
40
check :
45
41
strategy :
46
42
matrix :
47
43
toolchain :
48
- - stable
44
+ - " 1.81"
45
+ package :
46
+ - " zipsign"
47
+ include :
48
+ - toolchain : " 1.73"
49
+ package : zipsign-api
49
50
runs-on : ubuntu-latest
50
51
steps :
51
52
- uses : actions/checkout@v4
52
-
53
- - name : Setup Rust
54
- uses : ./.github/actions/setup-rust
53
+ - uses : dtolnay/rust-toolchain@master
55
54
with :
56
- key : check
57
55
toolchain : ${{ matrix.toolchain }}
58
-
59
- - run : cargo check --workspace --all-targets
56
+ - run : cargo check --package ${{ matrix.package }} --all-targets
60
57
61
58
test :
62
59
strategy :
@@ -66,20 +63,16 @@ jobs:
66
63
os :
67
64
- ubuntu-22.04
68
65
- windows-2022
69
- - macos-12
66
+ - macos-13
70
67
versions :
71
68
- " "
72
69
- " -Zminimal-versions"
73
70
runs-on : ${{ matrix.os }}
74
71
steps :
75
72
- uses : actions/checkout@v4
76
-
77
- - name : Setup Rust
78
- uses : ./.github/actions/setup-rust
73
+ - uses : dtolnay/rust-toolchain@master
79
74
with :
80
- key : test${{ matrix.versions }}
81
75
toolchain : ${{ matrix.toolchain }}
82
- components : clippy
83
76
84
77
- name : Update lockfile
85
78
run : cargo generate-lockfile ${{ matrix.versions }}
@@ -89,55 +82,41 @@ jobs:
89
82
- run : cargo test --workspace --all-targets
90
83
91
84
doc :
85
+ strategy :
86
+ matrix :
87
+ toolchain :
88
+ - nightly
92
89
runs-on : ubuntu-latest
93
90
steps :
94
91
- uses : actions/checkout@v4
95
-
96
- - name : Setup Rust
97
- uses : ./.github/actions/setup-rust
92
+ - uses : dtolnay/rust-toolchain@master
98
93
with :
99
- key : doc
100
- toolchain : nightly
101
-
102
- - run : cargo +nightly doc --all-features --no-deps
94
+ toolchain : ${{ matrix.toolchain }}
95
+ - run : cargo doc --workspace --all-features --no-deps
103
96
env :
104
- RUSTDOCFLAGS : " --cfg docsrs -D warnings"
97
+ RUSTDOCFLAGS : -Z unstable-options --generate-link-to-definition --cfg= docsrs -D warnings
105
98
106
99
audit :
107
100
runs-on : ubuntu-latest
108
101
steps :
109
102
- uses : actions/checkout@v4
110
-
111
- - name : Setup Rust
112
- uses : ./.github/actions/setup-rust
113
- with :
114
- key : audit
115
- toolchain : stable
116
-
117
- - name : Install cargo-audit
118
- uses : taiki-e/install-action@v2
119
- with :
120
- tool : cargo-audit
121
-
122
- - name : Run audit
123
- run : cargo audit --deny warnings
103
+ - uses : EmbarkStudios/cargo-deny-action@v2
124
104
125
105
api-powerset :
106
+ strategy :
107
+ matrix :
108
+ toolchain :
109
+ - 1.73
126
110
runs-on : ubuntu-latest
127
111
steps :
128
112
- uses : actions/checkout@v4
129
-
130
- - name : Setup Rust
131
- uses : ./.github/actions/setup-rust
113
+ - uses : dtolnay/rust-toolchain@master
132
114
with :
133
- key : api-powerset
134
- toolchain : stable
135
-
115
+ toolchain : ${{ matrix.toolchain }}
136
116
- name : Install cargo-hack
137
117
uses : taiki-e/install-action@v2
138
118
with :
139
119
tool : cargo-hack
140
-
141
120
- name : Check powerset
142
121
run : cargo hack check --feature-powerset --package zipsign-api
143
122
env :
@@ -151,18 +130,16 @@ jobs:
151
130
os :
152
131
- ubuntu-22.04
153
132
- windows-2022
154
- - macos-12
133
+ - macos-13
155
134
versions :
156
135
- " "
157
136
- " -Zminimal-versions"
158
137
runs-on : ${{ matrix.os }}
159
138
steps :
160
139
- uses : actions/checkout@v4
161
140
162
- - name : Setup Rust
163
- uses : ./.github/actions/setup-rust
141
+ - uses : dtolnay/rust-toolchain@master
164
142
with :
165
- key : execute${{ matrix.versions }}
166
143
toolchain : ${{ matrix.toolchain }}
167
144
168
145
- name : Update lockfile
@@ -187,15 +164,17 @@ jobs:
187
164
zipsign unsign zip Cargo.lock.zip
188
165
189
166
semver-checks :
167
+ strategy :
168
+ matrix :
169
+ toolchain :
170
+ - stable
190
171
runs-on : ubuntu-latest
191
172
steps :
192
173
- uses : actions/checkout@v4
193
174
194
- - name : Setup Rust
195
- uses : ./.github/actions/setup-rust
175
+ - uses : dtolnay/rust-toolchain@master
196
176
with :
197
- key : semver-checks
198
- toolchain : stable
177
+ toolchain : ${{ matrix.toolchain }}
199
178
200
179
- name : Install cargo-semver-checks
201
180
uses : taiki-e/install-action@v2
@@ -207,20 +186,44 @@ jobs:
207
186
- run : cargo semver-checks -p zipsign-api --all-features
208
187
209
188
public-api :
189
+ strategy :
190
+ matrix :
191
+ toolchain :
192
+ - nightly
210
193
runs-on : ubuntu-latest
211
194
steps :
212
195
- uses : actions/checkout@v4
213
196
214
- - name : Setup Rust
215
- uses : ./.github/actions/setup-rust
197
+ - uses : dtolnay/rust-toolchain@master
216
198
with :
217
- key : public-api
218
- toolchain : nightly
199
+ toolchain : ${{ matrix.toolchain }}
219
200
220
201
- name : Install cargo-public-api
221
202
uses : taiki-e/install-action@v2
222
203
with :
223
204
tool : cargo-public-api
224
205
225
206
- run : cargo public-api -p zipsign-api
207
+ working-directory : api
226
208
- run : cargo public-api -p zipsign-api diff
209
+ working-directory : api
210
+
211
+ sort :
212
+ name : Check order in Cargo.toml
213
+ runs-on : ubuntu-latest
214
+ steps :
215
+ - uses : actions/checkout@v4
216
+
217
+ - uses : dtolnay/rust-toolchain@master
218
+ with :
219
+ toolchain : stable
220
+
221
+ - run : cargo install --git https://github.com/DevinR528/cargo-sort.git --rev 3701753667c5d47ae166d6e5cd7a11384e068ed0
222
+
223
+ - run : cargo sort --workspace --grouped --check --check-format
224
+
225
+ typos :
226
+ runs-on : ubuntu-latest
227
+ steps :
228
+ - uses : actions/checkout@v4
229
+ - uses : crate-ci/typos@master
0 commit comments