# Changesets 3.0.0 - Product: Changesets (https://whatsnew.fyi/product/changesets) - Vendor: Changesets - Date: 2026-08-11 - Version: 3.0.0 - Original notes: https://github.com/changesets/changesets/releases/tag/%40changesets/cli%403.0.0 - Permalink: https://whatsnew.fyi/product/changesets/releases/3.0.0 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **changed** — Rename the `changeset tag` command to `changeset git-tag` - **changed** — Set supported package manager versions in `engines` field to npm >=10.9.0, pnpm >=10.0.0, and yarn >=4.5.2 - **changed** — Make `changeset version` exit with code 1 when there are no unreleased changesets instead of exiting with code 0 - **changed** — Bump supported Node versions to ^22.11 || ^24 || >=26 - **removed** — Remove the `prettier` option in `.changeset/config.json` in favor of `format` which supports `auto`, `prettier`, `oxfmt`, `deno`, `dprint`, and `false` - **changed** — Move versioned prerelease changesets to `.changeset/pre/` folder instead of tracking them in `.changeset/pre.json` with auto-migration on next run - **removed** — Remove Yarn Classic support - **changed** — Publish packages with only prerelease versions with the prerelease tag in prerelease mode if the target registry doesn't auto-assign `latest` tag - **removed** — Remove warning messages about using v1 configs - **changed** — Update `@manypkg/get-packages` to drop support for Bolt monorepos and add support for npm monorepos - **removed** — Remove support for the `--sinceMaster` flag for `changeset status` in favor of `--since=master` or `--since=main` - **removed** — Remove the `pre.json` `initialVersions` property - **changed** — Allow `CommitFunctions` to be both sync and async, with `defaultCommitFunctions` now being sync - **changed** — Publish this package as ES module - **removed** — Remove support for the deprecated `___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH.useCalculatedVersionForSnapshots` config in favor of `snapshot.useCalculatedVersion` ###### Major Changes - [#2128](https://github.com/changesets/changesets/pull/2128) [`7113c01`](https://github.com/changesets/changesets/commit/7113c014330b3f972e54ece8e67731613193958f) Thanks [@Andarist](https://github.com/Andarist)! - Renamed the `changeset tag` command to `changeset git-tag`. - [#2074](https://github.com/changesets/changesets/pull/2074) [`3599e47`](https://github.com/changesets/changesets/commit/3599e47217d2ed2dd60da628fe4d1d3fc4b849c7) Thanks [@bluwy](https://github.com/bluwy)! - Set supported package manager versions in `"engines"` field, including npm >=10.9.0, pnpm >=10.0.0, and yarn >=4.5.2. - [#1860](https://github.com/changesets/changesets/pull/1860) [`92b1c1b`](https://github.com/changesets/changesets/commit/92b1c1b6b1733b1f1799a73828d378646b068798) Thanks [@mixelburg](https://github.com/mixelburg)! - `changeset version` now exits with code 1 when there are no unreleased changesets, instead of silently exiting with code 0. This makes it easier to detect when a version step is a no-op — for example, to prevent accidentally publishing packages with incorrect version tags when using `--snapshot` mode. - [#1482](https://github.com/changesets/changesets/pull/1482) [`df424a4`](https://github.com/changesets/changesets/commit/df424a4a09eea15b0fa9159ee0b98af0d95f58a7) Thanks [@Andarist](https://github.com/Andarist)! - Bumped supported Node versions to `^22.11 || ^24 || >=26` - [#1994](https://github.com/changesets/changesets/pull/1994) [`062530b`](https://github.com/changesets/changesets/commit/062530b825d53abc9d8934f3a50cc61ff3ff82b8) Thanks [@bluwy](https://github.com/bluwy)! - The `prettier` option in `.changeset/config.json` has been removed in favor of `format`. `format` supports `"auto"`, `"prettier"`, `"oxfmt"`, `"deno"`, and `"dprint"`, and `false` disables formatting. If you previously used `prettier: false`, migrate to `format: false` or remove the option to use automatic formatter detection. - [#2190](https://github.com/changesets/changesets/pull/2190) [`96b65ee`](https://github.com/changesets/changesets/commit/96b65eec4af2c58301a11cd7dff42a6bde9c9f8a) Thanks [@bluwy](https://github.com/bluwy)! - Move versioned prerelease changesets to `.changeset/pre/` folder instead of accumulating in the root and tracking the versioned changeset ids in the `.changeset/pre.json` file. Existing `pre.json` will auto-migrate to this new structure on the next run of `changeset version` or when calling `changeset status`. This change allows easier management of versioned prerelease changesets (for the final stable release) and current queued changesets (for the next prerelease). Changesets in `.changeset/pre/` can be edited or deleted depending if it's still relevant for the final stable release of a package. There's no need to synchronize the changeset ids in `pre.json` if certain changesets are deleted. - [#2145](https://github.com/changesets/changesets/pull/2145) [`f5887ff`](https://github.com/changesets/changesets/commit/f5887ff54a6b78eae87ae85fdac3294c4464da78) Thanks [@Andarist](https://github.com/Andarist)! - Removed Yarn Classic support - [#2097](https://github.com/changesets/changesets/pull/2097) [`8c88f6a`](https://github.com/changesets/changesets/commit/8c88f6a3362628ca580835a1a1f2310056ee5743) Thanks [@Andarist](https://github.com/Andarist)! - Packages with only prerelease versions published will now be published with the prerelease tag in the prerelease mode _if_ the target registry doesn't auto-assign `latest` tag. npm registry itself does that and such packages will continue to be released with `latest` tag (and not with the configured prerelease tag). - [#1879](https://github.com/changesets/changesets/pull/1879) [`c76b232`](https://github.com/changesets/changesets/commit/c76b232abc76f73592a21f0d5df9cc89406a31dc) Thanks [@beeequeue](https://github.com/beeequeue)! - Removed warning messages about using v1 configs. They will now be silently ignored. - [#1655](https://github.com/changesets/ _[Truncated at 4000 characters — full notes: https://github.com/changesets/changesets/releases/tag/%40changesets/cli%403.0.0]_