chore: replace semantic-release with changesets - #497
Conversation
There was a problem hiding this comment.
Pull request overview
This PR migrates the repository’s release automation from semantic-release to Changesets, shifting version/changelog decisions to PR-time and introducing new CI/workflow automation to enforce and execute that process.
Changes:
- Removed
semantic-releaseconfiguration/dependencies and added@changesets/cliplus Changesets config. - Added a PR CI check to require a
.changeset/*.mdfile. - Introduced a
changesets.ymlworkflow to open version PRs and create GitHub releases on merges.
Reviewed changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
package.json | Removes semantic-release deps; adds Changesets CLI and release-related npm scripts. |
README.md | Documents the new Changesets-based versioning and release workflow. |
.releaserc.json | Deletes semantic-release configuration. |
.github/workflows/checks.yml | Replaces release job with a “changeset required” PR check. |
.github/workflows/changesets.yml | Adds Changesets automation to open version PRs and publish releases on main. |
.changeset/unreleased-since-v2.1.0.md | Adds a bootstrap changeset capturing accumulated changes since v2.1.0. |
.changeset/replace-semantic-release-with-changesets.md | Adds a changeset describing this migration. |
.changeset/config.json | Initializes Changesets configuration (base branch, changelog behavior, etc.). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
ccd7942 to
0599e1fCompareReview the following changes in direct dependencies. Learn more about Socket for GitHub.
|
Justxd22
commented
Apr 18, 2026
@cameri ready
|
Summary
semantic-releaseand all@semantic-release/*plugins frompackage.json.releaserc.json.changeset/config.jsonchangeset-checkCI job tochecks.yml— fails PRs missing a changeset filechangesets.ymlworkflow — creates Version PRs on main and publishes releases when mergedREADME.md— document the new changeset workflowWhy
Changesets give contributors and maintainers explicit control over version bumps and changelog entries at PR time, rather than inferring them from commit message format after the fact.
Test plan
changeset-checkjob passes on PRs that include a.changeset/*.mdfilechangeset-checkjob fails on PRs without a changeset (skip onchangeset-release/mainbranch)changesets.ymlworkflow runs on push to mainnpm run knippasses (no unused deps)npm run build:checkpassesCloses#495
🤖 Generated with Claude Code