Commit Graph

4090 Commits

Author SHA1 Message Date
Mike Fairhurst 985160c08d Replace making getInnermostContext public with making a getFolder method
This way SingleContextManager can fulfill the interface too (it can't
provide a ContextInfo, and the concept of `innermost` doesn't really
exist).

BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2754473004 .
2017-03-14 16:13:16 -07:00
Paul Berry c78b4d66bb Move some of analyzer's code generation utilities into front_end.
These utilities are needed for generating the code that supports
summaries; in order to move summary logic into front_end, we will need
these code generation tools in front_end as well.

Also make a minor change to summary code generation logic so that it
talks to the file system directly rather than depending on analyzer's
file system abstraction.

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2742333005 .
2017-03-14 12:30:18 -07:00
Brian Wilkerson 72323291fe Add an object that can manage which plugins are associated with each context / driver
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2746293004 .
2017-03-14 12:09:53 -07:00
Mike Fairhurst ebab20824a Formalizing the hacks letting the angular analyzer plugin run for now.
Mostly just making private methods public. But also add in some hooks
(via streams and callbacks) that allow the angular analyzer to wrap
analysis drivers in new angular drivers.

This code will likely all be reverted at some point when a much much
better plugin API is available.

BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2742343006 .
2017-03-14 12:09:24 -07:00
Devon Carew a83e7fd18e Add analysis server integration tests for the search domain.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2747893004 .
2017-03-13 17:06:13 -07:00
Konstantin Shcheglov b5ded5fb3c Add unit test for 'search.findMemberReferences' with the driver.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2746123003 .
2017-03-13 15:55:17 -07:00
Devon Carew 8f36669937 Add instrumentation data to the analysis server diagnostics page.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2717253002 .
2017-03-10 14:08:14 -08:00
Kasper Lund 2fe848502c Update context manager test after turning DOWN_CAST_COMPOSITE strong mode warning into a hint.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2741633004 .
2017-03-09 07:31:40 -08:00
Konstantin Shcheglov 24d5466a72 Send error notifications only for files in analysis roots (and not excluded).
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2734673002 .
2017-03-05 15:01:27 -08:00
pq cc0036d5ad Calculate text ranges for default args.
Continued work on generating sensible default contents for args in completions.

Calculated text ranges allow us to produce linked edits in the IDE.

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

