Commit Graph

5694 Commits

Author SHA1 Message Date
Danny Tuppeny bb971209d1 [Analyzer] Update to latest version of LSP spec
Change-Id: I16418caeacad044269fd3d79e28b9b800ce798f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174804
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-12-02 20:11:08 +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 bfac5c3009 Enable the flutter use case tests involving requiredIf and fix a couple of bugs
Change-Id: I764d64f7df35a6e5fac4232c0f8907ecb15d1c98
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174562
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-12-01 22:28:27 +00:00
Konstantin Shcheglov f6362881d5 Make 'uniqueName' a field in ErrorCode.
It started as a way to speed up IgnoreValidator, becaus computing
uniqueName as a concatenation of 'runtimeType' and 'name' was expensive.
We solved it in a better way, but I think this change is still useful.

Change-Id: I7d3cb8c91f4ca27a0aa3b93f8572cf12c6757bae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174322
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-12-01 21:41:08 +00:00
Brian Wilkerson 9cd76088ef Consolidate the yaml extensions in one library
Change-Id: Ide0e02145581c1a77c4af2764821c63a333d9dd1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174520
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-12-01 18:09:35 +00:00
Konstantin Shcheglov 5af2d78e75 Clean up WithNullSafetyLintMixin.
Change-Id: I7b0527def3589449e40619c5d4338c9ca1c3e672
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174481
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-12-01 00:05:39 +00:00
Brian Wilkerson 8fee2b96af Rename the tool/completion_metrics directory
The directory contains tools related to code completion that are not
used to measure completion metrics, so the old name was too specific.

Change-Id: Ie8745901655df6e7b29da645b3b0a48011ca9f10
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174483
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-30 23:57:44 +00:00
Brian Wilkerson a4dfaeb51c Add support for generating optional named arguments when necessary
This is needed, for example, when renaming an optional named parameter
when a simple 'renameParameter' isn't sufficient. The existing arguments
need to be preserved.

This also removes the 'statements' style of code template because it
wasn't fully supported and isn't currently needed.

Change-Id: I66035c88fcffef77f7de9eedff4efbaf2720ccb1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174482
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-30 23:57:35 +00:00
Konstantin Shcheglov 9296c0cbdf Re-throw CaughtExceptionWithFiles when an exception during getAssists().
There is a surge of ConflictingEditException reported, and I don't
know how to reproduce it. We need more details.

Change-Id: I591d6a0e8337258deaf48b4cc56fa9c2f2557104
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174221
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-28 05:41:16 +00:00
Konstantin Shcheglov b29e1d93c2 Clean up WithNullSafetyMixin in analysis_server.
Also fixes a bug in DartCompletionRequestImpl.

Change-Id: I5110226da6e238dae8e632972b969b0e1b17c94b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174222
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-11-28 04:56:37 +00:00
Danny Tuppeny 2076989667 [Analyzer] Split LSP completion resolution info into base/sub-classes
Change-Id: I57f61b8d0467c32562d865de3b87d75995cfb35f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174129
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-27 18:39:05 +00:00
Danny Tuppeny 247b452f81 [Analyzer] Provide resourceProvider to YAML completion producers
Change-Id: Ida7ba7d542975568d1b1c054a3bc68100cc17b42
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174120
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-27 18:09:25 +00:00
Danny Tuppeny a0cc6c9819 [Analyzer] Add a new CompletionSuggestionKind for Pub package names
Change-Id: I73fad5c793249a8ee0e30c1ce198b5adf7ff429a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174128
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-27 17:38:16 +00:00
Brian Wilkerson 9eb5d7c0bb Remove obsolete services key
Change-Id: Iefad14d2899f114cc572351384b0bc280cf28aa6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174200
Reviewed-by: Danny Tuppeny <danny@tuppeny.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-27 16:58:45 +00:00
Brian Wilkerson 1f0e6143f8 Add code completion support for the flutter section in pubspec.yaml
Change-Id: I1097661d4b4ec329cb315ee908d35a9db9baed18
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174160
Reviewed-by: Danny Tuppeny <danny@tuppeny.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-26 21:19:39 +00:00
Brian Wilkerson 94f6532bd9 Capture a couple of failing completions as tests
Change-Id: I9495bc60792821703373b68b2bd65650a241d343
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173882
Reviewed-by: Jaime Wren <jwren@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-25 20:09:28 +00:00
Danny Tuppeny 4fc797d6b1 [Analyzer] Add LSP dart.analysisExcludedFolders to readme
Change-Id: Iaa4cf8f9f2697c6fd3583018566f9201820ead8b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173966
Auto-Submit: Danny Tuppeny <danny@tuppeny.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-25 16:12:27 +00:00
Brian Wilkerson c6126c34e9 Suggest previously missed type parameters
Change-Id: I09361984b7a58a281769e5feb04aeb1656620237
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173880
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Jaime Wren <jwren@google.com>
2020-11-25 00:13:49 +00:00
Brian Wilkerson 32d0d625b3 suggest loop variables defined in for elements
Change-Id: Ie01dabd21b5a37b07d965fc78876a2876b57ce4e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173840
Reviewed-by: Jaime Wren <jwren@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-24 21:51:09 +00:00
Brian Wilkerson 59912baaa8 Support comparison of alternate completion models
This restores the ability to compare completions being computed under
different conditions, though at the moment it requires code changes
rather than being controlled by command-line arguments (largely because
there is only one condition available to be tested).

