ci: adjust outputs of changeset releases to reattempt most recent releases - #2718
Conversation
This reverts commit 05502d9.
🦋 Changeset detectedLatest commit: c316f5f The changes in this PR will be included in the next version bump. This PR includes changesets to release 2 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2718 +/- ##
=======================================
Coverage 89.21% 89.21%
=======================================
Files 65 65
Lines 10393 10393
Branches 473 473
=======================================
Hits 9272 9272
Misses 1089 1089
Partials 32 32
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
The changesets/action v1->v2 migration (#2714) updated the action's inputs but the workflow still read the action's OUTPUTS by their pre-v2 camelCase names. v2 renamed the outputs to kebab-case too (changesets/action#668). Each read returned an empty string, so `has-changesets` never evaluated to 'false', the "Check if publish is needed" step was skipped, and the publish job's gate failed closed -- release PR #2713 merged and bumped versions but never published to npm. Update the two renamed output reads: - outputs.hasChangesets -> outputs.has-changesets - outputs.publishedPackages -> outputs.published-packages (`published` was not renamed in v2, so it is left as-is.) Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
e9d5b78 to
c316f5f
Compare
zimeg
left a comment
There was a problem hiding this comment.
💡 A comment or two of some thoughts ongoing.
There was a problem hiding this comment.
📚 note: This is returned from the most recent #2713 in hopes the next release will find our expected versions and not skip patches.
| @@ -1,6 +1,6 @@ | |||
| { | |||
| "name": "@slack/webhook", | |||
| "version": "8.0.2", | |||
There was a problem hiding this comment.
🐷 note: This returns to the current latest. I'm not wishing to skip versions if the tag never landed!
Summary
This pull request recovers a release that silently failed to publish and fixes the underlying workflow bug.
changesets/actionv1→v2 bump (chore(deps): bump changesets/action from 1.9.0 to 2.1.1 #2714) migrated the action's inputs to kebab-case, but the release workflow still read the action's outputs by their old camelCase names. v2 renamed the outputs too (Rename to kebab-case for root action inputs and outputs changesets/action#668).outputs.hasChangesetsreading empty, thehas-changesets == 'false'gate never matched, the "Check if publish is needed" step was skipped, and the publish job's gate failed closed. Release PR chore: release #2713 merged and bumped versions onmainbut never published to npm (@slack/web-apiand@slack/webhookonmainwere ahead of the npmlatesttags).@slack/web-apiback to8.1.0and@slack/webhookback to8.0.1(matching npm) and restores the consumed changeset, so a corrected release run republishes them cleanly.release.yml, using bracket notation because hyphenated keys cannot be dot-dereferenced in Actions expressions:outputs.hasChangesets→outputs['has-changesets']outputs.publishedPackages→outputs['published-packages']outputs.publishedwas not renamed in v2 and is left unchanged.Testing
Changelogjob does not skip "Check if publish is needed", and that thePublishjob runs (not skipped).@slack/web-api@8.1.1and@slack/webhook@8.0.2publish to npm and get GitHub releases.Requirements