| 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 4f8123ca70d4ed32eacd34f02e2e22678665fb32..f487dd66f7c9c942501782827d59a3e25852b05b 100644
|
| --- a/sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart
|
| +++ b/sdk/lib/_internal/pub/lib/src/solver/backtracking_solver.dart
|
| @@ -486,6 +486,8 @@ class BacktrackingSolver {
|
| _validateSdkConstraint(pubspec);
|
|
|
| for (var dep in await depsFor(id)) {
|
| + if (dep.isMagic) continue;
|
| +
|
| var dependency = new Dependency(id, dep);
|
| var allDeps = _selection.getDependenciesOn(dep.name).toList();
|
| allDeps.add(dependency);
|
| @@ -591,10 +593,14 @@ class BacktrackingSolver {
|
| }
|
|
|
| // Make sure the package doesn't have any bad dependencies.
|
| - for (var dep in deps) {
|
| + for (var dep in deps.toSet()) {
|
| if (!dep.isRoot && sources[dep.source] is UnknownSource) {
|
| throw new UnknownSourceException(id.name, [new Dependency(id, dep)]);
|
| }
|
| +
|
| + if (dep.name == 'barback') {
|
| + deps.add(new PackageDep.magic('pub itself'));
|
| + }
|
| }
|
|
|
| return deps;
|
|
|