2222 branches :
2323 - main
2424 pull_request :
25- branches :
26- - main
25+ paths :
26+ - ' **' # Include all files and directories in the repository by default.
27+ - ' !.github/ISSUE_TEMPLATE/**' # Exclude files and directories that don't impact tests or code like templates, metadata, and documentation.
28+ - ' !scripts/**'
29+ - ' !website/**'
30+ - ' !.asf.yml'
31+ - ' !.gitattributes'
32+ - ' !.gitignore'
33+ - ' !CONTRIBUTING.md'
34+ - ' !CHANGELOG.md'
35+ - ' !LICENSE'
36+ - ' !NOTICE'
37+ - ' !README.md'
2738
2839concurrency :
2940 group : ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
3041 cancel-in-progress : true
3142
3243env :
33- rust_msrv : " 1.84.0 "
44+ rust_msrv : " 1.87 "
3445
3546jobs :
3647 check :
@@ -41,21 +52,22 @@ jobs:
4152 - ubuntu-latest
4253 - macos-latest
4354 steps :
44- - uses : actions/checkout@v4
55+ - uses : actions/checkout@v5
4556
4657 - name : Setup Rust toolchain
4758 uses : ./.github/actions/setup-builder
4859
4960 - name : Check License Header
50- uses : apache/skywalking-eyes/header@v0.7 .0
61+ uses : apache/skywalking-eyes/header@v0.8 .0
5162
52- - name : Install taplo-cli
53- uses : taiki-e/install-action@v2
54- with :
55- tool : taplo-cli@0.9.3
5663 - name : Check toml format
5764 run : make check-toml
5865
66+ - name : Install protoc
67+ uses : arduino/setup-protoc@v3
68+ with :
69+ repo-token : ${{ secrets.GITHUB_TOKEN }}
70+
5971 - name : Cargo format
6072 run : make check-fmt
6173
6577 - name : Cargo clippy
6678 run : make check-clippy
6779
68- - name : Install cargo-machete
69- uses : taiki-e/install-action@v2
70- with :
71- tool : cargo-machete
7280 - name : Cargo Machete
73- run : cargo machete
81+ run : make cargo- machete
7482
7583 build :
7684 runs-on : ${{ matrix.os }}
@@ -81,14 +89,31 @@ jobs:
8189 - macos-latest
8290 - windows-latest
8391 steps :
84- - uses : actions/checkout@v4
92+ - name : Maximize build space (Ubuntu)
93+ if : matrix.os == 'ubuntu-latest'
94+ uses : easimon/maximize-build-space@master
95+ with :
96+ remove-dotnet : " true"
97+ remove-android : " true"
98+ remove-haskell : " true"
99+ remove-codeql : " true"
100+ remove-docker-images : " true"
101+ root-reserve-mb : 10240
102+ temp-reserve-mb : 10240
103+
104+ - uses : actions/checkout@v5
85105
86106 - name : Setup Rust toolchain
87107 uses : ./.github/actions/setup-builder
88108
89109 - name : Cache Rust artifacts
90110 uses : Swatinem/rust-cache@v2
91111
112+ - name : Install protoc
113+ uses : arduino/setup-protoc@v3
114+ with :
115+ repo-token : ${{ secrets.GITHUB_TOKEN }}
116+
92117 - name : Build
93118 run : make build
94119
@@ -101,7 +126,7 @@ jobs:
101126 - macos-latest
102127 - windows-latest
103128 steps :
104- - uses : actions/checkout@v4
129+ - uses : actions/checkout@v5
105130
106131 - name : Setup Rust toolchain
107132 uses : ./.github/actions/setup-builder
@@ -118,27 +143,32 @@ jobs:
118143 - name : Maximize build space
119144 uses : easimon/maximize-build-space@master
120145 with :
121- remove-dotnet : ' true'
122- remove-android : ' true'
123- remove-haskell : ' true'
124- remove-codeql : ' true'
125- remove-docker-images : ' true'
146+ remove-dotnet : " true"
147+ remove-android : " true"
148+ remove-haskell : " true"
149+ remove-codeql : " true"
150+ remove-docker-images : " true"
126151 root-reserve-mb : 10240
127152 temp-reserve-mb : 10240
128153
129- - uses : actions/checkout@v4
154+ - uses : actions/checkout@v5
130155
131156 - name : Setup Rust toolchain
132157 uses : ./.github/actions/setup-builder
133158
159+ - name : Install protoc
160+ uses : arduino/setup-protoc@v3
161+ with :
162+ repo-token : ${{ secrets.GITHUB_TOKEN }}
163+
134164 - name : Cache Rust artifacts
135165 uses : Swatinem/rust-cache@v2
136166
137167 - name : Test
138168 run : cargo test --no-fail-fast --all-targets --all-features --workspace
139169
140- - name : Async-std Test
141- run : cargo test --no-fail-fast --all-targets --no-default-features --features "async-std " --features "storage-all" --workspace
170+ - name : Smol Test
171+ run : cargo test --no-fail-fast --all-targets --no-default-features --features "smol " --features "storage-all" --workspace
142172
143173 - name : Doc Test
144174 run : cargo test --no-fail-fast --doc --all-features --workspace
@@ -147,16 +177,16 @@ jobs:
147177 name : Verify MSRV
148178 runs-on : ubuntu-latest
149179 steps :
150- - uses : actions/checkout@v4
151- - name : Setup Nightly Rust toolchain
152- uses : ./.github/actions/setup-builder
153- - name : Generate minimal versions lockfile
154- run : |
155- cargo generate-lockfile -Z direct-minimal-versions -Z minimal-versions
180+ - uses : actions/checkout@v5
181+ - name : Install protoc
182+ uses : arduino/setup-protoc@v3
183+ with :
184+ repo-token : ${{ secrets.GITHUB_TOKEN }}
156185 - name : Setup MSRV Rust toolchain
157186 uses : ./.github/actions/setup-builder
158187 with :
159188 rust-version : ${{ env.rust_msrv }}
189+ - name : Setup Nightly Rust toolchain
190+ uses : ./.github/actions/setup-builder
160191 - name : Check MSRV
161- run : |
162- cargo +${{ env.rust_msrv }} check --locked --workspace
192+ run : make check-msrv
0 commit comments