Versioning
Every @kyralabs package follows semantic versioning from 1.0.0 and shares one version number (DECISIONS D16).
The current version is 1.8.0. All @kyralabs/* packages
release together with the same version, so @kyralabs/[email protected] pairs
with @kyralabs/[email protected], @kyralabs/[email protected]
and the rest.
What changes within 1.x
- Minor releases add components, tokens, package entries and options.
- Patch releases fix bugs and fidelity: behavior or pixels moving closer to the pinned Jetpack Compose source or m3.material.io. A fix that adds API is a minor release.
- A source pin bump (a newer Compose Material3) is a minor release if no token name disappears; otherwise it waits for 2.0.
What waits for 2.0
Anything that breaks a consumer:
- removing or renaming an export, package entry, CSS class, part or modifier, custom property, attribute or event;
- changing a component's DOM contract;
- raising a peer-dependency floor (React is 18.3+ or 19).
A renamed API keeps its old name until 2.0. The old name is marked @deprecated,
and in React it warns once in development. The deprecated Material 3 components (DECISIONS D4)
are also removed in 2.0.
Depending on it
A caret range such as ^1.8.0 takes every compatible release. Keep all
@kyralabs/* packages on the same version: they are released and tested together.
Each package's CHANGELOG.md lists what changed.