ORM 版本发布和成熟度级别
本页解释了 Prisma ORM 的发布流程、版本控制方式以及如何处理版本发布过程中可能发生的重大更改。
版本发布
Prisma ORM 版本通常每三周发布一次。请注意,这不是硬性规定——版本发布可能会因内部原因而推迟。
产品成熟度级别
一个版本可以包含处于不同成熟度级别的产品或功能。成熟度级别描述了产品或功能的完整性和用户可以期望的重大更改情况。
注意:从版本2.13.0开始,“实验性”不再是产品成熟度等级的一部分。
抢先体验
如果某个功能或产品处于抢先体验阶段
- 我们已经验证了一个问题,并且正在考虑解决方案,但不能确定该解决方案是否完整或是否完全适用。
- 我们希望收集更多反馈并根据需要调整解决方案,同时了解用户已准备好应对重大的重大更改
我们不建议在生产环境中使用抢先体验功能或产品。
预览
如果某个功能或产品处于预览阶段
- 我们已在方向和表面方面验证了该功能或产品。
- 除非版本发布说明和文档中另有说明,否则用户可以依赖该功能或产品以及相关 API 基本上保持稳定。
- 没有已知的重大问题,尽管可能存在次要错误。
- 我们欢迎您对此提供反馈,以便尽快使解决方案稳定。
预览版通常在功能标记后面可用,或者需要某种形式的选择加入(例如,通过在 CLI 中提供--preview-feature
标志或将它们添加到 Prisma 模式中generator
块中的previewFeatures
属性来为 Prisma Client 提供)。
我们不建议在生产环境中使用预览功能或产品。
另请参阅:所有当前可用的预览功能。
正式发布 (GA)
如果某个功能或产品处于正式发布阶段
- 该解决方案已测试了一段时间,并且我们收到了足够的反馈,可以认为它稳定并已准备好投入生产使用。
- 在 99% 的情况下应该不会出现错误(无法保证软件完全没有错误)
版本控制
Prisma ORM 的发布方案遵循语义版本控制 (SemVer),从版本3.x.x
开始。
Prisma ORM 和语义版本控制 (SemVer)
SemVer 版本控制是如何工作的?
语义版本控制 (SemVer) 对版本升级使用以下规则(引自SemVer规范)
给定一个版本号MAJOR.MINOR.PATCH
,递增
MAJOR
版本,当您进行不兼容的 API 更改时,MINOR
版本,当您以向后兼容的方式添加功能时,以及PATCH
版本,当您进行向后兼容的错误修复时。
Prisma ORM 版本控制如何遵循 SemVer?
从版本3.x.x
开始,Prisma ORM 严格遵循SemVer版本控制方案。
以下是 Prisma ORM 如何遵循 SemVer 的简要概述
- 稳定表面(即正式发布)中的重大更改仅在新的
MAJOR
版本中引入。 - 重大更改仍然可以在
MINOR
中推出,但仅限于默认情况下未激活的选择加入预览和抢先体验功能(例如,通过预览功能标记或特定选择加入选项或新的 CLI 命令)。 - 选择加入的重大更改,即在
MINOR
中发布的预览和抢先体验,仅会在新的MAJOR
版本中提升到正式发布(无需选择加入)。
给定一个版本号MAJOR.MINOR.PATCH
,Prisma ORM 的版本号按如下方式递增
- 当包含重大更改的主要产品更新正式发布时,
MAJOR
版本递增。 - 当发布添加向后兼容新功能的产品更新时,
MINOR
版本递增。如果功能包含重大更改,则只能在选择加入的情况下引入,即抢先体验和预览。 - 当修复功能错误且始终向后兼容时,
PATCH
版本递增。
注意:直到版本
2.28.0
,Prisma ORM 并未严格遵循 SemVer 版本控制。这意味着在2.MINOR.PATCH
范围内,MINOR
版本可能包含重大更改。要详细了解 Prisma ORM 对 SemVer 的采用,请查看博文。