diff --git a/lib/src/solver/report.dart b/lib/src/solver/report.dart index b175d17b2..649a10964 100644 --- a/lib/src/solver/report.dart +++ b/lib/src/solver/report.dart @@ -250,7 +250,10 @@ class SolveReport { String message; if (newerStable) { message = '(${maxAll(versions, Version.prioritize)} available)'; - } else if (newerUnstable) { + } else if ( + // Only show newer prereleases for versions where a prerelease is + // already chosen. + newId.version.isPreRelease && newerUnstable) { message = '(${maxAll(versions)} available)'; } diff --git a/test/global/activate/uncached_package_test.dart b/test/global/activate/uncached_package_test.dart index 6b67fddfe..db520ae42 100644 --- a/test/global/activate/uncached_package_test.dart +++ b/test/global/activate/uncached_package_test.dart @@ -23,7 +23,7 @@ void main() { await runPub(args: ['global', 'activate', 'foo'], output: ''' Resolving dependencies... - + foo 1.2.3 (2.0.0-wildly.unstable available) + + foo 1.2.3 Downloading foo 1.2.3... Precompiling executables... Precompiled foo:foo. diff --git a/test/upgrade/report/does_not_show_newer_versions_for_locked_packages_test.dart b/test/upgrade/report/does_not_show_newer_versions_for_locked_packages_test.dart index 6883ab90f..ccafebc23 100644 --- a/test/upgrade/report/does_not_show_newer_versions_for_locked_packages_test.dart +++ b/test/upgrade/report/does_not_show_newer_versions_for_locked_packages_test.dart @@ -32,7 +32,7 @@ void main() { await pubUpgrade(args: ['upgraded'], output: RegExp(r''' Resolving dependencies\.\.\..* not_upgraded 1\.0\.0 -. upgraded 2\.0\.0 \(was 1\.0\.0\) \(3\.0\.0-dev available\) +. upgraded 2\.0\.0 \(was 1\.0\.0\) ''', multiLine: true), environment: {'PUB_ALLOW_PRERELEASE_SDK': 'false'}); }); } diff --git a/test/upgrade/report/shows_newer_available_versions_test.dart b/test/upgrade/report/shows_newer_available_versions_test.dart index d713f44a7..4c1ca562f 100644 --- a/test/upgrade/report/shows_newer_available_versions_test.dart +++ b/test/upgrade/report/shows_newer_available_versions_test.dart @@ -20,9 +20,14 @@ void main() { builder.serve('multiple_newer_unstable', '1.0.0'); builder.serve('multiple_newer_unstable', '1.0.1-unstable.1'); builder.serve('multiple_newer_unstable', '1.0.1-unstable.2'); + builder.serve('multiple_newer_unstable2', '1.0.1-unstable.1'); + builder.serve('multiple_newer_unstable2', '1.0.1-unstable.2'); + builder.serve('multiple_newer_unstable2', '1.0.1-unstable.2'); builder.serve('no_newer', '1.0.0'); builder.serve('one_newer_unstable', '1.0.0'); builder.serve('one_newer_unstable', '1.0.1-unstable.1'); + builder.serve('one_newer_unstable2', '1.0.1-unstable.1'); + builder.serve('one_newer_unstable2', '1.0.1-unstable.2'); builder.serve('one_newer_stable', '1.0.0'); builder.serve('one_newer_stable', '1.0.1'); }); @@ -32,8 +37,10 @@ void main() { 'multiple_newer': '1.0.0', 'multiple_newer_stable': '1.0.0', 'multiple_newer_unstable': '1.0.0', + 'multiple_newer_unstable2': '1.0.1-unstable.1', 'no_newer': '1.0.0', 'one_newer_unstable': '1.0.0', + 'one_newer_unstable2': '1.0.1-unstable.1', 'one_newer_stable': '1.0.0' }).create(); @@ -42,10 +49,12 @@ void main() { Resolving dependencies\.\.\..* . multiple_newer 1\.0\.0 \(1\.0\.1 available\) . multiple_newer_stable 1\.0\.0 \(1\.0\.2\ available\) -. multiple_newer_unstable 1\.0\.0 \(1\.0\.1-unstable\.2 available\) +. multiple_newer_unstable 1\.0\.0 +. multiple_newer_unstable2 1\.0\.1-unstable\.1 \(1\.0\.1-unstable\.2 available\) . no_newer 1\.0\.0 . one_newer_stable 1\.0\.0 \(1\.0\.1 available\) -. one_newer_unstable 1\.0\.0 \(1\.0\.1-unstable\.1 available\) +. one_newer_unstable 1\.0\.0 +. one_newer_unstable2 1\.0\.1-unstable\.1 \(1\.0\.1-unstable\.2 available\) ''', multiLine: true), environment: {'PUB_ALLOW_PRERELEASE_SDK': 'false'}); }); }