Commit 375b34a
committed
fix(ci): stop changesets from stamping a skip-ci directive on the version commit
`.changeset/config.json` had `"commit": true`, which changesets normalizes to
`["@changesets/cli/commit", { skipCI: "version" }]`. That makes `changeset
version` create the version commit itself, appending GitHub's skip-ci directive
to the message:
RELEASING: Releasing 1 package(s)
Releases:
react-router-devtools@6.2.2
<skip-ci directive>
Two consequences:
1. The `commit: "chore: release"` message configured in the Release workflow was
never used, because the action had nothing left to commit.
2. The directive survived the merge of the Release PR onto main, so GitHub
skipped every workflow on that push. The Release workflow -- the only thing
that runs `changeset publish` -- never fired.
Net effect: merging a Release PR bumped the version, wrote the CHANGELOG and
consumed the changeset, but published nothing. This bit 6.2.2 (bumped in #263 on
Jun 19, never reached npm; zero workflow runs recorded against that commit). It
was latent before that only because an unrelated push to main happened soon
after each release and picked up the publish by accident -- that is how 6.2.1
shipped.
Setting `"commit": false` leaves the commit to changesets/action, which uses the
workflow's `chore: release` message with no skip directive, so merging a Release
PR triggers Release and publishes.
Note: this message deliberately avoids spelling the directive literally, since
GitHub matches it anywhere in a commit message -- an earlier draft of this very
commit skipped its own CI.1 parent becd7c9 commit 375b34a
1 file changed
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
0 commit comments