When we release Backpack packages, we use semver to ensure that changes made don't cause unexpected issues. The following reasoning should be followed.
A change is major
if:
- Changes are not backwards compatible.
- Breaking changes to components such as updating the API or visual changes.
- Changes to tokens such as changes to colours or changes to values such as padding/margins.
- Deprecation to tokens, components or API.
- Adding new functionality to a component.
A change is minor
if:
- Changes where the updates are only in the Backpack component itself and not used publicly.
- Added new functionality to a component that didn't exist before and are not mandatory meaning there would be no impact on release.
- Adding a new icon that is not in used yet.
- Adding a new component to the Backpack library.
A change is patch
if:
- Only a dependency that a component uses needs an upgrade to improve functionality in the component.
- Bug fixes.
- Quality fixes such as
flow
,eslint
orprettier
.
You can find out more about the benefits of semver
on semver.org