Chromium Code Reviews| Index: sdk/lib/_internal/pub/lib/src/command/cache_repair.dart |
| diff --git a/sdk/lib/_internal/pub/lib/src/command/cache_repair.dart b/sdk/lib/_internal/pub/lib/src/command/cache_repair.dart |
| index b16efe2f77bae181b151a9b8818fc534a14874b8..2884e30aad514e1f25b472bb8b2e9e86e71af08d 100644 |
| --- a/sdk/lib/_internal/pub/lib/src/command/cache_repair.dart |
| +++ b/sdk/lib/_internal/pub/lib/src/command/cache_repair.dart |
| @@ -19,33 +19,33 @@ class CacheRepairCommand extends PubCommand { |
| String get usage => "pub cache repair"; |
| String get docUrl => "http://dartlang.org/tools/pub/cmd/pub-cache.html"; |
| - Future onRun() { |
| + Future onRun() async { |
| var successes = 0; |
| var failures = 0; |
| // Repair every cached source. |
| - return Future.forEach(cache.sources.where( |
| - (source) => source is CachedSource), (source) { |
| - return source.repairCachedPackages().then((results) { |
| - successes += results.first; |
| - failures += results.last; |
| - }); |
| - }).then((_) { |
| - if (successes > 0) { |
| - var packages = pluralize("package", successes); |
| - log.message("Reinstalled ${log.green(successes)} $packages."); |
| - } |
| - |
| - if (failures > 0) { |
| - var packages = pluralize("package", failures); |
| - log.message("Failed to reinstall ${log.red(failures)} $packages."); |
| - } |
| - |
| - if (successes == 0 && failures == 0) { |
| - log.message("No packages in cache, so nothing to repair."); |
| - } |
| - |
| - if (failures > 0) return flushThenExit(exit_codes.UNAVAILABLE); |
| - }); |
| + for (var source in cache.sources) { |
| + if (source is! CachedSource) continue; |
| + |
| + var results = await source.repairCachedPackages(); |
| + successes += results.first; |
| + failures += results.last; |
| + } |
| + |
| + if (successes > 0) { |
| + var packages = pluralize("package", successes); |
| + log.message("Reinstalled ${log.green(successes)} $packages."); |
| + } |
| + |
| + if (failures > 0) { |
| + var packages = pluralize("package", failures); |
| + log.message("Failed to reinstall ${log.red(failures)} $packages."); |
| + } |
| + |
| + if (successes == 0 && failures == 0) { |
| + log.message("No packages in cache, so nothing to repair."); |
| + } |
| + |
| + if (failures > 0) return flushThenExit(exit_codes.UNAVAILABLE); |
|
nweiz
2014/08/29 23:30:41
"return" -> "await"
Bob Nystrom
2014/09/03 23:44:16
Done.
|
| } |
| } |