-
Notifications
You must be signed in to change notification settings - Fork 552
Description
Is there an existing issue for this?
- I have searched the existing issues
Current Behavior
Description
semver.subset(subRange, superRange) is expected to return true when every version in subRange is also contained in superRange. However, when dealing with prerelease versions, semver.subset() appears to incorrectly return false even when the subrange is fully contained in the superrange.
Steps to Reproduce
const semver = require('semver');
console.log(semver.subset('^10.2.0-beta.2', '^10.2.0-beta.1')); // Expected: true, Actual: falseExpected Behavior
Expected Behavior
The first test (semver.subset('^10.2.0-beta.2', '^10.2.0-beta.1')) should return true because:
• ^10.2.0-beta.2 includes 10.2.0-beta.2, 10.2.0-beta.3, 10.2.0-beta.4, etc.
• ^10.2.0-beta.1 includes everything in ^10.2.0-beta.2, plus 10.2.0-beta.1.
• Since every version in ^10.2.0-beta.2 is also in ^10.2.0-beta.1, semver.subset() should return true.
Actual Behavior
Instead of returning true, semver.subset('^10.2.0-beta.2', '^10.2.0-beta.1') returns false.
Steps To Reproduce
No response
Environment
No response