It also removes an unused getter.

Change-Id: I67d56b8543f33234400fe3289ab14813d01bf8ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173640
Reviewed-by: Jaime Wren <jwren@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-24 15:42:28 +00:00
Danny Tuppeny 7edcd83073 [Analyzer] Re-create progress tokens after each use + fix race
Change-Id: Ibc6dd59c71d40c5f0127a2881dade13cde8cfd87
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173271
Commit-Queue: Danny Tuppeny <danny@tuppeny.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-23 11:40:33 +00:00
Danny Tuppeny 4fe5b79c07 [Analyzer] Fix off-by-one error in LSP position -> offset calculation
Fixes https://github.com/dart-lang/sdk/issues/44274.

Change-Id: Ia1e3c0f1037ad26fca9eeef27d4c7ada0a318d55
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173270
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <danny@tuppeny.com>
2020-11-21 16:29:23 +00:00
Devon Carew fe859d499f [analysis server] remove the angular dart plugin specific crash reporting
Change-Id: Ibc187ddf60ff016f216ce90b2f62de1dafcc34bd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173364
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-21 02:43:24 +00:00
Sam Rawlins 19a96e4d5e Analyzer: override element type in ExportDirective and ImportDirective
This reduces the number of explicit casts needed for null safety.

Change-Id: I8ad0ab9cddbbe81e5fbf66b95ae4ae1cb57efebc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172743
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-11-20 15:22:46 +00:00
Danny Tuppeny db263169e5 [Analyzer] Enable code completion for YAML files in LSP
Change-Id: I13a6fe43f7b822b9c88fd0e1ca69091f82d70119
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/173000
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Danny Tuppeny <danny@tuppeny.com>
2020-11-19 15:40:44 +00:00
Danny Tuppeny 732305f11e [Analyzer] Don't show duplicate LSP code actions on same line
Fixes https://github.com/Dart-Code/Dart-Code/issues/2960.

Change-Id: I63361728e80c7db843db9e2b31e76eae78f85400
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172562
Commit-Queue: Danny Tuppeny <danny@tuppeny.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-19 10:55:33 +00:00
Danny Tuppeny 3bf25c6c40 [Analyzer] Support fix-all-for-file in LSP code fixes
Change-Id: Ic3628ee80c409feab178e237bccc5054501549e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172400
Commit-Queue: Danny Tuppeny <danny@tuppeny.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-19 10:44:13 +00:00
Sam Rawlins f230313871 analysis_server: remove unused imports with shared prefixes
Bug: https://github.com/dart-lang/sdk/issues/38784
Change-Id: Ifd4df564247c08606841a0e22896d767da438a47
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172740
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Samuel Rawlins <srawlins@google.com>
2020-11-18 17:30:21 +00:00
Devon Carew 289bc8ce38 [analysis_server] rename and re-word analysis server CLI flags
Change-Id: If8084297b82596794500ee95f4683747152b7bb0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172660
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-18 02:16:29 +00:00
pq 8b47021578 prefer convertPath
Follow-up from: https://dart-review.googlesource.com/c/sdk/+/172683/1

Change-Id: I5cb2371fcb6719e4b08ec512bad31031f1d28143
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172687
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-11-18 01:49:49 +00:00
pq df64dbc0ed windows path fix
Change-Id: I676a1e3b71e89880d7a3d9be8c6c9211eabc87c4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172683
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-11-18 00:43:08 +00:00
pq 29a9fe27d2 bulk fix details server protocol
Change-Id: Id96fd8508018159959448c383baa53ad69b5828f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172621
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-17 21:45:28 +00:00
pq f0c9321b14 bulk fix change mapping
Striving to do the "simplest thing that could possibly work" this may just be a conversation starter.


