The next major release of Angular is expected to be revealed any week now. Angular 6 will continue the team’s focus of being smaller, faster and easier to use.
Earlier this week, the team released the version’s fifth release candidate, which included a number of bug fixes as well as the addition of token marking and support for configuring navigation URLs. According to Stephen Fluin, developer advocate for Angular, RC means the team has achieved a level of stability for the next release and are done adding features and changing APIs.
Fluin also explained that the team has two release tracks. First, they have releases they make to the public, which includes every change the team makes to Angular and merged into the master branch. The second is that Google has all the Angular source code in a single repository, which “means every change we make to Angular is already in use across more than 500 products at Google,” Fluin said.
A key capability version 6 will aim to do is combine all the releases of the framework, meaning the latest versions of the core router, platform browser, CLI, Angular Material and other solutions will be released together in order to give developers a sense of cohesion and provide better access to the latest version of Angular.
As part of the releases focus on making things smaller, the bundles in Angular 6 will be smaller in order to give users a faster experience, according to Fluin. The team is doing this by updating to the latest version of Webpack. In addition, the latest release will introduce a new way to connect the modules within an app and service. For instance, the team is adding the ability for services to refer to modules so that if a service isn’t being used, it disappears in order to make the bundle size smaller.
Version 6 is also updating to RxJS, the library for reactive programming using Observables. According to Angular, this makes it easier to compose asynchronous or callback-based code.
On the easier-to-use end, the team is introducing ng update to its CLI interface. This new command will automatically keep users up-to-date and update the versions of dependencies being used. According to Fluin, it can perform code modifications and transforms to fit code to the latest best practices. “The idea is, going back to that core idea of balancing stability and innovation, is to push the boundaries in terms of how these tools work and update your code for you so you don’t have to worry about it,” said Fluin.
The team is also adding the ng add command that will be able to perform functions like turn your application into a Progressive Web App or add NativeScript to an existing project.
Another anticipated feature of version 6 is the tree component for Angular Material and the Component Dev Kit.
Beyond version 6.0, the team is working on rewriting the view engine and adding support for Bazel.
“It is a really good time to be an Angular developer,” said Fluin. “Since our September 2016 release, 2.0, we have done a lot of work to make sure that Angular is stable and predictable.”