Commit Graph

1799 Commits

Author SHA1 Message Date
Konstantin Shcheglov f600f5f9de Stop using Element.computeNode() in refactorings and fixes.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2669353002 .
2017-02-02 17:24:31 -08:00
Konstantin Shcheglov 69f9f781cc Implement Search.classMembers() using getFilesDefiningClassMemberName().
This fixes the performance problem you saw on class renames.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2674493004 .
2017-02-02 10:48:19 -08:00
Dan Rubel f33c3c1676 complete named params in constructors
This add completion suggestions for named parameters
in constructors and factories, and prevents other suggestions
such as type names, identifiers, etc when they are not appropriate.

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2671533002 .
2017-02-01 14:36:41 -05:00
Konstantin Shcheglov 811d0caad2 Don't send 'Response.refactoringRequestCancelle' if the request is null.
Not sure how to reproduce this, but saw this in the exceptions log.
Just once, so must be a pretty event, but still.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2665403002 .
2017-02-01 10:06:24 -08:00
Paul Berry 6f0f50dc1e Streamline AnalysisDriver status tracking.
- Removed AnalysisDriver.status stream.  Outside of tests, we weren't
  using it.  Inside of tests, it was easy to switch to
  AnalysisDriverScheduler.status.

- Moved waitForIdle from AnalysisDriver to AnalysisDriverScheduler.

- Added a mechanism to ensure that AnalysisDriverScheduler.waitForIdle
  really waits for idle, even if AnalysisDriverScheduler.status hasn't
  been notified that we are analyzing yet.  This mechanism does the
  right thing even if we later discover that there is no analysis to
  be done (and so no event is ever sent to
  AnalysisDriverScheduler.status).

- Removed an unnecessary check from the loop in
  AnalysisDriverScheduler._run().

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2665263002 .
2017-02-01 09:22:53 -08:00
Devon Carew 09725fc5c8 Show the platform version in the analysis server status page.
BUG=
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2661043004 .
2017-01-31 18:33:40 -08:00
Konstantin Shcheglov 75fff1fdb6 Implement completion in WithDirective.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2665053004 .
2017-01-31 15:06:54 -08:00
Brian Wilkerson fb5e367ca5 Update server generator
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2668733002 .
2017-01-31 08:26:10 -08:00
Brian Wilkerson 058b5a9c5b Add missed return leading to an NPE
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2668523002 .
2017-01-30 13:46:32 -08:00
Konstantin Shcheglov d29ba1e238 Store exceptions with transitive files context into ByteStore.
The key under which the exception context is stored, is included into
ExceptionResult, so Analysis Server can include the key into the message.

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

Review-Url: https://codereview.chromium.org/2663903002 .
2017-01-30 12:57:44 -08:00
Konstantin Shcheglov 6be5d918d0 Fix strong mode warning in the 'getter to method refactoring.'
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2662893002 .
2017-01-30 08:53:13 -08:00
Konstantin Shcheglov 8c738c2dad Revert "Revert "Enable the new analysis driver by default, use --disable-new-analysis-driver to disable.""
This reverts commit 878775607c.

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