Review-Url: https://codereview.chromium.org/2727343002 .
2017-03-02 13:14:49 -08:00
pq b17f4b2b5d CompletionSuggestion API for arg list text ranges.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2726923003 .
2017-03-01 16:10:46 -08:00
pq d826b1f931 Default arg support continued (flutter-intellij#553).
Default arg support for:
  * inherited refs
  * imported refs
  * type members
  * local constructors

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

See: https://github.com/flutter/flutter-intellij/issues/553
Review-Url: https://codereview.chromium.org/2728653004 .
2017-03-01 15:00:47 -08:00
pq d1bfe8bccb Calculate default args for local reference completions.
First step towards wiring up default args for completions.

See: https://github.com/flutter/flutter-intellij/issues/553

Next up: similar enhancements for type_members, imported_refs, etc.

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

Review-Url: https://codereview.chromium.org/2722253002 .
2017-03-01 11:45:01 -08:00
Steve Messick b3ed30b822 Add assists to move Flutter widgets up and down one level.
Fixes:
https://github.com/flutter/flutter-intellij/issues/461

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2724473002 .
2017-02-27 15:03:51 -10:00
Konstantin Shcheglov 2816c93faf Ask Dart analysis results only for Dart files.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/28905

Review-Url: https://codereview.chromium.org/2720023002 .
2017-02-27 11:50:42 -08:00
pq 8e6817f1da New Completion defaultArgumentListString protocol.
BUG=
R=brianwilkerson@google.com

See: https://github.com/flutter/flutter-intellij/issues/553.
Review-Url: https://codereview.chromium.org/2719083003 .
2017-02-27 11:36:30 -08:00
Konstantin Shcheglov 5c0bf9539c Await in DefaultFixContributor.internalComputeFixes() to catch exceptions.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2720013002 .
2017-02-27 10:40:24 -08:00
Brian Wilkerson c416aabed1 Deprecate the analysis.updateOptions request
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2719853004 .
2017-02-27 10:37:02 -08:00
Devon Carew 25dfd0fa80 Deprecate execution.setSubscriptions.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2713513007 .
2017-02-24 11:01:00 -08:00
Devon Carew 0f7fc43df5 Remove the --no-error-notification flag.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2713053002 .
2017-02-23 16:55:46 -08:00
Devon Carew fbb613a3fe Update the statuses of various analysis server integration tests.
BUG=
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2717523003 .
2017-02-23 14:23:55 -08:00
Brian Wilkerson 37c585e842 Make it safe to initialize the notificationManager in server
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2708353008 .
2017-02-23 12:31:15 -08:00
Devon Carew 9dd2a6d452 Revert "Tweaks to the analyzer_cli."
This reverts commit a7ac08d0e7.

BUG=

Review-Url: https://codereview.chromium.org/2709163005 .
2017-02-23 09:39:25 -08:00
Devon Carew a7ac08d0e7 Tweaks to the analyzer_cli.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2709013005 .
2017-02-23 09:02:49 -08:00
Brian Wilkerson 5d6b742904 Initial integration of NotificationManager into server
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2713533003 .
2017-02-22 10:41:13 -08:00
pq 56dbd3b1b4 Error state doc fix.
Follow-up from: https://codereview.chromium.org/2707223003/

BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2710983002 .
2017-02-22 08:57:48 -08:00
pq 174a50bb89 Missing @required arg quick fix improvements.
* fixes missing `HintCode.MISSING_REQUIRED_PARAM_WITH_DETAILS` case
* improve quick fix message (add name)
* update codegen

BUG=
R=scheglov@google.com

Fixes: #28830
Review-Url: https://codereview.chromium.org/2707223003 .
2017-02-22 06:43:43 -08:00
Brian Wilkerson 5bb9fb5f96 Guard against NPE caused by invalid code (issue 28829)
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2704933002 .
2017-02-20 09:29:14 -08:00
Devon Carew 7f83d9d173 Add a diagnostic.getServerPort analysis server request.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2703033002 .
2017-02-19 15:19:40 -08:00
Devon Carew 6d0be707d0 Some re-organization to the analysis server diagnostics pages.
BUG=
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2699363002 .
2017-02-18 14:18:55 -08:00
Steve Messick 2da528aeac Add assist to reparent a list of Flutter widgets
Apparently I forgot to sort the test file, so there's a bit of code rearrangement there.

I added the optimization to the filter from the previous CL here, too.

R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2701023002 .
2017-02-17 13:11:30 -08:00
Devon Carew 9793406f08 Switch to using expectAsync0() to address some deprecation warnings.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2701473009 .
2017-02-17 09:39:23 -08:00
Konstantin Shcheglov 6d79ee2602 Issue 27214. Get any AnalysisDriver for getNavigation().
This means that we will able to analyze any file, even outside all
analysis roots.

R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/27214

Review-Url: https://codereview.chromium.org/2689213016 .
2017-02-17 09:13:59 -08:00
Steve Messick 7945b65449 Add assist to reparent Flutter widget
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2701563003 .
2017-02-17 08:35:47 -08:00
Devon Carew af49bf9ff9 Fix the execution.setSubscriptions test.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2705633002 .
2017-02-17 08:23:23 -08:00
Devon Carew 7c7c895345 Add an integration test for execution.setSubscriptions.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2703723002 .
2017-02-17 07:41:03 -08:00
Devon Carew 5e0710617d Tests for analysis.navigation.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2696323004 .
2017-02-16 14:35:20 -08:00
Konstantin Shcheglov ab8aea145e Remove PubSummaryManager.
The new AnalysisDriver is more general approach

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2698133002 .
2017-02-16 06:58:07 -08:00
Devon Carew 3a345935bf Add tests for edit.sortMembers and edit.organizeDirectives.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2700563003 .
2017-02-15 16:15:10 -08:00
Paul Berry ff8b77c3db Fix analysis_server.iml file to account for newly created directories.
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2698473005 .
2017-02-15 13:07:59 -08:00
Konstantin Shcheglov 4d9968b95d Use CompilationUnitElement.lineInfo instead of AnalysisContext.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2692383003 .
2017-02-15 10:06:28 -08:00
pq e2808dff23 Add fix for missing @required params.
Groundwork for: https://github.com/flutter/flutter-intellij/issues/553

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

Review-Url: https://codereview.chromium.org/2692983003 .
2017-02-15 09:02:44 -08:00
Konstantin Shcheglov 72463adf20 If the state location is not accessible, use MemoryByteStore.
R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2697653004 .
2017-02-15 08:37:22 -08:00
Brian Wilkerson 2e64ccbf84 Add the notification manager
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2692373002 .
2017-02-15 08:04:31 -08:00
Devon Carew b1bc83b6d2 Add an integration test for edit.format.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2695253002 .
2017-02-15 07:23:21 -08:00
Devon Carew 90bd4652aa Add an integration test for diagnostics.getDiagnostics.
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2697833005 .
2017-02-14 14:36:38 -08:00
Brian Wilkerson 7993dac4f1 Check the type of a map entry before using it (issue 28756)
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2697603005 .
2017-02-14 12:58:43 -08:00
Brian Wilkerson a56cee72e5 Extract object creation methods for use by a future test class
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2696853002 .
2017-02-14 12:37:09 -08:00
Paul Berry 02ff6326d7 Remove unused TokenType.IS.
TokenType is used for symbols, not keywords.

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2691043003 .
2017-02-13 11:17:02 -08:00
Brian Wilkerson 2a2b342a70 Fix a test that was incorrectly fixed
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2690133002 .
2017-02-13 08:40:35 -08:00