Index: sdk/lib/_internal/pub/lib/src/solver/solve_report.dart |
diff --git a/sdk/lib/_internal/pub/lib/src/solver/solve_report.dart b/sdk/lib/_internal/pub/lib/src/solver/solve_report.dart |
index aafa5d03cdc5e4fdfcdf26103cc0ad1c098d23a5..028e5a4bad15713e4a7bea3bc5b6ff6d39810ec6 100644 |
--- a/sdk/lib/_internal/pub/lib/src/solver/solve_report.dart |
+++ b/sdk/lib/_internal/pub/lib/src/solver/solve_report.dart |
@@ -9,6 +9,7 @@ import '../log.dart' as log; |
import '../package.dart'; |
import '../source_registry.dart'; |
import '../utils.dart'; |
+import '../version.dart'; |
import 'version_solver.dart'; |
/// Unlike [SolveResult], which is the static data describing a resolution, |
@@ -208,27 +209,26 @@ class SolveReport { |
// unable to upgrade to. |
if (newId != null) { |
var versions = _result.availableVersions[newId.name]; |
- var newerStable = 0; |
- var newerUnstable = 0; |
+ var newerStable = false; |
+ var newerUnstable = false; |
for (var version in versions) { |
if (version > newId.version) { |
if (version.isPreRelease) { |
- newerUnstable++; |
+ newerUnstable = true; |
} else { |
- newerStable++; |
+ newerStable = true; |
} |
} |
} |
// If there are newer stable versions, only show those. |
var message; |
- if (newerStable > 0) { |
- message = "($newerStable newer " |
- "${pluralize('version', newerStable)} available)"; |
- } else if (newerUnstable > 0) { |
- message = "($newerUnstable newer unstable " |
- "${pluralize('version', newerUnstable)} available)"; |
+ if (newerStable) { |
+ message = "(${maxAll(versions, Version.prioritize)} available)"; |
+ } else if (newerUnstable) { |
+ var latest = ; |
+ message = "(${maxAll(versions)} available)"; |
} |
if (message != null) _output.write(" ${log.cyan(message)}"); |