Commit Graph

270 Commits

Author SHA1 Message Date
Konstantin Shcheglov 0827191d87 Refactor creating AnalysisOptionsImpl and declared variables.
We need to separate declared variables from AnalysisContext because
we're going to replace AnalysisContext with AnalysisDriver.

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

Review-Url: https://codereview.chromium.org/2976683002 .
2017-07-11 11:29:35 -07:00
Konstantin Shcheglov 824a62ba3c More tests for build mode.
R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2971373002 .
2017-07-07 14:33:09 -07:00
Konstantin Shcheglov 671bedc8f6 Fix strong_mode_test after moving driver_test fields into class.
TBR

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2971343002 .
2017-07-07 10:01:47 -07:00
Konstantin Shcheglov 73ec7f0a79 Convert driver_test.dart to reflective tests.
It was hard to keep track of defined tests, and to run individual tests.

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

Review-Url: https://codereview.chromium.org/2976493002 .
2017-07-07 09:38:49 -07:00
Konstantin Shcheglov 711e37295a Remove the --build-summary-only-diet option.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2968403002 .
2017-07-07 09:15:48 -07:00
Konstantin Shcheglov 0699a72344 Additional tests for build mode.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2968303002 .
2017-07-06 15:02:28 -07:00
Konstantin Shcheglov 956b9ce96b Split driver_test main() into 4 tests methods.
This is not how I would ideally prefer to write tests, but a bit better.

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

Review-Url: https://codereview.chromium.org/2967413002 .
2017-07-06 14:12:45 -07:00
Devon Carew a2e9519279 Make exception reporting best effort.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2965263002 .
2017-07-06 13:36:28 -07:00
Devon Carew d4abd49df7 Add analytics to analyzer-cli and analysis server.
BUG=
R=brianwilkerson@google.com, scheglov@google.com, zra@google.com

Review-Url: https://codereview.chromium.org/2963323002 .
2017-07-05 23:29:46 -07:00
Brian Wilkerson 895f898b9b Make analyzer respect exclusions from the analysis options file
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2967883002 .
2017-07-05 07:52:48 -07:00
Konstantin Shcheglov 3d831505a4 Cache AnalysisOptionsImpl objects for context directories.
This fixes the performance degradation which we had to introduce
in the previous CL.

R=brianwilkerson@google.com
BUG=

Review-Url: https://codereview.chromium.org/2963583002 .
2017-06-27 12:18:41 -07:00
Konstantin Shcheglov bc34583661 Issue 29960. Both CommandLineOptions and AnalysisOptions must be equal to reuse the context.
Unfortunately this makes running shared tests about 30% slower, because we have to perform I/O while trying to find analysis_options.yaml files corresponding to the files to be analyzed.

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

Review-Url: https://codereview.chromium.org/2956093002 .
2017-06-27 09:33:00 -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 62d0376231 Run the sorter to reduce code churn
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2933753002 .
2017-06-12 07:37:14 -07:00
Brian Wilkerson b928683560 Add a couple of lints to the options files
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2933713002 .
2017-06-11 09:12:48 -07:00
Devon Carew 0b79e4d20d update the analyzer and analysis server perf tags
BUG=
R=brianwilkerson@google.com, scheglov@google.com

Review-Url: https://codereview.chromium.org/2917183003 .
2017-06-03 19:51:27 -07:00
pq ba1a6e39f3 Update to fresh cli_util (0.1.0).
BUG=
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2894433002 .
2017-05-17 11:04:29 -07:00
Paul Berry 42ef3eb144 Analyzer CLI: fix machine format in build mode.
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2885063002 .
2017-05-16 09:01:49 -07:00
Paul Berry f4d3f6cf45 Remove .iml files from the repository.
These files weren't providing enough benefit compared to the confusion
they were causing by showing up frequently in diffs.

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

Review-Url: https://codereview.chromium.org/2878103002 .
2017-05-12 15:06:18 -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
Paul Berry b5bc14c0b4 Begin writing a TypeInferenceListener interface.
In the long term, this is intended to be used to communicate the
results of type inference from the front_end to analyzer.  In the
short term, it can be used to debug type inference (by uncommenting
the print statements in type_inference_listener.dart).

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

Review-Url: https://codereview.chromium.org/2878733006 .
2017-05-12 13:31:26 -07:00
Konstantin Shcheglov bdedd6768b Add a way to use shared CanonicalName root to deserialize Program.
This allows for example to add SDK into a Program, then load the
"incomplete" Program A that has only the library A, and name sequences
that references SDK classes. Because we look into the nameRoot which
aleady has SDK CanonicalName(s), we can find these names while filling
the link table and use references which point to the existing SDK
AST nodes.  Then we can load another set of library cycles, etc.

At the end we have a set of self-consistent libraries that we can
feed into DillTarget/DillLoader and resolve anothersource target
against it.

This CL is based on https://codereview.chromium.org/2872903005/
which has not been reviewed yet.

R=kmillikin@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2874723002 .
2017-05-12 10:42:08 -07:00
Devon Carew f1a5503fcc Add --fatal-infos; hide --fatal-hints.
BUG=
R=brianwilkerson@google.com, danrubel@google.com

