501c807266
Previously the help messages for 'dart run' were output by a secondary VM spawned solely to print the VM's help message. However, this help message was not consistent with those found for other DartDev commands. With this change, the 'run' command: - Uses package:args to create a help message consistent with other DartDev commands. - No longer accepts arbitrary options and is instead restricted to a subset of common flags. Passing a VM flag which is not included in this subset of commands will result in an argument error if passed *after* the 'run' command. Other VM flags can be passed immediately following 'dart' and before the DartDev command. - No longer outputs the VM verbose options when invoked with '--help --verbose'. VM verbose options and the original VM help message can be viewed by running 'dart --help --verbose'. This makes uncommon VM flags used for development less visible to regular users. - Now properly forwards the subset of VM options accepted by 'run' to the VM (e.g., 'dart run --observe --no-pause-isolates-on-exit foo.dart' would have ignored '--no-pause-isolates-on-exit'). Change-Id: Ie56b767cc21e6af3630c742458a6c3e9f7418250 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/155841 Commit-Queue: Ben Konyi <bkonyi@google.com> Reviewed-by: Siva Annamalai <asiva@google.com>
Dart CLI tooling
A command-line utility for Dart development.
Usage: dart [<vm-flags>] <command|dart-file> [<arguments>]
Global options:
-h, --help Print this usage information.
-v, --verbose Show verbose output.
--version Print the Dart SDK version.
--enable-analytics Enable anonymous analytics.
--disable-analytics Disable anonymous analytics.
Available commands:
analyze Analyze the project's Dart code.
create Create a new project.
format Format Dart source code.
migrate Perform a null safety migration on a project or package.
pub Work with packages.
run Run a Dart file.
test Runs tests in this project.
Run "dart help <command>" for more information about a command.
Contributing
If you'd like to contribute to the Dart CLI tool, please start by reading the contribution guidelines for the Dart project. Then familiarize yourself with the [design principles][design] that guide this tool's UX.
Features and bugs
Please file feature requests and bugs in the Dart SDK [issue tracker][tracker]
with label area-dart-cli.
[design] https://github.com/dart-lang/sdk/blob/master/pkg/dartdev/doc/design.md [tracker]: https://github.com/dart-lang/sdk/labels/area-dart-cli