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>