Chromium Code Reviews| Index: sdk/lib/_internal/pub/lib/src/command/global_run.dart |
| diff --git a/sdk/lib/_internal/pub/lib/src/command/global_run.dart b/sdk/lib/_internal/pub/lib/src/command/global_run.dart |
| index 707fdea4c1592f5dbe612908a9c4868d19361f7d..839da464afbb3d2dfac295c3d36b045ac342c766 100644 |
| --- a/sdk/lib/_internal/pub/lib/src/command/global_run.dart |
| +++ b/sdk/lib/_internal/pub/lib/src/command/global_run.dart |
| @@ -26,20 +26,22 @@ class GlobalRunCommand extends PubCommand { |
| bool get allowTrailingOptions => false; |
| String get description => |
| "Run an executable from a globally activated package."; |
| - String get usage => "pub global run <package> <executable> [args...]"; |
| + String get usage => "pub global run <package>:<executable> [args...]"; |
| Future onRun() { |
| if (commandOptions.rest.isEmpty) { |
| - usageError("Must specify a package and executable to run."); |
| + usageError("Must specify an executable to run."); |
| } |
| - if (commandOptions.rest.length == 1) { |
| - usageError("Must specify an executable to run."); |
| + if (!commandOptions.rest[0].contains(":")) { |
| + // TODO(rnystrom): Allow "foo" as a synonym for "foo:foo"? |
|
nweiz
2014/07/17 07:15:10
+1
|
| + usageError("Must specify a package from which to run the executable."); |
| } |
| - var package = commandOptions.rest[0]; |
| - var executable = commandOptions.rest[1]; |
| - var args = commandOptions.rest.skip(2); |
| + var parts = split1(commandOptions.rest[0], ":"); |
| + var package = parts[0]; |
| + var executable = parts[1]; |
| + var args = commandOptions.rest.skip(1).toList(); |
| return globals.find(package).then((entrypoint) { |
| return runExecutable(this, entrypoint, package, executable, args); |