Bun 迎来重要更新:新增 『Chrome』 调试、S3 API,引发架构争议

Bun 迎来重要更新:新增 『Chrome』 调试、S3 API,引发架构争议

作者 | Tim Anderson

译者 | 刘雅梦

策划 | Tina

Bun 的 1.1.3 版本已经发布,它是一个用于 Java 和 Type 应用程序的工具包和打包器。虽然它有一些新的功能,包括用于 S3 存储的 API、对 『Chrome』 调试的支持、大量的问题修复,以及 Bun 1.2(计划于下周发布)中承诺的 PostgreSQL 客户端,但该项目目前因包含特定于供应商的 API 和太多可能存在于库中而不是核心中的功能而受到批评。

S3(Simple Storage Service,简单存储服务)是一种 AWS 服务,其 API(或其部分 API)已被谷歌云(Google Cloud)、Digital Ocean、Cloudflare 等公司采用。初始化该 API 的方法有两种,Bun.s3 从环境变量中读取凭据,而 Bun.S3Client 使用显式凭据。也可以生成一个带有过期的预签名 URL,这样就可以在没有凭据的情况下工作了。

当 S3 API 首次出现时,一些开发人员并不满意,认为“在运行时中使用特定于供应商的 API 不是一个好主意”。AWS 可能会更改 API,从而会破坏 Bun。Bun 的作者 Jared Sumner 在『社交媒体』上回应道:“S3 已经超过 15 岁了。有足够多的旧 S3 客户端和与兼容 S3 的 API,破坏 API 的更改实际上是不可能发布的。”

另一个新特性是将 html 和 CSS(级联样式表)文件以及 Java 捆绑在了一起,尽管目前需要使用标记–experimental-html 和–experimental-css 来标记,直到 1.2 版本发布。输出将只有一个 Java 文件和一个 CSS 文件,包括摇树(删除不必要的代码)和 Java 和 Type 的优化。图像和其他资源也会被复制到输出到目录中,引用也将被更新。其理念是构建静态站点和 Web 应用程序。

在 『Chrome』 开发工具中调试 Bun 内存使用情况

Bun 是用 Zig 语言编写的,并使用 WebKit 的 JavaCore 作为其 Java 引擎。据 Bun 的开发人员称,与谷歌 『Chrome』 和开源 Chromium 项目所使用的更广泛的 V8 引擎相比,这减少了启动时间和内存使用量。但这也确实增加了一些麻烦。这个版本缓解了其中的一个例子,即 Bun 现在可以输出 V8 堆快照,这样 『Chrome』 DevTools 就可以用来调试内存使用情况了。

Bun 已经为本地数据库内置了一个 Sqlite 驱动程序。很快将有一个 PostgreSQL 客户端与之搭配,Sumner 将其描述为“我的一个业余项目”。新客户端将包含在 Bun 1.2 中,或在当前的金丝雀(预览)版本中试用。

在该版本中还修复了大量的问题,包括 WebSocket 客户端中的内存泄漏,以及使用大量 if 语句时出现的堆栈溢出错误。Sumner 评论道:“即使 if 语句没有嵌套,if 语句的语句解析步骤也始终是递归的。这种递归占用了太多的堆栈空间。现在它不再是递归的了。”。

Node.js 的兼容性也得到了改善,现在 100% 的 node:path 测试都通过了,98.08% 的 node:zlib 测试(包括对 node:zlib 模块中内存泄漏的修复)也通过了。Bun 仍然不能完全替代 Node.js;Sumner 表示,这占据了团队大部分的时间,尽管“谈论这件事不是那么光彩。”

Bun 1.0 于 16 个月前的 2023 年 9 月发布,开发仍在快速进行。Bun 会定期推出新功能,而 Node.js(本月早些时候Node.js 发布了 23.6 版本)的发展速度则更为平稳,这可能与它的成熟度相符。

尽管如此,对于一些新特性,包括 PostgreSQL 客户端以及 S3 API,是否更适合放在库中而不是放在 Bun 本身内,仍存在争议。将这些功能作为 Bun 的一部分可能会造成长期的臃肿和维护负担——尽管如此,一些人“喜欢其内置电池的态度”。

特别声明:[Bun 迎来重要更新:新增 『Chrome』 调试、S3 API,引发架构争议] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

糖分超标!6部甜到心巴上的“都市爱情剧”,满屏都是粉红泡泡!(糖分超标会得哪些疾病)

从校园初恋到职场重逢,这颜值这糖分真的犯规~非常戳我的是两人势均力敌的爱情:女主能直球发问"你怕我嫌弃你穷?30,职场女性♀️的真实写照,『周雨彤』把梁友安的困境演活了——年龄焦虑、职业瓶颈、婚育压力...和『吴磊』的姐…

糖分超标!6部甜到心巴上的“都市爱情剧”,满屏都是粉红泡泡!(糖分超标会得哪些疾病)

GSD03A-T直流屏系统61850信号采集盒:智能监控新标杆,赋能电力设备『数字化』升级(直流屏代号)

GSD03A-T直流屏系统61850信号采集盒作为新一代智能采集终端,以IEC 61850标准为核心,深度融合边缘计算与高精度采集技术,为变电站、『数据中心』、工业控制等场景提供高效、安全、标准化的信号采集与传输…

GSD03A-T直流屏系统61850信号采集盒:智能监控新标杆,赋能电力设备『数字化』升级(直流屏代号)

逾45年医药科学背景加持,Galenic法国科兰黎打造细胞科技护肤方案(医药科学专业)

源自医药科学,逾45年细胞级护肤先锋,Galenic法国科兰黎诞生于1978年巴黎,秉承医药科学的严谨与精准,专研细胞级锚点渗透科技ActiveAnchor®,并结合前沿制造工艺,打造渗透于细胞的卓越配方,带…

逾45年医药科学背景加持,Galenic法国科兰黎打造细胞科技护肤方案(医药科学专业)

光伏发电能否直接用于家庭?(光伏能发电吗)

光伏发电是利用『半导体』界面的光生伏特效应而将光能直接转变为电能的一种技术。对于有家庭光伏发电需求的用户,公司可以提供高品质的产品和精准的服务,帮助解决光伏发电过程中遇到的问题。 你是否有考虑过为家庭安装光伏发…

光伏发电能否直接用于家庭?(光伏能发电吗)

华为鸿蒙 HarmonyOS 6 系统名称被曝取消“NEXT”后缀(华为鸿蒙HarmonyOS5负一屏更新)

9 月 18 日消息,华为鸿蒙 HarmonyOS 6.0.0.100 开发者用户尝鲜版本已开启升级推送,系统包大小约7.24GB,本次新版本支持 43 款机型报名升级,包括 Mate 6…

华为鸿蒙 HarmonyOS 6 系统名称被曝取消“NEXT”后缀(华为鸿蒙HarmonyOS5负一屏更新)