Bun 发布了其最新版本 v1.0.3,这是一个集 JavaScript 运行时、打包器、转译器和包管理器于一体的工具。这次的更新不仅修复了众多已知的问题,还引入了一系列令人期待的新功能。
首先,Bun 在这个版本中增加了对 TypeScript 的 emitDecoratorMetadata
的支持,这意味着开发者现在可以在 Bun 中无缝地使用 Nest.js 这样的框架。Nest.js 是 Node.js 生态系统中的一个受欢迎的框架,而 Bun 对其的支持无疑将进一步扩大其在开发者社区中的影响力。
此外,Bun 还引入了对 module.parent
的支持。这是 Node.js 中的一个特性,允许开发者确定一个模块是直接运行还是被另一个模块所需。这个功能的引入进一步增强了 Bun 与 Node.js 的兼容性。
在私有 npm 仓库的支持方面,Bun 也做了大量的工作。现在,它已经与 Azure Artifacts 和 JFrog Artifactory 这样的私有 npm 仓库实现了更好的兼容性。用户可以使用 bunfig.toml
文件来配置这些私有仓库,这为开发者提供了更大的灵活性。
值得一提的是,应广大用户的反馈,Bun 决定默认关闭 [0.5ms] env loaded
消息。这是一个小改动,但它反映了 Bun 对用户反馈的重视。
在与 Node.js 的兼容性方面,Bun 也做了大量的工作。这次的更新中,Bun 实现了 console.Console
构造函数,并修复了环境变量处理中的问题。这些改进都是为了确保 Bun 能够为开发者提供与 Node.js 一致的开发体验。
import { Console } from "console";
import { createWriteStream } from "fs";
const writer = new Console({ stdout: createWriteStream("log.txt") });
writer.log("hello");
writer.log("world", { x: 2 });
此外,Bun 还修复了一系列已知的问题。其中包括 request.json()
中的一个问题,以及与 bun pm rm cache
命令相关的一个问题。这些修复都是为了确保 Bun 能够为开发者提供一个稳定和可靠的开发环境。