dsp-testing / dependabot-unmet-peer-dependency Goto Github PK
View Code? Open in Web Editor NEWThis project forked from kazuooooo/dependabot-sample
This project forked from kazuooooo/dependabot-sample
I recreated a customer issue around PeerDependency locking a transitive dependency in NPM in the repo https://github.com/dsp-testing/dependabot-unmet-peer-dependency
The original issue had typescript locked to minor and patch version updates1, and running the update in a dry-run
revealed a peer dependency conflict
=> The update is not possible because of the following conflicting dependencies:
[email protected] requires typescript@>=3.4 <4.0
however, the latest version of typescript is 4.6.3 which would require a major version update.
Allowing typescript to allow major version updates in the package.json
manifest file2 reveals a different error that does not show the conflicting dependencies issue:
updater | INFO <job_350477952> Requirements to unlock update_not_possible
updater | INFO <job_350477952> Requirements update strategy bump_versions
updater | INFO <job_350477952> No update possible for typescript 3.9.10
A consequence of this is that the errors we are detecting for "locked transitive dependency" may include "unmet peer dependency" errors as well since we are just matching on the "conflicting dependencies" error in the error details3.
When using "typescript": "^3.9.10"
=== typescript (3.9.10)
=> checking for updates 4/4
=> latest available version is 4.6.3
=> latest allowed version is 3.9.10
=> The update is not possible because of the following conflicting dependencies:
[email protected] requires typescript@>=3.4 <4.0
=> requirements to unlock: update_not_possible
=> requirements update strategy: bump_versions
(no update possible ๐
โโ๏ธ)
When using "typescript": ">=3.9.10"
updater | INFO <job_350477952> Checking if typescript 3.9.10 needs updating
proxy | 2022/04/21 21:31:59 [014] GET https://registry.npmjs.org:443/typescript
proxy | 2022/04/21 21:32:00 [014] 200 https://registry.npmjs.org:443/typescript
proxy | 2022/04/21 21:32:02 [016] GET https://registry.npmjs.org:443/typescript/4.6.3
proxy | 2022/04/21 21:32:02 [016] 200 https://registry.npmjs.org:443/typescript/4.6.3
updater | INFO <job_350477952> Latest version is 4.6.3
proxy | 2022/04/21 21:32:07 [018] GET https://registry.npmjs.org:443/typescript
proxy | 2022/04/21 21:32:07 [018] 200 https://registry.npmjs.org:443/typescript
proxy | 2022/04/21 21:32:14 [020] GET https://registry.npmjs.org:443/ts-jest
proxy | 2022/04/21 21:32:14 [020] 200 https://registry.npmjs.org:443/ts-jest
updater | INFO <job_350477952> Requirements to unlock update_not_possible
updater | INFO <job_350477952> Requirements update strategy bump_versions
updater | INFO <job_350477952> No update possible for typescript 3.9.10
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.