背景
Hibernate 是一系列大型项目,但其核心开发团队却非常小,这意味着我们需要选择我们的战斗。
在这方面,我们最容易入手的方法之一就是只维护最新的发布系列。对我们来说,同时支持多个分支是不现实的。
关于维护的讨论总是与关于 版本控制 的讨论有关。就本次讨论而言,有几个重要的考虑因素。
-
预发行版本(Alpha、Beta 和 CR)处于积极开发中,可能会进行合理 API 和 SPI 更改。
-
发行版本被认为是稳定的 - 除了必要的错误修复更改外,代码被认为是稳定的。
-
一个
{major}.{minor}
组合(例如,6.0、6.1、6.2)被称为一个系列。 -
分支和维护基于系列。
兼容性 也影响维护。 |
因此,这里的“维护”是指
-
我们接受错误报告的系列(认为它们有效);
-
我们应用更改的系列;
-
我们积极发布的系列。
维护级别
- latest-stable/stable
-
得到完全维护的系列。
大多数 Hibernate 项目将完全维护限制在最新的系列;Hibernate Validator 维护多个系列。
- 开发
-
处于预发行开发阶段的系列通常与 latest-stable/stable 版本处于相同级别,但我们保留更改新的 API 和 SPI 的权利。
- 有限支持
-
介于 latest-stable/stable 和 end-of-life 之间的维护级别。
回溯到这些系列的更改受到高度限制,并且不保证发布。
我们建议您尽可能升级到较新的系列,或寻求付费支持:下游框架或商业产品(如 Red Hat 的产品)可能提供更强大的保证。
- 生命周期结束
-
该版本已到达其维护和支持生命周期的结束。
我们建议您尽可能升级到更新的系列,因为我们不太可能修复此系列中的错误或提供新版本。