生命周期 EOL
概要
自版本发布之日起,EMQX 企业版将为产品主要版本提供 18 个月的维护周期,同时我们会对最近两个主要版本分支的最后次要版本持续维护。
版本类型
- 主要版本,如 3.0.0, 4.0.0, 5.0.0, and 6.0.0 提供给我们一个引入非向后兼容功能的机会。
- 次要版本,比如 4.1.0 和 4.2.0,提供给我们加入新功能的机会。
- 维护版本,比如 4.1.1 和 4.1.2,只用于修复问题。维护活动在所有版本都会发生,但是主要通过次要版本的支流版本(例如 4.1.x)来确定为特定代码分支提供多长时间的维护。对次要版本的主动维护是指我们会修复一些错误,并将一些修复向后迁移至此代码分支。
维护政策
我们的目标是维护当前主要版本的最新次要版本,以及上一个主要版本的最新次要版本。我们观察到有些用户经常升级,随时与我们的版本支流保持同步。这些用户可以一直使用最新的次要版本支流版本,并通过他们选择部署的维护版本获取修复。例如,这些用户可以紧跟我们的 EMQX 版本:4.0.0、4.0.1、4.2.0 等等。
我们知道,并非所有用户都会在我们发布新版本后就立即升级。为方便这一类用户,我们会继续维护上一个主要版本的最新次要版本。以 EMQX 3.x 为例,我们会继续为 3.x.x 系列提供维护。这样一来,这一类用户只需对目前运行的软件做一些小更改,即可完成修复。
我们对最近发布的次要版本的维护将持续到下一个主要版本发布。例如,我们对 EMQX 3.x.x 的维护将持续到 EMQX 5.0.0 正式版本发布。EMQX 5.0.0 发布后,我们将继续维护最近发布的 4.x 系列,并开始维护 5.0.x 次要版本系列,接着是 5.1.x 次要版本系列、5.2.x 次要版本系列。
我们有时会将修复向后迁移至次要版本的其他支流版本。比如,当多个分支可能都出现一个非常严重的安全漏洞时,我们会慎重地做出向后迁移的决定,不过我们希望尽少发生这样的情况。
维护表
以下表格内容基于上述政策。 不过偶尔会进行调整,如我们在一个新的主要版本发布之后发布了一个新的次要版本, 那样的话,下面的表格将会更新,然后实施上述的政策。
版本 | 发布日期 | EOL 日期 | 维护至 |
---|---|---|---|
3.4.x | 2019-12-02 | 2021-06-30 | 5.0.0 |
4.0.x | 2020-01-18 | 2021-07-17 | 4.1.0 |
4.1.x | 2020-07-18 | 2022-01-17 | 4.2.0 |
4.2.x | 2020-10-13 | 2022-04-12 | 4.3.0 |
4.3.x | 2021-05-19 | 2022-11-18 | 6.0.0 |
4.4.x | 2021-12-21 | 2023-06-20 | 6.0.0 |