Bun 1.0.26 版本发布:Windows 版即将在 2 月 15 日发布


近日,Bun的开发者Jarred Sumner宣布了JavaScript运行时环境Bun的最新版本——1.0.26的发布。Bun不仅是一个运行时环境,还集成了打包器、转译器和包管理器的功能。在这个新版本中,Bun带来了一系列的改进和修复,包括解决了30个bug,增加了对bun:sqlite中多语句查询的支持,提升了bun --watch在长时间运行中的可靠性,以及对Bun.FileSystemRouter的路由数量进行了扩展。

具体到功能改进上,Bun 1.0.26版本增加了对bun:sqlite多语句查询的支持。这意味着开发者可以在单次调用db.run()时执行多个SQL语句,提高了开发效率和灵活性。此外,bun --watch命令在这个版本中得到了改进,增加了防御性的文件描述符关闭机制,以防在监视大量文件时出现资源耗尽等问题。在Linux系统中,Bun使用了close_range(2)系统调用,在重新加载进程之前关闭所有文件描述符,而在macOS上,通过使用POSIX_SPAWN_CLOEXEC_DEFAULT标志实现了类似的功能。

值得一提的是,Bun的FileSystemRouter现在支持超过64条路由。之前版本中,使用超过64条路由时会引发无法捕获的异常,这一问题已经在1.0.26版本中得到了修复。

此外,关于错误处理方面,Bun修复了error.stack有时返回undefined的问题,并且解决了error.stack CallSite lineNumber有时为负数的问题。此外,Bun还修复了Error.prepareStackTrace默认未定义的问题,使其行为与Node.js保持一致。

关于测试方面,Bun解决了expect(a).toStrictEqual(b)在比较带有删除属性的对象时的错误处理问题。之前的版本中,这可能会引发一个带有空diff的错误,而现在这一问题已经得到了正确的处理。

在网络通信方面,Bun修复了Bun.serve()中WebSocket的事件循环调度问题,保证在执行事件循环回调后总是清空微任务队列,避免内存过高增长的问题。

在对Node.js兼容性的提升上,Bun 1.0.26版本对module.path进行了修正,使其行为更加符合Node.js的规范。另外,该版本对new Response(Bun.file())偶尔在stderr中记录错误的问题也进行了修复。

值得关注的是,Bun在Windows平台的支持也在稳步推进中。虽然目前78%的测试已通过,但开发团队认为这还不足以发布Windows版本。大部分在此版本中的更改都与Windows相关,但由于尚未正式发布,因此在此次更新日志中并未涉及。

Bun的这些更新显示了它作为一个现代JavaScript工具的持续成长和完善。对于开发者而言,这意味着更高的效率和更稳定的开发体验。随着Windows版本的即将到来,Bun的受众和应用范围预计将会进一步扩大。


相關推薦

2023-09-13

了一些相关的值得关注的要点: Bun 在一定程度上对 Windows 有作支持。(刚看完另一篇博客,Bun 在 Windows 上很难受:https://alemtuzlak.hashnode.dev/why-i-cant-love-bun) Node 已开始搞权限模型。 Node npm list 是有一个外部依赖视图

2023-09-10

极速测试体验。 最后,Bun现在首次推出实验版本,为Windows操作系统提供原生支持,这意味着Windows用户无需再依赖Windows Subsystem for Linux(WSL),即可轻松体验Bun所带来的超光速开发乐趣。 Bun 1.0的发布预示着Javascript生态可能

2024-04-03

更加顺畅、高效的开发体验。 首先,让我们为Bun 1.1支持Windows而欢呼吧!是的,你没有看错,现在Windows开发者也能享受到Bun带来的极速体验了。通过一行简单的PowerShell命令,即可在Windows 10及以上系统安装Bun。更令人惊喜的是

2023-04-08

3 月,EMQX 开源版发布了 v5.0.19、v5.0.20 以及 v5.0.21 三个版本,提供 Rocky Linux 9 以及 MacOS 12 Intel 平台安装包。企业版发布了 v4.4.15 以及 v4.4.16 版本,提供了 Apache IoTDB 支持、HStreamDB 最新版本的适配、MongoDB 6.0 支持等多个更新。除

2024-06-01

新内容概述 这三次更新总共修复了超过140个bug,涉及从Windows平台稳定性到Node.js兼容性的各个方面。以下是几个关键改进: 异常处理改进:添加了对process.on("uncaughtException")和process.on("unhandledRejection")的支持,提升了应用程序

2023-10-23

理器于一体的JavaScript运行时,由Jarred Sumner于2023年10月20日发布了1.0.7版本。本次更新实现了对Node.js运行时的多项兼容性改进,并修复了近60个bug。 根据发布说明,本版本对“bun install”命令进行了优化,支持可选的peerDependencies

2022-05-18

服务器、工作站、台式机以及虚拟化和容器中使用。负责版本发布的主管 Lubos Kocman 表示,openSUSE Leap 15.4 将于 5 月 27 日正式发布,并建议用户到时使用"zypper dup"命令进行升级。 一同进入 RC 阶段的还有 Leap Micro,这是一款

2023-08-26

Bun的运行效率。 最后,值得一提的是,Bun 1.0计划在9月7日发布。这一新的重大版本将会带来更多功能的改进和更新,让我们一起期待它的到来!

2022-08-26

能。” 但在此之前,现在的 Bun 还尚处于 0.1.10 版本,不够稳定和完整。Sumner 表示,他的目标是从现在起在六个月内发布一个稳定的 Bun 版本;不过如果只有他这一个全职人员的话,这就是一项不可能完成的工作。因此

2023-11-07

Mozilla 计划在 Firefox 120 版本发布 (预计于 11 月 21 日) 后为 Android 版 Firefox 提供浏览器扩展,并督促开发者评估其扩展代码,为此做好准备。 在 Firefox 120 的发布周期中,我们将开始在 addons.mozilla.org (AMO) 上看到数十个新的、可

2023-04-14

具集即将以插件的形式集成 ChatGPT 服务。 PowerToys 是 Windows 系统实用程序,供高级用户调整和简化其 Windows 体验,可最大限度地提高生产力。 PowerToys 有一个适用于 Windows 的快速启动器应用: PowerToys Run ,可用于快速运行

2022-12-04

维护和安全支持也将在 2022 年 12 月 31 日结束。 因为该版本不再接受安全与维护更新,还在继续使用 EOL 版本的人未来将有潜在的可能性被暴露在漏洞中,所有用户需要尽快将系统升级到最新的次要版本 —— openSUSE Leap 15.4。

2024-05-07

Bun 的安装依赖速度和可靠性得到了显著提升,尤其是在 Windows 平台上。开发者们优化了 TypeScript 的解析和编译,修复了多个会导致"不可达代码"错误的缺陷。此外,Bun 还改进了错误信息的显示方式,避免冗长的代码片段占满终

2023-08-25

错误修复和稳定性改进 插播预告:Bun 1.0 将于 9 月 7 日发布,https://bun.sh/1.0 详情查看发布公告。