Commit Graph

59 Commits

Author SHA1 Message Date
Brian Wilkerson 7054d92a02 Remove some classes from the analyzer public API
Change-Id: Ic53a8426818b06f44c2876abd16c789589bf78b5
Reviewed-on: https://dart-review.googlesource.com/52421
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-04-24 15:28:15 +00:00
Brian Wilkerson 5460ddbab5 Move three more libraries out of the public API
Change-Id: I8e6aeaea35c739fb26e22ffcfc30a343ebbb5424
Reviewed-on: https://dart-review.googlesource.com/51363
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-04-16 22:15:28 +00:00
Konstantin Shcheglov 9976cddcd7 Shared cache of FileState contents.
This makes Flutter repo analysis about 12% faster.

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

Base: 76.2 74.9 75.9
After: 65.6 66.0 66.6 67.1
Change-Id: I5afffdae15eacf2c09c4ede40d7312c8827bae0c
Reviewed-on: https://dart-review.googlesource.com/51061
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-04-13 16:43:36 +00:00
Brian Wilkerson d06dbb2ba8 Make most of the server Dart 2 safe
Change-Id: Ic9e8ea2557d01c05caedc126486778865af0396d
Reviewed-on: https://dart-review.googlesource.com/48262
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-03-24 15:33:53 +00:00
Konstantin Shcheglov e1909cb52a Update Outline protocol - change offset/length, add codeOffset/codeLength.
R=brianwilkerson@google.com

Change-Id: I4b5c03a21254f7c497adc4c043641b18599c5c39
Reviewed-on: https://dart-review.googlesource.com/45764
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-03-09 01:52:57 +00:00
Danny Tuppeny e9527bed5e Fix plugin tests on Windows
Bug: https://github.com/dart-lang/sdk/issues/32226
Change-Id: Iffbd616eec6afcc7613d829c47d8c278a268ab1b
Reviewed-on: https://dart-review.googlesource.com/43662
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2018-02-26 15:35:42 +00:00
Paul Berry 105b170ddb Roll package test to 0.12.29+1 and stack_trace to 1.9.0
This required some changes to analysis_server, since analysis_server
used to have its own version of pumpEventQueue().  Since
pumpEventQueue() is now provided by the test package, I've removed
analysis_server's version, and I've updated some of the call sites to
pass in "times: 5000" to replicate the old analysis_server behavior.

This also required some changes to analyzer, since the fail() method
is now marked as @alwaysThrows, so no code may follow it without
producing a dead code hint.

Change-Id: Ie5ef3a5cc685c18da02de699e59f63f3bb8865f7
Reviewed-on: https://dart-review.googlesource.com/32683
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-01-07 14:22:23 +00:00
Brian Wilkerson 98e0c26a89 Convert several test classes to use ResourceProviderMixin
Change-Id: I1c85c6f29ae74cca0b594fc1f9ddae098b815e72
Reviewed-on: https://dart-review.googlesource.com/31860
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2018-01-01 16:21:02 +00:00
Jens Johansen 22d0696d91 [CFE] Move front-end API under src/
This CL deprecates the front-end API and moves it into src/api_prototype.

For now all usages have been updated to point to the new location,
but they should be updated to use custom-client invocations instead (e.g.
one specific way for DDC, another for dart2js etc.)

Bug:
Change-Id: I9b4f41f6ebf55d42510fd35240d942d1dc7292d6
Reviewed-on: https://dart-review.googlesource.com/24822
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2017-12-01 08:42:16 +00:00
Brian Wilkerson c6c7580c92 Add error detection and reporting for errors related to plugins
Change-Id: If17e88b64022fe71c992c5867c80263c0e6b953b
Reviewed-on: https://dart-review.googlesource.com/18781
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
2017-11-05 19:21:07 +00:00
Konstantin Shcheglov 5ea30b4e3d Rename performace_logger.dart to performance_logger.dart
R=paulberry@google.com, sigmund@google.com

Bug:
Change-Id: Ib7b6d122dff3ddabde3db2270daa777a269e04ed
Reviewed-on: https://dart-review.googlesource.com/18512
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
2017-11-03 20:24:00 +00:00
Brian Wilkerson 8db9995c65 Fix an exception when a package is not defined
Change-Id: Id2469b4e0c4aaa8acb63c0186e7b53ec4acea95d
Reviewed-on: https://dart-review.googlesource.com/5885
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
2017-09-14 19:42:50 +00:00
Devon Carew 2b3b0272c4 Switch to using specific throws calls instead of general throwsA() calls.
Bug:
Change-Id: Id604dca1b8c3060c1d12c9ed0b1493771d2eb0d6
Reviewed-on: https://dart-review.googlesource.com/5883
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
2017-09-14 18:04:44 +00:00
Konstantin Shcheglov 1b4239d2e4 Export ByteStore and its implementations from front_end.
R=ahe@google.com, paulberry@google.com, sigmund@google.com

Bug:
Change-Id: Ie2e3413a7f143e270cec2bd3ae4564ad7cc315b1
Reviewed-on: https://dart-review.googlesource.com/3840
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
2017-09-07 19:23:21 +00:00
Brian Wilkerson 4aeedec64e Remove the auto-discovery of plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/3003663002 .
2017-08-22 09:04:23 -07:00
Paul Berry 89c910b9c1 Move byte_store.dart and file_byte_store.dart to their own subdirectory.
This allows us to use the subpackage relationships test to verify that
they don't import any other parts of front_end, which paves the way
for the possibility of moving them to their own package in the future.

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

