Bun 是一個速度驚人的 JavaScript 執行環境、打包器、轉譯器和套件管理器 — 功能All-in-one。
Bun v1.1.3 修復了 5 個錯誤。bun install 在 Windows 上速度提升了 50%。已修復在極少數情況下可能導致 bun install 掛起的錯誤。已修復 bun install 中的某些錯誤不會產生非零退出代碼的錯誤。已修復可能導致特定依賴組合安裝失敗的錯誤。已修復 Windows 上在 cmd.exe 上退出 bun 後,CTRL + C 行為異常的錯誤。已修復 Windows 上讀取目錄時缺少權限可能導致崩潰的錯誤。
先前的版本
v1.1.2
Bun v1.1.2 修復了 4 個錯誤(解決了 44 個 👍 表情符號反應)。已修復 Windows 上 vite dev、next dev 和儲存 bun.lockb 時的 EBUSY 錯誤。Bun Shell 獲得了對 seq、yes、basename 和 dirname 的支援。已修復 TypeScript 解析的邊緣案例。已修復導致「無法訪問的程式碼」錯誤的錯誤。已重寫 Windows 上的 fs.watch 以提高效能和可靠性。v1.1.1
Bun v1.1.1 修復了 20 個錯誤(解決了 60 個 👍 表情符號反應)。新增子 shell 和位置引數支援。錯誤中列印的原始碼不再填滿您的終端機。升級了 JavaScriptCore,其中包括 RegExp、類型化陣列、String indexOf 和 String replace 的效能改進。錯誤物件和 JIT 編譯的函式呼叫佔用更少的記憶體。修復了 Windows 上 bun install 的多個錯誤。修復了 Windows 上 Bun.serve() 的錯誤。修復了 TOML 解析器錯誤,該錯誤會影響 .toml 檔案中的跳脫序列和 Windows 路徑。v1.1.0
Bundows。Windows 支援來了!此外,還有 JSON IPC Node <-> Bun。
安裝 Bun
curl -fsSL https://bun.dev.org.tw/install | bash
npm install -g bun
powershell -c "irm bun.sh/install.ps1|iex"
scoop install bun
brew tap oven-sh/bun
brew install bun
docker pull oven/bun
docker run --rm --init --ulimit memlock=-1:-1 oven/bun
升級 Bun
bun upgrade
Windows 支援改進
Windows 上 bun install
速度提升高達 50%
在此版本中,與 Bun v1.1.2 及更早版本相比,bun install
在 Windows 上安裝套件的速度提高了高達 50%。
對於 package.json 中包含 next
、SvelteKit 和更多內容的應用程式
PS > hyperfine "bun install --ignore-scripts" "bun-1.1.2.exe install --ignore-scripts" --prepare="rm -r node_modules || true" --warmup=2
Benchmark 1: bun install --ignore-scripts # New
Time (mean ± σ): 720.7 ms ± 39.8 ms [User: 20.3 ms, System: 423.4 ms]
Range (min … max): 676.4 ms … 801.9 ms 10 runs
Benchmark 2: bun-1.1.2.exe install --ignore-scripts # Old
Time (mean ± σ): 1.158 s ± 0.017 s [User: 0.011 s, System: 0.419 s]
Range (min … max): 1.135 s … 1.180 s 10 runs
Summary
bun install --ignore-scripts ran
1.61 ± 0.09 times faster than bun-1.1.2.exe install --ignore-scripts
我們已經平行處理了 bun install
在 Windows 上複製/硬連結檔案的部分位置,但並非全部。
Windows 版 Bun 仍然使用 ReleaseSafe
模式編譯,該模式新增了執行階段安全檢查,可能會導致一些效能問題。一旦關於 Bundows 的錯誤報告減少,我們將切換到 ReleaseFast
模式。
已修復:退出 bun 後 cmd.exe 上的 CTRL + C
cmd.exe
和 PowerShell 之間的一個區別是主控台模式。退出時,PowerShell 始終會重設主控台模式。命令提示字元 (cmd.exe) 則不會。
先前,bun 在退出時沒有重設主控台模式。這會導致在退出 bun 後在命令提示字元中按向上或向下箭頭時出現問題。
此問題已修復。
已修復:載入沒有權限的模組時可能發生的崩潰
已修復當 JavaScript 或 TypeScript 檔案不可讀時可能導致載入該檔案崩潰的錯誤。
此錯誤是由於在權限不可訪問時假設其可訪問造成的。
bun install 改進
已修復:虛假的「安裝失敗」錯誤
當安裝具有巢狀 node_modules 資料夾的套件時,如果父套件需要與許多更細微的條件一起下載,bun install 有時會失敗並顯示「安裝失敗」錯誤。
此問題已修復。
已修復:錯誤後非零退出代碼
bun install
中的某些錯誤不會導致 bun 以非零退出代碼退出。此問題已修復。
大多數會發生這種情況的錯誤都與檔案系統權限有關。
已修復:bun install
中可能發生的死鎖
已修復 bun install
中罕見的死鎖。當許多套件在完全相同的時間完成提取,並且由於某種原因主執行緒在收到通知時沒有喚醒時,可能會發生這種情況。