| Index: sdk/lib/_internal/pub/lib/src/solver/version_solver.dart
|
| diff --git a/sdk/lib/_internal/pub/lib/src/solver/version_solver.dart b/sdk/lib/_internal/pub/lib/src/solver/version_solver.dart
|
| index ec276ea22d0911d0c8185405897348840e056534..fa2aae0bcc68beccfcff54f204af147cdb6ab156 100644
|
| --- a/sdk/lib/_internal/pub/lib/src/solver/version_solver.dart
|
| +++ b/sdk/lib/_internal/pub/lib/src/solver/version_solver.dart
|
| @@ -75,6 +75,22 @@ class SolveResult {
|
| final Package _root;
|
| final LockFile _previousLockFile;
|
|
|
| + /// Returns the names of all packages that were changed.
|
| + ///
|
| + /// This includes packages that were added or removed.
|
| + Set<String> get changedPackages {
|
| + if (packages == null) return null;
|
| +
|
| + var changed = packages
|
| + .where((id) =>
|
| + !_sources.idsEqual(_previousLockFile.packages[id.name], id))
|
| + .map((id) => id.name).toSet();
|
| +
|
| + return changed.union(_previousLockFile.packages.keys
|
| + .where((package) => !availableVersions.containsKey(package))
|
| + .toSet());
|
| + }
|
| +
|
| SolveResult.success(this._sources, this._root, this._previousLockFile,
|
| this.packages, this.overrides, this.availableVersions,
|
| this.attemptedSolutions)
|
|
|