Skip to content

Release process

Tõnis Tobre edited this page Sep 3, 2026 · 6 revisions

This page describes how the TEDI libraries are released: react, angular and core.

Release cadence

The aim is a stable release roughly once a month, usually on last Thursday. The exact date moves (holidays, vacations and the state of rc all shift it) so treat the cadence as a target rather than a fixed schedule. If an urgent fix is required, the schedule is adjusted or the fix is released as a hotfix.

How much the version increases is decided by the commits in the release, not by the calendar: a breaking change produces a major version, a new feature a minor one, a fix a patch. A monthly release is therefore not automatically a major release, recent ones have been a mix of minor and major.

Release candidate (rc)

react and angular release continuously to the rc branch. Every merge into rc publishes a pre-release version, so a change can be used and tested straight away without waiting for the monthly release.

When the release is ready to ship, rc is merged into main through a pull request and the stable version is published from there. See Gitflow for the branch mechanics.

Versions and tags

Versions and release notes are generated by semantic-release from the commit messages. See Commit convention.

Each repository tags with its own package prefix, and pre-releases carry an -rc.N suffix:

Example tag
Stable react-18.1.0, angular-7.1.0, core-6.7.0
Pre-release react-19.0.0-rc.12, angular-7.2.0-rc.5

What is released together

Repository Stable releases from Pre-releases Cadence
react main yes, from rc monthly, together with angular
angular main yes, from rc monthly, together with react
core rc no independent, as needed

React and Angular are released simultaneously, the same release day, so the two libraries stay in step.

core runs its own cycle. It releases from rc rather than main, and it publishes no pre-releases: merging into core's rc produces a stable version directly. Core is released as needed rather than on the monthly train, which is why its version numbers move independently of the component libraries.

Some core releases come from design token updates: when Figma variables change, they are exported into core as tokens.json and SCSS variables and released like any other change. This is separate from a design release in the sense below.

Design releases

Design component updates are Figma library releases. They happen irregularly, when the designer decides to release a batch, rather than on the monthly cycle.

These releases are included in the development release notes, so new and updated design components are documented alongside the component library changes.

Release notes & changelog

  • Full release notes for React, Angular and Core are maintained here: Release Notes
  • Each repository also keeps a CHANGELOG.md, generated by semantic-release, and GitHub tracks every release and tag automatically.

Clone this wiki locally