Open
Description
As of v1.0 we're now obliged to make SemVer MAJOR releases for "breaking" changes. We should clearly document what events constitute a breaking change, both to help consumers of the package understand what is needed each time they upgrade and to help maintainers prepare useful release notes.
To that end, we have at least two "obvious" paths:
- Breaking changes are backwards-incompatible changes to the JSON Schema (e.g., renaming an existing key). This is roughly how
@mdn/browser-compat-data
does versioning, with some documented exceptions. - Breaking changes are backwards-incompatible changes to the JSON Schema (as above) and changes to feature IDs (e.g., renaming a feature, such as
css-grid
togrid
). This is roughly howwebref
andbrowser-specs
handle it.
This also has implications for minor and patch releases (e.g., under route 1, new features constitute a SemVer PATCH release, but under route 2 those are MINOR releases).