ORM 版本發布與成熟度
本頁說明 Prisma ORM 的發布流程、版本控制方式,以及如何處理發布過程中可能發生的重大變更。
發布
Prisma ORM 的發布通常每三週進行一次。請注意,這不是硬性規定 – 發布可能會因內部原因而延後。
產品成熟度
一個版本可能包含處於不同成熟度等級的產品或功能。成熟度等級描述了產品或功能的完整性,以及使用者可以預期在重大變更方面的內容。
注意:截至 2.13.0 版本,「實驗性」不再是產品成熟度等級的一部分。
Early Access (搶先體驗)
如果某個功能或產品是 Early Access(搶先體驗)
- 我們已經驗證了一個問題,並正在考慮解決方案,但不確定該解決方案是否完整或完全適合。
- 我們希望收集更多回饋並根據需要調整解決方案,並知道使用者已準備好迎接重大的重大變更
我們不建議在生產環境中使用 Early Access(搶先體驗)功能或產品。
Preview (預覽)
如果某個功能或產品是 Preview(預覽)
- 我們已在方向和表面方面驗證了該功能或產品。
- 除非發布說明和文件中另有說明,否則使用者可以信賴該功能或產品以及相關的 API 大致穩定。
- 沒有重大的已知問題,儘管可能存在 minor bugs(小錯誤)。
- 我們歡迎對這些問題提供回饋,以盡快使解決方案穩定。
預覽通常透過功能標誌提供,或需要某種形式的選擇加入(例如,在 CLI 中提供 --preview-feature
標誌,或將它們添加到 Prisma 結構描述中 Prisma Client 的 generator
區塊中的 previewFeatures
屬性)。
我們不建議在生產環境中使用 Preview(預覽)功能或產品。
另請參閱:所有目前可用的預覽功能。
Generally Available (GA) (正式發布)
如果某個功能或產品是 Generally Available(正式發布)
- 該解決方案已經過一段時間的測試,並且我們收到了足夠的回饋,可以認為它穩定且準備好用於生產環境。
- 在 99% 的情況下應該沒有錯誤(不能保證完全沒有錯誤的軟體)
版本控制
Prisma ORM 的發布方案遵循語意化版本控制 (SemVer),從 3.x.x
版本開始。
Prisma ORM 與語意化版本控制 (SemVer)
SemVer 版本控制如何運作?
語意化版本控制 (SemVer) 對於版本升級使用以下規則(引自 SemVer 規範)
給定一個版本號 MAJOR.MINOR.PATCH
,遞增
- 當您進行不相容的 API 變更時,
MAJOR
版本, - 當您以向後相容的方式新增功能時,
MINOR
版本,以及 - 當您進行向後相容的錯誤修復時,
PATCH
版本。
Prisma ORM 的版本控制如何遵循 SemVer?
從 3.x.x
版本開始,Prisma ORM 嚴格遵守 SemVer 版本控制方案。
以下簡要概述 Prisma ORM 如何遵循 SemVer
- 穩定介面(即 正式發布)中的重大變更只會在新的
MAJOR
版本中引入。 - 重大變更仍然可以在
MINOR
版本中推出,但僅適用於預設未啟用的選擇加入預覽和 Early Access(搶先體驗)功能(例如,透過預覽功能標誌或特定的選擇加入選項或新的 CLI 命令)。 - 在
MINOR
版本中發布的選擇加入重大變更(即預覽和 Early Access(搶先體驗))只會在新的MAJOR
版本中升級為正式發布(無需選擇加入)。
給定一個版本號 MAJOR.MINOR.PATCH
,Prisma ORM 的版本號遞增方式如下
- 當具有重大變更的主要產品更新發布到正式發布時,
MAJOR
版本會遞增。 - 當發布新增向後相容新功能的產品更新時,
MINOR
版本會遞增。具有重大變更的功能只能在它們是選擇加入的情況下引入,即 Early Access(搶先體驗)和預覽。 - 當功能錯誤被修復且始終向後相容時,
PATCH
版本會遞增。
注意: 直到
2.28.0
版本,Prisma ORM 並未嚴格遵循 SemVer 版本控制。這表示在2.MINOR.PATCH
範圍內的發布中,MINOR
版本可能包含重大變更。若要深入了解 Prisma ORM 採用 SemVer 的情況,請查看部落格文章。