Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save LayZeeDK/c822cc812f75bb07b7c55d07ba2719b3 to your computer and use it in GitHub Desktop.
Save LayZeeDK/c822cc812f75bb07b7c55d07ba2719b3 to your computer and use it in GitHub Desktop.
Angular CLI, Angular, Node.js, TypeScript, and RxJS version compatibility matrix. Officially part of the Angular documentation as of 2023-04-19 https://angular.io/guide/versions
Angular CLI version Angular version Node.js version TypeScript version RxJS version
~16.0.0 ~16.0.0 ^16.13.0 || ^18.10.0 >=4.9.5 <5.1.0 ^6.5.5 || ^7.4.0
~15.2.0 ~15.2.0 ^14.20.0 || ^16.13.0 || ^18.10.0 >=4.8.4 <5.0.0 ^6.5.5 || ^7.4.0
~15.1.0 ~15.1.0 ^14.20.0 || ^16.13.0 || ^18.10.0 >=4.8.4 <5.0.0 ^6.5.5 || ^7.4.0
~15.0.5 ~15.0.4 ^14.20.0 || ^16.13.0 || ^18.10.0 ~4.8.4 ^6.5.5 || ^7.4.0
~14.3.0 ~14.3.0 ^14.15.0 || ^16.10.0 >=4.6.4 <4.9.0 ^6.5.5 || ^7.4.0
~14.2.0 ~14.2.0 ^14.15.0 || ^16.10.0 >=4.6.4 <4.9.0 ^6.5.5 || ^7.4.0
~14.1.3 ~14.1.3 ^14.15.0 || ^16.10.0 >=4.6.4 <4.8.0 ^6.5.5 || ^7.4.0
~14.0.7 ~14.0.7 ^14.15.0 || ^16.10.0 >=4.6.4 <4.8.0 ^6.5.5 || ^7.4.0
~13.3.0 ~13.3.0 ^12.20.2 || ^14.15.0 || ^16.10.0 >=4.4.4 <4.7.0 ^6.5.5 || ^7.4.0
~13.2.6 ~13.2.7 ^12.20.2 || ^14.15.0 || ^16.10.0 >=4.4.4 <4.6.0 ^6.5.5 || ^7.4.0
~13.1.4 ~13.1.3 ^12.20.2 || ^14.15.0 || ^16.10.0 >=4.4.4 <4.6.0 ^6.5.5 || ^7.4.0
~13.0.4 ~13.0.3 ^12.20.2 || ^14.15.0 || ^16.10.0 ~4.4.4 ^6.5.5 || ^7.4.0
~12.2.18 ~12.2.17 ^12.14.1 || ^14.15.0 >=4.2.4 <4.4.0 ^6.5.5 || ^7.0.1
~12.1.4 ~12.1.5 ^12.14.1 || ^14.15.0 >=4.2.4 <4.4.0 ^6.5.5
~12.0.5 ~12.0.5 ^12.14.1 || ^14.15.0 ~4.2.4 ^6.5.5
~11.2.19 ~11.2.14 ^10.13.0 || ^12.11.1 >=4.0.8 <4.2.0 ^6.5.5
~11.1.4 ~11.1.2 ^10.13.0 || ^12.11.1 >=4.0.8 <4.2.0 ^6.5.5
~11.0.7 ~11.0.9 ^10.13.0 || ^12.11.1 ~4.0.8 ^6.5.5
~10.2.4 ~10.2.5 ^10.13.0 || ^12.11.1 >=3.9.4 <4.1.0 ^6.5.5
~10.1.7 ~10.1.6 ^10.13.0 || ^12.11.1 >=3.9.4 <4.1.0 ^6.5.5
~10.0.8 ~10.0.14 ^10.13.0 || ^12.11.1 ~3.9.4 ^6.5.5
~9.1.15 ~9.1.13 ^10.13.0 || ^12.11.1 >=3.6.5 <3.9.0 ^6.5.5
~9.0.7 ~9.0.7 ^10.13.0 || ^12.11.1 >=3.6.5 <3.8.0 ^6.5.5
~8.3.29 ~8.2.14 ^10.9.0 ~3.5.3 ^6.4.0
~8.2.2 ~8.2.14 ^10.9.0 ~3.4.5 ^6.4.0
~8.1.3 ~8.1.3 ^10.9.0 ~3.4.5 ^6.4.0
~8.0.6 ~8.0.3 ^10.9.0 ~3.4.5 ^6.4.0
~7.3.9 ~7.2.15 ^8.9.4 || ^10.9.0 ~3.2.4 ^6.3.3
~7.2.4 ~7.2.15 ^8.9.4 || ^10.9.0 ~3.2.4 ^6.3.3
~7.1.4 ~7.1.4 ^8.9.4 || ^10.9.0 ~3.1.6 ^6.3.3
~7.0.7 ~7.0.4 ^8.9.4 || ^10.9.0 ~3.1.6 ^6.3.3
~6.2.9 ~6.1.10 ^8.9.4 ~2.9.2 ^6.2.2
~6.1.5 ~6.1.10 ^8.9.4 ~2.7.2 ^6.2.2
~6.0.8 ~6.0.9 ^8.9.4 ~2.7.2 ^6.0.0
~1.7.4 ~5.2.11 ^6.9.5 || ^8.9.4 ~2.5.3 ^5.5.12
~1.6.7 ~5.2.11 ^6.9.5 || ^8.9.4 ~2.5.3 ^5.5.12
~1.5.6 >=5.0.5 <=5.1.3 ^6.9.5 || ^8.9.4 >=2.4.2 <2.6.0 ^5.5.12
~1.4.10 >=4.2.6 <=4.4.7 ^6.9.5 || ^8.9.4 ~2.4.2 ^5.0.3
~1.3.2 >=4.2.6 <=4.4.7 ^6.9.5 ~2.4.2 ^5.0.3
~1.2.7 >=4.0.3 <=4.1.3 ^6.9.5 ~2.3.4 ^5.0.3
~1.1.3 >=4.0.3 <=4.1.3 ^6.9.5 ~2.3.4 ^5.0.3
~1.0.6 >=4.0.3 <=4.1.3 ^6.9.5 ~2.2.2 ^5.0.3
1.0.0-rc.4 ~2.4.10 ^6.9.5 ~2.0.10 ^5.0.3
1.0.0-beta.30 ~2.3.1 ^6.9.5 ~2.0.10 ^5.0.3
1.0.0-beta.22-1 (package name: angular-cli) ~2.2.4 ^6.9.5 ~2.0.10 ^5.0.3
1.0.0-beta.20-1 (package name: angular-cli) ~2.1.2 ^6.9.5 ~2.0.10 ^5.0.3
1.0.0-beta.17 (package name: angular-cli) ~2.0.2 ^6.9.5 ~2.0.10 ^5.0.3
@LayZeeDK
Copy link
Author

