Skip to content

Banner

Announcing Changesets v3

11 August 2026

Today, we are excited to announce the release of Changesets v3!

Since the release of v2 seven years ago, this new version brings a host of improvements, cleanups, and modernizations to the Changesets CLI and its packages, and stands as a stepping stone for more ambitious changes we have planned for the future.

Quick links:

If you or your company uses Changesets, you can help support our work to improve and evolve the project via our Open Collective or 💖 GitHub Sponsors.

The New Stuff

Breaking changes

Check out the Migrate from v2 to v3 guide for a full list of breaking changes.

Documentation Website

You are currently reading this post on our new website: https://changesets.dev!

With new and re-written docs, we hope this makes it easier to get started with Changesets and find the information you need.

Modernized Tooling

All Changesets packages have been updated to ESM-only and require Node.js ^22.11 || ^24 || >=26. The install size and number of dependencies have also been greatly reduced:

  • Install size: 16.1MB -> 2.1MB
  • Dependencies: 95 -> 39

Internally, we are now using pnpm, tsdown, rolldown, vitest, oxfmt, and more to develop and build our packages.

Diagram showing install size shrinking by 88%Diagram showing install size shrinking by 88%

Less aggressive peer dependency bumping

Previously, if Changesets saw a minor version bump, it would bump peer dependents by a major version, even if dependent's usage of the package hasn't been broken.

Now, all change types will bump peer dependents by a patch version, while authors can still mark the dependent as having a major change in the same changeset file if needed.

This has been the most requested change to Changesets for years (as can be seen in the closed issues), and we're happy to finally release it!

graph showing that peer dependents are bumped by patch versions instead of majorgraph showing that peer dependents are bumped by patch versions instead of major

More robust and flexible version, pack, and publish flows

We have created new commands and GitHub Actions to improve automated publishing workflows.

This allows users to implement a "build, pack, and publish" flow, the recommended way to publish packages by the e18e community.

Check out the new Automating Changesets guide for more information.

Regarding staged publishing

We are working on it, and it will be included in the next feature update.

Publishing flow diagramPublishing flow diagram

Improved CLI argument parsing and UX

Changesets now uses cac for CLI arguments and help messages, and @clack/prompts for CLI prompts and rendering, which should make the CLI prettier and easier to use.

cli flow example

Use installed formatters to format changelogs

Changesets now defaults to using any supported formatters it finds installed in the project, instead of pulling in a (potentially duplicate) Prettier version.

It supports detecting prettier, oxfmt, deno, and dprint, using our new @changesets/format package.

Check the migration guide for how to configure it.

Thanks

This release was lead by the new Changesets team, including:

  • Mateusz Burzyński
  • Bjorn Lu
  • Adam Haglund

We'd also like to thank all contributors who have helped discuss, test, and improve Changesets v3 during its development.

If you're interested in helping the future of Changesets, come join us on Discord!

As Changesets remains one of the most popular release tool in the npm ecosystem, with more than 3M weekly downloads, we'd like to thank everyone who has supported Changesets over the years.