# What changed in semver

> 9 changes in semver 7 from its official release notes, upgrade guides and advisories: 1 breaking, 1 new APIs and options. Each one cited. Sources checked 2026-10-17. HTML: https://unstale.sh/npm/semver/

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

## semver 7

### Breaking changes

- Numeric segments after x-ranges are now rejected. (7.8.4) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.4)

### New APIs and options

- Adds the truncate function. (7.8.0) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.0)

### Fixes and other changes

- Includes prereleases in the lower bound of tilde ranges when includePrerelease is enabled. (7.8.5) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.5)
- Aligns caret range lower bounds when includePrerelease is enabled. (7.8.3) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.3)
- Fixes incrementing dotted prerelease identifiers. (7.8.2) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.2)
- Build metadata is stripped before comparator trimming. (7.8.1) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.1)
- Prerelease bounds are handled in subset calculations. (7.8.1) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.1)
- The CLI warns when defaulting to --inc=patch. (7.8.0) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.8.0)
- The CLI now passes options to semver.valid() for loose version validation. (7.7.4) — [release notes](https://github.com/npm/node-semver/releases/tag/v7.7.4)