@w11z
As seen in its package.json file, Angular CLI 15.2.x declares its Node.js version range as ^14.20.0 || ^16.13.0 || >=18.10.0. lru-cache 9.1.x requires Node.js 14 || >=16.14 (package.json). Which dependency needs lru-cache though?

@w11z
Copy link

w11z commented Apr 22, 2023

@LayZeeDK I ckecked yarn.lock, the dependency path from lru-cache to angular cli is the following

lru-cache@^9.0.0:
  version "9.1.0"

path-scurry@^1.6.1:
  version "1.7.0"
  
glob@^9.3.0, glob@^9.3.1:
  version "9.3.5"
   
read-package-json@^6.0.0:
  version "6.0.1"

pacote@15.1.0:
  version "15.1.0"
  
"@angular/cli@^15.2.6":
  version "15.2.6"

@LayZeeDK
Copy link
Author

LayZeeDK commented Apr 22, 2023

Interesting. Of course, the fix is easy: yarn install --ignore-engines or update Node.js.

@w11z
Copy link

w11z commented Apr 23, 2023

Interesting. Of course, the fix is easy: yarn install --ignore engines or update Node.js.

@LayZeeDK thanks for the workaround. Anyway my initial comment was more about updating the table so it won't confuse people who would come after me :)

@jerone
Copy link

jerone commented Apr 23, 2023

@w11z You might want to report this to Angular, so they can update their own minimum versions.

@dangrussell
Copy link

Please update the 16.0.0 row and add these additional rows:

~17.0.0,~17.0.0,^18.13.0 || ^20.9.0,	>=4.9.3 <5.3.0,^6.5.3 || ^7.4.0
~16.2.0,~16.2.0,^16.14.0 || ^18.10.0,	>=4.9.3 <5.2.0,^6.5.3 || ^7.4.0
~16.1.0,~16.1.0,^16.14.0 || ^18.10.0,	>=4.9.3 <5.2.0,^6.5.3 || ^7.4.0
~16.0.0,~16.0.0,^16.14.0 || ^18.10.0,	>=4.9.3 <5.1.0,^6.5.3 || ^7.4.0

See https://angular.io/guide/versions#actively-supported-versions

Thank you for maintaining this!

@LayZeeDK
Copy link
Author

LayZeeDK commented Nov 9, 2023

Hi @dangrussell,

This Gist is no longer maintained as it has been integrated into the official Angular documentation as per your link:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment