Commit Graph

2964 Commits

Author SHA1 Message Date
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 6062d5d6bd Fix mustCallSuper to ignore methods from interfaces
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2348383006 .
2016-09-21 08:03:09 -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
Konstantin Shcheglov ff22a0fe89 Fix 'new KnownClass.unresolvedConstructor()' type computation.
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2356843002 .
2016-09-20 14:00:51 -07:00
Paul Berry 36a0807331 Test summary resynthesis of unresolved annotations.
Unresolved annotations were being summarized properly, but this was
untested, and testing them required some bug fixes to the test
infrastructure (mostly due to quirks introduced by dartbug.com/25706).

R=scheglov@google.com

Review URL: https://codereview.chromium.org/2357513004 .
2016-09-20 13:43:41 -07:00
Konstantin Shcheglov 1401a38d59 We do and test only AST based summaries.
There are 3 tests failing.

According to the Spec 'void' and 'dynamic' cannot be prefixes.
"It is a compile-time error if a built-in identifier is used as the declared name of a prefix, class, type parameter or type alias."
So, most probably these tests should be changed to test that the prefix is null.

I will look into "fail_invalid_prefix_type_parameter" in a separate CL.

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2353993002 .
2016-09-20 10:48:56 -07:00
John Messerly 8c25a41acc ignore dynamic when doing inference
R=leafp@google.com

Review URL: https://codereview.chromium.org/2343863004 .
2016-09-20 09:59:08 -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
Konstantin Shcheglov 3355612e13 We don't compute propagated types of non-local variables.
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2351623005 .
2016-09-20 08:37:29 -07:00
Brian Wilkerson 3c865fa6b5 Remove use of shared messages
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2346803005 .
2016-09-20 08:25:55 -07:00
Brian Wilkerson d0245ea2b9 Finish removing MethodTrampoline
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2356653003 .
2016-09-20 08:20:56 -07:00
Konstantin Shcheglov d13a887292 Remove 'serializeLibrary(LibraryElement)' and its tests.
Switch PrelinkerTest to AST based unlinked summaries.

The *_common.dart files in tests might be not actually 'common', and
we could pull them into corresponding only subclasses.

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2353773002 .
2016-09-19 20:28:46 -07:00
Konstantin Shcheglov 1310dc801a Remove incremental analysis cache.
It could cache more than what we cache currently with pub summaries.
But pub and internal summaries seem to be a good level of granularity.

This also makes one user less for element based summarizer.

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

Review URL: https://codereview.chromium.org/2353693002 .
2016-09-19 14:17:30 -07:00
Konstantin Shcheglov 1387e8ec5c Remove fallback mode and corresponding cli flag.
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2356523002 .
2016-09-19 14:02:14 -07:00
Konstantin Shcheglov 8010f3ac99 Use MockSdk.getLinkedBundle(), and implement it using SummaryBuilder.
This is a step to removing generating summaries from elements,
as we decided last week.

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2352573003 .
2016-09-19 12:58:36 -07:00
Konstantin Shcheglov 2fa34661d4 Generate SDK summaries using ASTs.
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2351863002 .
2016-09-19 12:20:36 -07:00
Konstantin Shcheglov dd5a6c2265 Issue 27390. Visit 'ExecutableElement.typeParameters'.
Otherwise incremental updaters fail to update type parameters' offsets,
which causes failures later in DeclarationResolver when apply elements
to re-created AST.

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

Review URL: https://codereview.chromium.org/2355543002 .
2016-09-19 12:17:27 -07:00
Paul Berry e77187ff6d Fix pkg/analyzer/tool/task_dependency_graph/check_test.
This was broken by the move to ".packages" files.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2351833002 .
2016-09-19 12:07:54 -07:00
John Messerly 865e808f15 support @virtual fields, fix #27384
R=leafp@google.com

Review URL: https://codereview.chromium.org/2352433002 .
2016-09-19 09:45:24 -07:00
Brian Wilkerson 57f1193c01 First steps toward removing MethodTrampoline
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2348353002 .
2016-09-19 08:24:29 -07:00
Konstantin Shcheglov f5a616834e Use configurations and declared variables to select import/export URIs during prelinking.
R=paulberry@google.com
BUG= https://github.com/dart-lang/sdk/issues/27045

Review URL: https://codereview.chromium.org/2353433002 .
2016-09-18 14:04:01 -07:00
Konstantin Shcheglov 54ee2b88c8 ImportElement/ExportElement 'uri' should be the selected URI.
So, that the URI is consistent with the imported/exportedLibrary.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2343103003 .
2016-09-17 17:26:13 -07:00
Brian Wilkerson 07aa504eb9 Clean up missed references to deprecated code
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2349863002 .
2016-09-17 10:37:29 -07:00
John Messerly 70f6e16c97 fix #27363, support @checked on fields
Just needed to have the synthetic setter param look for metadata on the field.

R=leafp@google.com

