# What changed in lerna

> 19 changes in lerna 9 to 10 from its official release notes, upgrade guides and advisories: 6 breaking. Each one cited. Sources checked 2026-10-20. HTML: https://unstale.sh/npm/lerna/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## lerna 10

### Breaking changes

- Choose whether a stale remote in CI causes an error or is skipped; the default is error. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- Configure whether a stale remote in CI causes an error or is skipped; the default is error. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- Lerna now uses current conventional-changelog APIs instead of the deprecated core stack; generated changelog output may differ, so custom presets should be verified. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- Lerna is now shipped as ESM-only, changing how consumers load the package. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- The lowest supported Node.js version is now 22.13.0; supported major versions are 22, 24, and 26. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- Versioning and publishing now throw EBEHIND in CI when the checkout is behind the latest remote; previously this occurred only outside CI. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)

### Tooling

- Bun is now a supported package manager. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)

### Fixes and other changes

- Errors from failed prompts are now reported, making prompt failures visible to developers. (10.1.1) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.1.1)
- Fixes resolution of conventional-commits-filter when using --conventional-commits. (10.1.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.1.0)
- Uses colorize instead of an undeclared chalk dependency during initialization. (10.1.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.1.0)
- Keeps the modern writer template when a preset includes a legacy writer guard. (10.1.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.1.0)
- Skips unnecessary package managers during release. (10.0.1) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.1)
- Fixes a missing peer dependency in Lerna 10. (10.0.1) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.1)
- Changelog presets that expose only the ESM import condition are now supported. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- OIDC trusted publishing on CircleCI is now supported. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)
- Output from publish and postpublish lifecycle scripts is now shown. (10.0.0) — [release notes](https://github.com/lerna/lerna/releases/tag/v10.0.0)

## lerna 9

### Tooling

- Expanded the supported version range to include Nx v22.x. (9.0.1) — [release notes](https://github.com/lerna/lerna/releases/tag/v9.0.1)

### Fixes and other changes

- lerna version supports ESM and the new v8+ conventional-changelog preset API. (9.0.7) — [release notes](https://github.com/lerna/lerna/releases/tag/v9.0.7)
- A ./ prefix in workspace globs is normalized for package detection. (9.0.7) — [release notes](https://github.com/lerna/lerna/releases/tag/v9.0.7)
