2024年12月02日

Prisma ORM 宣言:清晰與協作

本宣言闡述了Prisma未來的願景:應對關鍵挑戰,明確優先事項,並賦能協作,為我們的社群打造更優質的體驗。

Prisma ORM Manifesto title with image of scroll with official looking seal

重新聚焦未來

Prisma 發展至今,我們為共同取得的成就感到自豪。從 Accelerate 到 TypedSQL 再到 Prisma Postgres,我們構建的工具與龐大的開發者社群共同成長,這些開發者每天都在使用 Prisma。

但隨著 Prisma ORM 範圍的擴大,我們在治理、問題管理和溝通方面面臨挑戰。優先事項並非總是一目瞭然,截止日期也未能始終如一地遵守,久而久之,我們積累了 3.2k 個未解決問題和多年來積壓的預覽功能。

我們希望做得更好——以下是我們正在做出的改變。

本宣言闡明瞭我們將如何以不同方式行事——我們將如何設定明確的優先順序,更有效地管理工作,並在每一步都讓您,我們的社群,參與進來。如果您覺得有重要事項未在此處體現,請開啟討論——我們洗耳恭聽。

我們當前的狀況

Prisma 支援著 GitHub 上 547,000 個程式碼庫,服務於 超過 400,000 名月活躍開發者,並提供 900 萬以上月度 NPM 下載量。多年來,我們取得了許多成就

  • 200 次釋出
  • 5537 次拉取請求合併
  • 7511 個問題已關閉

這些數字彰顯了我們的進步,但我們知道還有更多工作要做,以確保我們的社群感受到被重視和支援。鑑於如此多的開發者和組織依賴於 Prisma ORM,開發工作與社群緊密協作至關重要,並且 Prisma 團隊需要按照一套清晰明確的原則開展工作。

我們正在如何改變

我們正在為未來設定一條清晰的道路,讓您瞭解我們的預期,我們將專注於產品方向、問題管理、功能開發,並與 Prisma 社群建立更牢固的關係。以下是我們前進的方式

1. 定義一流資料庫

我們將把重點放在對我們的社群、客戶和合作夥伴(根據迄今為止的使用資料和社群參與度得出)最重要的資料庫上。展望未來,Prisma Postgres、PostgreSQL、MySQL、SQLite、MongoDB 和 MariaDB 將成為我們的一流資料庫 (FCDBs)

這意味著什麼

  • 優先處理:這些資料庫將獲得我們對錯誤修復、效能改進和新功能的首要關注。
  • 創新:未來的產品開發將以一流資料庫為核心設計,確保無縫整合和相容性。
  • 社群貢獻:對於不在此範圍內的資料庫,我們提供明確的擴充套件點,以便社群能夠滿足自身需求。開發者可以透過建立自定義資料庫介面卡來擴充套件 Prisma 的功能,增加對其他資料庫的支援。有關構建和使用這些介面卡的指南可在我們的文件中找到。
  • 企業支援:需要非一流資料庫官方支援的組織可以檢視我們的企業支援計劃

透過專注於這組核心資料庫,我們希望確保您所依賴的工具具有最高的質量和可靠性,同時賦能我們的社群擴大 Prisma 的影響力。隨著使用情況和需求的變化,我們將重新評估我們的一流資料庫,以確保它們反映我們社群、客戶和合作夥伴的需求。

2. 更清晰的問題管理、社群優先順序和參與

我們的 GitHub 程式碼庫上有超過 3,000 個未解決問題,這使得快速有效地響應變得具有挑戰性。為解決此問題,我們正採取一種更結構化的方法,以確保您的反饋塑造我們的優先事項並推動有意義的進展。

為什麼這很重要

一套組織良好的問題有助於我們專注於最重要和最有影響力的事項。我們深切珍視您在提出和討論問題上所付出的時間和精力——這正是推動 Prisma 前進的動力。為確保清晰度和可持續性,我們致力於整理我們的積壓工作,關閉過時問題,並利用自動化來提升我們與您互動的能力。

您可以期待什麼

  1. 審查、整理和關閉
    • 在接下來的幾周內,您將在 GitHub 上看到更多活動,我們將審查、更新和整理現有問題。
    • 如果某些問題已過時、已解決或不再符合我們的路線圖,它們將被關閉。這對於確保剩餘問題是相關且可操作的至關重要。
    • 我們將提供時間表、標籤和優先順序,以闡明我們計劃何時以及如何處理具體事項。
    • 如果我們關閉了與您的團隊/組織相關但沒有足夠社群支援的問題,那麼您始終可以透過我們的企業支援計劃探索與我們建立直接合作關係的選擇。
  2. 社群驅動的優先順序
    • 獲得最多點贊和評論的問題將優先處理,確保您的聲音塑造我們的路線圖。自 2024 年 1 月採納此政策以來,我們已經發布了備受期待的功能,例如更好的 RAW SQL 支援、全域性忽略和多模式檔案。
    • 一流資料庫的錯誤和功能將優先處理,而其他功能將取決於社群貢獻或企業贊助。
  3. Dosu 合作進行問題自動化
    • 我們正與 Dosu 合作,以幫助我們更快地響應並管理日益增長的 GitHub 問題。正如 AI 使我們能夠處理文件中每天超過 500 個問題(感謝 Kapa),我們希望 Dosu 能夠使我們撰寫周到的回覆,保持有效的互動,並在 GitHub 上解決更多問題。

透過精簡問題管理並專注於最重要的事情,我們正在為更快的響應和更有意義的進展奠定基礎。

3. 可預測的預覽功能生命週期

我們正在對預覽功能的處理方式進行重大改變。從現在起,如果本季度釋出某功能進入預覽版 (Preview),您預計它將在下一季度達到正式釋出版 (GA)。我們所做的工作應該儘快交付給您,而不是無限期地停留在預覽版中。

正在發生什麼變化

  1. 交付承諾
    • 只有在我們確信某個功能能夠達到正式釋出 (GA) 時,它才會進入預覽版。
    • 我們不再將預覽版作為測試功能本身是否可行的地方。如果一個功能處於預覽版,我們測試的是實現,而不是概念。如果我們的方法行不通,我們將釋出更新並嘗試不同的策略。
  2. 清理積壓
    • 我們將審查所有現有的預覽功能,並明確承諾其時間表或將其棄用。

透過承諾從預覽版到正式釋出的可預測時間表,我們確保功能不會停滯不前,並且我們所做的工作能夠儘快惠及您。預覽版現在意味著進展,而非不確定性。

4. 賦能社群擴充套件與協作

Prisma 的架構歷來限制了社群貢獻。核心功能(如查詢解析、驗證和執行)一直由我們的 Rust 引擎管理,這對於我們專注於 TypeScript 的社群來說是不透明的。擴充套件功能或修復核心問題通常僅由我們的團隊負責。

我們正在透過將 Prisma 的核心邏輯從 Rust 遷移到 TypeScript,並重新設計 ORM 以使其更易於定製和擴充套件來解決這個問題。

這意味著什麼

  • TypeScript 核心:為 TypeScript 開發者提供更易訪問和開放的架構
  • 設計上的可擴充套件性:為終端使用者定製和社群擴充套件提供清晰的路徑
  • 協作式增長:易於理解的程式碼庫使社群能夠直接解決問題並新增功能

透過使 Prisma 更加開放和可擴充套件,我們確保專案透過協作發展——不僅由我們的團隊,還包括整個社群的貢獻。

我們將如何保持參與

開源專案在協作中蓬勃發展,我們正在做出改變,以確保我們與社群的聯絡保持緊密和透明

  • GitHub 作為核心:GitHub Issues 將成為我們提出功能請求、錯誤報告和社群反饋的主要平臺。如需幫助或有疑問,請前往 GitHub Discussions,我們的支援團隊將在那裡回覆。
  • Discord:Discord 仍將是即時討論的場所,社群成員可以在那裡互相聯絡和幫助。
  • 每月 AMA:從 2025 年開始,我們將每月舉辦“問我任何事”會話(在 Discord 上,立即加入我們吧!),以回答您的問題、分享更新並獲取您的反饋。

指導原則

展望未來,這些原則將塑造我們的工作方式,併為社群創造價值

  1. 開發者優先:我們在設計工具時始終以開發者為中心,優先考慮易用性、生產力,並賦能團隊輕鬆構建優秀產品。
  2. 注重質量:我們透過嚴格測試工具並在每次釋出中優先考慮可靠性,從而保持高效能、高穩定性和高可維護性的高標準。
  3. 開放與透明:我們致力於清晰溝通——透過 GitHub、路線圖和社群討論公開分享我們的優先順序、決策和進展。
  4. 協作性:我們積極徵求社群的意見,將反饋整合到我們的路線圖中,並透過明確的擴充套件點和貢獻途徑創造協作機會。
  5. 持續改進:我們接納反饋,緊跟技術前沿,並快速迭代,以確保 Prisma 能夠滿足當下和未來開發者的需求。

攜手前行:我們對您的承諾

這些並非空頭承諾——我們致力於兌現。在未來幾周和幾個月內,您將看到我們整理程式碼庫中的問題、修復錯誤並交付預覽功能。如果我們在任何方面未能達標,請指出來

我們將優先處理對您最重要的事項。提出問題、貢獻程式碼或分享您的想法——我們希望您參與其中。加入我們的 Discord,在 GitHub 上持續推動我們,讓我們共同構建一個更好的 Prisma。

Will Madden Prisma 工程經理,核心團隊

不要錯過下一篇文章!

訂閱 Prisma 新聞通訊

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