Commit 8f7e6204 authored by Ian Hickson's avatar Ian Hickson

Merge pull request #609 from Hixie/upgrade-harder

dev/update_packages.dart --upgrade
parents 33ca3307 92a62120
...@@ -6,11 +6,15 @@ ...@@ -6,11 +6,15 @@
import 'dart:io'; import 'dart:io';
final String binaryName = Platform.isWindows ? 'pub.bat' : 'pub'; final String binaryName = Platform.isWindows ? 'pub.bat' : 'pub';
update(Directory directory) { void update(Directory directory, bool upgrade) {
for (FileSystemEntity dir in directory.listSync()) { for (FileSystemEntity dir in directory.listSync()) {
if (dir is Directory) { if (dir is Directory) {
print("Updating ${dir.path}..."); print("Updating ${dir.path}...");
ProcessResult result = Process.runSync(binaryName, ['get'], workingDirectory: dir.path); ProcessResult result = Process.runSync(
binaryName,
[ upgrade ? 'upgrade' : 'get' ],
workingDirectory: dir.path
);
if (result.exitCode != 0) { if (result.exitCode != 0) {
print("... failed with exit code ${result.exitCode}."); print("... failed with exit code ${result.exitCode}.");
print(result.stdout); print(result.stdout);
...@@ -20,8 +24,9 @@ update(Directory directory) { ...@@ -20,8 +24,9 @@ update(Directory directory) {
} }
} }
main() { void main(List<String> arguments) {
bool upgrade = arguments.length > 0 && arguments[0] == '--upgrade';
String FLUTTER_ROOT = new File(Platform.script.toFilePath()).parent.parent.path; String FLUTTER_ROOT = new File(Platform.script.toFilePath()).parent.parent.path;
update(new Directory("$FLUTTER_ROOT/packages")); update(new Directory("$FLUTTER_ROOT/packages"), upgrade);
update(new Directory("$FLUTTER_ROOT/examples")); update(new Directory("$FLUTTER_ROOT/examples"), upgrade);
} }
...@@ -121,6 +121,8 @@ class AnalyzeCommand extends FlutterCommand { ...@@ -121,6 +121,8 @@ class AnalyzeCommand extends FlutterCommand {
} }
} }
bool foundAnyInCurrentDirectory = false;
if (argResults['current-directory']) { if (argResults['current-directory']) {
// ./*.dart // ./*.dart
Directory currentDirectory = new Directory('.'); Directory currentDirectory = new Directory('.');
...@@ -131,8 +133,10 @@ class AnalyzeCommand extends FlutterCommand { ...@@ -131,8 +133,10 @@ class AnalyzeCommand extends FlutterCommand {
foundOne = true; foundOne = true;
} }
} }
if (foundOne) if (foundOne) {
pubSpecDirectories.add('.'); pubSpecDirectories.add('.');
foundAnyInCurrentDirectory = true;
}
} }
if (argResults['current-package']) { if (argResults['current-package']) {
...@@ -141,6 +145,7 @@ class AnalyzeCommand extends FlutterCommand { ...@@ -141,6 +145,7 @@ class AnalyzeCommand extends FlutterCommand {
if (FileSystemEntity.isFileSync(mainPath)) { if (FileSystemEntity.isFileSync(mainPath)) {
dartFiles.add(mainPath); dartFiles.add(mainPath);
pubSpecDirectories.add('.'); pubSpecDirectories.add('.');
foundAnyInCurrentDirectory = true;
} }
} }
...@@ -180,9 +185,9 @@ class AnalyzeCommand extends FlutterCommand { ...@@ -180,9 +185,9 @@ class AnalyzeCommand extends FlutterCommand {
} }
if (hadInconsistentRequirements) { if (hadInconsistentRequirements) {
if (argResults['flutter-repo']) if (argResults['flutter-repo'])
_logging.warning('You may need to run "dart ${path.normalize(path.relative(path.join(ArtifactStore.flutterRoot, 'dev/update_packages.dart')))}".'); _logging.warning('You may need to run "dart ${path.normalize(path.relative(path.join(ArtifactStore.flutterRoot, 'dev/update_packages.dart')))} --upgrade".');
if (argResults['current-directory'] || argResults['current-package']) if (foundAnyInCurrentDirectory)
_logging.warning('You may need to run "pub get".'); _logging.warning('You may need to run "pub upgrade".');
} }
String buildDir = buildConfigurations.firstWhere((BuildConfiguration config) => config.testable, orElse: () => null)?.buildDir; String buildDir = buildConfigurations.firstWhere((BuildConfiguration config) => config.testable, orElse: () => null)?.buildDir;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment