Releases, Versions, and Deprecations
We currently publish two kinds of Dagster releases:
- Minor releases, e.g. 0.7.0, 0.8.0. We publish a new minor release roughly every few months.
- Dot releases, e.g. 0.8.1, 0.8.2. We publish a new dot release at least once per week.
Breaking Changes & Deprecations¶
We are in the 0.y.z of SemVer. While technically this is "anything goes", we provide guidance to set expectations around deprecations and breaking changes:
- Upgrading to a new dot version within a minor release, e.g. 0.8.1 → 0.8.2, should never result in broken code. If a new dot version does break your code, please help us out by filing an issue on github.
- An exception to the above is “experimental APIs”, which allow us to offer new APIs to users and rapidly iterate based on their feedback. Experimental APIs will emit a warning whenever used, and may be broken even in dot releases.
- As often as possible, deprecation warnings will precede removals. E.g. if we’re currently on version 0.8.5, and we wish to remove an API, we’ll start issuing a deprecation warning when the API is used, and then we’ll omit it from 0.9.0.
- Upgrading to a new minor version, e.g. 0.7.5 → 0.8.0 may result in breakages or new deprecation warnings.
- We'll aim to batch deprecations every four weeks (or so).
The best way to stay on top of what changes are included in each release is through the changelog. We call out breaking changes in “Breaking Changes” sections and deprecations in “Deprecations” sections.