Commit Graph

211 Commits

Author SHA1 Message Date
Devon Carew 55496c8a06 [dartdev] make the 'dart fix' command visible
Change-Id: I545242f2dbb0092f3d2e31b9cfbecbb2705df69f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175400
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-12-09 17:41:25 +00:00
pq 9cc78dce1f tweak description/disclaimer
Removes API migration from the description and ensures the disclaimer appears when run in a help context.

Sample output:


```
$ dart bin/dartdev.dart fix
Fix Dart source code.

This tool looks for and fixes analysis issues that have associated automated fixes.

To use the tool, run either 'dart fix --dry-run' for a preview of the proposed changes for a project, or
'dart fix --apply' to apply the changes.

Note: The `fix` command is provisional and subject to change or removal in future releases. Feedback is
welcome!

Usage: dart fix [arguments]
-h, --help       Print this usage information.
-n, --dry-run    Preview the proposed changes but make no changes.
    --apply      Apply the proposed changes.

Run "dart help" to see global options.

$ dart bin/dartdev.dart fix -n

Note: The `fix` command is provisional and subject to change or removal in future releases. Feedback is welcome!

Computing fixes in dartdev (dry run)... 15.2s
Nothing to fix!


$ dart bin/dartdev.dart fix --help
Fix Dart source code.

This tool looks for and fixes analysis issues that have associated automated fixes.

To use the tool, run either 'dart fix --dry-run' for a preview of the proposed changes for a project, or
'dart fix --apply' to apply the changes.

Note: The `fix` command is provisional and subject to change or removal in future releases. Feedback is
welcome!

Usage: dart fix [arguments]
-h, --help       Print this usage information.
-n, --dry-run    Preview the proposed changes but make no changes.
    --apply      Apply the proposed changes.

Run "dart help" to see global options.
```




Change-Id: I2fc03651d8a1605a9729bb4d62e382f533509d99
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175343
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2020-12-08 19:39:05 +00:00
Sigurd Meldgaard f3fe9dc3b3 Reland "Improve handling of disable-dartdev-analytics"
This is a reland of 58860f4814

