The Angular team publishes release announcements, deprecation notices, and support policy updates for the Angular framework.
HN commenters cite it for version details, such as deprecated components removed in v17, signals in v16, and the end of IE11 support.
This release is awesome, here is a summary from the Angular team blog - https://blog.angular.io/version-8-of-angular-smaller-bundles-cli-apis-and-alignment-with-the-ecosystem-af0261112a27
The main feature among many is differential loading, that will load different versions of the application depending on the capabilities of the browser.
This will avoid installing polyfills without the need for them and reduce the bundle size. There are reports of 40kb reduction in bundle size, which is a lot.
More than that, this release does a lot of preparation work for Ivy in version 9, which will bring a completely new rendering layer.
Also, there is a lot of preparatory work for the introduction of Bazel in the build pipeline, which will bring us fully incremental builds (recompiling only the part of the code that changed and nothing more).
I was really hopeful for Ivy due to the bundle size improvements and was kind of expecting a silver bullet and saw around a 2% improvement. From their blog post:
- Small: 30%
- Medium: 2%
- Large: 25-40%
Our initial Angular 1 bundle was around 1mb. After updating to Angular 2+ it was around 2mb and after leaving the company in the hands of developers who were fairly junior I can see that their main bundle has now grown to 2.8mb. Another project with various junior devs has 2.9mb.
This is what is frustrating when I see our sister company pull out a 1mb react app with little effort... No matter how much effort I put in, it's never going to be achievable. Our package.json is extremely conservative as well.
https://blog.angular.io/version-9-of-angular-now-available-project-ivy-has-arrived-23c97b63cfa3
The announcement post for Angular 17 included a few sentences about this [1]
We deprecated legacy components in v15 to be removed in v17. Even though they’ll not be part of the Angular Material v17 package, you can still update your apps to Angular v17 and use the v16 Angular Material package. This will be an option until v18, after which Angular Material v16 will no longer be compatible with newer versions of Angular.
[1] https://blog.angular.io/introducing-angular-v17-4d7033312e4b
Topical, because Angular 16 was just released with ... Signals.
Used in some places to simplify RxJs or not need it at all. Some, not all.
They are looking towards a future where they can get rid of Zone.js and its strategry to change detection. I see this as a step along that part.
https://blog.angular.io/angular-v16-is-here-4d7a28ec680d
> Angular 2+ even used to work with Dart but they dropped it.
"They" dropped Angular altogether: https://blog.angular.io/finding-a-path-forward-with-angularjs-7e186fdd4429
Coincidentally, Angular is going to deprecate IE11 support with Angular 12, and remove it with Angular 13
https://blog.angular.io/angular-v12-is-now-available-32ed51fbfd49