Commit Graph

6105 Commits

Author SHA1 Message Date
Konstantin Shcheglov 7b9cfb4837 Restore caching of converter in InputConverter.
Change-Id: Ie801d8b7b29f40cd624690d31de1f883cd08260e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196741
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-24 20:20:15 +00:00
Brian Wilkerson eb1ce5d640 Remove some unnecessary null checks
These were found using the unnecessary-null-checks lint. It has a bug
that prevents us from enabling it at the moment, but we should consider
enabling it once the bug has been fixed.

Change-Id: Ice250b5a6a8723c5f08dec5b07ae738e17c842cc
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196550
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-24 18:22:43 +00:00
Danny Tuppeny 8a0897c165 [analyzer] Fix a bug with completion ranking for items with 0 relevance in LSP
Change-Id: Ic4ef390ba4bdc627e075ae9dade8ced5a307a8ec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196667
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-24 18:13:32 +00:00
Brian Wilkerson 1ad68b9b16 Make local variables that hide fields be final (analysis_server)
As per our earlier conversation, I looked for places where a local
variable was introduced to overcome field promotion and has the same
name as the field. Where possible I made them final; where not possible
I changed the name.

Change-Id: Iad3d2139693ca66f1eb22a3926c3b84a4115f13d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196552
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-24 18:12:07 +00:00
Brian Wilkerson 30d27c6f61 Migrate all remaining server libraries except the library in bin
Change-Id: I2041763971a85fb8e9530b64ef30d106091c9739
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196547
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-04-24 04:19:22 +00:00
Paul Berry b10a592341 Add a url field to DiagnosticMessage.
This paves the way for allowing analyzer and analysis server clients
to format diagnostic message URLs in a special way (e.g. to make them
clickable).

Note that DiagnosticMessage is part of the public API of the analyzer,
so I've retained the old behavior in a deprecated fashion to avoid
breaking clients that don't yet handle diagnostic messages containing
URLs.

See
https://dart-review.googlesource.com/c/sdk/+/193749/comment/86d1ce4b_77a60b1e/
for additional discussion.

Change-Id: Iae9d43a2be7dbc67cb7cb82afe0a7824043d6113
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196101
Commit-Queue: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-04-23 20:34:32 +00:00
Brian Wilkerson 529e8abc5c Minor improvements to the code completion metrics tool
It now captures and prints the minimum and maximum values for several
characteristics. It also now allows the flag controlling whether the
available suggestion sets are used to be set for each experiment rather
than globally (which allows us to now compare the results with and
without the flag set).

Change-Id: I5b5930216ff2f448de35f6dbf3ccd9de712179d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196564
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-04-23 00:07:36 +00:00
Brian Wilkerson f32f6afbfd Fix a couple of bugs in the metrics tool
Change-Id: Ib8c17f9e9963996118473c5c32d3d6fb51ce632e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196343
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-21 20:56:11 +00:00
Danny Tuppeny a808d5ca20 [analyzer] Update LSP fix-all tests based on new server implementation
Change-Id: Iccc71d67c77eb2a372293e746ca12984f67a0579
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196285
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-21 19:48:00 +00:00
Danny Tuppeny a1f0f1b700 [analyzer] Migrate LSP integration tests to null-safe
Change-Id: I0fff9271ef796bc9b3f8316080068d667183f1b9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195991
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-21 16:49:30 +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 82ea8416ed Fix failing test/completion_test.dart
Change-Id: I12676b8d1422d9d521f8c1ac84a28b30237b1ee6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196242
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-21 03:25:48 +00:00
pq bd2e564e57 + bulk fix for sort_directives
Change-Id: Ie347357a5a5f1d38716fd83c723d09b268a8859d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196108
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2021-04-20 21:20:03 +00:00
Danny Tuppeny 56e5655353 [analyzer] Migrate more LSP tests to null-safety
Change-Id: Iaeb2152d47df05434ab470901900da56cae7e792
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196125
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-20 21:15:28 +00:00
Danny Tuppeny 97e9186df8 [analyzer] Improve null handling in LSP server
Change-Id: I2060912853d131fad1d02ddc68f0b62ab16e3b23
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196123
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-20 19:30:38 +00:00
pq 34e7f575d6 fix in file support for UNNECESSARY_NON_NULL_ASSERTIONs
Fixes https://github.com/dart-lang/sdk/issues/45769

