1
1
name : CI
2
2
on : [push, pull_request]
3
3
4
+ env :
5
+ RUSTDOCFLAGS : -D warnings
6
+ RUSTFLAGS : -D warnings
7
+
4
8
jobs :
5
9
test :
6
10
name : Test
7
11
runs-on : ${{ matrix.os }}
8
12
strategy :
9
13
matrix :
10
14
os : [ubuntu-latest, macos-latest, windows-latest]
11
- rust : [stable, beta, nightly]
15
+ rust : ["1.70", stable, beta, nightly]
12
16
steps :
13
- - uses : actions/checkout@master
17
+ - uses : actions/checkout@v4
14
18
- name : Install Rust
15
19
run : |
16
20
rustup update ${{ matrix.rust }} --no-self-update
17
21
rustup default ${{ matrix.rust }}
22
+ - uses : Swatinem/rust-cache@v2
18
23
- run : cargo test
19
24
- name : Integration test
20
25
run : cargo test --manifest-path test-crate/Cargo.toml
21
26
22
- rustfmt :
23
- name : Rustfmt
24
- runs-on : ubuntu-latest
25
- steps :
26
- - uses : actions/checkout@master
27
- - name : Install Rust
28
- run : |
29
- rustup update stable --no-self-update
30
- rustup default stable
31
- rustup component add rustfmt
32
- - run : cargo fmt -- --check
33
-
34
27
cross_compile_test :
35
28
name : Test Cross Compile - ${{ matrix.platform.target }}
36
29
needs : [ test ]
@@ -71,10 +64,10 @@ jobs:
71
64
rustup update stable --no-self-update
72
65
rustup default stable
73
66
rustup target add ${{ matrix.platform.target }}
74
- - run : cargo fmt -- --check
75
67
- uses : taiki-e/install-action@v2
76
68
with :
77
69
tool : cross
70
+ - uses : Swatinem/rust-cache@v2
78
71
- name : cross test
79
72
run : cross test -vv --target ${{ matrix.platform.target }}
80
73
working-directory : test-crate
@@ -94,14 +87,40 @@ jobs:
94
87
platform :
95
88
- target : aarch64-apple-ios
96
89
steps :
97
- - uses : actions/checkout@v3
98
- - uses : actions-rs/toolchain@v1
99
- with :
100
- toolchain : stable
101
- target : ${{ matrix.platform.target }}
90
+ - uses : actions/checkout@v4
91
+ - name : Install Rust
92
+ run : |
93
+ rustup update stable --no-self-update
94
+ rustup default stable
95
+ rustup target add ${{ matrix.platform.target }}
96
+ - uses : Swatinem/rust-cache@v2
102
97
- name : build
103
98
run : cargo build -vv --target ${{ matrix.platform.target }}
104
99
working-directory : test-crate
105
100
env :
106
101
# If this isn't specified the default is iOS 7, for which zlib-ng will not compile due to the lack of thread-local storage.
107
102
IPHONEOS_DEPLOYMENT_TARGET : 16
103
+
104
+ rustfmt :
105
+ name : Rustfmt
106
+ runs-on : ubuntu-latest
107
+ steps :
108
+ - uses : actions/checkout@master
109
+ - name : Install Rust
110
+ run : |
111
+ rustup update stable --no-self-update
112
+ rustup default stable
113
+ rustup component add rustfmt
114
+ - run : cargo fmt --all -- --check
115
+
116
+ doc :
117
+ name : docs
118
+ runs-on : ubuntu-latest
119
+ steps :
120
+ - uses : actions/checkout@v4
121
+ - run : |
122
+ rustup update nightly --no-self-update
123
+ rustup default nightly
124
+ - uses : Swatinem/rust-cache@v2
125
+ - run : cargo doc
126
+
0 commit comments