You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I would like to request a feature for installs that use minimumReleaseAge.
Current behavior
When dependency resolution hits a transitive package that has no mature version satisfying a selected parent's range, pnpm fails with:
ERR_PNPM_NO_MATURE_MATCHING_VERSION
Example:
A depends on B via ^ range
latest compatible B introduces/updates dependency on C
no mature C version satisfies B's C range yet
install fails
Requested behavior
When minimumReleaseAge is enabled and this happens, try fallback/backtracking to an older compatible version of the parent package (B) that still satisfies A's range, if that allows a fully mature dependency graph.
In other words: prefer a resolvable mature graph over hard failure when an older compatible parent can avoid the blocked transitive.
Would this make sense? Maybe as an opt-in via a new config option?
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
I would like to request a feature for installs that use
minimumReleaseAge.Current behavior
When dependency resolution hits a transitive package that has no mature version satisfying a selected parent's range, pnpm fails with:
ERR_PNPM_NO_MATURE_MATCHING_VERSIONExample:
Adepends onBvia^rangeBintroduces/updates dependency onCCversion satisfiesB'sCrange yetRequested behavior
When
minimumReleaseAgeis enabled and this happens, try fallback/backtracking to an older compatible version of the parent package (B) that still satisfiesA's range, if that allows a fully mature dependency graph.In other words: prefer a resolvable mature graph over hard failure when an older compatible parent can avoid the blocked transitive.
Would this make sense? Maybe as an opt-in via a new config option?
Beta Was this translation helpful? Give feedback.
All reactions