Commit Graph

2342 Commits

Author SHA1 Message Date
Konstantin Shcheglov f059523037 Highlight FieldFormalParameterElement as a field only in declaration.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27478

Review URL: https://codereview.chromium.org/2484883002 .
2016-11-07 12:03:06 -08:00
Konstantin Shcheglov fd3d6047fb Send notifications in the scheduled futures.
Doing this allows code completion to run before notifications, so
we get completions faster.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2481323002 .
2016-11-07 12:01:10 -08:00
Konstantin Shcheglov 9723a28457 Support for hover with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2477193002 .
2016-11-07 09:09:14 -08:00
Konstantin Shcheglov fc30904a39 Completion with the new analysis driver.
It works for top-levels, fields, locals, prefixed expressions.

Integration is not the most efficient - we resolve the full unit.
It works fine for files with about 1000 lines, about 50-70 ms.

We could slightly improve timing if we prioritize completion over
navigation and highlight notifications, which are currently prepared
and sent before completion.

In giant files like src/dart/element/element.dart, about 8500 lines,
it takes about 400 ms from typing to receiving completion. The theoretical
bottom bound for such files is about 70 ms - time that it required to
parse, create unlinked bundle, ensure that the API signature is the
same, load linked bundles and prepare to resynthesize. On top of this
goes any time required to resolve a single method and completion itself.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2478963002 .
2016-11-06 10:45:46 -08:00
Konstantin Shcheglov fa6cfb3515 Support for Quick Fixes with the new analysis driver.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2481643002 .
2016-11-06 10:09:30 -08:00
Konstantin Shcheglov 9f6e57635a Support for Quick Assists with the new analysis driver.
R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2480843002 .
2016-11-04 16:50:25 -07:00
Konstantin Shcheglov 64e0247700 Implement 'Sort Members' for the new analysis driver.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2473003003 .
2016-11-04 08:24:02 -07:00
Konstantin Shcheglov f55a9760fc Include LineInfo into AnalysisResult to allow reporting errors with lines/columns.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2468223003 .
2016-11-03 08:39:37 -07:00
Konstantin Shcheglov 99584133c8 Fixes for formatting and complete completion stub.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2467153002 .
2016-11-02 07:11:17 -07:00
Konstantin Shcheglov 5ba0fac019 Use FileContentOverlay instead of ContentCache in the new driver.
We do something strange in Analysis Server and the driver.
We get path, create the corresponding Source, and then put/get the
content using this Source. It seems more natural to use path everywhere.

R=paulberry@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2473473002 .
2016-11-01 12:45:57 -07:00
Brian Wilkerson 313d236918 Fix offset for URI navigation (issue 27717)
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2465393003 .
2016-11-01 12:28:07 -07:00
Konstantin Shcheglov c1a6321707 Get code to format from 'overlayState' or from the Source.
So, formatting will work for both old and new branches.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2466703002 .
2016-10-31 13:42:43 -07:00
Konstantin Shcheglov 19959a3464 Send analysis notifications after subscription.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2463193002 .
2016-10-31 13:40:21 -07:00
Konstantin Shcheglov 4d8ceb01a1 Send highlight and navigation notifications on result.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2469453002 .
2016-10-31 11:04:49 -07:00
Konstantin Shcheglov 0257eeb4f5 Simplify handling of watch events for the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2463903002 .
2016-10-31 11:00:22 -07:00
Konstantin Shcheglov 6826e267b9 Integration of the new analysis driver, behind a flag.
The flag is --enable-new-analysis-driver, disabled by default.

WIP, only error notifications for now.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2465923002 .
2016-10-31 09:54:31 -07:00
Konstantin Shcheglov 3319e6d0e3 Fix for inlining async methods/getters.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2463493002 .
2016-10-31 08:48:37 -07:00
Brian Wilkerson 96750cd5cb Split out options from ContextBuilder
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2425423009 .
2016-10-20 11:03:11 -07:00
Brian Wilkerson 4942f5304a Guard against a hypothetical null pointer dereference
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2421473007 .
2016-10-14 12:31:11 -07:00
Brian Wilkerson 3155b1e08c Remove unused method and field from DartSdkManager
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2415413003 .
2016-10-14 09:53:44 -07:00
Brian Wilkerson 5f5abd848c Fix exception in checked mode
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2409963004 .
2016-10-11 17:30:16 -07:00
Konstantin Shcheglov 56bde6da28 Issue 27542. Guard against CompilationUnitElement is null in SearchMatch.element getter.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27542

Review URL: https://codereview.chromium.org/2409403002 .
2016-10-11 14:09:09 -07:00
Konstantin Shcheglov 2a000e1587 Issue 27539. Check that the source is not modified between constructor and correction computing.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27539

