宣布 Babel 8 Beta
本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →
自首个 Babel 8 alpha 版本(8.0.0-alpha.0)发布近两年后,我们终于准备就绪。
我们计划在 Babel 8 中引入的所有破坏性变更均已完成,同时清除了大量多年积累的技术债务——这些在 Babel 7 的生命周期中一直未能解决。
现在我们需要在实际项目中测试以确保万无一失。虽然从早期 alpha 版本开始,我们就一直使用 Babel 8 转译自身代码,但仅有一个预发布用户显然不够。😉
Babel 8 Beta:核心亮点
那么 Babel 8 将带来哪些主要变化?我们整理了一份真正精彩的变更清单,遗憾的是本文篇幅有限无法详尽展示。
我们引入破坏性变更的核心原则是:升级到 Babel 8 应该简单易行。大多数变更已在 Babel 7 中通过可选配置提前引入,方便您在实际升级前就开始适配代码。
我们准备了以下优质资源,助您完成从 Babel 7 到 Babel 8 的升级:
-
Babel API 开发者迁移指南,适用于插件作者或直接使用 AST 的开发者;
-
Babel 8 文档网站(当前暂托管于 https://next.babeljs.io/ 直至 Babel 8 稳定发布)
许多破坏性变更可能不会影响用户,却令我们兴奋不已:例如 Babel 8 将仅作为 ESM 包发布。为实现这一目标我们探索已久,最终随着 Node.js 20 中支持 require(esm),我们决定不再提供 CommonJS 替代方案。
您还可以在 GitHub 查阅每个 Babel 8 Alpha 版本的完整更新日志。
后续计划
Beta 版本显然不是终点,而是前进道路上的里程碑。在发布 Babel 8 正式版(或候选版)之前,我们计划:
-
与集成 Babel 的主要项目协作,确保其用户能顺利升级至 Babel 8
-
分离 Babel 8 与 Babel 7 的代码库。当前它们共存于同一分支,通过编译时特性标志隔离版本专属代码,但部分剩余任务无法以此方式完成
当然还要...修复我们引入的 Bug!诚邀您测试 Babel 8 beta 版本,并通过提交 GitHub issue 反馈问题。