我们正在调整发布策略,以更严格地遵循语义化版本控制。未来,稳定开发界面(即正式发布)中的破坏性变更将只随主版本递增而推出。

总结
以下是我们正在实施的新规则的简要概述
- 通过采用 SemVer,我们让用户更容易理解哪些版本可能包含破坏性变更。采用 SemVer 仅仅是我们发布策略的调整,旨在与行业实践保持一致并改善开发者体验。
- 稳定界面(即正式发布)中的破坏性变更将只在新主版本中引入。
- 破坏性变更仍可在次版本中推出,但仅限于默认不激活的选择启用预览版和早期访问功能(例如,通过预览功能标志、特定选择启用选项或新的 CLI 命令)。
- 选择启用的破坏性变更(即预览版和早期访问功能),在次版本中发布后,将仅在新的主版本中提升为正式发布(无需选择启用)。
Prisma 发布版本采用 SemVer
语义化版本控制 (SemVer) 是一种约定俗成的发布策略,它明确规定了用户何时可以预期软件发布中的破坏性变更。
尽管我们已经为 Prisma 发布遵循了三位数的 SemVer 表示法,但我们尚未完全遵循实际的 SemVer 语义。这意味着我们有时会在次版本递增时发布破坏性变更。
未来,次版本递增中的破坏性变更将始终是选择启用的。Prisma ORM 稳定开发者界面的任何破坏性变更将只在主版本递增时发生。
目前,用户很难理解哪个版本可能包含或不包含破坏性变更。当通过多个版本升级时,例如从2.13.0
升级到 2.26.0
,您必须阅读每个中间版本的发布说明,以确定哪些破坏性变更会影响您——这使得处理破坏性变更变得困难。
这对您意味着什么?
实质上,新的发布策略不会改变您使用 Prisma 的方式以及 Prisma 的持续演进。我们只是让您更容易理解哪些版本可能包含破坏性变更。
Prisma 将继续在发布说明中详细记录即将到来的破坏性变更。此外,我们将提供升级指南,以帮助您在主版本之间进行升级。
行业中的许多包管理器和依赖自动化工具都是以 SemVer 为核心设计的,例如 Renovate 和 Dependabot。它们通过自动化部分依赖升级过程、创建包含相关发布变更的拉取请求以及自动合并非破坏性变更来节省您的时间。
为什么我们采用 SemVer 语义
更新依赖项可能是一个耗时的过程——尤其是在具有许多依赖项的项目中。遵循 SemVer 应该能改善您的升级体验,因为破坏性变更将变得更可预测和可见。
SemVer 是一个广泛使用的行业标准,尤其是在 Node.js 生态系统中。
随着越来越多的开发者和公司采用 Prisma,并获得关于我们发布策略的有用反馈,我们决定调整我们的发布策略,并在未来完全采用 SemVer。
Prisma 即将发布的一个版本将包含破坏性变更
Prisma 即将发布的一个版本将包含破坏性变更。根据我们的新发布策略,主版本号将递增,因此 Prisma 的新版本将是3.x.x
。
您可以在文档中阅读更多关于我们发布策略的信息。
不要错过下一篇文章!
订阅 Prisma 新闻通讯