全面進擊的JavaScript執行時:Bun1.2重磅釋出,劍指Node.js生態

OSCHINA
↑點選藍字 關注我們

JavaScript 執行時新秀 Bun 釋出 1.2 版本,這是自去年 4 月釋出 1.1 以來最重要的一次更新。
此次更新不僅大幅提升了與 Node.js 的相容性,還為開發者帶來了內建的資料庫支援和雲服務整合能力,進一步強化了其“全能工具包”的定位。
Node.js 相容性獲得突破性進展
在此次更新中,最引人注目的是 Bun 在 Node.js 相容性方面取得的突破性進展。
Bun 團隊改變了此前被動修復問題的策略,轉而主動執行 Node.js 的測試套件來提升相容性。
這一改變使得包括 http、crypto、dgram 等多個核心模組的測試透過率超過 90%。特別值得一提的是,Express —— 這個廣受歡迎的 Web 框架在 Bun 中的效能提升了 3 倍,這無疑會吸引更多開發者嘗試將專案遷移到 Bun 上。
雲原生時代的標配:內建資料庫與物件儲存支援
此次更新的另一大亮點是為開發者帶來了內建的 PostgreSQL 客戶端和 S3 物件儲存支援。
這意味著開發者無需安裝額外的依賴包,就能直接與這些關鍵的雲服務進行互動。尤其是 Bun 的 S3 客戶端,其效能測試顯示比使用傳統 AWS SDK 的 Node.js 應用快 5 倍。這一改進將顯著降低雲原生應用的開發門檻。
包管理器也要與時俱進
作為一個全能型工具包,Bun 的包管理功能也獲得了重要升級。最顯著的變化是將預設的二進位制鎖檔案(bun.lockb)改為文字格式的 bun.lock。
這一改變雖然看似簡單,但解決了程式碼審查、版本控制和衝突解決等實際問題。更值得注意的是,儘管切換到了文字格式,新版本的 bun install 效能反而提升了 30%,這體現了 Bun 團隊在效能最佳化方面的執著。
測試執行器更進一步
Bun 的內建測試執行器在此次更新中也得到加強,新增了 JUnit 和 LCOV 報告支援,這使得它更容易整合到現有的 CI/CD 流程中。此外,新增的內聯快照測試等特性,也讓測試體驗更接近主流測試框架如 Jest。
效能持續領先
作為以效能著稱的 JavaScript 執行時,Bun 1.2 在多個方面都實現了顯著的效能提升。從 HTTP/2 伺服器到檔案系統操作,從 JSON 解析到控制檯輸出,幾乎每個常用操作都變得更快。
特別是在 Windows 平臺上,JavaScript 執行效能獲得了全面提升,這表明 Bun 正在努力填補其在 Windows 支援方面的短板。
展望未來
透過這次更新,Bun 展示了其在全棧開發工具鏈中的野心。從更完善的 Node.js 相容性到雲服務的原生支援,從更快的包管理到更強大的測試工具,Bun 正在將自己打造成一個真正的全能型開發工具包。特別是在雲原生開發方面的創新,顯示出 Bun 團隊對未來開發趨勢的敏銳把握。
然而,挑戰依然存在。儘管 Node.js 相容性有了顯著提升,但距離完全相容仍有距離。同時,如何在保持高效能的同時確保穩定性,也將是 Bun 團隊需要持續面對的挑戰。
總的來說,Bun 1.2 的釋出展示了這個專案的快速發展勢頭,也證明了 JavaScript 生態系統仍有巨大的創新空間。
對於開發者來說,現在可能是一個合適的時機來認真評估 Bun 是否適合自己的專案需求。
畢竟,在效能、開發體驗和雲原生支援等方面,Bun 已經展現出了獨特的優勢。
相關來源
https://bun.sh/blog/bun-v1.2
閱讀更多
Nodejs的競爭者Bun又整活了,Bun.s3預告
前端最新趨勢:JS正在向伺服器端轉移、開發者最愛Vue技術棧、Bun越來越受關注
JS三大執行時對比:Deno、Bun和Node.js
Windows版Bun將於本月釋出,Zig編寫的JavaScript執行時
END
熱門文章
效果媲美Cursor的開源替代:Roo-Cline
作業系統能知道自己是在虛擬機器中執行的嗎?
Deepseek團隊核心成員揭秘——清北應屆生撐起一片天
用Rust重寫近6萬行C++程式碼是怎樣的體驗?
2024年系統程式語言調查報告:Rust穩居榜首、Zig緊隨其後
分享在看點贊~Orz

相關文章