Review URL: https://codereview.chromium.org/2346143003 .
2016-09-16 18:20:23 -07:00
John Messerly 86ae2c8df9 fix #27382, tweak inference heuristic when we have no upper bound info
R=leafp@google.com

Review URL: https://codereview.chromium.org/2348583005 .
2016-09-16 17:28:03 -07:00
John Messerly 0713345b34 address #25232 in strong mode (dart1 behavior unchanged)
R=leafp@google.com

Review URL: https://codereview.chromium.org/2340173002 .
2016-09-16 16:04:18 -07:00
Konstantin Shcheglov ea0d3e4430 Issue 27374. Include all configuration sources into REFERENCED_SOURCES.
VerifyUnitTask verifies all Configuration sources, so we need to know
MODIFICATION_TIME all the sources, even if the configuration is not selected.

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

Review URL: https://codereview.chromium.org/2347123004 .
2016-09-16 11:31:32 -07:00
Brian Wilkerson 772c93ccf2 Rename libraryUri
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2347213002 .
2016-09-16 10:54:25 -07:00
Brian Wilkerson 7eb7573dc4 Initial support for the NNBD proposal
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2342383002 .
2016-09-16 10:51:19 -07:00
Konstantin Shcheglov 3f264975f8 Issue 27367. Fix linking when setter overrides a field.
R=paulberry@google.com, jmesserly@google.com
BUG= https://github.com/dart-lang/sdk/issues/27367

Review URL: https://codereview.chromium.org/2342883004 .
2016-09-16 10:16:46 -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
Konstantin Shcheglov fa24d1caaa Stop generating index information for SDK and simplify summary generation.
The implementation is still element model based, I will switch it to
the AST based approach in a following CL.

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2345793002 .
2016-09-15 16:15:20 -07:00
Brian Wilkerson ab9ba20c04 Fix recently introduced strong-mode errors
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2344933002 .
2016-09-15 14:37:37 -07:00
Konstantin Shcheglov cfe56b9241 Issue 27044. Summarize configurations of imports and exports, AST based.
R=paulberry@google.com
BUG= https://github.com/dart-lang/sdk/issues/27044

Review URL: https://codereview.chromium.org/2342893002 .
2016-09-15 12:00:28 -07:00
Konstantin Shcheglov 37a36f0389 AbstractDartSdk should not return its linked bundle if 'useSummary' is false.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2345743002 .
2016-09-15 11:37:09 -07:00
Konstantin Shcheglov 8c7790215c Rollback 6bee780067, restore PrintWriter.
As we decided, this change conflicts with Angular and other packages,
so it should be rolled back.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2340583006 .
2016-09-15 11:32:35 -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
Konstantin Shcheglov 35bf41691e Change summaries setter generation to allow properties named 'value'.
R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2339053002 .
2016-09-15 07:08:38 -07:00
John Messerly 79a9409f75 fix #27151, list and map literals infer using up and down info
R=leafp@google.com

Review URL: https://codereview.chromium.org/2343713002 .
2016-09-14 16:35:26 -07:00
John Messerly 28247a3daa fix #25578, implement @covariant parameter overrides
R=leafp@google.com

Review URL: https://codereview.chromium.org/2336503003 .
2016-09-13 14:57:22 -07:00
Brian Wilkerson 1f10422fd5 Update uses of deprecated API in ddc
R=jmesserly@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/2338883002 .
2016-09-13 11:44:38 -07:00
Konstantin Shcheglov 453546173e Safe handle removed file while incremental invalidation.
I see these situations happening in internal logs.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2337073003 .
2016-09-13 10:03:01 -07:00
Konstantin Shcheglov 8c1d5a3b56 Remove LibraryElement.visibleLibraries.
It is not used now.
The only other is smoke, and its only in test, and it is actually
used incorrectly there.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2336913002 .
2016-09-13 07:45:53 -07:00
Konstantin Shcheglov 4e95a1b8b6 Remove LibraryElement.isUpToDate().
It is not used anywhere.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2335843003 .
2016-09-12 15:03:58 -07:00
Konstantin Shcheglov 1a60db3278 Tweaks for Scope comments.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2333873002 .
2016-09-12 14:02:49 -07:00
Brian Wilkerson a5ee525e14 Add support for accessing field formal parameters in the initializer list of constructors
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2335693002 .
2016-09-12 09:48:34 -07:00
Konstantin Shcheglov 9494b2e394 Remove Scope.errorListener.
There are no references to ".errorListener" internally.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2329313002 .
2016-09-11 20:18:39 -07:00
Konstantin Shcheglov 663a3e810c Reapply abc5051854: Remove 'Element.docRange'.
I also marked the corresponding information in summaries as @deprecated
and made a small tweak to the generator so that it knows that the ids
of deprecated fields are still used.

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

Review URL: https://codereview.chromium.org/2330813002 .
2016-09-11 09:41:53 -07:00
Konstantin Shcheglov e832ab5248 Remove deprecated ChangeSet.deletedSources.
It is not used internally.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2331753002 .
2016-09-11 09:37:07 -07:00