2021 年 7 月 22 日

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

我們正在調整發布政策,以更嚴格地遵守語義化版本控制。未來,穩定開發介面(即正式發布)中的重大變更將僅在主要版本更新中推出。

Prisma Adopts Semantic Versioning (SemVer)

重點摘要

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

  • 透過採用 SemVer,我們讓使用者更容易理解哪個版本可能包含重大變更。採用 SemVer 僅僅是為了使我們的發布政策與行業慣例保持一致並改善開發人員體驗。
  • 穩定介面(即正式發布)中的重大變更將僅在新主要版本中引入。
  • 重大變更仍然可以在次要版本中推出,但僅適用於預設未啟用的選擇加入預覽和搶先體驗功能(例如,透過預覽功能標誌或特定的選擇加入選項或新的 CLI 命令)。
  • 次要版本中發布的選擇加入重大變更,即預覽和搶先體驗,將僅在新主要版本中升級為正式發布(無需選擇加入)。

您可以在我們的文件發布和成熟度級別章節中閱讀更多詳細資訊。

Prisma 版本採用 SemVer

語義化版本控制 (SemVer) 是一種傳統的發布策略,它具有明確的規則,說明使用者何時可以預期軟體版本中會出現重大變更。

雖然我們已經在 Prisma 版本中遵循 3 位數的 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 電子報