@@ -15,7 +15,7 @@ concurrency:
15
15
cancel-in-progress : true
16
16
17
17
jobs :
18
- test :
18
+ test-all-features :
19
19
runs-on : ubuntu-latest
20
20
env :
21
21
CARGO_TERM_COLOR : always
@@ -41,17 +41,54 @@ jobs:
41
41
cargo clean
42
42
rm -rf ~/.cargo/registry
43
43
rm -rf ~/.cargo/git
44
- - name : Compile unit tests
44
+ - name : Compile unit tests with all features enabled
45
45
run : cargo nextest run --all-targets --all-features --workspace --locked --no-run --timings
46
- - name : Run unit tests
46
+ - name : Run unit tests with all features enabled
47
47
run : timeout 10m cargo nextest run --no-fail-fast --all-targets --all-features --workspace --locked
48
- - name : Store timings
48
+ - name : Store timings with all features enabled
49
49
uses : actions/upload-artifact@v4
50
50
with :
51
- name : timings
51
+ name : timings-all-features
52
52
path : target/cargo-timings/
53
53
if-no-files-found : warn
54
54
55
+ test-default-features :
56
+ runs-on : ubuntu-latest
57
+ env :
58
+ CARGO_TERM_COLOR : always
59
+ steps :
60
+ - name : Maximize build space
61
+ uses : easimon/maximize-build-space@master
62
+ with :
63
+ root-reserve-mb : " 3072"
64
+ temp-reserve-mb : " 3072"
65
+ - uses : actions/checkout@v4
66
+ - uses : dtolnay/rust-toolchain@stable
67
+ - uses : rui314/setup-mold@v1
68
+ - uses : Swatinem/rust-cache@v2
69
+ with :
70
+ save-if : ${{ (github.event_name == 'push' && github.ref == 'refs/heads/main') || github.event_name == 'schedule' }}
71
+ - uses : arduino/setup-protoc@v3
72
+ with :
73
+ repo-token : ${{ secrets.GITHUB_TOKEN }}
74
+ - uses : taiki-e/install-action@nextest
75
+ - name : Clear cache
76
+ if : github.event_name =='schedule'
77
+ run : |
78
+ cargo clean
79
+ rm -rf ~/.cargo/registry
80
+ rm -rf ~/.cargo/git
81
+ - name : Compile unit tests with default features
82
+ run : cargo nextest run --all-targets --workspace --locked --no-run --timings
83
+ - name : Run unit tests with default features
84
+ run : timeout 10m cargo nextest run --no-fail-fast --all-targets --workspace --locked
85
+ - name : Store timings with default features
86
+ uses : actions/upload-artifact@v4
87
+ with :
88
+ name : timings-all-features
89
+ path : target/cargo-timings/
90
+ if-no-files-found : warn
91
+
55
92
clippy :
56
93
runs-on : ubuntu-latest
57
94
steps :
0 commit comments