Change-Id: I533969b7a7acc6258ad38e9ee45c5441921d7af7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196025
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Phil Quitslund <pquitslund@google.com>
2021-04-20 18:06:28 +00:00
Danny Tuppeny 2aa2b30982 [analyzer] Tidy up some LSP null-safe changes
Change-Id: I0090d524180463ccd0c0240ece59b2386b9eb408
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195993
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-20 16:41:47 +00:00
Konstantin Shcheglov 7d1aedca3c Remove nullability from naming conventions.
We don't allow nulls there anymore.

Change-Id: I44639fee24bbd3856798ae15739b70cc0c660b25
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196045
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-20 16:32:33 +00:00
Konstantin Shcheglov af4b4d9575 Update NamespaceDirective.uriElement to return LibraryElement?
Change-Id: Ief36ea6d6dc0fab4a1f6976e034418695bd2e128
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196043
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-20 16:27:49 +00:00
Danny Tuppeny 9b529bb8fe [analyzer] Fix handling of overlapping LSP SemanticTokens
Fixes https://github.com/Dart-Code/Dart-Code/issues/3289.

Change-Id: I15c41f1519a0c06b810be8e840e8ef7c13af45ea
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195995
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-20 16:18:38 +00:00
Konstantin Shcheglov 9dd51c80bd Deprecated getFile() and getSourceKind(). Added getFile2() instead.
R=brianwilkerson@google.com

Change-Id: Ia52967472077abd73cdf4df1320dd71b5dee98b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196060
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-19 23:57:19 +00:00
Brian Wilkerson d217bb11a3 Migrate SocketServer and some of its subclasses
Change-Id: Icf3c06b0b022a35e722c5f2ac4ec5a97d6aa996c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196024
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-19 23:33:58 +00:00
Danny Tuppeny 77466f2b83 [analyzer] Migrate remaining LSP code to null-safe
Change-Id: I52c7d16bdaf9f68148a8d7a956330bc54608ec43
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195980
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-19 19:35:28 +00:00
Brian Wilkerson 543d653ca8 Migrate the migration runner script in server
Change-Id: Ie4fc8e19a360ff0d201b0f91f2de9cb093566ab1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195960
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-19 18:13:08 +00:00
Brian Wilkerson 54fc28ec25 Migrate remaining unblocked tests
Change-Id: I30e3c22db7df6e78be88125f20eea2dce054f446
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195860
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-19 15:57:38 +00:00
Konstantin Shcheglov 5dd02f0583 Add getParsedLibrary2(), deprecate getParsedLibrary() and other parse related
Change-Id: I585fa1f01b71522dc99ba86c2b9e20da256b2d27
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195880
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-19 15:52:39 +00:00
Brian Wilkerson 02d50e7ebf Migrate several test classes
Change-Id: I7477d5c42a8c2f953c51aca7ab6fff8b6fc930f4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195840
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-19 00:38:19 +00:00
Konstantin Shcheglov 2622d728ae Add getLibraryByUri2(), deprecate getLibraryByUri().
R=brianwilkerson@google.com

Change-Id: I6769ccb5767408490934693cc9019d5af1d8d8d9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195763
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-19 00:19:32 +00:00
Brian Wilkerson fa1a28bf65 Migrate analysis_server.dart and other libraries in its cycle
I plan to start migrating the associated tests next, but wanted to
unblock other work sooner (and minimize the size of the CL).

Change-Id: I83340208b116acca6f9a4c59d7dfceb625a39eb2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195780
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-04-18 15:43:39 +00:00
Konstantin Shcheglov db2aceaa42 Add getResolvedLibrary2(), deprecate getResolvedLibrary().
Change-Id: If502203708ed4c6a64e7054c2b12970eac11755b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195497
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-17 16:51:07 +00:00
Konstantin Shcheglov 8161b299c9 When in Cider 'part of some.name;' try to find the library as a sibling file.
Change-Id: I489bac7ebaaa5b61e7972f1ea01a4613220bde7c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/192980
Reviewed-by: Keerti Parthasarathy <keertip@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-16 23:56:47 +00:00
Konstantin Shcheglov 26d9fbbd04 Add getResolvedUnit2(), deprecate getResolvedUnit().
Change-Id: I0217fefb2747f2f9bd757bc041b53acaf3d1a8f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195495
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-04-16 21:33:54 +00:00
Konstantin Shcheglov 7eda3cfe76 Migrate test/services/refactoring/
R=brianwilkerson@google.com

