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
Currently in pub, a constraint like "<1.0.0" will allow "1.0.0-dev". In practice, this rarely matters because it will try any non-prerelease version before considering 1.0.0-dev, but I think it's still goes against the user's intuition.
It seems totally wrong to allow an experimental unstable version of something whose stable version you don't allow. Npm's interpretation is:
>1.2.3 Greater than a specific version.
<1.2.3 Less than a specific version. If there is no prerelease tag on the version range, then no prerelease version will be allowed either, even though these are technically "less than".
>=1.2.3 Greater than or equal to. Note that prerelease versions are NOT equal to their "normal" equivalents, so 1.2.3-beta will not satisfy this range, but 2.3.0-beta will.
<=1.2.3 Less than or equal to. In this case, prerelease versions ARE allowed, so 1.2.3-beta would satisfy.
I think we should change pub to match this. I don't think it will impact many users because pre-release versions are already deprioritized by the solver.
The text was updated successfully, but these errors were encountered:
Currently in pub, a constraint like "<1.0.0" will allow "1.0.0-dev". In practice, this rarely matters because it will try any non-prerelease version before considering 1.0.0-dev, but I think it's still goes against the user's intuition.
It seems totally wrong to allow an experimental unstable version of something whose stable version you don't allow. Npm's interpretation is:
>1.2.3 Greater than a specific version.
<1.2.3 Less than a specific version. If there is no prerelease tag on the version range, then no prerelease version will be allowed either, even though these are technically "less than".
>=1.2.3 Greater than or equal to. Note that prerelease versions are NOT equal to their "normal" equivalents, so 1.2.3-beta will not satisfy this range, but 2.3.0-beta will.
<=1.2.3 Less than or equal to. In this case, prerelease versions ARE allowed, so 1.2.3-beta would satisfy.
I think we should change pub to match this. I don't think it will impact many users because pre-release versions are already deprioritized by the solver.
The text was updated successfully, but these errors were encountered: