700x130

Angular 8.0.0 is here!

What’s new in Angular 8.0?This is a major release spanning the entire platform, including the framework, Angular Material, and the CLI with synchronized major versions. This release improves application startup time on modern browsers, provides new APIs for tapping into the CLI, and aligns Angular to the ecosystem and more web standards.Angular 8.0 now supports TypeScript 3.4, and even requires it, so you’ll need to upgrade.

Angular 8.0 is the first release to officially offer a switch to opt-in into Ivy. There are no real gains to do so right now, but you can give it a try to see if nothing breaks in your application. Because, at some point, probably in v9, Ivy will be the default. So the Angular team hopes the community will anticipate the switch and provide feedback, and that we’ll catch all the remaining issues before v9.We tried it on several of our apps and already caught a few regressions, so we would strongly advise to not use it blindly in production

We are committed to maintaining Semantic Versioning and a high degree of stability even across major versions. For our public API, we are committed to supporting features for N+2 releases. This means that a feature that is deprecated in 8.1 will keep working in the following two major releases (9 and 10). For example, we are deprecating platform-webworker in version 8.

Lazy loading

Since the first days of Angular, the router has supported lazy loading. Until now, this was accomplished by identifying a magic value of the loading module.

The value before the hash sign represents the path which leads to the file with the module implementation; the value afterwards stands for the therein contained class. This style of writing also works with Angular 8, but has been deprecated in favor of dynamic ECMAScript imports.The new writing style still contains the file name as magic value. However, since import is supported by many IDEs, invalid values will immediately return an error.

 

Differential Loading of Modern JavaScript

Where to download Angular 8

You can download the Angular production release from GitHub. An Angular update guide has been published, as well.

DOCUMENT

The DOCUMENT token moved from @angular/platform-browser to @angular/common. You can manually change it in your application, but a provided schematic will take care of it for you.

Deprecated webworker package

The @angular/platform-webworker package enabled running your Angular application in a Web Worker. As this proved trickier than expected (for building the application, SEO…), and not that good performance-wise, the package has been deprecated and will be removed in the future.

Conclusion

Once again, the Angular team has kept its word: migrating to the new Angular version is easy and doesn’t include large changes. Instead, some edges were rounded, which makes working with Google’s SPA framework even more comfortable. Differential loading creates a consciousness for the possibility of further optimization of bundle sizes if older browsers are either not supported or supported with separate bundles. The web worker support shows that computationally intensive tasks are increasingly finding their way into the browser. Enthusiasts can now try taking their first steps with Ivy.

Related Posts