Review-Url: https://codereview.chromium.org/2874043002 .
2017-05-10 11:45:11 -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
P.Y. Laligand 21e9c40b8f Disable analysis on a few packages. (#29571) 2017-05-05 22:06:00 -07:00
Devon Carew f6f845c879 Fix a completion exception during import suggestions.
BUG=
R=danrubel@google.com

Review-Url: https://codereview.chromium.org/2862793002 .
2017-05-04 09:24:18 -07:00
Konstantin Shcheglov 9a34ac9f27 Type inference for StringConcatenation.
The test simple_literal_string was replaced with string_literal.

R=paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2855403002 .
2017-05-04 08:47:12 -07:00
Konstantin Shcheglov b567aeaeef Change Accessor(s) to use AstFactory to create MethodInvocation, PropertyGet/Set.
R=ahe@google.com, paulberry@google.com
BUG=

Review-Url: https://codereview.chromium.org/2857133004 .
2017-05-03 14:10:54 -07:00
Devon Carew 5d0056df88 Make the exit code for dartanalyzer more deterministic.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2857203002 .
2017-05-03 11:38:35 -07:00
Paul Berry d842f35bb2 Add a strong mode implementation of LUB to fasta; use it to infer ?:
R=ahe@google.com, leafp@google.com

Review-Url: https://codereview.chromium.org/2849213002 .
2017-05-03 10:36:47 -07:00
danrubel 9649ca1a94 fix driver test
Review-Url: https://codereview.chromium.org/2855513002 .
2017-04-30 23:35:59 -04:00
danrubel c8784af933 rename .analysis_options --> analysis_options.yaml
See https://github.com/dart-lang/sdk/issues/28385

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

Review-Url: https://codereview.chromium.org/2839383003 .
2017-04-30 18:33:10 -04:00
Brian Wilkerson e009f32ad7 Fix a failing test
Review-Url: https://codereview.chromium.org/2848643004 .
2017-04-27 10:45:24 -07:00
Brian Wilkerson 511a06ee00 Fix some issues with options handling
R=danrubel@google.com

Review-Url: https://codereview.chromium.org/2844663003 .
2017-04-27 10:22:37 -07:00
pq ef60d4b46e IML updates for 2017.
BUG=
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2852483003 .
2017-04-27 10:17:39 -07:00
Devon Carew 66ac96c4a6 Use the dart:io Platform.resolvedExecutable API to locate the Dart SDK.
BUG=
R=brianwilkerson@google.com, danrubel@google.com, pquitslund@google.com

Review-Url: https://codereview.chromium.org/2844883005 .
2017-04-27 09:29:08 -07:00
Jacob MacDonald 466d951c25 Add support for unlinked summary inputs through --build-summary-unlinked-input
BUG=
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2836873005 .
2017-04-26 09:11:33 -07:00
Devon Carew 3bad1dfb4c Refactoring analyzer_cli for code hygiene.
BUG=
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2840703002 .
2017-04-24 16:55:34 -07:00
Devon Carew eae2bf2747 Fix an issue with duplicate reported analysis errors.
BUG=
R=brianwilkerson@google.com, danrubel@google.com

Review-Url: https://codereview.chromium.org/2793813002 .
2017-04-23 21:05:10 -07:00
Devon Carew d392382d10 Fix several typos.
BUG=
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2829963006 .
2017-04-22 11:15:03 -07:00
Jacob Richman 6ac3a24a2e Run formatter on the analyzer.
BUG=
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2826693004 .
2017-04-19 08:24:09 -07:00
Vijay Menon a3d2e49198 Revert "Revert "Report error if the same uri appears in multiple summaries.""
Relanding after fixing package_bundle_reader_test.dart.

Note, original CL (already reviewed here: https://codereview.chromium.org/2781483007/) is patch set 1.

Test fix is patch set #2.

R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2825503002 .
2017-04-17 10:11:21 -07:00
Vijay Menon dcdccf4750 Revert "Report error if the same uri appears in multiple summaries."
This reverts commit 2afa21bb2c.

Breaking the bots.

TBR=jmesserly@google.com
BUG=

Review-Url: https://codereview.chromium.org/2821933002 .
2017-04-17 08:07:36 -07:00
Vijay Menon 2afa21bb2c Report error if the same uri appears in multiple summaries.
Fixes #27025

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

Review-Url: https://codereview.chromium.org/2781483007 .
2017-04-17 07:32:59 -07:00
pq 1d4d0d769f CLI support for enableAssertInitializers.
R=brianwilkerson@google.com

Review-Url: https://codereview.chromium.org/2809793004 .
2017-04-12 10:38:30 -07:00
Konstantin Shcheglov 021d99e05d Issue 29288. Resynthesize Import/Export/PartElement for every directive.
We need all of them because there might be associated annotations,
which should be applied to corresponding AST nodes.

https://github.com/dart-lang/sdk/issues/29288
https://github.com/dart-lang/sdk/issues/29188

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

Review-Url: https://codereview.chromium.org/2809523002 .
2017-04-09 10:12:43 -07:00
Jacob MacDonald 3e623d7df1 Add --build-summary-only-unlinked flag, which makes the output summary be an unlinked summary instead of a linked one.
BUG=
R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2796953002 .
2017-04-04 12:22:20 -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
Devon Carew 0fcb91aa06 Fix analyzer tests when run in checked mode.
BUG=

Review-Url: https://codereview.chromium.org/2775073002 .
2017-03-25 15:34:40 -07:00
Devon Carew b51d1fd8e3 Use ansi color in the dartanalyzer cli output.
BUG=
R=brianwilkerson@google.com, danrubel@google.com

Review-Url: https://codereview.chromium.org/2775633002 .
2017-03-25 15:02:47 -07:00