chore(release): bootstrap 0.1.2 recovery#53
Merged
Conversation
Manually applies what release-please would have done if the docs-only trigger commit in #52 had been a "user-facing" type (release-please skips docs/chore/ci/etc. even when Release-As: is present — Release-As overrides version, not the release-trigger gate). - Bumps both packages to 0.1.2 in package.json - Bumps .release-please-manifest.json to claim 0.1.2 for both, so release-please future runs treat 0.1.2 as the last released state - Adds CHANGELOG entries documenting the 0.1.1 → 0.1.2 history: why 0.1.1 was tagged but never published (PR #45 + PR #51 bug recovery), what consumers should expect After this merges: 1. Manually tag cachekit-v0.1.2 and cachekit-core-ts-v0.1.2 on the merge commit, push tags 2. cachekit-core-ts-v0.1.2 tag triggers build-native.yml → publishes the main core-ts package + creates all 5 platform packages 3. workflow_dispatch release-please.yml with force_release: true → publishes @cachekit-io/cachekit@0.1.2 (release-please job will skip; force_release path checks out github.sha and publishes whatever main HEAD says, which is 0.1.2) 4. After all 7 packages exist on npm, configure trusted publishers 5. Take PR #50 out of draft and merge it
📝 WalkthroughWalkthroughVersion 0.1.2 is released across two packages. The release manifest and package metadata are updated to reflect the new version, and comprehensive changelog entries document the fixes and changes in this release, including CI publish authentication resolution, Node.js runtime requirement updates, and the inclusion of all native platform packages. ChangesVersion 0.1.2 Release
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
Comment |
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.
Summary
Manually applies what release-please would have done if the docs-only trigger commit in #52 had been a "user-facing" type. Release-please skips
docs/chore/ci/etc. commits even whenRelease-As:is present —Release-As:overrides the version, not the release-trigger gate.Rather than fake a
fix:commit (which would have been dishonest, per the feedback on #52's earlier draft), this PR bypasses release-please entirely for the one-time recovery. Future releases use the normal release-please flow.What changes
.release-please-manifest.json0.1.2so release-please future runs treat 0.1.2 as the last released statepackages/cachekit/package.jsonversion: 0.1.1 → 0.1.2packages/cachekit-core-ts/package.jsonversion: 0.1.1 → 0.1.2packages/cachekit/CHANGELOG.md## [0.1.2]section explaining the 0.1.1 → 0.1.2 historypackages/cachekit-core-ts/CHANGELOG.mdManual steps after this merges
Tag the merge commit and push:
The
cachekit-core-ts-v0.1.2tag triggersbuild-native.yml→ publishes@cachekit-io/cachekit-core-ts@0.1.2+ creates all 5 platform packages on npm (napi flag fix from fix(ci): use --output-dir instead of removed --artifacts-dir napi flag #51 is in place).workflow_dispatch release-please.ymlwithforce_release: true→ publishes@cachekit-io/cachekit@0.1.2. The release-please job inside will skip (no user-facing commits since 0.1.1), but thepublish-cachekitjob hasforce_release == 'true'as a fire condition and will check outgithub.sha(main HEAD, now 0.1.2) and publish.Verify all 7 packages exist on npm:
Configure trusted publishers on npmjs.com for each of the 7 packages.
Take ci: switch npm publish to OIDC trusted publishing (removes NPM_TOKEN) #50 out of draft and merge it. Next release uses OIDC; no
NPM_TOKENneeded.Delete the
NPM_TOKENrepo secret.Why this isn't tagged by release-please
Release-please reads the manifest to know what was last released and proposes the next version from commit history. Once the manifest claims 0.1.2 is already released, release-please will look for commits after this PR for the next release. No release PR will be generated for 0.1.2 — that's the whole point of the manual bootstrap.
Test plan
pnpm installconfirms lockfile already in sync (workspace deps useworkspace:*)build-native.ymlrun on the tag succeeds end-to-end (including the previously-broken artifact-move step)workflow_dispatchrelease-please publish-cachekit succeedsSummary by CodeRabbit
Release Notes
Chores
Documentation