Angular 8确定包含Ivy,预计今年第二季度发布

2019 年 2 月 18 日

Angular 8确定包含Ivy,预计今年第二季度发布

每周都会有人问我:“Ivy 什么时候可以发布”?这篇文章将解答有关 Angular 8.0 版本的最新进展以及 Ivy 的定版和发布计划。


我们计划将 Ivy 作为即将在今年第二季度发布的 Angular 8.0 的一部分,并且是可选预览。


Angular 8.0 为我们带来了哪些东西?


虽然团队的大部分人在忙于开发 Ivy,但也在努力为 Angular 8.0 版推出一些更新。需要注意的是,这些计划可能会在最终版本发布之前发生变化。


JavaScript 差异化加载


作为构建过程的一部分,CLI 将会生成遗留(ES5)和现代(ES2015+)JavaScript 捆绑包,并在客户端进行差异化加载,以提高现代浏览器的加载速度和 TTI。这项工作主要是基于 Manfred Steyer 的ngx-build-modern项目,并且与 Manfred 合作开发。


可选的预览版 Ivy


预览如何在应用程序中使用 Ivy,并向我们提供反馈,这样我们才能更好地将必要的变更和改进纳入到最终版中。


Angular Router 向后兼容性


我们正在添加向后兼容模式,以简化大型项目的升级路径。用户可以使用 $route API 延迟加载 AngularJS 应用程序的部分内容,从而可以更容易地迁移到 Angular。


改进的 Web Worker 捆绑


Web Worker 可用来编写运行在主线程之外的代码,以此来提高应用程序的运行速度和并行性。我们正在为 CLI 添加对 Web Worker 的捆绑支持,解决开发人员在这方面的需求。


可选的使用信息分享


为了更好地满足社区的需求,我们在 CLI 中添加了可选的遥测功能。在获得用户同意的情况下,我们将收集有关命令和构建速度等方面的信息。这方面的信息知道得越多,我们就能做得越好。


依赖更新


与往常一样,我们也在更新对 TypeScript、RxJS 和 Node 等工具的依赖,以便与生态系统的其他部分保持同步。


Ivy 会是什么样子?


我们的目标是在 Angular 8.0 中包含可选的预览版 Ivy。如果你对 Ivy 还不熟悉,可以看一下 Kara 在谷歌 I/O 2018 大会上如何谈论 Ivy:


https://youtu.be/jnp_ny4SOQE?t=1320


可选的预览版 Ivy 可以让你在项目中切换 Ivy 和 View Engine,具体的操作细节将在即将推出的 beta 版本中提供。如果启用了这个选项,将会使用 Ivy 运行时指令而不是 ViewEngine 运行时来构建应用程序。应用程序将使用 Ivy 编译器构建,而且通过使用我们的兼容性编译器,来自 Angular 或其他第三方的依赖项仍然可以继续使用。预览版可以识别出与依赖项相关的问题,并帮助我们改进兼容性。


可选的预览版将带来如下内容:


  1. 生成更易于阅读和调试的代码;

  2. 更快的重建速度;

  3. 改进的有效载荷大小;

  4. 改进的模板类型检查;

  5. 非常棒的向后兼容性。


Ivy 并不一定可以用于所有的场景。某些功能(如国际化或 Angular Universal)在预览版中可能还不具备完全的兼容性。在预览版中,语言服务将无法正常运行。


这个预览版专注于在不重写应用程序的情况下让开发人员可以将应用程序切换到使用 Ivy 编译器和运行时指令。有很多特定于 Ivy 的 API 将被添加到我们的公共 API 中,作为 Angular Labs 和未来稳定版本的一部分。


什么时候可以准备好?


我们现在无法承诺一个固定的时间表,这个计划还有可能会发生变化。现在的计划是在 2019 年 4 月进入 RC,并在一个月后发布 Angular 8.0。我们将在 Angular 8.0 中使用 Ivy 可选预览来验证我们对向后兼容性的承诺,可能还需要推出任何必要的自动迁移工具。


我们希望将 Ivy 作为今年秋季下一个主要版本的一部分。由于我们专注于向后兼容性和支持现有应用程序,因此还不打算在 Angular 9 中默认启用 Ivy。


我们真的很希望看到那个在 Angular 9 中推出完整版的 Ivy,为开发人员带来更多的可能性。如果有任何新的进展,我们会继续与大家分享我们的计划。


英文原文:


https://blog.angular.io/a-plan-for-version-8-0-and-ivy-b3318dfc19f7


更多内容,请关注前端之巅。



会议推荐


2019 年 6 月,GMTC 全球大前端技术大会 2019 即将到来。小程序、Flutter、移动 AI、工程化、性能优化…大前端的下一站在哪里?点击下图了解更多详情。



2019 年 2 月 18 日 14:253260
用户头像

发布了 731 篇内容, 共 359.6 次阅读, 收获喜欢 1824 次。

关注

评论

发布
暂无评论
发现更多内容

依赖倒置原则(DIP)

路路

架构师训练营1期-week06-作业

lucian

极客大学架构师训练营

2 期架构师训练营 - 框架设计

Vicente

极客大学架构师训练营

week-6-part2 学习总结

451409827

在 iOS App 中显示 Build 时间和 git 分支名和 commit 哈希

疯清扬

ios 编译时间 git version build time 编译日期

6.3CAP原理与NoSQL数据库架构

张荣召

架构师训练营第六周作业

脸不大

简述CAP原理

orchid9

第六周学习心得

熊桂平

极客大学架构师训练营

架构师训练营 1 期 - week06 - 总结

lucian

极客大学架构师训练营

架构第六周总结

Geek_Gu

6.2分布式关系数据库(下)

张荣召

架构二期第二周总结

supersky6

ARTS打卡 第22周

引花眠

微服务 ARTS 打卡计划 springboot

week-6-part1 CAP 原理

451409827

架构师训练营2期第二周总结

Calvin

11/1-第二周-总结

张冬冬

心得

第六周总结

orchid9

2 期架构师训练营 - 第二周学习总结

Vicente

极客大学架构师训练营

第二周课后练习

刘洋

极客大学架构师训练营

架构课第二周Cache UML图

路路

极客大学架构师训练营

非HTTP应用或批处理应用如何进行全链路监控

东风微鸣

全链路监控 非HTTP应用

技术选型(二)

wing

极客大学架构师训练营

第6周作业

paul

week2-作业一

Dynatrace抓取系统中的任何方法Method的参数值

东风微鸣

APM Dynatrace

架構師訓練營第 1 期 - 第 06 周作業

Panda

架構師訓練營第 1 期

第二周作业

伊灵

架构师训练营第六周学习总结

文智

极客大学架构师训练营

架构师训练营第六周作业

文智

极客大学架构师训练营

架构师训练营第 6 周课后练习

叶纪想

极客大学架构师训练营

Angular 8确定包含Ivy,预计今年第二季度发布
-InfoQ