Original change's description:
> Improve handling of disable-dartdev-analytics
>
> This is second try of https://dart-review.googlesource.com/c/sdk/+/171284
> that was reverted to to faulty logic in main_options.
>
> Some other refactorings are piggy-backed along.
>
> TestProject.runSync no longer takes a 'command' argument. It was anyway
> often not an argument.
>
> Also stop the messy handling of pub arguments. It is no longer needed.
>
> BUG: https://github.com/dart-lang/sdk/issues/44135
> Change-Id: I49abf5810d9ea262409ba9d93f0471037cb8a753
> TEST=The VM change is tested via all the pkg/dartdev/test/command/* tests that invoke dart with the --no-analytics flag.
> TEST=Furthermore manual test that the --no-analytics flag is passed to dartdev.
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174261
> Reviewed-by: Jonas Jensen <jonasfj@google.com>
> Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>

Change-Id: I725662f578d061f87171ceffe9aff3de83688f58
TEST=Furthermore run the vm-kernel-precomp-obfuscate-linux-release-x64-try trybot
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174473
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-12-04 14:22:10 +00:00
pq c7f364562c simple fix driver tool
Work to support https://github.com/dart-lang/sdk/issues/44272.

(Sure to evolve w/ some testing but I think there's enough to iterate on.)


Change-Id: Ieaab218ad8850631f4b16838d3b3821eaf7bd747
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175005
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-12-04 02:00:43 +00:00
Devon Carew cec14bbf71 [dart analyze] wrap longer error correction messages
Change-Id: Ibed3e696c1eef76034ecc66b0156fe3cb7e61d35
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174862
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2020-12-03 03:13:17 +00:00
Devon Carew 802467cb76 [dartdev] rename benchmark names
Change-Id: I1924c72dbda64d864d5139b93c5b3377898d6ede
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174780
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-12-02 21:51:17 +00:00
Devon Carew 8cba879f46 Add additional validations to the pkg/ package pubspecs.
TEST=these are additional validations that we run on the bots

Redux of https://dart-review.googlesource.com/c/sdk/+/161040

Change-Id: Ia32ced5d48fbfeafacfa9e51dc4774d2e9425091
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174601
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-12-02 17:27:18 +00:00
Brian Wilkerson 8757a336a1 Unconditionally display the correction message when running dart analyze
Change-Id: I4fbc5bc904db6d89c885bf7f01d5e35d8f6c6927
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174564
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-12-02 16:30:50 +00:00
Sigurd Meldgaard 97baa6efd1 Revert "Improve handling of disable-dartdev-analytics"
This reverts commit 58860f4814.

Reason for revert: Broke bots. Will investigate.

Original change's description:
> Improve handling of disable-dartdev-analytics
>
> This is second try of https://dart-review.googlesource.com/c/sdk/+/171284
> that was reverted to to faulty logic in main_options.
>
> Some other refactorings are piggy-backed along.
>
> TestProject.runSync no longer takes a 'command' argument. It was anyway
> often not an argument.
>
> Also stop the messy handling of pub arguments. It is no longer needed.
>
> BUG: https://github.com/dart-lang/sdk/issues/44135
> Change-Id: I49abf5810d9ea262409ba9d93f0471037cb8a753
> TEST=The VM change is tested via all the pkg/dartdev/test/command/* tests that invoke dart with the --no-analytics flag.
> TEST=Furthermore manual test that the --no-analytics flag is passed to dartdev.
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174261
> Reviewed-by: Jonas Jensen <jonasfj@google.com>
> Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>

TBR=bkonyi@google.com,sigurdm@google.com,jonasfj@google.com

Change-Id: I754bcebdcfc595158b04d431662b65bf25f5b89d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174466
Reviewed-by: Sigurd Meldgaard <sigurdm@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2020-12-01 13:11:16 +00:00
Sigurd Meldgaard 58860f4814 Improve handling of disable-dartdev-analytics
This is second try of https://dart-review.googlesource.com/c/sdk/+/171284
that was reverted to to faulty logic in main_options.

Some other refactorings are piggy-backed along.

TestProject.runSync no longer takes a 'command' argument. It was anyway
often not an argument.

Also stop the messy handling of pub arguments. It is no longer needed.

BUG: https://github.com/dart-lang/sdk/issues/44135
Change-Id: I49abf5810d9ea262409ba9d93f0471037cb8a753
TEST=The VM change is tested via all the pkg/dartdev/test/command/* tests that invoke dart with the --no-analytics flag.
TEST=Furthermore manual test that the --no-analytics flag is passed to dartdev.
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174261
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2020-12-01 10:25:55 +00:00
Devon Carew 81986f4a36 [dartdev] add a --format option to dart analyze
Change-Id: Iad7d14b12892ce2121430f0cd94a2b0cd0d8e978
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174384
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-12-01 01:32:34 +00:00
Devon Carew 4fc9632b6c [dartdev] add several benchmarks for the dart cli and sdk
Change-Id: I5187312784dde2335b0aff605532b333ba86d29b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173441
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-30 22:28:34 +00:00
Devon Carew d2b5aad64a [dartdev] tweak the help text for dartdev analytics
Change-Id: I4beefb06a1bc21b830b3061d4d9d3d8162f85593
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174323
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-30 18:21:32 +00:00
Devon Carew 281cd02293 [dart fix] some tweaks to the cli ui for dart fix
Change-Id: I62e22e7f177f87e0f71b5275cdecb3e1da787de2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173401
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2020-11-21 15:29:43 +00:00
pq a5ff24c221 + go link
Change-Id: Ie0ce9b8d2864b399591497168c5ce93da878aee0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173340
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-11-20 18:07:36 +00:00
Devon Carew 5bf19170ba [dart fix] add a placeholder for dart fix documentation
Change-Id: Icbd92bde8729a3c9c27fb7235e181391d713d692
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173201
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-20 17:06:26 +00:00
pq 818b66544c make dart fix apply opt-in
Change-Id: I4d9f53fdf7ceaf41de6455118adfa23afbc087eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173200
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2020-11-20 04:33:46 +00:00
Brian Wilkerson 3c5333558a Initial support for testing data-driven fixes through dart fix
Change-Id: I8197c83ef409ad5df1dda623c773846961916e09
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172684
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2020-11-19 22:43:06 +00:00
Devon Carew daf9f2a183 [dartdev] update some comments around dartdev analytics custom dimensions
Change-Id: I3617a2a29a5327ee3ac03c7fd6f4012fe6044e6a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173081
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-19 19:37:45 +00:00
Sigurd Meldgaard 4c5d27bfff Remove pub command
This file is no longer used since: https://dart-review.googlesource.com/c/sdk/+/168347 .

Change-Id: I039098894be40d5e028fca5b49719da66aa0cb9b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172960
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2020-11-19 12:03:19 +00:00
pq 9219128bde summary presentation tweaks
See: https://github.com/dart-lang/sdk/issues/43746

Dry run:

```
Computing fixes in tmp_proj (dry run)...

3 proposed fixes in 1 file.

lib/main.dart
  annotate_overrides - 1 fix
  prefer_single_quotes - 2 fixes
```

Regular run:

```
Computing fixes in tmp_proj...
Applying fixes...

lib/main.dart
  prefer_single_quotes - 1 fix

1 fix made in 1 file.
```

Change-Id: I569b945027c807e4ff47c0eed99b7d9a64d4b8f0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172823
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-19 00:09:11 +00:00
Ben Konyi 1d1137666c [ CLI ] Fix issue where test was expecting different error message than
that reported on Windows

Change-Id: Ib907f4d8afd50456ff962a7769a1f79d9b150c87
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172824
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
2020-11-18 22:18:12 +00:00
Ben Konyi b0ccaf75a3 [ VM / CLI ] Fix issue where trying to snapshot a non-existent script would cause an assertion failure
Passing --snapshot should result in the CLI being bypassed (`dart compile`
should be used otherwise). Check to see if this option is provided when
attempting to parse the script name and always populate script_name in
that case.

Fixes https://github.com/dart-lang/sdk/issues/43785

TEST=Added regression test to the CLI package to exercise this path.

Fixed: 43785
Change-Id: Ifb67a5880f6b83c54e6deb6b0785b61fdcfc0ada
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172820
Reviewed-by: Alexander Aprelev <aam@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2020-11-18 20:01:04 +00:00
Ben Konyi 2a6971cba3 [ CLI ] Don't parse arguments when trying to run non-existent file
File checks are done after the initial argument parsing, so argument
parsing should stop once the first non-valid command/flag is reached.

Fixes https://github.com/dart-lang/sdk/issues/43991

Fixed: 43991
Change-Id: I42ac2d44eecc9b0bb32bb92f365bee30d173ee42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172744
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2020-11-18 20:01:03 +00:00
Devon Carew e3a626f804 [dart fix] sort dart fix output by error id
Change-Id: I19667bb7aed370e76fa9efb80fa4f1001eebc683
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172800
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-18 18:49:11 +00:00
pq 4301645712 use ansi bullet
Fixes: https://github.com/dart-lang/sdk/issues/44241

Change-Id: Ia4d5daf92dea4ef15b8e38d07532caa1ece93f92
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172742
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-11-18 16:28:30 +00:00
pq f8c6ffb68b add dry-run summary details
See: https://github.com/dart-lang/sdk/issues/43746

Sample run (snipped):


[_fe_analyzer_shared] (master) $ dart ../dartdev/bin/dartdev.dart fix --dry-run

*** The `fix` command is provisional and subject to change or removal in future releases. ***

Computing fixes in _fe_analyzer_shared (dry run)... 18.5s

5945 proposed fixes in 115 files.

lib/src/base/errors.dart
  prefer_single_quotes • 9 fixes
  unnecessary_const • 14 fixes
  slash_for_doc_comments • 35 fixes
  prefer_equal_for_default_values • 1 fix
  unnecessary_this • 1 fix
lib/src/base/syntactic_entity.dart
  slash_for_doc_comments • 4 fixes
lib/src/flow_analysis/factory_type_test_helper.dart
  omit_local_variable_types • 2 fixes
lib/src/flow_analysis/flow_analysis.dart
  omit_local_variable_types • 189 fixes
  unnecessary_new • 73 fixes
  prefer_single_quotes • 7 fixes
  unnecessary_const • 1 fix
  avoid_init_to_null • 1 fix
  annotate_overrides • 3 fixes
  prefer_equal_for_default_values • 3 fixes
lib/src/messages/codes.dart
  omit_local_variable_types • 14 fixes
  prefer_single_quotes • 31 fixes
  annotate_overrides • 11 fixes
  unnecessary_new • 12 fixes
  prefer_equal_for_default_values • 2 fixes
  unnecessary_this • 1 fix
lib/src/messages/codes_generated.dart
  prefer_single_quotes • 1150 fixes
  unnecessary_new • 244 fixes
  unnecessary_const • 835 fixes
  omit_local_variable_types • 78 fixes
lib/src/messages/severity.dart
  unnecessary_const • 4 fixes
  prefer_single_quotes • 8 fixes

<snip>






Change-Id: Ic5b54771eeceeefeadd2d7de8023bdb5c9f45fa5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172682
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-11-18 00:43:00 +00:00
Sigurd Meldgaard ce272daae8 [dart cli]: Use the correct package_config from dart run and dart test
Before `dart run` would always use the package config found by looking up the hierarchy from
whatever we got from getExecutableForCommand.

When that happened to be a precompiled snapshot this would work, because it would be ignored.

But if it would be a dart-file in another package (that would happen if that package is not cached)
we instead should resolve it relatively to the current working directory
(where the pubspec.yaml is also found).

Bug: https://github.com/dart-lang/sdk/issues/44214
Change-Id: Ib2e929c01ddc72babbcff91560236e08429f09f7
TEST=The new package config behavior is tested by the new test in: pkg/dartdev/test/commands/run_test.dart.
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172181
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-11-17 10:20:00 +00:00
Sigurd Meldgaard 5cbb25f753 Revert "Improve handling of disable-dartdev-analytics"
This reverts commit cda994ffc8.

Reason for revert: This stopped all sending of analytics from dartdev.

The added flag in dartdev had an implicit default value of 'false' -> no analytics would be sent.

Also the main_options.cc change was broken and did not pass the argument on to dartdev.

This failed to be caught by tests because all test are run with analytics off, and that happened implicitly.

Original change's description:
> Improve handling of disable-dartdev-analytics
>
> Some other refactorings are piggy-backed along.
>
> TestProject.runSync no longer takes a 'command' argument. It was anyway
> often not an argument.
>
> Also stop the messy handling of pub arguments. It is no longer needed.
>
> BUG: https://github.com/dart-lang/sdk/issues/44135
> TEST=The VM change is tested via all the pkg/dartdev/test/command/* tests that invoke dart with the --no-analytics flag.
>
> Change-Id: Ib5a1a29841a5fdb28663b7f60c5d6fc31ba252d0
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171284
> Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
> Reviewed-by: Martin Kustermann <kustermann@google.com>
> Reviewed-by: Jonas Jensen <jonasfj@google.com>

TBR=kustermann@google.com,bkonyi@google.com,sigurdm@google.com,jonasfj@google.com

Change-Id: I92ef65b16cdb75fb2475faf9f522fda62e181bab
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171941
Reviewed-by: Sigurd Meldgaard <sigurdm@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2020-11-13 14:30:46 +00:00
Sigurd Meldgaard 692b0070eb Fix test expectation on windows.
Change-Id: I33d86243ba57fedef1318983f4b467a1184bf62a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171882
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2020-11-13 09:42:06 +00:00
Sigurd Meldgaard cda994ffc8 Improve handling of disable-dartdev-analytics
Some other refactorings are piggy-backed along.

TestProject.runSync no longer takes a 'command' argument. It was anyway
often not an argument.

Also stop the messy handling of pub arguments. It is no longer needed.

BUG: https://github.com/dart-lang/sdk/issues/44135
TEST=The VM change is tested via all the pkg/dartdev/test/command/* tests that invoke dart with the --no-analytics flag.

Change-Id: Ib5a1a29841a5fdb28663b7f60c5d6fc31ba252d0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171284
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-11-13 08:40:06 +00:00
Paul Berry 83cf6d67dc Migration: improve error/warning text when there are analysis errors.
Fixes #44144

Bug: https://github.com/dart-lang/sdk/issues/44144
Change-Id: I54ef9ca8f38335df2082d730ba558fd407a07767
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171643
Commit-Queue: Kathy Walrath <kathyw@google.com>
Reviewed-by: Kathy Walrath <kathyw@google.com>
Auto-Submit: Paul Berry <paulberry@google.com>
2020-11-12 17:59:07 +00:00
Devon Carew cc1057c51e [pkg/dartdev] rev to the latest version of stagehand
Change-Id: Iccc0dbfd3ec1b11c826f02b2a55fa6bf4d88bf83
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171662
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Kathy Walrath <kathyw@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-11 22:39:22 +00:00
Sigurd Meldgaard eb5fea9f3d Use pub embedding to run test in dart test
Now a `pub get` will be run implicitly if needed.
(This happens in getExecutableForCommand from the pub package).

Change-Id: I9eca9b6d8761a3035f21c0f86653c87710b9d229
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171281
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-11-10 14:42:25 +00:00
Ben Konyi df9597169a [ CLI ] Update experiment parsing
Continuation of https://dart-review.googlesource.com/c/sdk/+/169902

Change-Id: Ia971f75aa81c2b5d8696c35f3d16ff53c29f874a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170460
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2020-11-06 20:44:43 +00:00
Sigurd Meldgaard 9d132ebba9 Bump pub
New commits:

git log --format="%C(auto) %h %s" 900e796a37fd9f68de9dd183cf4798fe5f055eaa..4ca4767a6c00b2dadecdaee9a4866dae40ef25f2
 4ca4767a Added a dart pub outdated --transitive option (#2731)
 6b145bd6 Deprecate --server argument to `pub publish` and `pub uploader`. (#2697)
 7737023a don't warn if previous prerelease was null safe (#2730)
 62f92838 Improve outdated --mode=null-safety (#2724)
 cc589ec3 Change message for no Latest resolution (#2729)
 656803e9 Require sdk constraint (#2718)
 8309d877 Added test that dev_dependency does not trigger null-safety warnings when publishing (#2727)
 332ea049 Remove warning about mixed mode. (#2723)
 a98a1f23 Simplify null-safety analysis in `pub outdated --mode=null-safety` (#2721)
 5fba2015 Outdated null safety implies prereleases (#2722)
 fb9ec4af Fixed bug in yaml_edit (#2703)

Change-Id: I22a084aee06542e04a272269fb0134f0ac62f779
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170690
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Michael Thomsen <mit@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-11-06 15:36:02 +00:00
Sigurd Meldgaard cd970af91a [Dart CLI] Embed pub in dartdev
This includes the following pub commits:

 git log --format="%C(auto) %h %s" 5b4df5a6f931c63622ac349602d6ef0367e8070f..fb72c1f774ca27556225b207185c0b6b6ab1c274
 fb72c1f7 Make `run` available (but deprecated) in the embedding (#2698)
 63b56ea4 Return the exit-code from commands (#2689)
 7fc4e273 Deprecate top level (#2694)

Change-Id: I5842b1ecb15fc7844d628e2ad5fb00e3f627dbff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/168347
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-11-06 08:30:12 +00:00
Paul Berry 7322bc027e Migration: replace pub outdated check with a check on transitive imports.
Instead of running `pub outdated` to see if the user's dependencies
have been migrated yet, the migration tool now examines all of the
transitive import dependencies of the user's code to see if they are
opted in to null safety.  This produces a more accurate result than
`pub outdated`, because it is able to ignore files in transitive
package dependencies that aren't reachable via imports
(e.g. references to `package:analyzer` brought in by `package:test`).

Fixes #44061.

Bug: https://github.com/dart-lang/sdk/issues/44061
Change-Id: I38465bcbf35e8552f0060b5d51c0f1cfc5d18c7f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170561
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Samuel Rawlins <srawlins@google.com>
2020-11-05 23:05:51 +00:00
pq b5f1bbb2d7 simple fix dry-run
See: https://github.com/dart-lang/sdk/issues/43746

Change-Id: I0856471c22b2bb6f4487cca1147b8ad26fd29f93
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170405
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-04 22:41:07 +00:00
Jonas Finnemann Jensen 65700b8940 Remove global variables from analytics in dartdev
Change-Id: Ic2b27ae5d1062c8227d082a050056685a3380c77
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170089
Commit-Queue: Jonas Jensen <jonasfj@google.com>
Auto-Submit: Jonas Jensen <jonasfj@google.com>
Reviewed-by: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
2020-11-04 19:26:37 +00:00
Ivan Inozemtsev 4a46b6511e Revert "[pkg/dartdev] refactor the migrate command to subclass DartdevCommand"
This reverts commit c10be63d51.

Reason for revert: this creates a circular dependency between nnbd_migration and dartdev which is hard to support internally

Original change's description:
> [pkg/dartdev] refactor the migrate command to subclass DartdevCommand
>
> Change-Id: I60f91f14e066b3a173f45b3c988830d5b435f2ed
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170206
> Reviewed-by: Ben Konyi <bkonyi@google.com>
> Commit-Queue: Devon Carew <devoncarew@google.com>

TBR=devoncarew@google.com,bkonyi@google.com,sigurdm@google.com

Change-Id: I3ba4648ea7f879ea4a893df2a9d75581a6f48dec
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170348
Reviewed-by: Ivan Inozemtsev <iinozemtsev@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Ivan Inozemtsev <iinozemtsev@google.com>
2020-11-04 17:22:59 +00:00
Devon Carew c10be63d51 [pkg/dartdev] refactor the migrate command to subclass DartdevCommand
Change-Id: I60f91f14e066b3a173f45b3c988830d5b435f2ed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170206
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-04 16:28:47 +00:00
Ben Konyi ffc36db613 [ CLI / VM ] Add --enable-experiment support for 'dart compile', change
where --enable experiment is accepted

Adds --enable-experiment support for:
  - dart compile aot-snapshot
  - dart compile jit-snapshot
  - dart compile js
  - dart compile exe
  - dart compile kernel

Also changes --enable-experiment from a top level CLI flag to a
per-command flag. --enable-experiment flags will now only be
interpreted by the VM if:

1) They are provided before a CLI command (e.g., dart
--enable-experiment=non-nullable analyze) or

2) They are provided with an explicit or implicit run command (e.g.,
dart --enable-experiment=non-nullable foo.dart or dart
--enable-experiment=non-nullable run foo.dart or dart run
--enable-experiment=non-nullable foo.dart)

This should make it more generally clear where --enable-experiment is
accepted and what subcommands can accept the flag. Prior to this change,
providing --enable-experiment anywhere, even for commands without
experiment support, would not raise an error.

Fixes https://github.com/dart-lang/sdk/issues/43623

Change-Id: I5ec48b2dd2bb6db5526185dae2edbca95ef24d9f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/169902
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-11-04 00:34:26 +00:00
Devon Carew 282e3dc29f [pkg/dartdev] opt a test out of nnbd
Bug: https://github.com/dart-lang/sdk/issues/44050
Change-Id: Id102c927ec4918940050783aa23aed0dad03b341
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170241
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-03 23:04:07 +00:00
Jonas Finnemann Jensen 5918aa8985 Fix #44027
Remove if-else branches introduced in [1], fixing crash bug when
`$HOME/.dart/` does not exists.

[1]: https://dart-review.googlesource.com/c/sdk/+/168947

Fixed: 44027
Change-Id: Ic178ebf8eb04ac34c1574269b5d7191a5e514460
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170088
Auto-Submit: Jonas Jensen <jonasfj@google.com>
Reviewed-by: Janice Collins <jcollins@google.com>
Commit-Queue: Janice Collins <jcollins@google.com>
2020-11-02 19:55:09 +00:00
Sigurd Meldgaard ea7e27cfeb Roll dart_style 1.3.8+1 into the SDK.
There are no formatting changes in this release. The only change is the
fix for https://github.com/dart-lang/dart_style/issues/964.

Includes corresponding adaptations of dartdev/dart CLI.

Change-Id: I1c97f0b7009b98ae609b258401522453faa35c64
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170083
Reviewed-by: Jonas Jensen <jonasfj@google.com>
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
2020-11-02 13:42:19 +00:00
Ben Konyi 7f723f4166 [ VM / CLI ] Fix issue where VM flags would be parsed from the option
list for a script.

Fixes https://github.com/dart-lang/sdk/issues/43487

Change-Id: I6f0860e0a43055aaab775a28baa660d60fb1c47e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/169782
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Ben Konyi <bkonyi@google.com>
2020-10-30 23:25:22 +00:00
Ben Konyi 45931e9ea8 [ VM / CLI ] Call VmInteropHandler.exit() instead of exit() when
enabling/disabling analytics for the CLI

Fixes https://github.com/dart-lang/sdk/issues/43979

Change-Id: Ib408d34043cd3437dceef0dac563413e0532c067
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/169785
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2020-10-29 22:12:41 +00:00
Sigurd Meldgaard 5a3e7bf18f [Dart CLI] Refactor analytics
Change-Id: Ia7212a6aa2798693064fca8fa4d801de5731f092
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/168943
Commit-Queue: Sigurd Meldgaard <sigurdm@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Reviewed-by: Jonas Jensen <jonasfj@google.com>
2020-10-28 10:50:58 +00:00
Devon Carew 297fb8606a Un-hide the dart migrate command from stable.
Bug: https://github.com/dart-lang/sdk/issues/43194
Change-Id: I04db8cc9f34e812ca2e6569edd86f37c1f4fcdd9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/169281
Commit-Queue: Samuel Rawlins <srawlins@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2020-10-27 20:50:29 +00:00