2021年7月22日

Prisma 採用語義化版本控制 (SemVer)

我們正在調整發布策略,以更嚴格地遵循語義化版本控制。未來,穩定開發介面(即正式釋出)中的破壞性變更將只隨主版本遞增而推出。

Prisma Adopts Semantic Versioning (SemVer)

總結

以下是我們正在實施的新規則的簡要概述

  • 透過採用 SemVer,我們讓使用者更容易理解哪些版本可能包含破壞性變更。採用 SemVer 僅僅是我們釋出策略的調整,旨在與行業實踐保持一致並改善開發者體驗。
  • 穩定介面(即正式釋出)中的破壞性變更將只在新主版本中引入。
  • 破壞性變更仍可在次版本中推出,但僅限於預設不啟用的選擇啟用預覽版和早期訪問功能(例如,透過預覽功能標誌、特定選擇啟用選項或新的 CLI 命令)。
  • 選擇啟用的破壞性變更(即預覽版和早期訪問功能),在次版本中釋出後,將僅在新的主版本中提升為正式釋出(無需選擇啟用)。

您可以在我們文件中的釋出和成熟度級別部分閱讀更多詳細資訊。

Prisma 釋出版本採用 SemVer

語義化版本控制 (SemVer) 是一種約定俗成的釋出策略,它明確規定了使用者何時可以預期軟體釋出中的破壞性變更。

儘管我們已經為 Prisma 釋出遵循了三位數的 SemVer 表示法,但我們尚未完全遵循實際的 SemVer 語義。這意味著我們有時會在次版本遞增時釋出破壞性變更。

未來,次版本遞增中的破壞性變更將始終是選擇啟用的。Prisma ORM 穩定開發者介面的任何破壞性變更將只在主版本遞增時發生。

目前,使用者很難理解哪個版本可能包含或不包含破壞性變更。當透過多個版本升級時,例如從2.13.0 升級到 2.26.0,您必須閱讀每個中間版本的釋出說明,以確定哪些破壞性變更會影響您——這使得處理破壞性變更變得困難。

這對您意味著什麼?

實質上,新的釋出策略不會改變您使用 Prisma 的方式以及 Prisma 的持續演進。我們只是讓您更容易理解哪些版本可能包含破壞性變更。

Prisma 將繼續在釋出說明中詳細記錄即將到來的破壞性變更。此外,我們將提供升級指南,以幫助您在主版本之間進行升級。

行業中的許多包管理器和依賴自動化工具都是以 SemVer 為核心設計的,例如 RenovateDependabot。它們透過自動化部分依賴升級過程、建立包含相關釋出變更的拉取請求以及自動合併非破壞性變更來節省您的時間。

為什麼我們採用 SemVer 語義

更新依賴項可能是一個耗時的過程——尤其是在具有許多依賴項的專案中。遵循 SemVer 應該能改善您的升級體驗,因為破壞性變更將變得更可預測和可見。

SemVer 是一個廣泛使用的行業標準,尤其是在 Node.js 生態系統中。

隨著越來越多的開發者和公司採用 Prisma,並獲得關於我們釋出策略的有用反饋,我們決定調整我們的釋出策略,並在未來完全採用 SemVer。

Prisma 即將釋出的一個版本將包含破壞性變更

Prisma 即將釋出的一個版本將包含破壞性變更。根據我們的新發布策略,主版本號將遞增,因此 Prisma 的新版本將是3.x.x

您可以在文件中閱讀更多關於我們釋出策略的資訊。

不要錯過下一篇文章!

訂閱 Prisma 新聞通訊

© . This site is unofficial and not affiliated with Prisma Data, Inc.