Skip to content

Switch from semantic-release to changesets#2607

Draft
Copilot wants to merge 6 commits intomasterfrom
copilot/switch-to-changeset
Draft

Switch from semantic-release to changesets#2607
Copilot wants to merge 6 commits intomasterfrom
copilot/switch-to-changeset

Conversation

Copy link
Copy Markdown

Copilot AI commented Jan 15, 2026

Migration from semantic-release to changesets

Based on the reference repository (react-mcu), the following changes have been made:

  • Install @changesets/cli as a dev dependency
  • Remove semantic-release from dev dependencies
  • Create .changeset/config.json configuration file (with commit: true)
  • Remove release.config.js (semantic-release config)
  • Update package.json:
    • Change version from "0.0.0-semantic-release" to "10.7.7" (current published version)
    • Update "release" script to use changeset (without redundant build)
    • Add "changeset" script for creating changesets
  • Update .github/workflows/release.yml to use changesets/action instead of semantic-release
  • Test the build to ensure everything works
  • Update CONTRIBUTING.md to reference .changeset/README.md
  • Update .changeset/README.md with detailed instructions
  • Address code review feedback (fix double build, use correct version, match config to reference)
Original prompt

i'd like to switch from semantic-release to changeset, like it is setup in https://github.com/abernier/react-mcu (with a gha)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

@vercel
Copy link
Copy Markdown

vercel Bot commented Jan 15, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
drei Ready Ready Preview, Comment Jan 15, 2026 8:13am

@codesandbox-ci
Copy link
Copy Markdown

codesandbox-ci Bot commented Jan 15, 2026

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Copilot AI and others added 2 commits January 15, 2026 07:31
Co-authored-by: abernier <76580+abernier@users.noreply.github.com>
Co-authored-by: abernier <76580+abernier@users.noreply.github.com>
Co-authored-by: abernier <76580+abernier@users.noreply.github.com>
Copilot AI changed the title [WIP] Switch from semantic-release to changeset setup Switch from semantic-release to changesets Jan 15, 2026
Copilot AI requested a review from abernier January 15, 2026 07:38
Comment thread CONTRIBUTING.md Outdated
Co-authored-by: abernier <76580+abernier@users.noreply.github.com>
Comment thread .changeset/config.json Outdated
{
"$schema": "https://unpkg.com/@changesets/config@3.0.2/schema.json",
"changelog": "@changesets/cli/changelog",
"commit": false,
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot why commit false

i had it true in abernier/react-mcu

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated to "commit": true in 25efd68 to match the react-mcu reference. This will auto-commit changeset files when running yarn changeset.

Co-authored-by: abernier <76580+abernier@users.noreply.github.com>
bigdizzy

This comment was marked as off-topic.

@abernier
Copy link
Copy Markdown
Member

@copilot what do you have to say to #2607 (review)?

Copy link
Copy Markdown
Author

Copilot AI commented Jan 19, 2026

@copilot what do you have to say to #2607 (review)?

I'm unable to access the specific review at that link. Could you please share the feedback or questions from that review directly here?

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/pmndrs/drei/pulls/2607/reviews
    • Triggering command: /usr/bin/curl curl -s REDACTED (http block)

If you need me to access, download, or install something from one of these locations, you can either:

@DennisSmolek
Copy link
Copy Markdown
Member

Changesets have been seriously problematic and were removed from r3f. I dont think this is the path going forward. I saw it was a copilot thing so maybe just an experiment, reopen if you disagree and we can all talk about it

@abernier
Copy link
Copy Markdown
Member

abernier commented Feb 2, 2026

i disagree, changeset is way more powerful and decoupled from git

it also support monorepos

semantic-release has also its downsides, really

and just a draft PR

@abernier abernier reopened this Feb 2, 2026
@DennisSmolek
Copy link
Copy Markdown
Member

i disagree, changeset is way more powerful and decoupled from git

it also support monorepos

semantic-release has also its downsides, really

and just a draft PR
Alright can you give some insights on why its better than the existing setup?

I've had nothing but issues with them and @krispya and I were so annoyed with them we removed them from R3F.

Most dev teams dont know how to use them, they dont seem to store the changelog well and cause more confusion than I'd like.

But maybe I just suck with them, I know @isaac-mason loves them too...

@isaac-mason
Copy link
Copy Markdown
Member

isaac-mason commented Feb 4, 2026

@DennisSmolek I have also fallen a bit out of love with them. I once really liked using changesets for handling publishing in monorepos with multiple packages. But I stopped doing that, and life became simpler 😄

For a project with other contributors, most importantly, I always ended up having to add changesets to other people's PRs anyway. Not much of a time saver!

@krispya
Copy link
Copy Markdown
Member

krispya commented Feb 4, 2026

For me it always adds friction. Enforcing PRs for updates does everything I need to manage and audit releases.

@abernier
Copy link
Copy Markdown
Member

abernier commented Feb 4, 2026

are we now discussing about removing semantic-release too? 😅

Challenging the interest of an automated semver-releasing tool like, Semantic-release or Changesets are, wasn't the goal of this PR initially

We greatly benefited from Semantic-release for drei (@drcmda pushed for it).

This PR was only a draft, trying to harmonise Drei with the rest of pmndrs/* libs which are mosltly using Changesets

@krispya
Copy link
Copy Markdown
Member

krispya commented Feb 4, 2026

I think semantic-release is good for Drei since it rarely has a single maintainer.

@DennisSmolek
Copy link
Copy Markdown
Member

are we now discussing about removing semantic-release too? 😅

No not at all IMO semantic-release is solid.

This PR was only a draft, trying to harmonise Drei with the rest of pmndrs/* libs which are mosltly using Changesets

That was the point I was trying to make and discuss is that many of those are likely moving away from changesets too because we all have had friction with them. Seeing Isaac say the same thing kinda seals the deal in my mind that changesets aren't the way to go but I wanted to hear what others are feeling.

@abernier
Copy link
Copy Markdown
Member

abernier commented Feb 5, 2026

changesets is an important tool when dealing with a monorepo with independent packages, that has inner-deps that should be chain-bumped, CHANGELOGs... etc. (all Lerna was doing before changesets superseeds it)

i like it is less-coupled to git

@bbohlender is also using it

@krispya
Copy link
Copy Markdown
Member

krispya commented Feb 5, 2026

What is the benefit you think there would be in this repo specifically? It is certain the burden would call on maintainers to make the changelogs and there is no monorepo.

@abernier
Copy link
Copy Markdown
Member

abernier commented Feb 5, 2026

publishing independent packages would allow us to actually DO semver

we are actually faking it: we bump major sometimes, but not related to each components breaking changes

@krispya
Copy link
Copy Markdown
Member

krispya commented Feb 5, 2026

Yeah this is a problem. I am interested in a proposal personally, something that lets people have ownership over specific domains. Maybe that is a monorepo?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants