Support the latest pub_semver (#1890)
This rewrites failures' incompatibility graphs so that they refer to
real version numbers rather than the pessimistic ranges that
pub_semver can now generate.
diff --git a/lib/src/pubspec.dart b/lib/src/pubspec.dart
index 65d3253..b751755 100644
--- a/lib/src/pubspec.dart
+++ b/lib/src/pubspec.dart
@@ -302,16 +302,15 @@
if (sdkConstraint.includeMax) return false;
if (sdkConstraint.min != null &&
sdkConstraint.min.isPreRelease &&
- sdkConstraint.min.major == sdk.version.major &&
- sdkConstraint.min.minor == sdk.version.minor &&
- sdkConstraint.min.patch == sdk.version.patch) {
+ equalsIgnoringPreRelease(sdkConstraint.min, sdk.version)) {
return false;
}
if (sdkConstraint.max == null) return false;
- if (sdkConstraint.max.isPreRelease) return false;
- return sdkConstraint.max.major == sdk.version.major &&
- sdkConstraint.max.minor == sdk.version.minor &&
- sdkConstraint.max.patch == sdk.version.patch;
+ if (sdkConstraint.max.isPreRelease &&
+ !sdkConstraint.max.isFirstPreRelease) {
+ return false;
+ }
+ return equalsIgnoringPreRelease(sdkConstraint.max, sdk.version);
}
/// Parses the "environment" field in [parent] and returns a map from SDK