| Index: sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart
|
| diff --git a/sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart b/sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart
|
| index 6a0a53974f117a2e61dd3e31100fc9a426cde6bb..43009095b41b46043eac4fc0149de5d19de2ad4f 100644
|
| --- a/sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart
|
| +++ b/sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart
|
| @@ -90,7 +90,7 @@ class BacktrackingSolver {
|
| var _attemptedSolutions = 1;
|
|
|
| BacktrackingSolver(SourceRegistry sources, this.root, this.lockFile,
|
| - Iterable<PackageDep> overrides, List<String> useLatest)
|
| + List<String> useLatest)
|
| : sources = sources,
|
| cache = new PubspecCache(sources) {
|
| for (var package in useLatest) {
|
| @@ -98,7 +98,7 @@ class BacktrackingSolver {
|
| lockFile.packages.remove(package);
|
| }
|
|
|
| - for (var override in overrides) {
|
| + for (var override in root.dependencyOverrides) {
|
| _overrides[override.name] = override;
|
| }
|
| }
|
| @@ -110,6 +110,10 @@ class BacktrackingSolver {
|
|
|
| _logParameters();
|
|
|
| + // Sort the overrides by package name to make sure they're deterministic.
|
| + var overrides = _overrides.values.toList();
|
| + overrides.sort((a, b) => a.name.compareTo(b.name));
|
| +
|
| return newFuture(() {
|
| stopwatch.start();
|
|
|
| @@ -119,12 +123,12 @@ class BacktrackingSolver {
|
| _validateSdkConstraint(root.pubspec);
|
| return _traverseSolution();
|
| }).then((packages) {
|
| - return new SolveResult(packages, null, attemptedSolutions);
|
| + return new SolveResult(packages, overrides, null, attemptedSolutions);
|
| }).catchError((error) {
|
| if (error is! SolveFailure) throw error;
|
|
|
| // Wrap a failure in a result so we can attach some other data.
|
| - return new SolveResult(null, error, attemptedSolutions);
|
| + return new SolveResult(null, overrides, error, attemptedSolutions);
|
| }).whenComplete(() {
|
| // Gather some solving metrics.
|
| var buffer = new StringBuffer();
|
|
|