Change-Id: Ica52e54ba277969ae8a3b63627902ba53045397f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195494
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-16 18:11:16 +00:00
Brian Wilkerson 211018f9fd Migrate a single test_all file
Change-Id: I03436dad857908f03d1bd872cd63e391cd92ac9f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195660
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-16 17:38:06 +00:00
Konstantin Shcheglov de09de4976 Migrate lib/src/services/refactoring/
Change-Id: I17b11b8ea60ef141444b6c8108189d7a8588217f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195493
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2021-04-16 16:01:22 +00:00
Paul Berry 0ccb2771a3 Analyzer: change extent for assignability errors with named arguments
Previously, if a type mismatch occurred on a named argument, e.g.:

    int.fromEnvironment('foo', defaultValue: 'BAD')

the error would be reported on the entire NamedExpression
(`defaultValue: 'BAD'` in this example).  Now, the error is just
reported on the expression (`'BAD'` in this example).  This makes the
analyzer behavior more self-consistent (since now assignability errors
are now consistently reported at the site of the expression that can't
be assigned).  It also makes the analyzer behavior more consistent
with the CFE.

This will make it possible, in a follow-up CL, to eliminate a lot of
the inconsistencies between analyzer and CFE in the "why not promoted"
ID tests.

Change-Id: I17db256959d730a22a5766f65d5c0736b627f244
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195489
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2021-04-15 21:38:37 +00:00
Danny Tuppeny 934be22ab5 [analyzer] Support package descriptions + version numbers in pubspec.yaml package completion
Change-Id: I064689814b1f81671be870bb5c8499ebf35ab468
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195077
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 20:24:32 +00:00
Danny Tuppeny 790ceec1ab [analyzer] Support additional LSP completion trigger characters
Fixes https://github.com/Dart-Code/Dart-Code/issues/3211.

Change-Id: Iad4db41b539990d39f641ff1dd07b174f207891b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195510
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 20:16:37 +00:00
Danny Tuppeny 2dcbd22e0c [analyzer] Don't send Dart's trigger/commit characters for non-Dart LSP completion registrations
Change-Id: I703b183ebd9aedaf87dbbce664107d5bcff14367
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195509
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 19:44:27 +00:00
Konstantin Shcheglov 4dc165f7fd Add getUnitElement2(), deprecate getUnitElement().
Change-Id: Ib1ed93f215356442ca9db5b8ed5fab99667e996e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195361
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 17:16:27 +00:00
Danny Tuppeny dc28e1fee6 [analyzer] Fix unexpected completions at EOF in comments
Fixes https://github.com/Dart-Code/Dart-Code/issues/3281

Change-Id: Ica8160977ac682dbf4db0f0b8a64a1ec0d2d9a2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195505
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 15:36:57 +00:00
Danny Tuppeny eb0e7199ac [analyzer] Fix a null assertion error when completing in comments
Change-Id: I6456e951ec8cfe624efd6cbf7696c324e7a4b581
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195504
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 15:18:17 +00:00
Danny Tuppeny 1f0fe212b2 [analyzer] Migrate LSP spec tests to null-safe
Change-Id: I988692263486d277017a057768fcae2edeca3889
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195279
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 14:24:37 +00:00
Brian Wilkerson bdc6c65b32 Migrate the search support in server
Change-Id: If9379ac44cea9ccd5cf15886d0c22624a2b66b2d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195421
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 13:37:47 +00:00
Brian Wilkerson 374e35ce87 Migrate the highlight region computer
Change-Id: I580a10014c217cec9b225b7d45c9cc72b37d8614
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195303
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2021-04-15 01:00:26 +00:00
Brian Wilkerson 4f57626aaa Migrate the mocks used by tests and tools
Change-Id: If5093c5ba1b53fb1d96390b0740e1337acec9958
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195307
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-15 00:14:36 +00:00
Brian Wilkerson a28d35ae9e Migrate ContextManager
Change-Id: I0306c2485af0de4edf5e12e2cd3c13afdc3e8729
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195320
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-14 21:42:26 +00:00
Danny Tuppeny 1aa56ed7b1 [analyzer] Migrate LSP semantic tokens + generation script to null-safe
Change-Id: I3d903a406808c50d995c50b8f890db8f97de8cd5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195276
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-14 20:08:15 +00:00
Danny Tuppeny 7e50eedf80 [analyzer] Migrate LSP constants + ClientCapabilities to null-safe
Change-Id: Id7d1e4dae9eb9b1a29d82244d503dfdf2a9c2524
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195275
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-14 19:00:25 +00:00
Danny Tuppeny 7ea96c93d5 [analyzer] Migrate generated LSP code to null-safe
Change-Id: Ibed2e796bfcfe2ad48460cf1029a9fd9034e6418
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/195274
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2021-04-14 18:24:25 +00:00