V15 Prerelease Branch Strategy #3784
alanbsmith
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Overview
We’re using a different branch strategy leading up to our Canvas v15 release on April 29. This doc outlines the details of that strategy and explains why we’re deviating from our normal process.
What This Means For You
From February 18 until (almost) April 29, if you'd like to test our v4 tokens with Canvas Kit, you can upgrade to
prerelease-nextand have relative stability with regard to visual updates. Please keep in mind, this is still an alpha release and may have some issues. If you find a bug or have a question, please reach out to our Slack support channel or raise an issue.Standard Major Release Branch Strategy
Typically, leading up to a release we merge all our upcoming work to the Canvas Kit
prerelease/majorbranch which automatically releases alpha versions to npm. This works well for the small number of teams who need to test out our major version before it’s stable. Because there were only a few teams testing the alpha, we were able to push out breaking changes in subsequent alpha releases without much thought.V15 Release Branch Strategy
However, our upcoming v15 release introduces many visual breaking changes as we update our tokens, and we have many teams who need to test Canvas Kit v15 before we’re able to release a stable version. Merging breaking changes up to the release creates a lot of confusion for consumers, and trying to manage breaking changes slows down our internal development cycle.
For this release, we are adapting our process to provide more stability for consumers and keep our internal development moving forward. To do this, we created a
v15 developmentbranch fromprerelease/major.On February 18, we released a v15 alpha (15.0.0-alpha.0184-next.0) that updates all our components to use Canvas Tokens Web v4. From that point almost until* our stable release on April 29, all v15 development will be on our temporary
[v15-development](https://github.com/Workday/canvas-kit/tree/v15-development)branch. There will not be any releases from ourv15-developmentbranch – it’s intended purely for our own internal development.Our
prerelease/majorbranch will only receive patches for issues we find related to v4 token updates and forward-merges from ourmaster(v14) andsupport(v13) branches. Any subsequent alpha releases should be stable enough for testing. Please refer to our token upgrade guide as a reference.Tradeoffs & Considerations
The main tradeoff to this new process is we have yet-another branch to manage. We’ll need to make sure it stays in-sync with our other branches as we work. It also means we won’t have an alpha release to test against until we approach our release. We could reduce some of these issues with automated forward merging and visual regression tests.
Beta Was this translation helpful? Give feedback.
All reactions