Review URL: https://codereview.chromium.org/2411063002 .
2016-10-11 13:41:44 -07:00
Konstantin Shcheglov 831d3119f2 Issue 27536. Quick Fix for 'Avoid using braces in interpolation when not needed'.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27536

Review URL: https://codereview.chromium.org/2397153004 .
2016-10-07 12:51:04 -07:00
Brian Wilkerson 6de0803deb Clean up hints
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2394733004 .
2016-10-06 12:59:38 -07:00
Konstantin Shcheglov 5a4d7ebf61 Issue 27475. Discourage users from naming constructors the same as the enclosing classes.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27475

Review URL: https://codereview.chromium.org/2399533003 .
2016-10-05 12:07:40 -07:00
Konstantin Shcheglov f693119146 Catch and suppress expected exceptions in corrections.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2391173003 .
2016-10-05 08:31:07 -07:00
Paul Berry f5ed63f2be Deprecate analysis option "cacheSize".
This option has had no effect for quite some time.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2392983002 .
2016-10-04 09:53:56 -07:00
Brian Wilkerson 25374847ab Handle null element in completion (issue 27461)
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2383533005 .
2016-09-30 15:16:21 -07:00
Brian Wilkerson 685e4ff9e1 Revert "Remove unused option in server API"
Review URL: https://codereview.chromium.org/2382033003 .
2016-09-30 10:14:12 -07:00
Brian Wilkerson 2972bd0d6b Remove unused option in server API
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2382053002 .
2016-09-30 09:04:38 -07:00
Brian Wilkerson 539452bd3e ContextBuilder can configure contexts to use summaries
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2380573006 .
2016-09-29 10:55:35 -07:00
Konstantin Shcheglov 3647e7bac0 Order suggested Quick Fix imports: direct, export, non-API.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2377803002 .
2016-09-27 15:03:26 -07:00
Konstantin Shcheglov ef015221b1 Catch exceptions while preparing analysis.implemented notification.
This notification is sent often, and uses index and search engine. We
have several exceptions in internal logs, and all there exceptions are
fatal by default. It seems too harsh to shutdown the server because of
a missing notification.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2376493002 .
2016-09-26 12:54:33 -07:00
Konstantin Shcheglov 09b0bba932 Issue 27358. Reset AnalysisContext 'sourceFactory' and 'typeSystem' on analysis options change.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27358

Review URL: https://codereview.chromium.org/2361203004 .
2016-09-23 09:44:47 -07:00
Brian Wilkerson 74686371b3 Add support for getting the sessionId from instrumentation and sending it to the client
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2359233002 .
2016-09-22 10:26:13 -07:00
Konstantin Shcheglov 163931ffdd Fix couple hints.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2362753002 .
2016-09-22 09:59:40 -07:00
Konstantin Shcheglov e82cbea8fe Issue 27386. Fix for 'use similar' Quick Fix for import-prefixed identifiers.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27386

Review URL: https://codereview.chromium.org/2361483002 .
2016-09-21 10:02:20 -07:00
Konstantin Shcheglov bdc024a303 Move PackageIndexAssembler into analysis_server.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2357283002 .
2016-09-21 08:54:46 -07:00
Brian Wilkerson d947a7ba89 Async is no longer optional
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2361433002 .
2016-09-21 08:29:34 -07:00
Brian Wilkerson 2d9e690e6c Fix newly introduced errors and warnings
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2357553003 .
2016-09-21 08:01:04 -07:00
Brian Wilkerson c369a8449e More clean-up in server
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2350143004 .
2016-09-20 08:39:43 -07:00
Brian Wilkerson 22040876bf Use declared variables to select the correct configuration for resolution
R=paulberry@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/2345773003 .
2016-09-16 07:32:40 -07:00
Brian Wilkerson ecc84b26a4 Break up another large file
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2342733002 .
2016-09-15 07:49:27 -07:00
Dan Rubel 023295912a improve import URI completions at EOF
fixes https://github.com/dart-lang/sdk/issues/27020

R=scheglov@google.com

Review URL: https://codereview.chromium.org/2342473002 .
2016-09-14 11:22:25 -04:00
Dan Rubel 4fce5e9022 reduce the relevance of completions starting with "$"
fixes https://github.com/dart-lang/sdk/issues/27303

R=scheglov@google.com

Review URL: https://codereview.chromium.org/2330413004 .
2016-09-13 14:21:31 -04:00
Brian Wilkerson 6c448b6938 Move exception support to its own library
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2328043002 .
2016-09-10 11:04:19 -07:00
Brian Wilkerson 5bd4de469e Clean up warnings and hints
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2324463006 .
2016-09-09 09:09:59 -07:00
Konstantin Shcheglov f5144faed8 Remove JavaArrays from java_core.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2329483002 .
2016-09-09 09:03:25 -07:00
Brian Wilkerson fe02411930 Remove several references to JavaFile
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2323173002 .
2016-09-09 07:45:40 -07:00