Skip to main content

Strato versioning and releases

  • Concept
  • 5 minutes

Keep your apps running smoothly by staying up-to-date with the latest Strato versions. Regular updates help you get the most value from the Strato Design System and avoid potential problems.

This page explains Strato versioning, release cadence, release notes, and how to update Strato packages.

Versioning

Strato uses semantic versioning, which follows these rules:

  • Version numbers have the format MAJOR.MINOR.PATCH.
  • All changes to the code are aggregated, versioned, and released according to these types:
    • MAJOR release for breaking changes.
    • MINOR release for new functionalities and other non-breaking changes.
    • PATCH release for bug fixes for earlier releases.

Release cadence

Release versionCadenceIncludes (see Definitions)
MAJORPreview components - quarterly (once every three months); Stable components - twice per year (once every six months)Breaking changes, peer dependency updates, removal of deprecated components
MINOREvery two weeksNew functionalities and other fully-compatible changes
PATCHAs neededBug fixes

Lifecycle states

Strato components and tokens exist in three different states:

Preview

  • Component or token is usable but still under testing.
  • Expect quarterly breaking changes.
  • Expect frequent updates for new features and fixes.

Stable

  • Component or token is well-tested and refined.
  • Expect predictable behaviors and stable dependencies.
  • Expect a maximum of two breaking changes per year. (Some components have none.)

Deprecated

  • Components and tokens are replaced by something newer or no longer needed.
  • Components and tokens may be deprecated at any time but won't be removed from the design system until the next MAJOR release (minimum 1 month notice).
  • Deprecations are documented in Upcoming changes (pre-release) and Release notes (post-release).

Update Strato packages

We strongly recommend updating the packages in your environment every two weeks to ensure that all new features and fixes are incorporated.

dt-app update

Use the dt-app update command in your terminal to update all Strato packages at once.

npx dt-app update

This command will update all Strato packages and run any necessary migrations in your environment. All details are provided in the terminal when you run the command.

See the Dynatrace App Toolkit Command reference for more commands.

NPM

You can also update Strato packages individually through NPM:

Strato support

We support two MAJOR versions at once: the latest version and the one before it.

Supported

  • Bugs that matter
  • Security vulnerabilities
  • Issues that could break features or apps
  • Dependencies

Not supported

  • Minor bugs with minimal impact on users
  • Minor visual improvements
  • Issues created by customizing Strato in ways that weren't intended
Note

Need troubleshooting help? See Get help for links.

Release notes

Each new Strato version is documented in Strato release notes. Each package has a dedicated release notes page:

Breaking changes planned for future MAJOR releases are published in Upcoming changes at least one month ahead of the release so you have time to plan and react.

Definitions

Breaking change

Any change that could break apps or significantly change how users interact with the component. Release type: MAJOR

Note

The following don't qualify as breaking changes:

  • Spreading undocumented props onto elements to access native elements for testing.
  • Relying on internal DOM structures. (Internal DOM structures can change at any time.)
  • Overriding a component's display CSS.
  • Not using the @dynatrace/dt-app project structure for the IDE, including build setup and package manager.
  • API changes that break builds.

Bug fix

An update that corrects an error or malfunction in an earlier release. Release type: PATCH

Changelog

A chronological record of code changes. For Strato, the changelog is the source for release notes. It's written to be accessible and relevant to most Strato users. The words "changelog" and "release notes" are sometimes used as synonyms.

New functionality

A new feature or improvement that's compatible with previous releases. It won't cause issues. Also called a "non-breaking change." Release type: MINOR

Peer dependency update

An update to code that other packages depend on to run properly. If you're not familiar with how they work, please take a few minutes to learn about Node.js peer dependencies (external site). Release type: MAJOR

Release note

Information that helps a product's users understand what's new in a specific software version and how it benefits the product. Strato release notes include breaking changes (MAJOR), new functionalities (MINOR), bug fixes (PATCH), and dependency updates (MAJOR). Future breaking changes are published in Upcoming changes.

Upcoming change

Advance notice of a breaking change in a future release. Release type: MAJOR, planned

Figma kits

Strato Figma kits are available to Dynatrace employees. Sign in with your employee credentials for information.

Get help

Go to the Developer Forum in Dynatrace Community for answers to your questions about Strato.

Still have questions?
Find answers in the Dynatrace Community