Danny Tuppeny
b3b2a1cebf
[analysis_server] Change LSP types to use Uri types instead of Strings
...
This requires some tweaks to to/from JSON code, and some handling for Maps that previously could be serialised directly but now may contain `Uri`s in keys and need to be converted to strings explicitly (since Uri has no toJson method).
Change-Id: I61358d8198ac1da322fae98d6c40747ad08754b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/258927
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2022-09-14 18:58:44 +00:00
Danny Tuppeny
8596955593
[analysis_server] Fix+refactor code actions tests
...
Change-Id: I2835f5b01de915edf24fa05d28109f7613bd212f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/249583
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2022-06-23 14:54:15 +00:00
Ahmed Ashour
85700570f6
Fix typos
...
Fixes #49241
TEST=ci
Change-Id: I6117bf816fc8c4613cce66927f952fef75632725
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/248120
Reviewed-by: Alexander Thomas <athom@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Ben Konyi <bkonyi@google.com >
Reviewed-by: Nicholas Shahan <nshahan@google.com >
Commit-Queue: Alexander Thomas <athom@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2022-06-15 11:08:28 +00:00
Danny Tuppeny
8b40a7bb2a
[analysis_server] Make Sort Members + Organize Imports fail silently if invoked automatically
...
Previously, Organise Imports always failed silently (since it was often run on-save). Sort Members had not been given the same treatment (but often now runs on-save).
This uses a new LSP 3.17 field to know when the command was run automatically, so both are now consistent, showing errors if invoked manually and failing silently if run automatically.
Change-Id: I48e8380fcee4e54d0f4dc3c177c9ae2362627efb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/247542
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2022-06-08 14:11:42 +00:00
Danny Tuppeny
80fb1a56db
[analysis_server] Add shared protocol.dart file for LSP
...
In an upcoming change some types will between these files. To reduce the size of that (already very large) CL and because the distinction between spec-generated/custom-generated types was unnecessary anyway, this adds a single import for LSP protocol-related types.
Change-Id: I322447d6c979538c12014d87875176e1bf2adca7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/244244
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2022-05-11 15:28:35 +00:00
Danny Tuppeny
6b6a199806
[analysis_server] Switch to LSP v3.17 spec + regenerate types
...
Change-Id: I6e1b79f3e814c44784dbf37d859ae46d303db2dc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/244243
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2022-05-10 18:08:35 +00:00
Konstantin Shcheglov
20b560226e
Rename newFile2() to newFile().
...
Change-Id: I1c2a4f15dee607a0a6241dfaf2d764a7d284389b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241510
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2022-04-19 02:59:57 +00:00
pq
16b436151a
migrate server to recommended lints
...
See: https://github.com/dart-lang/sdk/issues/48785
Change-Id: I1bec40cc0b52e5df5f07c35ec993e08c56a59cbe
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/240907
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Phil Quitslund <pquitslund@google.com >
2022-04-12 13:34:12 +00:00
Konstantin Shcheglov
41b3e0abcc
Make 'content' required in ResourceProviderMixin.newFile()
...
Change-Id: Id697b0736b95a913c31247a66425027852f1ddc5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/236800
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2022-03-14 17:31:48 +00:00
Danny Tuppeny
85d455fbad
[analysis_server] Add source.fixAll source command for LSP
...
Change-Id: I2deac95e665a19065a7ef1d8c1f79485497c9de2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/205680
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-07-01 17:56:47 +00:00
Danny Tuppeny
1b6399759a
[analyzer] Migrate remaining LSP tests to null-safe
...
Change-Id: I7a2befd9d46b93ebeb84c40f33121f077f3d6f1a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196284
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-04-21 16:41:50 +00:00
Konstantin Shcheglov
e97f1bdbf0
Switch analysis_server to language 2.12, so null safety, but opt-out files.
...
This should allow doing partial migration, specifically protocol files,
which are imported by other libraries, but are a small library cycle
that does not import much outside of it.
Change-Id: I904c05d6d5b444ee9a9dbd1f7ada12aabdcc5165
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/193583
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2021-03-30 23:39:37 +00:00
Danny Tuppeny
235292605e
[analyzer] Filter code actions returned from LSP server based on params.context.only
...
Fixes https://github.com/Dart-Code/Dart-Code/issues/2854 .
Change-Id: If6036a4361b68ae2daa66b99755dfa9b9a8adcfd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/184464
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-02-11 18:16:20 +00:00
Konstantin Shcheglov
7ec28c3f08
Enforce await_only_futures and fix violations.
...
R=brianwilkerson@google.com
Change-Id: Icfc093d46562ddc7084151e76f495cc1462bb900
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/164257
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2020-09-24 14:28:00 +00:00
Danny Tuppeny
7b6c102137
[Analyzer] Encode/decode LSP payloads in tests to ensure they behave the same as real messages
...
Change-Id: Ia9efb2d5ba02fe60560b8deb663856ec27c79a87
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/162745
Commit-Queue: Danny Tuppeny <danny@tuppeny.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-09-15 20:10:11 +00:00
Mike Fairhurst
d313fb70b6
[analysis_server] Tests should import dart:async to use Future
...
Tests which depend on the import can merely use Completer instead of
Future to get the same result. Tests which do not rely upon the import
have had the import removed.
Change-Id: I74641a58b1f97c8599c8faad86943b1c68508980
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/161625
Auto-Submit: Mike Fairhurst <mfairhurst@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2020-09-02 21:48:03 +00:00
Danny Tuppeny
c4a2efd6e7
Switch all generated LSP classes to use named constructor arguments
...
Change-Id: I111b58fa5d04314247d5f92650491cdeef6bd4a3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/153841
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <danny@tuppeny.com >
2020-07-09 17:18:07 +00:00
Danny Tuppeny
5f3c799084
Don't return LSP errors when failing to organize imports due to parse errors
...
Change-Id: Ia0a6fab160da0a04b4fe81c0968d0f8ad3141c3e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150631
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <danny@tuppeny.com >
2020-06-10 16:07:27 +00:00
Brian Wilkerson
58a9c22f80
Add return types to more methods in analysis_server
...
Change-Id: I65bed353bcff4f991faf8c3bdde979789a8d962b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/134000
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2020-01-30 21:43:34 +00:00
Brian Wilkerson
4043a6fce3
Remove unnecessary uses of new in analysis_server
...
Other than analysis_options.yaml, all of the changes were from running
dartfix.
Change-Id: I92411642f12a00fc6bd0bfd24dd60fe67f0fed16
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/128845
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2019-12-18 19:01:51 +00:00
Danny Tuppeny
e32a179922
Add LSP support for Extract Method refactor
...
Change-Id: Id5c9e0657648963d5f96469fbac9269dad4e32a7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106348
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-06-18 15:40:10 +00:00
Danny Tuppeny
85c28b804d
Check LSP support for workspace/applyEdit before giving CodeActions that require it
...
Change-Id: I88af71be9788bd417a1f739f0f3e0efe930c2cd0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/103842
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-28 14:10:26 +00:00
Danny Tuppeny
a779db0813
Update LSP spec to latest
...
Change-Id: I6f7ff3c6707f992aa618ad172e81857153b75795
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/102360
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-05-13 15:11:15 +00:00
Danny Tuppeny
f7e288e3ad
Return empty responses instead of errors for non-Dart files in LSP server
...
Previously we could return "invalid path" responses for any non-Dart files. This allows clients to send requests for other files and just successful (though empty) responses.
Change-Id: I192e83ac2ebd2124c03c22e3e048a066cfd33f17
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101990
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2019-05-13 09:04:36 +00:00
Danny Tuppeny
f5c69070af
Minor LSP refactors/tidy up
...
Change-Id: I7402d9493c58b1e020655a3b6332edbb5425fc22
Reviewed-on: https://dart-review.googlesource.com/c/89360
Commit-Queue: Danny Tuppeny <dantup@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Auto-Submit: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2019-01-14 17:30:45 +00:00
Danny Tuppeny
e3991780a5
Add code fixes to LSP code actions
...
Change-Id: I5ec0932945cc6215cb671f89e8bed21609894ba2
Reviewed-on: https://dart-review.googlesource.com/c/87066
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2018-12-12 15:52:45 +00:00
Danny Tuppeny
7d4a6cc7e3
Change setup of capabilities in LSP tests to allow easier chaining
...
Change-Id: I6bc2743d64e7eb263f34f9c12140588d35b1482e
Reviewed-on: https://dart-review.googlesource.com/c/87065
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2018-12-12 15:52:45 +00:00
Danny Tuppeny
e6aec46b5f
Update LSP noEdits test to have imports that won't be removed as unused
...
Change-Id: I6e9d1111e4c9bcb37ad8722d175f3b78b9d8f842
Reviewed-on: https://dart-review.googlesource.com/c/86930
Commit-Queue: Danny Tuppeny <dantup@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Auto-Submit: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2018-12-11 17:17:50 +00:00
Danny Tuppeny
b924d754c5
Fix LSP Organize Imports so removing unused imports works
...
Using only a parsed file meant we didn't get any "unused import" hints, which meant the unused imports were not removed.
Change-Id: Id5c24ac59f38885d08756747ef9165102ad54388
Reviewed-on: https://dart-review.googlesource.com/c/86884
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2018-12-11 15:21:42 +00:00
Danny Tuppeny
3f130fb9ff
Don't call workspace/applyEdits for empty edits
...
Change-Id: I51a66e6522477ffb0b968f771b971fdf0d648a6c
Reviewed-on: https://dart-review.googlesource.com/c/86882
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2018-12-11 15:13:37 +00:00
Danny Tuppeny
89f299bee8
Add support for supplying simple edits for LSP workspace/applyEdits
...
Change-Id: Ia5b06ea4e002240eecc75f48e3cac245b9ce13ed
Reviewed-on: https://dart-review.googlesource.com/c/86768
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2018-12-10 17:54:53 +00:00
Danny Tuppeny
59780df33f
Implement "Organize Imports" command
...
Change-Id: Iebf7022c1c8dd29a56d84da916713969d5b1269d
Reviewed-on: https://dart-review.googlesource.com/c/86762
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2018-12-10 14:56:14 +00:00
Danny Tuppeny
e4df0c2fd8
Add implementation+tests for LSP "Sort Members" code action
...
Change-Id: I671e5bba62e396d797926134123b141ad34d80a5
Reviewed-on: https://dart-review.googlesource.com/c/86422
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Danny Tuppeny <dantup@google.com >
2018-12-10 08:45:00 +00:00
Danny Tuppeny
d8d8e222aa
Support returning code actions for SortMembers/OrganizeUsings
...
Change-Id: I2f80ec0bd7174a8c0943352b942478a360f16b36
Reviewed-on: https://dart-review.googlesource.com/c/86359
Commit-Queue: Danny Tuppeny <dantup@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2018-12-06 16:22:41 +00:00