Review-Url: https://codereview.chromium.org/2658273002 .
2017-01-27 12:13:04 -08:00
Konstantin Shcheglov 47967ac9f2 Guard against FunctionExpression nodes with null parameters.
I see this exception in logs, but I was not able to find which Dart
code would cause this.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2664493004 .
2017-01-27 11:57:08 -08:00
Konstantin Shcheglov fcd5f16d10 Stop using SDK summary bundle. Analyze dart:xxx as any other libraries.
Unfortunately this makes runnings tests about 30% slower :-(

I suspect that's because we have to build unlinked and linked summaries
for SDK libraries again and again for every tiny test.

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

Review-Url: https://codereview.chromium.org/2653683004 .
2017-01-24 18:32:26 -08:00
Brian Wilkerson c25bd9403f Move driver creation into ContextBuilder
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2647293007 .
2017-01-24 14:43:39 -08:00
Konstantin Shcheglov b206c84210 Reland c9e1b88 and 56726fc with a DDC fix.
Revert "Revert "Use single InputPackagesResultProvider, without SdkSummaryResultProvider.""

This reverts commit b701ad6453.

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

Review-Url: https://codereview.chromium.org/2647323006 .
2017-01-24 09:13:26 -08:00
Vijay Menon b701ad6453 Revert "Use single InputPackagesResultProvider, without SdkSummaryResultProvider."
This reverts commit c9e1b888a3.

Revert "Remove parent from SummaryResynthesizer."

This reverts commit 56726fcce0.

TBR=scheglov@google.com

Review-Url: https://codereview.chromium.org/2648213007 .
2017-01-24 06:21:38 -08:00
Konstantin Shcheglov c9e1b888a3 Use single InputPackagesResultProvider, without SdkSummaryResultProvider.
Each SummaryResynthesizer is now responsible for creating its TypeProvider.
And with the new AnalysisDriver we stop using SDK CachePartition.

For now we add SDK's summary bundle into SummaryDataStore.
Eventually we will get rid of it and add individual SDK libraries.

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

Review-Url: https://codereview.chromium.org/2652823002 .
2017-01-23 16:54:17 -08:00
Konstantin Shcheglov a483610a96 Issue 28386. Implement search for potential usages with the new analysis driver.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28386

Review-Url: https://codereview.chromium.org/2653493006 .
2017-01-23 14:07:01 -08:00
Konstantin Shcheglov 0160332713 Issue 28027. Move Null to the bottom in the Analyzer.
R=brianwilkerson@google.com, paulberry@google.com
BUG= https://github.com/dart-lang/sdk/issues/28027

Review-Url: https://codereview.chromium.org/2638183002 .
2017-01-18 11:15:11 -08:00
Konstantin Shcheglov 8d326e9a14 Report StateError if the DartSDK for an AnalysisDriver does not have summary.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2639743002 .
2017-01-17 20:46:00 -08:00
Konstantin Shcheglov 878775607c Revert "Enable the new analysis driver by default, use --disable-new-analysis-driver to disable."
This reverts commit 7e560a612f.

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

Review-Url: https://codereview.chromium.org/2634603002 .
2017-01-13 15:23:22 -08:00
Konstantin Shcheglov 914a117649 Report errors like IMPORT_OF_NON_LIBRARY with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2627093010 .
2017-01-12 13:41:52 -08:00
Brian Wilkerson 22f561e914 Reapply "Add support for generic function type syntax, part 1"
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2622303006 .
2017-01-11 14:10:05 -08:00
Brian Wilkerson 85b1e7abbe Revert "Add support for generic function type syntax, part 1"
Review-Url: https://codereview.chromium.org/2624283003 .
2017-01-11 13:30:52 -08:00
Brian Wilkerson 1cd918533d Add support for generic function type syntax, part 1
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2613383003 .
2017-01-11 13:12:10 -08:00
Konstantin Shcheglov 5a9c5ac1ec Issue 28068. Implement diagnostics domain for the new analysis driver.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28068

Review-Url: https://codereview.chromium.org/2625493002 .
2017-01-09 12:07:15 -08:00
Konstantin Shcheglov 266280f0c4 Issue 28300. Reset refactoring when analysis started with the new analysis driver.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28300

Review-Url: https://codereview.chromium.org/2626433002 .
2017-01-09 10:18:20 -08:00
Leaf Petersen 83fc4b6b46 Put a TypeProvider on the TypeSystem implementations.
Adding a TypeProvider instance to TypeSystem to avoid needing to
thread it through the various APIs, and to avoid having to change
the API every time a method which previously did not need to
access the TypeSystem suddenly does.

BUG=
R=jmesserly@google.com

Review-Url: https://codereview.chromium.org/2590883004 .
2017-01-09 02:40:10 -08:00
Konstantin Shcheglov e80a54e432 Fix the rest of the completion tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2618243002 .
2017-01-08 15:16:33 -08:00
Konstantin Shcheglov 7fc5bc3634 Remove REPLACE_IMPORT_URI Quick Fix.
I decided that it is not so useful to worth adding special support
for it with the new analysis driver.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2616163002 .
2017-01-06 14:56:20 -08:00
Konstantin Shcheglov 0377beb128 Update 'Add final field formal parameters' Quick Fix to support the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2618923003 .
2017-01-06 14:34:49 -08:00
Konstantin Shcheglov 188c087036 Run 'Inline Method' refactoring tests with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2619053002 .
2017-01-06 13:51:02 -08:00
Brian Wilkerson 07895169be Remove code duplication
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2618983003 .
2017-01-06 10:55:55 -08:00
Konstantin Shcheglov e9794e37b5 Call processOptionsForDriver() before creating the driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2615903002 .
2017-01-05 11:10:01 -08:00
Konstantin Shcheglov d9930d86cd processOptionsForDriver() is never called with 'optionsRemoved'.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2612783004 .
2017-01-05 08:47:52 -08:00
Konstantin Shcheglov 9a3b6a09e5 Issue 28261. Add support for implementing generic methods in Quick Fix.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28261

Review-Url: https://codereview.chromium.org/2618653002 .
2017-01-05 08:32:03 -08:00
Konstantin Shcheglov 1e43b4f270 Replace using MockSdk with FolderBasedDartSdk + summaries in AbstractContextTest(s).
It has some performance penalty (about 2-3 seconds in 35 seconds total).

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

Review-Url: https://codereview.chromium.org/2610823004 .
2017-01-04 14:39:24 -08:00
Konstantin Shcheglov 44bab19cb3 Implement 'analysis.analyzedFiles' notification with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2612723002 .
2017-01-04 07:12:47 -08:00
Konstantin Shcheglov 606bdb519f Cache results for priority files in AnalysisDriver.
Remove corresponding caching from Analysis Server.

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

Review-Url: https://codereview.chromium.org/2611523005 .
2017-01-03 17:04:58 -08:00
Konstantin Shcheglov 7e560a612f Enable the new analysis driver by default, use --disable-new-analysis-driver to disable.
R=paulberry@google.com, brianwilkerson@google.com, devoncarew@google.com
BUG=

Review-Url: https://codereview.chromium.org/2606283005 .
2017-01-03 14:50:17 -08:00
Brian Wilkerson bbf45b52e6 Guard against missing enclosing class (issue 28163)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2609833002 .
2017-01-03 07:52:54 -08:00
Brian Wilkerson e1a27c0c60 Rework the replay test to be more correct
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2611593002 .
2017-01-03 07:45:07 -08:00
Konstantin Shcheglov eaca15cd4d Fix analysis.getNavigation with the new analysis driver.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28125

Review-Url: https://codereview.chromium.org/2582753003 .
2016-12-16 10:52:47 -08:00
Konstantin Shcheglov 7e15a96b1b Use AnalysisOptions.signature as a way to check compatibility.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2577943003 .
2016-12-15 13:01:06 -08:00
Brian Wilkerson 8c946a6b9b Apply error processors in the new driver
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2577913002 .
2016-12-14 16:07:06 -08:00
Brian Wilkerson a8e9a1f108 Fix updating source factory in driver (issue 28086)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2571353002 .
2016-12-14 13:08:23 -08:00
Konstantin Shcheglov 52c81e4a78 Fix for detecting lib/src. Sort fixes by relevance.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2572013002 .
2016-12-14 06:57:19 -08:00
Konstantin Shcheglov 3a422bceb7 Implement SearchEngine.searchMemberDeclarations() for the new driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2566393003 .
2016-12-13 14:06:15 -08:00
Konstantin Shcheglov 142473b8cb Implement SearchEngine.searchTopLevelDeclarations() for the new driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2572603003 .
2016-12-13 12:11:22 -08:00