Versioning

Merid follows Semantic Versioning. Releases are prepared with Changesets and published to npm with provenance.

What counts as public API

  • Component names, props and their documented values.
  • The exported TypeScript types.
  • Documented .mrd- class names, part classes and data attributes.
  • Token names (--mrd-*) and the cascade layer names.

Token values are design decisions. A value may change in a minor release when it fixes a contrast problem or brings a component back in line with the design contract. Such changes are always listed in the changelog.

Before 1.0

While the version is 0.x, a minor release (0.1 → 0.2) may contain breaking changes. Each one is marked in the changelog with a migration note. Patch releases never break.

Deprecation policy

  1. A deprecated API keeps working for at least one minor release before 1.0, and one major release after.
  2. Deprecated props and components are marked with @deprecated in the types, so your editor strikes them through.
  3. In development builds, the first use logs a single console warning naming the replacement.
  4. The docs page shows a Deprecated status and the migration path.

Support window

Only the latest minor release receives fixes. Security fixes are backported to the previous minor release for three months after a new minor ships.