Angular is now one of the most popular open-source front-end web application frameworks. Over the years, Angular has undergone several updates and released various versions with new features, improvements, and bug fixes. Here is a comprehensive report on different Angular versions in reverse chronological order. You will also find the compatibility matrix of Angular, Node.js, TypeScript, and RxJS.
Table of Contents
Angular Version History
The following table gives you the Angular, Node.js, TypeScript, and RxJS version compatibility matrix. You can read the latest versions at https://github.com/angular/angular/blob/master/CHANGELOG.md.
Version | Release Date | TypeScript Version | NodeJs Version | RsJS Version |
---|---|---|---|---|
Angular 17 | Nov 2023 | >=5.2.0 <5.3.0 | ^18.13.0 || ^20.9.0 | ^6.5.3 || ^7.4.0 |
Angular 16 | Mar 2023 | >=4.9.3 <5.1.0 | ^16.14.0 || ^18.10.0 | ^6.5.3 || ^7.4.0 |
Angular 15 | Nov 2022 | ~4.8.4 | ^14.20.0 || ^16.13.0 || ^18.10.0 | ^6.5.5 || ^7.4.0 |
Angular 14 | June 2022 | >= 4.6.4 < 4.8.0 | >= 4.6.4 < 4.8.0 | ^6.5.5 || ^7.4.0 |
Angular 13 | Nov 2021 | ~4.4.4 | ^12.20.2 || ^14.15.0 || ^16.10.0 | ^6.5.5 || ^7.4.0 |
Angular 12 | May 2021 | ~4.2.4 | ^12.14.1 || ^14.15.0 | ^6.5.5 |
Angular 11 | Nov 2020 | ~4.0.8 | ^10.13.0 || ^12.11.1 | ^6.5.5 |
Angular 10 | June 2020 | ~3.9.4 | ^10.13.0 || ^12.11.1 | ^6.5.5 |
Angular 9 | Feb 2020 | >= 3.6.5 <= 3.7.7 | ^10.13.0 || ^12.11.1 | ^6.5.5 |
Angular 8 | May 2019 | ~3.4.5 | ^10.9.0 | ^6.4.0 |
Angular 7 | Oct 2018 | ~3.1.6 | ^8.9.4 || ^10.9.0 | ^6.3.3 |
Angular 6 | May 2018 | ~2.7.2 | ^8.9.4 | ^6.0.0 |
Angular 5 | Nov 2017 | >= 2.4.2 <= 2.5.3 | ^6.9.5 || ^8.9.4 | <= 5.5.12 < 6.0.0 |
Angular 4 | Mar 2017 | ~2.2.2 | ^6.9.5 | ^5.0.3 |
Angular 3 | Skipped | |||
Angular 2 | Sept 2016 | ~2.0.10 | ^6.9.5 | ^5.0.3 |
Angular 16
- Angular Signals
- Server-side rendering and hydration
- Improved tooling for standalone components, directives, and pipes
- Advancing developer tooling
- Better unit testing with Jest and Web Test Runner
Angular 15
- Standalone components API: Angular 15 made a lot of improvement in the standalone components API (introduced in Angular 14). This API allows developer to create Angular Application without using the ngModules. This API is now very stable.
- Directive composition API: The new directive composition API lets you apply directives to a component’s host element from within the component TypeScript class.
- NgOptimizedImage: This API was introduced in Angular 14 is now stable and can be used in Production.
- Debugging: Angular15 Now offers more simplified stack errors.
- Dependency injection:
providedIn: NgModule
&providedIn: 'any'
is now deprecated - Angular Forms: New utility methods
isFormControl
,isFormGroup
,isFormRecord
,isFormArray, etc
included in the Forms Module.
Angular 14
- Strictly typed forms: The Angular forms module gets a makeover. Now you can create a Strictly typed form in Angular. We also have a new form element calledÂ
FormRecord
. - Standalone components: You can now declare standalone components in Angular. Standalone components are not part of the ngModule. This implies that you can get rid of NgModules from your Angular Application
- Angular Router: The Router module gets a lot of improvements.
- Component: You can now use the function createComponent() to create components dynamically.
Angular 13
- IE11: Support for IE 11 is dropped.
- View Engine: The support for View Engine stops starting from Angular 13. Ivy is now the only way to go.
- Angular Forms: Minor enhancements in the Forms Module related to strictly typed forms. The strictly typed forms are scheduled to be released in Angular 14.
- fullTemplateTypeCheck: is now deprecated.
- date pipe: has an optional second argument to specify the timezone or timezone offset.
- routerLink: If you giveÂ
null
 orÂundefined
 toÂrouterLink
, then the Router will disable the navigation. Previous versions of Angular treated null or undefined as [] and navigated to the same page.
Angular 12
- Ivy Everywhere: Angular 12 will deprecate the View Engine, a compilation and rendering pipeline. Ivy will become the new default rendering engine. Current libraries with View Engine will continue to work, but it will be removed entirely in the future versions
- Canonical message-ID format: legacy i18n message IDs were inconsistent in their translation because of whitespace and translation invalidation issues. In this version, Angular is migrating to a new standard message-id design, which is considerably better.
- End of Protractor: Protector is now excluded from Angular. The Angular team is presently reviewing Cypress, WebdriverIO, and TestCafe.
- Deprecating support for IE11: Angular will deprecate IE11 from the next version. The warning message will be displayed for IE11 in this version.
- Nullish Coalescing: Angular will not support Nullish Coalescing from this version. This will help us to write cleaner code.
- Default strict mode: The Angular CLI enables the strict mode by default. This will help developers to catch the bugs quickly.
- Styling improvements: This version will now inline SASS in the styles. Support for Tailwind CSS also comes with this version.
Angular 5
- Support for Multiple Export Alias in Angular 5
- Improved Build Optimization
- Faster and improved compilation
- The new feature in Angular forms validation. updateOn blur or submit instead of the default change event added.
- In Angular 5, we have two new transition aliases,
:increment
and:decrement
. - New Router Lifecycle Events added in Angular 5 GuardsCheckStart, ChildActivationStart, ActivationStart, GuardsCheckEnd, ResolveStart, ResolveEnd, ActivationEnd, and ChildActivationEnd.
- Better Support for Service Workers in Angular 5
- Angular Universal State Transfer API and DOM
- Support for RxJS 5.5.2
- HTTP Module is Deprecated instead. Use the new and improved HttpClient Module
- number pipe, date pipe, and currency pipes now has better Internationalized support. They are not compatible with the old pipes. To use the old pipes, you will have to import the
DeprecatedI18NPipesModule
.
Angular 4
- Support for strictNullChecks
- Ahead of Time compilation in View Engine
- Angular Universal for server-side rendering
- Angular Animations is now a separate Package
- the template is now ng-template
- ngIf with else option
- New
titlecase
pipe - Adding search parameters to an HTTP request has been simplified.
- New Meta Service to help to add Meta Tags.
- Introduced email Validator to already existing form Validators.
compareWith
with Directive to help select options- ParamMap interface in Angular Router