tisonkun commented on code in PR #433: URL: https://github.com/apache/pulsar-site/pull/433#discussion_r1119569802
########## contribute/release-policy.md: ########## @@ -0,0 +1,84 @@ +--- +id: release-policy +title: Release policy +--- + +## Release semantics Review Comment: I lower the relation to semver. Please see the latest commit f29a51cc9178f8a02acf5eb9d99d56e1c19abb1a ########## contribute/release-policy.md: ########## @@ -0,0 +1,84 @@ +--- +id: release-policy +title: Release policy +--- + +## Release semantics + +The Pulsar project follows a variant of [Semantic Versioning](http://semver.org/spec/v2.0.0.html). Existing releases can expect patches for bugs and security vulnerabilities. New features will target minor releases. The difference is that a major version bump will not carry any special meaning in terms of "big features" included in the release or breaking API changes. Instead, it would simply signal a new long-term support (LTS) release. + +For example, + +* 2.10.0 is a feature release; +* 2.10.1 is a patch release; +* 2.11.0 is a feature release; +* 3.0.0 is the first LTS release; +* 3.1.0 is a feature release; +* 3.2.0 is a feature release; +* 3.2.1 is a patch release; +* 4.0.0 is a LTS release. + +## Compatibility between releases + +When upgrading an existing cluster, it is important to upgrade components linearly. + +Before 3.0, upgrade should be done linearly through each minor version. For example, when upgrading from 2.8 to 2.10, it is important to upgrade to 2.9 before going to 2.10. + +Starting from 3.0, additionally, live upgrade/downgrade between one LTS and the next one is guaranteed. For example, + +* 3.0 -> 4.0 -> 3.0 is OK; +* 3.2 -> 4.0 -> 3.2 is OK; +* 3.2 -> 4.4 -> 3.2 is OK; +* 3.2 -> 5.0 is _not_ OK. + +## Release frequency and support expectation + +| | Release frequency | Active Support | Security Support | +|-----------------|-------------------|----------------|------------------| +| LTS release | Every 18 months | 24 months | 36 months | +| Feature release | Every 3 months | 6 months | 6 months | +| Patch release | When it is ready | N/A | N/A | + +This can be translated into: + +* The last 2 LTS releases and the last 2 feature releases are supported. +* Security patches are provided for the past 3 LTS releases and 2 feature releases + +Therefore, users can choose between stay in an LTS release until they are ready to jump into the next LTS, or try the latest releases which contains required features. + +## Supported Versions + +````mdx-code-block +import SupportedVersionsTable from "@site/src/components/SupportedVersionsTable"; + +<SupportedVersionsTable /> +```` + +## Roadmap for release plans + +The next release of Pulsar is 3.0.0, and it has the planned timeline as: + +* 2023-04-11 - RC-1 +* 2023-04-18 - RC-2 +* 2023-04-25 - RC-3 +* 2023-05-02 - Announce 3.0 Release + +## Release cycles + +Generally, one committer shall volunteer as the release manager (RM) for a specific release. + +For feature releases and LTS releases, the last 3 weeks of the release cycle will be marked as a code-freeze period. The RM will branch off from master, and the RM is also responsible for selecting the changes that will be cherry-picked in the release branch. + Review Comment: Updated. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
