1919 runs-on : ubuntu-24.04-arm
2020 steps :
2121 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
22- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
23- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
22+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
23+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
2424 with :
2525 node-version-file : .node-version
2626 cache : pnpm
4949 needs : [ci-core]
5050 steps :
5151 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
52- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
53- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
52+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
53+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
5454 with :
5555 node-version-file : .node-version
5656 cache : pnpm
7474 runs-on : ubuntu-24.04-arm
7575 steps :
7676 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
77- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
78- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
77+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
78+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
7979 with :
8080 node-version-file : .node-version
8181 cache : pnpm
9494 needs : [ci-core]
9595 steps :
9696 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
97- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
98- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
97+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
98+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
9999 with :
100100 node-version-file : .node-version
101101 cache : pnpm
@@ -161,8 +161,8 @@ jobs:
161161 react-compiler : true
162162 steps :
163163 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
164- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
165- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
164+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
165+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
166166 with :
167167 node-version-file : .node-version
168168 cache : pnpm
@@ -180,7 +180,7 @@ jobs:
180180 TURBO_TEAM : ${{ secrets.TURBO_TEAM }}
181181 E2E_NO_CACHE_ON_RERUN : ${{ github.run_attempt }}
182182 - name : Save Cypress artifacts
183- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
183+ uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
184184 if : failure()
185185 with :
186186 path : packages/e2e/next/cypress/screenshots
@@ -204,8 +204,8 @@ jobs:
204204 full-page-nav-on-shallow-false : [false, true]
205205 steps :
206206 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
207- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
208- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
207+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
208+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
209209 with :
210210 node-version-file : .node-version
211211 cache : pnpm
@@ -219,7 +219,7 @@ jobs:
219219 E2E_NO_CACHE_ON_RERUN : ${{ github.run_attempt }}
220220 FULL_PAGE_NAV_ON_SHALLOW_FALSE : ${{ matrix.full-page-nav-on-shallow-false }}
221221 - name : Save Cypress artifacts
222- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
222+ uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
223223 if : failure()
224224 with :
225225 path : packages/e2e/react/cypress/screenshots
@@ -245,8 +245,8 @@ jobs:
245245 - " v7"
246246 steps :
247247 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
248- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
249- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
248+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
249+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
250250 with :
251251 node-version-file : .node-version
252252 cache : pnpm
@@ -259,7 +259,7 @@ jobs:
259259 TURBO_TEAM : ${{ secrets.TURBO_TEAM }}
260260 E2E_NO_CACHE_ON_RERUN : ${{ github.run_attempt }}
261261 - name : Save Cypress artifacts
262- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
262+ uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
263263 if : failure()
264264 with :
265265 path : packages/e2e/react-router/${{ matrix.react-router-version }}/cypress/screenshots
@@ -279,8 +279,8 @@ jobs:
279279 needs : [ci-core]
280280 steps :
281281 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
282- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
283- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
282+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
283+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
284284 with :
285285 node-version-file : .node-version
286286 cache : pnpm
@@ -293,7 +293,7 @@ jobs:
293293 TURBO_TEAM : ${{ secrets.TURBO_TEAM }}
294294 E2E_NO_CACHE_ON_RERUN : ${{ github.run_attempt }}
295295 - name : Save Cypress artifacts
296- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
296+ uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
297297 if : failure()
298298 with :
299299 path : packages/e2e/remix/cypress/screenshots
@@ -313,8 +313,8 @@ jobs:
313313 needs : [ci-core]
314314 steps :
315315 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
316- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
317- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
316+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
317+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
318318 with :
319319 node-version-file : .node-version
320320 cache : pnpm
@@ -327,7 +327,7 @@ jobs:
327327 TURBO_TEAM : ${{ secrets.TURBO_TEAM }}
328328 E2E_NO_CACHE_ON_RERUN : ${{ github.run_attempt }}
329329 - name : Save Cypress artifacts
330- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
330+ uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
331331 if : failure()
332332 with :
333333 path : packages/e2e/tanstack-router/cypress/screenshots
@@ -369,7 +369,7 @@ jobs:
369369 contents : write # to be able to publish a GitHub release
370370 issues : write # to be able to comment on released issues
371371 pull-requests : write # to be able to comment on released pull requests
372- id-token : write # to enable use of OIDC for NPM provenance
372+ id-token : write # to enable use of OIDC for NPM provenance / trusted publishing
373373 needs :
374374 - docs
375375 - lint
@@ -383,25 +383,59 @@ jobs:
383383 if : ${{ github.ref_name == 'master' || github.ref_name == 'beta' }}
384384 steps :
385385 - uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
386- - uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
387- - uses : actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
386+ - uses : pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061
387+ - uses : actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903
388388 with :
389389 node-version-file : .node-version
390390 cache : pnpm
391391 # Note: we do not use an external Turbo cache for publishing
392392 # to prevent against possible cache collision attacks.
393+ - name : Update npm # Ensure npm 11.5.1 or later is installed for OIDC trusted publishing
394+ run : npm install -g npm@latest
393395 - name : Install dependencies
394396 run : pnpm install --ignore-scripts --frozen-lockfile --filter nuqs...
397+ - name : Verify the integrity of provenance attestations and registry signatures for installed dependencies
398+ run : npm audit signatures
395399 - name : Build package
396400 run : pnpm build --filter nuqs
397401 - name : Semantic Release
398402 run : ../../node_modules/.bin/semantic-release
399403 working-directory : packages/nuqs
400404 env :
401405 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
402- NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
403- - name : Invalidate ISR cache for NPM in the docs
404- run : curl -s "https://nuqs.dev/api/isr?tag=npm&token=${{ secrets.ISR_TOKEN }}"
405- - name : Invalidate ISR cache for contributors in the docs
406- if : ${{ github.ref_name == 'next' && github.event_name == 'push' }}
407- run : curl -s "https://nuqs.dev/api/isr?tag=contributors&token=${{ secrets.ISR_TOKEN }}"
406+ - name : Read package version
407+ id : package-version
408+ run : |
409+ VERSION=$(jq -r '.version' package.json)
410+ echo "version=$VERSION" >> $GITHUB_OUTPUT
411+ echo "Released version: $VERSION"
412+ working-directory : packages/nuqs
413+ - name : Invalidate contributors ISR cache in the docs
414+ if : ${{ github.event_name == 'push' && github.ref_name == 'master' }}
415+ run : |
416+ curl -s "https://nuqs.dev/api/isr?tag=contributors&token=${{ secrets.ISR_TOKEN }}"
417+ - name : Install dependencies
418+ if : ${{ github.event_name == 'push' && steps.package-version.outputs.version != '0.0.0-semantically-released' }}
419+ run : pnpm install --ignore-scripts --frozen-lockfile --filter scripts
420+ - name : Generate release notes
421+ id : release-notes
422+ if : ${{ github.event_name == 'push' && steps.package-version.outputs.version != '0.0.0-semantically-released' }}
423+ run : |
424+ NOTES=$(./release-notes-automation.ts)
425+ echo "$NOTES" >> $GITHUB_STEP_SUMMARY
426+ {
427+ echo 'notes<<EOF'
428+ echo "$NOTES"
429+ echo 'EOF'
430+ } >> $GITHUB_OUTPUT
431+ working-directory : packages/scripts
432+ env :
433+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
434+ - name : Update GitHub release notes
435+ if : ${{ github.event_name == 'push' && steps.package-version.outputs.version != '0.0.0-semantically-released' }}
436+ run : |
437+ echo "${{ steps.release-notes.outputs.notes }}" | \
438+ gh release edit "v${{ steps.package-version.outputs.version }}" \
439+ --notes-file -
440+ env :
441+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments