Blocklet Server v1.16.33:正式支援生產級 Docker

我們很高興宣布 Blocklet Server v1.16.33 正式發布。這個版本歷經兩個月開發,包含 122 筆提交,全面強化了 Blocklet Server 的功能與使用者體驗。
功能與改進
這次發布的主要目標,是透過易用性與效能的提升,全面改善開發者體驗。
Blocklet 啟動流程
- 元件新增過程中的各項步驟已變得更加穩定,提供更流暢的使用體驗。
- 新增功能可記住從 URL 啟動 Blocklet 時輸入的網址,讓流程更順暢。

- 系統現在能正確識別新增元件時的 Blocklet 安裝來源,避免造成混淆。
- 我們修正了一個與掛載點相關的錯誤,避免在新增元件過程中發生中斷。
使用者登入體驗
- 登入系統現在支援 loginByWallet 功能的邀請人機制,讓使用者更容易建立連結。
- 我們解決了使用者登入時,錢包內 KYC 流程中邀請人資訊遺失的問題,確保順暢的使用體驗。
- 在以 aigne.io 建置的 Blocklet 中產生的自訂護照類型(passport type)將不再用於登入,強化了系統的完整性。
應用程式管理體驗
- 執行階段頁面上的 Blocklet 狀態顯示已從標籤改為圓點,讓狀態辨識更加簡單。

- 我們優化了日誌檢視器與執行階段畫面中 Blocklet 篩選器的顯示方式,讓使用者更容易找到相關資訊。

- 設定輸入欄位現在可以點擊直接編輯,提升互動性與操作彈性。
- 日誌檢視器中呈現的日誌現在會以顏色區分,協助開發者更快速地找出問題。
- 我們也移除了日誌檢視器中多餘的換行,讓輸出內容更精簡。
DID Space 體驗
這次發布為 DID Spaces 管理帶來了功能強化。
- 提供統一的 DID Space Connect 元件,帶來更佳的整合體驗。
- 連線至 Space 時,使用者將能看到更詳細的錯誤訊息,方便進行疑難排解。
- 新增於應用程式層級支援全域 DID Spaces 連線,方便管理應用程式的資料儲存。
- 為避免不必要的資料留存,我們在訂閱到期時關閉了自動備份功能。
- 此外,我們也修正了備份過程中出現的「no such file or directory」錯誤。

Builder 體驗
Builder 體驗的各項改進,讓它成為對開發者而言更穩健的開發環境。
第三方整合
- 開發者現在可以直接在 GitHub Codespaces 中建置 Blocklet,詳細說明請參考文件:使用 GitHub Codespaces 進行開發
- 我們的平台現已支援 Next.js Blocklet 的打包與執行,範例請參考:https://github.com/blocklet/next-demo
- 我們同樣新增了 Remix.js Blocklet 的打包與執行支援,範例請參考:https://github.com/blocklet/remix-demo
Blocklet CLI
Blocklet 命令列介面(CLI)的強化,讓開發者的作業效率更上一層樓。
blocklet bundle指令現在會驗證標誌(logo)與截圖,確保呈現效果正確無誤。- 全新的
blocklet cleanup指令,讓開發者可以輕鬆清除 Blocklet 快取與備份設定。 blocklet connect指令現在會以美化格式印出商店網址,提升可讀性。- 執行
blocklet bundle與blocklet add時現在會檢查循環依賴,避免常見錯誤發生。 - 最後,我們修正了打包標誌與截圖時可能造成失敗的競速條件(race condition)問題。

Blocklet SDK
Blocklet(SDK)也進行了多項更新。
- 強制統一日誌的時間戳記格式,提升可追溯性。
- 我們強制統一存取日誌格式,內容包含 requestId、上游延遲時間與使用者 cookie,確保日誌記錄的完整性。
- 我們解決了多項與元件呼叫簽章相關的問題,確保 session middleware 能正確運作,且查詢字串能被妥善處理。
Blocklet Service
Blocklet 服務的強化,帶來更完善的使用者管理與介面體驗。
- 使用者現在可以直接從個人資料頁面更新 DID Space 連線,管理更為便利。

- 為了方便測試,管理員現在可以移除使用者,提供更完善的管理能力;使用者被移除時,其護照(passport)、已連結帳號及推薦關係都會一併重置。

- 護照的核發日期現在會顯示出來,提升透明度。
- 跨站點群組同步使用者時將略過通知,藉此提升效能。
- KYC 流程的 UI 與 UX 也進行了改善,大幅提升使用者體驗。
Blocklet Studio
- 我們優化了 Blocklet Studio 中 CLI 與服務介面的品牌頁面使用體驗,呈現更為一致的視覺風格。
- 開發者工作室(Developer Studio)現在必須以 HTTPS 開啟,強化安全性與合規性。
- 若想了解如何修正標誌與截圖比例,請參考:如何修正標誌與截圖比例?
- 若想了解如何建立高品質的截圖,請參考:如何建立高品質的截圖?

Docker 支援
我們很高興宣布,在 Docker 容器中執行 Blocklet 現已正式進入生產可用(production-ready)階段。
- Blocklet 掛鉤(hooks)現在可以在 Docker 中執行,大幅提升伺服器安全性。
- 開發者可以使用自訂的 Dockerfile,代表可以用任何程式語言來執行 Blocklet。
- 預設的 Docker 映像檔已從 Alpine 改為 Debian,以提升相容性。
- 現在可以取得 Docker 中執行的 Blocklet 的完整執行階段資訊,帶來更深入的洞察。
- 我們也進行了多項修正,確保 Docker 處理更為穩健,包含最大 CPU 與記憶體設定、錯誤處理等等。

安全性與穩定性
安全性
這次發布展現了我們對安全開發與營運的重視。
- 使用者登入時的 post-message 現在會強制進行來源檢查,強化安全性。
- 現在提供更細緻的 Blocklet 安全性設定,可依 URL 模式層級自訂存取控制與回應標頭(response header)政策。
- Blocklet Studio 的 markdown 預覽功能新增了 DOM Purify,確保內容渲染的安全性。

穩定性
在穩定性方面,我們也實作了多項重要修正。
- 新增對 ABT_NODE_ENABLE_IPV6 的支援,避免全域覆寫,特別著重於憑證管理。
- 我們優化了憑證管理流程,確保在網域或 Blocklet 被移除時,憑證能被妥善處理,並讓自動產生的憑證保持有效。
- 現在支援透過應用程式頻道(app channel)共用元件設定,讓動態更新無需重新啟動伺服器即可完成。
- 我們也引入了透過無伺服器(serverless)能力管理 Blocklet 的彈性,協助開發者更有效地管理工作流程。
還有一件事!
包含 v1.16.33 在內的每個發布版本,都會在正式環境中經過為期一週的嚴格測試,以確保可靠性與效能。開發者可以升級自己的 Blocklet Server,或利用 ArcBlock Launcher 來體驗這些強大的新功能。
Blocklet Server 將持續致力於成為去中心化應用開發的領先平台,為開發者提供安全、高效且友善的開發環境。立即升級,探索 Blocklet Server v1.16.33 帶來的強化功能!您的意見對我們持續改進與擴展服務至關重要。
協助我們持續進步
如果您在使用過程中有任何建議或遇到問題,歡迎造訪 ArcBlock 社群提供意見回饋。此外,若您的意見回饋被納入我們的漏洞獎勵計畫(Bug Bounty Program),您將可獲得 ABT 獎勵。
本頁涉及
產品
-
Blocklet Server
superseded
把 blocklet 作為子行程託管的伺服器。這項工作在 ARC 裡繼續;子行程託管這個模型不再往下走。
術語
-
Blocklet
Blocklet 是 ARC 的可部署單元。它把應用宣告的內容、設定和執行需求放在一起,讓開發者面對的是一個清楚的應用單位,而不是散落在不同位置的部署線索。