Repository navigation
ci: move to changesets 3, changesets/action v2, checkout v7 and mise-action v4 - #12
Merged
Merged
Conversation
Bump @changesets/cli to 3.0.3 and @changesets/changelog-github to 1.0.1. The config points at the @changesets/config 4.0.1 schema and sets "format": false, so the CLI no longer formats changesets or CHANGELOG.md (v2 ran its bundled prettier; v3 "auto" would pick a formatter on its own). changesets/action v2.1.2 takes the renamed inputs (commit-message, pr-title, publish-script). commitMode, setupGitUser and the GITHUB_TOKEN env var go away: v2 pushes through the GitHub API by default and passes github-token to the version and publish commands. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BR6x3TNrgMhtDABYaH6hx8
actions/checkout v7.0.1 in every workflow and jdx/mise-action v4.3.0 (Node 24) in CI and Release, both pinned by commit SHA. mise-action keeps install and cache on; v3+ also exports mise.toml [env] to the job, which here is only node_modules/.bin on PATH. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BR6x3TNrgMhtDABYaH6hx8
|
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
Moves the release stack to Changesets 3 and bumps the two actions that still ran on old majors. Job ids, job names and workflow names stay the same, so the required checks (Check, Audit workflows) do not move.
Every third-party action stays pinned by full commit SHA with a matching
# vX.Y.Zcomment. TheMint vland-bot tokenandConfigure git usersteps are unchanged. This PR adds no changeset: it changes CI only and ships nothing in the package.What changes in the next release
On the next push to main, the Release job runs changesets/action v2.1.2 with @changesets/cli 3.0.3. The action checks that the CLI is v3 and passes
GITHUB_TOKENfrom thegithub-tokeninput (the vland-bot app token) to the version and publish commands.The "chore: update versions" PR
changeset versiononchangeset-release/main, which consumesui-icon-rules.mdandtype-family-key.md.commitMode: github-api:push-with-git-clikeeps its default,false.chore: update versions.commit: true, the CLI first makes a localRELEASINGcommit, and the action squashes it into the single API commit. That is why the unchangedConfigure git userstep is still needed.formatisfalse. The v2 CLI ran its bundled prettier 2.8.8 on it. In the simulation this made no visible difference to this CHANGELOG. The point offormat: falseis to stop v3'sautomode from picking a formatter on its own.## 0.3.1/### Patch Changesentry with the docs: say that a step's family in tokens.json names a font token #11 and docs: keep the rules for a UI icon and leave the icons to the site #9 bullets.When that PR is merged
pnpm changeset publishrunspnpm publish --json --access public --tag latest --no-git-checksfor the package. That is the same command as CLI 2.x, checked in the source of both versions.v0.3.1and the GitHub release now come from theCHANGESETS_OUTPUTndjson file. The action sets that file's path, the CLI writes it duringpnpm changeset publish, and the action reads it to create the tag and release through the API.If PR #10 is merged before this branch
0.3.1 ships on the old stack instead. The first v3 Release run then finds no changesets, runs the publish script and exits cleanly with nothing to publish or tag, as
changeset publish-planshowed locally.Both workflows
pull_request_targetorworkflow_runtriggers, andpersist-credentialsis alreadyfalse.mise.toml/mise.lock. mise-action now runsmise install --locked(mise.lockhas linux-x64 entries) and exports themise.toml[env]to the job, which only putsnode_modules/.binon PATH.The real test is the next "chore: update versions" PR, and only the user merges that one.
Evidence
Local checks on this branch:
Release simulation in a throwaway worktree. A test patch changeset was committed first, as CI would have it:
## 0.3.1entry with the docs: say that a step's family in tokens.json names a font token #11 and docs: keep the rules for a UI icon and leave the icons to the site #9 bullets, links and "Thanks @rqbazan".GITHUB_TOKEN=... pnpm changeset versionexited 0 and madeRELEASING: Releasing 1 package(s) @variablelab/brand@0.3.1 [skip ci]. It deleted 3 changesets, added the CHANGELOG entry and changed only theversionline in package.json. Apart from the test bullet, the CHANGELOG matched PR chore: update versions #10.publish-planthen listed@variablelab/brand@0.3.1 (latest)as the only package to publish.Nothing was published or pushed from the simulation.
Merge Danger
Door: two-way
Reverting this PR puts back changesets 2, changesets/action v1.9.0, checkout v4 and mise-action v2. The one step that cannot be undone is an npm publish, and that only happens when the user merges the next "chore: update versions" PR. It is the same version (0.3.1) that the old stack would publish.
Blast Radius: release
If the new action or CLI misbehaves, the risk is a broken or wrong "chore: update versions" PR, or a publish that fails to create the tag or release. Package consumers are not affected until a release is merged. CI (Check, Audit workflows) runs on the same job names, so the rulesets keep matching.
🤖 Generated with Claude Code
https://claude.ai/code/session_01BR6x3TNrgMhtDABYaH6hx8