Review-Url: https://codereview.chromium.org/2990323002 .
2017-08-07 11:04:48 -07:00
Brian Wilkerson 4c635b7b85 Initial support for an explicit plugin list
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2988343002 .
2017-08-02 11:30:57 -07:00
Brian Wilkerson 8bbf373a5e Remove the analysus.reanalyze request from the plugin API
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2988743002 .
2017-07-25 12:10:52 -07:00
Brian Wilkerson 0f9707073d Add support for creating a .packages file when the plugin is in a Bazel workspace
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2988673002 .
2017-07-24 10:00:05 -07:00
Brian Wilkerson 66986042af Add support for running pub for plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2949893002 .
2017-06-26 09:21:11 -07:00
Brian Wilkerson 5946ce552f Add AnalysisSession to analyzer
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2954153002 .
2017-06-26 09:16:11 -07:00
Brian Wilkerson e28064f405 Restore partial analysis of analysis options files
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2946313003 .
2017-06-22 08:00:50 -07:00
Brian Wilkerson 6e89075952 Disable finding plugin locations in the pubspec
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2947153002 .
2017-06-21 09:30:32 -07:00
Brian Wilkerson 5582824e3c Rename the plugin location key and directory name
R=mfairhurst@google.com

Review-Url: https://codereview.chromium.org/2952583003 .
2017-06-20 11:06:39 -07:00
Brian Wilkerson 24996fbfe7 Add support to pass the location of the analysis options file to plugins
R=mfairhurst@google.com

Review-Url: https://codereview.chromium.org/2947743002 .
2017-06-20 07:41:03 -07:00
Brian Wilkerson a8dc041543 Capture the request time for performance data and support forced shutdown
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2893803004 .
2017-05-19 08:49:47 -07:00
Brian Wilkerson c1a7070770 Add the ability to whitelist plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2897653002 .
2017-05-19 08:48:32 -07:00
Brian Wilkerson 7e11a13cf5 Add requestTime to responses
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2890163004 .
2017-05-18 10:32:47 -07:00
Brian Wilkerson daffcecc11 Pass the sdk path to plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2885993004 .
2017-05-17 08:19:49 -07:00
Brian Wilkerson cb258a952c Remove unused contentHash from results
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2885203002 .
2017-05-16 14:08:11 -07:00
Brian Wilkerson a03958bfc9 More clean-up after getting common protocol classes
R=danrubel@google.com

Review-Url: https://codereview.chromium.org/2880393002 .
2017-05-15 13:01:57 -07:00
Brian Wilkerson fb982f5476 Make server use the common protocol classes
R=danrubel@google.com

Review-Url: https://codereview.chromium.org/2879273002 .
2017-05-15 09:35:46 -07:00
Brian Wilkerson 3085734ef6 Generate common types into a separate library
R=danrubel@google.com

Review-Url: https://codereview.chromium.org/2880443006 .
2017-05-13 08:12:14 -07:00
Konstantin Shcheglov a4fd5d814f Extract PerformanceLogger from AnalysisDriver.
I also added the runAsync().

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

Review-Url: https://codereview.chromium.org/2883633002 .
2017-05-12 14:27:50 -07:00
Brian Wilkerson 3b2c3ae5b2 Add support for built-in plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2874803003 .
2017-05-10 13:31:20 -07:00
Konstantin Shcheglov bd1ee32543 Move [file_]byte_store.dart into pkg/front_end/test/src/incremental/.
We are going to reuse ByteStore in front_end, also for incremental
compilation.

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

Review-Url: https://codereview.chromium.org/2869803004 .
2017-05-09 09:12:15 -07:00
Brian Wilkerson 78eec999e5 Fix a broken test (TBR)
Review-Url: https://codereview.chromium.org/2861593003 .
2017-05-03 13:21:00 -07:00
Brian Wilkerson e55812a3f2 Unify the server and plugin versions of the generators
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2844273003 .
2017-04-28 07:46:29 -07:00
Brian Wilkerson 207fffe067 Send re-analyze requests to plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2843093002 .
2017-04-26 12:36:26 -07:00
Brian Wilkerson 65f492a043 Add support for watch events and error notifications
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2842013003 .
2017-04-26 09:36:26 -07:00
Brian Wilkerson 5695e95902 Add support for three more plugin requests
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2834993002 .
2017-04-22 09:02:30 -07:00
Brian Wilkerson 4e3d3bdd9f Add support for converting from server to plugin protocol objects
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2830903004 .
2017-04-21 08:37:12 -07:00
Brian Wilkerson e1a2c81d0b Update PluginWatcher to be more efficient
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2830933005 .
2017-04-20 12:39:50 -07:00
Brian Wilkerson 913560afb1 Enable missed tests
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2827353002 .
2017-04-20 11:30:36 -07:00
Brian Wilkerson ba3ed4ba37 Initial support for getting fixes from plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2830863002 .
2017-04-19 15:00:00 -07:00
Brian Wilkerson dd49e79f74 Add context information to driver and add hooks for plugin management
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2795743002 .
2017-04-03 10:13:45 -07:00
Brian Wilkerson 8afab37d55 Add PluginWatcher to watch for new plugins that need to be run
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2750483006 .
2017-03-15 11:26:14 -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
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
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