3232 continue-on-error : ${{ matrix.rust == 'beta' }}
3333 steps :
3434 - name : Harden the runner (Audit all outbound calls)
35- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
35+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
3636 with :
3737 egress-policy : audit
3838
4646 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4747 with :
4848 submodules : true
49- - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
49+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
5050 with :
5151 toolchain : ${{ matrix.rust }}
5252 components : rustfmt
@@ -61,18 +61,18 @@ jobs:
6161 runs-on : ubuntu-latest
6262 steps :
6363 - name : Harden the runner (Audit all outbound calls)
64- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
64+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
6565 with :
6666 egress-policy : audit
6767
6868 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
6969 with :
7070 submodules : true
71- - uses : dtolnay/rust-toolchain@fcf085fcb4b4b8f63f96906cd713eb52181b5ea4
71+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
7272 with :
7373 toolchain : stable
7474 components : rustfmt, clippy
75- - uses : taiki-e/install-action@d4635f2de61c8b8104d59cd4aede2060638378cc # v2.49.45
75+ - uses : taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
7676 with :
7777 tool : cargo-hack
7878 - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
@@ -85,54 +85,59 @@ jobs:
8585 external-types :
8686 strategy :
8787 matrix :
88- example : [opentelemetry, opentelemetry-sdk, opentelemetry-otlp, opentelemetry-zipkin]
88+ member : [opentelemetry, opentelemetry-sdk, opentelemetry-otlp, opentelemetry-zipkin]
8989 runs-on : ubuntu-latest # TODO: Check if this could be covered for Windows. The step used currently fails on Windows.
9090 steps :
9191 - name : Harden the runner (Audit all outbound calls)
92- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
92+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
9393 with :
9494 egress-policy : audit
9595
9696 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
97- - uses : dtolnay/rust-toolchain@a02741459ec5e501b9843ed30b535ca0a0376ae4
97+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
9898 with :
99- toolchain : nightly-2024-06-30
99+ # Rust version should be kept in sync with the one the release was tested with
100+ # https://github.com/awslabs/cargo-check-external-types/releases
101+ toolchain : nightly-2025-05-04
100102 components : rustfmt
103+ - uses : taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
104+ with :
105+ 101106 - name : external-type-check
102- run : |
103- 104- cd ${{ matrix.example }}
105- cargo check-external-types --config allowed-external-types.toml
107+ working-directory : ${{ matrix.member }}
108+ run : cargo check-external-types --all-features --config allowed-external-types.toml
106109 msrv :
107110 strategy :
108111 matrix :
109112 os : [windows-latest, ubuntu-latest]
110- rust : [1.75.0]
111113 runs-on : ${{ matrix.os }}
112114 continue-on-error : true
113115 steps :
114116 - name : Harden the runner (Audit all outbound calls)
115- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
117+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
116118 with :
117119 egress-policy : audit
118120
119121 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
120122 with :
121123 submodules : true
122- - name : Set up Rust ${{ matrix.rust }}
123- uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
124+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
125+ with :
126+ toolchain : stable
127+ - uses : taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
128+ with :
129+ tool : cargo-msrv
130+ - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
124131 with :
125- toolchain : ${{ matrix.rust }}
126- - name : Patch dependencies versions
127- run : bash ./scripts/patch_dependencies.sh
132+ repo-token : ${{ secrets.GITHUB_TOKEN }}
128133 - name : Check MSRV for all crates
129- run : bash ./scripts/msrv.sh ${{ matrix.rust }}
134+ run : bash ./scripts/msrv.sh
130135 cargo-deny :
131136 runs-on : ubuntu-latest # This uses the step `EmbarkStudios/cargo-deny-action@v1` which is only supported on Linux
132137 continue-on-error : true # Prevent sudden announcement of a new advisory from failing ci
133138 steps :
134139 - name : Harden the runner (Audit all outbound calls)
135- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
140+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
136141 with :
137142 egress-policy : audit
138143
@@ -163,12 +168,12 @@ jobs:
163168 runs-on : ubuntu-latest
164169 steps :
165170 - name : Harden the runner (Audit all outbound calls)
166- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
171+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
167172 with :
168173 egress-policy : audit
169174
170175 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
171- - uses : dtolnay/rust-toolchain@fcf085fcb4b4b8f63f96906cd713eb52181b5ea4
176+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
172177 with :
173178 toolchain : stable
174179 components : rustfmt
@@ -186,49 +191,70 @@ jobs:
186191 if : ${{ ! contains(github.event.pull_request.labels.*.name, 'dependencies') }}
187192 steps :
188193 - name : Harden the runner (Audit all outbound calls)
189- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
194+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
190195 with :
191196 egress-policy : audit
192197
193198 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
194199 with :
195200 submodules : true
196- - uses : dtolnay/rust-toolchain@fcf085fcb4b4b8f63f96906cd713eb52181b5ea4
201+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
197202 with :
198203 toolchain : stable
199204 components : rustfmt,llvm-tools-preview
200205 - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
201206 with :
202- repo-token : ${{ secrets.GITHUB_TOKEN }}
203- - name : cargo install cargo-llvm-cov
204- uses : taiki-e/install-action@5075451c95db43b063f20f0c8fef04c04d5bf0ba # cargo-llvm-cov
207+ repo-token : ${{ secrets.GITHUB_TOKEN }}
208+ - name : Install cargo-llvm-cov
209+ uses : taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
210+ with :
211+ tool : cargo-llvm-cov
205212 - name : cargo generate-lockfile
206213 if : hashFiles('Cargo.lock') == ''
207214 run : cargo generate-lockfile
208215 - name : cargo llvm-cov
209216 run : cargo llvm-cov --locked --all-features --workspace --lcov --lib --output-path lcov.info
210217 - name : Upload to codecov.io
211- uses : codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4.6.0
218+ uses : codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
212219 env :
213220 CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
214221 with :
215222 fail_ci_if_error : true
223+ build-examples :
224+ runs-on : ubuntu-latest
225+ steps :
226+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
227+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b # stable
228+ with :
229+ toolchain : stable
230+ components : rustfmt
231+ - uses : arduino/setup-protoc@c65c819552d16ad3c9b72d9dfd5ba5237b9c906b # v3.0.0
232+ with :
233+ repo-token : ${{ secrets.GITHUB_TOKEN }}
234+ - name : Build examples
235+ run : |
236+ for example in examples/*; do
237+ if [ -d "$example" ]; then
238+ echo "Building $example"
239+ cargo build
240+ fi
241+ done
216242 cargo-machete :
217243 continue-on-error : true
218244 runs-on : ubuntu-latest
219245 steps :
220246 - name : Harden the runner (Audit all outbound calls)
221- uses : step-security/harden-runner@c6295a65d1254861815972266d5933fd6e532bdf # v2.11.1
247+ uses : step-security/harden-runner@0634a2670c59f64b4a01f0f96f84700a4088b9f0 # v2.12.0
222248 with :
223249 egress-policy : audit
224250
225251 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
226252 with :
227253 submodules : true
228- - uses : dtolnay/rust-toolchain@56f84321dbccf38fb67ce29ab63e4754056677e0
254+ - uses : dtolnay/rust-toolchain@b3b07ba8b418998c39fb20f53e8b695cdcc8de1b
229255 with :
230256 toolchain : stable
231- - uses : taiki-e/install-action@d4635f2de61c8b8104d59cd4aede2060638378cc # v2.49.45
257+ - uses : taiki-e/install-action@735e5933943122c5ac182670a935f54a949265c1 # v2.52.4
232258 with :
233259 tool : cargo-machete
234260 - name : cargo machete
0 commit comments