Repository navigation
chore(deps): bump changesets/action from 1.9.0 to 2.1.2 #3013
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -42,7 +42,7 @@ jobs: | |
|
|
||
| - name: Create or update Version Packages PR | ||
| id: changesets | ||
| uses: changesets/action@a45c4d594aa4e2c509dc14a9f2b3b67ba3780d0d # v1 | ||
| uses: changesets/action@ae32849d5ba541f9ae29e40e22a623bc13562f51 # v1 | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 nit (optional): .github/workflows/release.yml — CLAUDE.md says comments say what the code does: both changed Why this was flaggedNothing fails at runtime from the comment itself. The Verification: CLAUDE.md (base 9bc40e9) principle 6 reads verbatim: "The words are true — Changesets, docs and comments say what the code does." The diff changes .github/workflows/release.yml:45 and :84 to |
||
| env: | ||
| GITHUB_TOKEN: ${{ github.token }} | ||
|
|
||
|
|
@@ -81,7 +81,7 @@ jobs: | |
| run: npm install -g npm@11.5.1 | ||
|
|
||
| - name: Publish to npm | ||
| uses: changesets/action@a45c4d594aa4e2c509dc14a9f2b3b67ba3780d0d # v1 | ||
| uses: changesets/action@ae32849d5ba541f9ae29e40e22a623bc13562f51 # v1 | ||
| with: | ||
| publish: pnpm run ci:publish | ||
|
Comment on lines
+84
to
86
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔴 Releases stop publishing to npm after this merges: the publish job runs the action without any publish script, so no package is pushed. The PR bumps changesets/action from v1 to v2.1.2, and v2.0.0 renamed the root action input Why this was flaggedOn every push to main, the publish job at release.yml:49 runs changesets/action pinned to ae32849d5ba541f9ae29e40e22a623bc13562f51 (release.yml:84), which the PR states is v2.1.2. The PR's own release notes for v2.0.0 (#681) say the root input Verification: The diff only swaps the SHA (release.yml:45 and :84) and leaves the publish step's input untouched (release.yml:86). changesets/action v2.0.0 renamed |
||
| env: | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔴 Maintainers lose npm publishing after a Version Packages PR merges: the Publish job is skipped on every push to main instead of running. The PR's own changelog says v2.0.0 renamed the root action's outputs to the sub-actions' kebab-case convention, so the v2 action pinned at release.yml:45 emits
has-changesets, nothasChangesets. The job output at release.yml:18 therefore reads an empty string, and the condition at release.yml:53 (== 'false') is never true. Fix: read the v2 output name (steps.changesets.outputs.has-changesets) at release.yml:18, and check every othersteps.changesets.outputs.*reference against the v2 action.yml; this is separate from the renamedpublishinput at release.yml:86. [also at: .github/workflows/release.yml:18 - If v2 renamed the root action's outputs along with its inputs, the Publish job is silently skipped on every push to main after this merges. release.yml:18 exportssteps.changesets.outputs.hasChangesetsfrom the new v2.1.2 pin at release.yml:45, and the Publish job's gate at release.yml:53 only runs when that value is the string 'false'.]Why this was flagged
Trigger: any push to main (release.yml:3-6), which runs the version job. The version step at release.yml:45 now runs changesets/action at ae32849d5ba541f9ae29e40e22a623bc13562f51; the quoted v2.0.0 changelog (#681) says the root action's inputs and outputs were renamed to match the sub-actions' conventions, which are kebab-case, so the output is
has-changesets. release.yml:18 still mapssteps.changesets.outputs.hasChangesets, which under v2 is an unset output and evaluates to ''. release.yml:53 gates the publish job onneeds.version.outputs.hasChangesets == 'false'; '' == 'false' is false, so the Publish job is skipped on every run, including the run right after a Version Packages PR merges. On the base branch v1 emitshasChangesets, the condition evaluates true when no changesets are pending, and the publish job runs. This is independent of the already-filedpublish->publish-scriptrename at release.yml:86: fixing that input alone still leaves the job skipped by this condition.Verification: release.yml:18 exports
hasChangesets: ${{ steps.changesets.outputs.hasChangesets }}from the step at release.yml:43-47, and release.yml:53 gates the Publish job onneeds.version.outputs.hasChangesets == 'false'. If the v2 action no longer emits the camelCasehasChangesetsoutput, the job output is the empty string,'' == 'false'is never true, and the Publish job (release.yml:49-89) is skipped on every push.