-
Notifications
You must be signed in to change notification settings - Fork 43
Release Process
Alexander Pilz edited this page May 31, 2022
·
6 revisions
Defined in https://github.com/Patternslib/Patterns/issues/1012
- The patterns website should always contain the latest stable patterns release, to… (4.2.4 is way too old).
- Problem: We currently don't know what stable means.
- New releases by default are development releases, marked as such with an alpha indicator, e.g.
8.1.0a1
,8.1.0a2
etc. - Once a release is stable enough to make it worthwhile to test it in-depth for production use, we declare a feature freeze. Henceforward only bug fixes are made. These stabilization releases are marked as beta, e.g.
8.1.0b1
,8.1.0b2
etc. - Only when all stakeholders agree the last beta is production ready, is it marked as a production release. All stakeholders here means: development + design + management. A production release is defined as not having an alpha or beta suffix number. The production release is done by re-releasing the latest beta with only a version bump, without any code changes. This then becomes
8.1.0
. - When a new production release is made, the download button on the Patternslib website should be updated to point to this latest production release.
Any invasive work or new feature work that needs to happen while a freeze is ongoing, should start a new version number alpha sequence. For example if we're stabilizing 8.1.0b7
and some new feature work needs to start, that would start on a branch and get released, from that branch, as 8.2.0a1
, without main branch merge. The master merge only happens after the 8.1.0
series production release has been released. Alternatively, when you need parallel branches, the production preparation goes on a branch and main is used for ongoing development. As long as the production release sequence is not disrupted with development changes, either is fine.