# 生命周期 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.x2019-12-022021-06-305.0.0
4.0.x2020-01-182021-07-174.1.0
4.1.x2020-07-182022-01-174.2.0
4.2.x2020-10-132022-04-124.3.0
4.3.x2021-05-192022-11-186.0.0