ci: version the private package under changesets v3 config defaults - #672
Conversation
…ults The @changesets/cli v2 -> v3 bump (#670) also upgraded @changesets/config to v4, which flips the default for versioning private packages. In v2, private packages were versioned automatically (without git tags); v3 disables both by default. This repo's root package is `private: true`, so `changeset version` now treats it as un-versionable and produces an empty diff. The release action then force-pushes main's tip onto changeset-release/main, which closes the release PR with "No commits between main and changeset-release/main" and strands pending changesets. Restore the prior behavior by opting in explicitly, per the changesets v3 migration guide, and bump the config `$schema` to match the resolved v4. Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #672 +/- ##
=======================================
Coverage 99.86% 99.86%
=======================================
Files 8 8
Lines 732 732
=======================================
Hits 731 731
Misses 1 1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
🚀 Confidence built in #673 so let's now merge this. |
Summary
This pull request restores versioning of the private root package after the
@changesets/cliv2 → v3 upgrade in #670, which is why the release PR (#668) closed and pending changesets are stranded (see #668, and the discussion on #670).@changesets/cli(2.31.0 → 3.0.0) and pulled in@changesets/configv4, which flips the default for versioning private packages.private: true, sochangeset versionnow finds nothing to bump and produces an empty diff.changesets/actionthen force-pushesmain's tip ontochangeset-release/main, closing the release PR withNo commits between main and changeset-release/main."privatePackages": { "version": true, "tag": false }.version: truerestores the bump;tag: falsekeeps this repo's hand-rolledvX/vX.Ytagging inrelease.ymluntouched (changesets never tagged here — this action is not published to npm).$schemaURL to@changesets/config@4.0.0to match the resolved dependency.Verified locally against the CI-resolved
@changesets/cli@3.0.0/@changesets/config@4.0.0: before the changechangeset statusshows no packages to bump; after it shows@slack/slack-github-action -> 4.1.0,changeset versionconsumes the pending changeset and bumpspackage.json/CHANGELOG.md, leaving a non-empty diff.Testing
mainand confirm it recreates thechore: releasePR (targeting4.1.0) with a non-empty diff, rather than closing it.Requirements