Repository navigation
release: v2.3.3 (upgrade setup-node to v6 for OIDC) - #13
Merged
Merged
Conversation
Upgrade actions/setup-node from v4 to v6 in the release workflow. setup-node v4 exports a placeholder NODE_AUTH_TOKEN env var to every step when registry-url is set. The npm CLI picks up that placeholder and uses it instead of falling back to OIDC, which is why v2.3.1 got a misleading 404. v2.3.2 dropped registry-url to work around it, but then the CLI cannot find any registry config and returns ENEEDAUTH. setup-node v6 fixes the underlying issue: no placeholder token is injected, the npm CLI prioritizes OIDC as documented, and Trusted Publishing finally works. registry-url is restored; package-manager-cache:false is set per npm's published guidance for release builds. No code changes vs v2.3.0/v2.3.1/v2.3.2; this is purely a release-plumbing fix.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Third attempt at fixing the broken release pipeline. Previous attempts:
workflow_dispatch(correct), butsetup-node@v4 + registry-urlinjects a placeholderNODE_AUTH_TOKENthat npm CLI picks up over OIDC. Got 404.registry-urlto avoid the placeholder. But then npm CLI has no registry config at all and returnsENEEDAUTH.Root cause
actions/setup-node@v4and earlier exportsNODE_AUTH_TOKEN: XXXXX-XXXXX-XXXXX-XXXXXas a placeholder env var when you passregistry-url. The npm CLI uses that placeholder for auth and never falls back to OIDC.actions/setup-node@v6(Oct 2025) changed this behavior: it no longer injects the placeholder, so the npm CLI's documented OIDC-first auth path actually runs.This matches the official npm Trusted Publishing example, which uses
setup-node@v6withregistry-urlset andpackage-manager-cache: false.Changes
actions/setup-node@v4→@v6(only inrelease.yml;ci.ymlkeeps v4 since it does not publish).registry-url: https://registry.npmjs.org(safe again with v6).package-manager-cache: falseper npm's published guidance for release builds.Cleanup
2.3.2and the GitHub Release2.3.2have been deleted (no npm package existed, nothing to break).[2.3.2]CHANGELOG entry folded into a new[2.3.3]entry documenting both fixes.Release procedure once this lands
Test plan
2.3.3runs the workflow end to end.npm view undisclosed@2.3.3 versionreturns2.3.3.npm view undisclosed dist-tags.latestreturns2.3.3.