Change-Id: Id3deab6fd1541febbc090c696352563e6b5ce932
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172460
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-17 00:45:30 +00:00
pq 5e9454cbbf infer set type from invocation expressions
Fixes: https://github.com/dart-lang/sdk/issues/44199

Change-Id: I61b76fdcd65fae180d3a1cc1926fe26d2e90ae49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172340
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2020-11-16 19:23:06 +00:00
Devon Carew 8bf0f4ed8c [analysis_server] remove the custom args parser
Change-Id: I2c7bfd290bd12d3b608f4b3628ec31a0ea522157
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171961
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-16 18:32:08 +00:00
Brian Wilkerson 25ff121c41 Offer to add async when a function should returns Future<void> but does not include a return statement
Bug: https://github.com/dart-lang/sdk/issues/43726
Change-Id: I8d44c8aa10cdd9af4391126b61a691a6a544a441
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172028
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-11-16 16:28:15 +00:00
Brian Wilkerson c88f99b0b7 Initial support for code completion in yaml files
Change-Id: I21276fe32d1c0d8525980edf3b1a5e93de5ae572
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172024
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
2020-11-16 16:26:36 +00:00
Devon Carew f5e26456bf Remove the --completion-model flag from the analysis server.
Change-Id: I6bedbb0b5c4b8bedba18d2e3b788db0a9686f6df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172026
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-16 03:31:18 +00:00
Brian Wilkerson c3f96e863f Remove uses of useNewRelevance and clean up associated code
Change-Id: I04dd3b33d229348042609c5a656d1ad68a95913d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172120
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2020-11-15 00:18:07 +00:00
Devon Carew 94fa3c89c7 [analysis_server] remove the analysis server's --use-new-relevance flag
Change-Id: Ia7a182e11fbe62ba2814e56c59804b14b70f88cb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172083
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-14 03:00:16 +00:00
Devon Carew 5a649b22e9 [analysis_server] re-order the server's command line flags
Change-Id: I9a8295f302683c77cdbecd587ae9c546111838a8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172080
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-14 00:25:34 +00:00
Brian Wilkerson 9c334a8f3c Support conditional change lists for data-driven fixes
Change-Id: I2e2c383fc2e8c1b101dec90f81486c4e63038911
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172061
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-13 21:50:05 +00:00
Konstantin Shcheglov 861879fad4 Issue 44196. Change ExtensionElement.displayString to the empty string for unnamed extensions.
Bug: https://github.com/dart-lang/sdk/issues/44196
Change-Id: Idcd6b2caa6efa37350a518d229768e9ab3e24599
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/172060
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-11-13 21:44:24 +00:00
Paul Berry 7d3bc4862d Rename pkg/analysis_tool to pkg/analyzer_utilities.
It's no longer just for the tools in the `tool` directory; it also
contains test utilities for use by the analyzer and related packages.

Change-Id: I0f8cf57f24ea7aad8e2177e43ee2bcb2ab3030da
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171704
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-11-13 17:46:30 +00:00
Devon Carew 4a7aad370f rename DartUnitHighlightsComputer2 to DartUnitHighlightsComputer
Change-Id: I08f15cfbba260dddc1e87f0a91d823df04214e49
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-12 23:12:15 +00:00
Konstantin Shcheglov 6685f4a9e8 Use ResourceProviderMixin where possible in AbstractContextManagerTest.
Change-Id: Id279e01189a1523c2158b0e1315e1ee4c119f301
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171801
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-11-12 22:24:40 +00:00
Brian Wilkerson 797cd72e3e Fix the bot by forcing a test to fail
Change-Id: Iea61438c8d0f1ef90136a977a183063ae516e005
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171840
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-12 22:01:11 +00:00
Konstantin Shcheglov a30ba008f7 Fix AbstractContextManagerTest for Windows.
Change-Id: I21899663fe779b88c6f493c4c526ca57ff865d9a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171820
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2020-11-12 21:44:40 +00:00
Devon Carew 2ba123b86e [analysis server] remove the --file-read-mode cli option for the analysis server
Change-Id: I279233cd0b7ec09a7d2fdcd50837552f56f2584d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171763
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-11-12 21:42:50 +00:00
Brian Wilkerson 601a8883d2 Allow variables to be declared in templates
While this would allow some variabless to be deduplicated, the real
purpose is to support conditional change lists, which will be added in
the next CL.

Change-Id: I8692b8620e04533d3db0c385964567d629317d6c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/171741
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2020-11-12 19:10:09 +00:00