mzuccaroli / angular-google-tag-manager

A service library for integrate google tag manager in your angular project
https://itnext.io/how-to-add-google-tag-manager-to-an-angular-application-fc68624386e2
MIT License
138 stars 78 forks source link

Tilde versioning of Angular is too strict #108

Closed bursauxa closed 2 years ago

bursauxa commented 2 years ago

Hello, we are encountering the following problem when attempting to upgrade to Angular 13.1:

~/repos/my-project 12:30 $ npm install
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR! 
npm ERR! While resolving: my-project@0.0.0
npm ERR! Found: @angular/common@13.1.1
npm ERR! node_modules/@angular/common
npm ERR!   @angular/common@"^13.1.1" from the root project
npm ERR! 
npm ERR! Could not resolve dependency:
npm ERR! peer @angular/common@"~13.0.1" from angular-google-tag-manager@1.4.4
npm ERR! node_modules/angular-google-tag-manager
npm ERR!   angular-google-tag-manager@"^1.4.4" from the root project

This is caused by package.json in this library requiring version ~13.0.1 of Angular - in other words, 13.0 but not 13.1. I do not think there is any reason to have this restriction, compatibility should be assumed within a given major version.

In practice it can be force-resolved by using npm install --legacy-peer-deps but we avoid doing that on production systems, as the npm ecosystem is moving towards cleaner dependency management.