Commit Graph

1577 Commits

Author SHA1 Message Date
Konstantin Shcheglov af6bd2ef88 Use SdkExtensionFinder in the old Analysis Server implementation.
To be replaced with ContextBuilder of course.
But we need this for the time being.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2272093003 .
2016-08-24 13:58:16 -07:00
Brian Wilkerson 40a310748a Correctly use sdk passed on command-line
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2276033003 .
2016-08-24 12:38:21 -07:00
Konstantin Shcheglov 2e24662c06 Use FlushTargetFilter to pre-filter targets before checking their results.
This helps to reduce number of checks, so makes flushing faster.
In non-incremental changes it gives 0.32% -> 0.11%.
In incremental changes it gives 10% -> 2.6%.

We still pass both target and result into the second filter for
convenience, e.g. to print them both without need to remember the
current target in a local variable.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2267273004 .
2016-08-24 09:44:06 -07:00
Konstantin Shcheglov b115309531 Flush AST results for source outside of the analysis roots.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2271803002 .
2016-08-23 14:53:51 -07:00
Konstantin Shcheglov 90c7698f1b 'Extract Local' and 'Inline Local' refactoring need only single file analysis.
We still analyze more than we actually need - we don't need the full
RESOLVED_UNIT, we could live with some much lower RESOLVED_UNITx. But it
might be fast enough for practical purposes to compute fully resolved
units.

Maybe we should set up monitoring for refactoring times...

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2262393003 .
2016-08-22 18:59:55 -07:00
Konstantin Shcheglov 424cb8d9a4 Fix for 'Extract Local' in an expression function body.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2267893002 .
2016-08-22 11:58:08 -07:00
Brian Wilkerson b86a021155 Remove changes that were accidentally entangled with an earlier CL (TBD)
Review URL: https://codereview.chromium.org/2266763002 .
2016-08-21 16:10:08 -07:00
Brian Wilkerson 79f190cf69 Supress deprecation warnings in a deprecated library
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2261053002 .
2016-08-21 15:47:38 -07:00
Konstantin Shcheglov a98ec79a0c Always enable --finer-grained-invalidation, ignore the flag.
Remove the flag later.
https://github.com/dart-lang/sdk/issues/27108

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2250513008 .
2016-08-19 14:01:49 -07:00
Konstantin Shcheglov 2e4b51700f Revert: Always enable --finer-grained-invalidation, ignore the flag.
I see failures on pub bots.
Will fix them and reapply later.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2264683002 .
2016-08-19 11:39:39 -07:00
Konstantin Shcheglov 40b70c29d1 Always enable --finer-grained-invalidation, ignore the flag.
Remove the flag later.
https://github.com/dart-lang/sdk/issues/27108

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2257243004 .
2016-08-19 10:56:35 -07:00
Brian Wilkerson 6a3e185521 Allow file resolver provider to return null, just like package resolver provider
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2260593003 .
2016-08-18 15:00:19 -07:00
danrubel d92849a8af fix completion in switch case
Fixes https://github.com/dart-lang/sdk/issues/26856

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2250873002 .
2016-08-16 18:07:52 -07:00
Konstantin Shcheglov 010578b88a Issue 26335. Insert an empty line if the class body is a single line.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26335

Review URL: https://codereview.chromium.org/2256463002 .
2016-08-16 15:13:22 -07:00
Konstantin Shcheglov ee3a93a0a8 Add a new Analysis Server flag '--enable-pub-summary-manager'.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2243003002 .
2016-08-12 14:05:55 -07:00
Brian Wilkerson c41427383b Deprecate DirectoryBasedDartSdk and transition existing uses to the new API
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2242853002 .
2016-08-12 09:18:12 -07:00
Alexei Eleusis Diaz Vera c365f3023b fix typo (#27056) 2016-08-11 12:19:48 -07:00
Brian Wilkerson 2657536034 Create new error message for missing generated files
R=scheglov@google.com, skybrian@google.com

Review URL: https://codereview.chromium.org/2232863004 .
2016-08-10 12:42:14 -07:00
Konstantin Shcheglov 0522cad42a Convert to async/await parts that cause strong mode warnings.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2233633003 .
2016-08-10 10:28:34 -07:00
Konstantin Shcheglov de837749a2 Basic linking in PubSummaryManager.
Many features are not implemented yet, but I'd like to show to you and
if it a step in the correct directlion, land it.

R=paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2226973005 .
2016-08-09 18:03:13 -07:00
Brian Wilkerson b29c6bf330 Suppress follow-on errors when a file is imported with either a prefix or a show clause
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2226613004 .
2016-08-09 11:11:39 -07:00
Konstantin Shcheglov 6df5ea27a5 Revert 6ad38498c8 (PARSED_UNIT).
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2231473002 .
2016-08-09 10:14:18 -07:00
Konstantin Shcheglov 43fef756ae Provide LINE_INFO from ResynthesizerResultProvider.
Also, to guarantee that LINE_INFO is computed, we need to replace
context.getLineInfo() with context.computeLineInfo() in the server.
This should be equivalently fast in both summary (from provider) and
non-summary cases (the source should have been scanned and parsed in
order to resolve references to its elements).

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2225893003 .
2016-08-09 09:12:24 -07:00
Konstantin Shcheglov c35fb3c79d Initial implementation of pub summary manager.
For now we just generate unlinked, spec summaries.
We don't use them.

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

Review URL: https://codereview.chromium.org/2220703002 .
2016-08-09 07:18:52 -07:00
Konstantin Shcheglov 6ad38498c8 Extract unresolved AST parsing (PARSED_UNIT1) from full parsing, which includes UriBasedDirective(s) resolution.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2229603003 .
2016-08-08 14:45:27 -07:00
Brian Wilkerson 5b26441dbf Convert server and cli and deprecate the old implementation
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2214613003 .
2016-08-04 11:28:16 -07:00
Konstantin Shcheglov 6cceb72ea7 Don't report removed sources as changed in CacheConsistencyValidatorImpl.
Also I believe we don't need this check anymore.
context.getLibrariesContaining(source).isEmpty &&
context.getLibrariesDependingOn(source).isEmpty)

1. It was not used in applyChanges(), which could probably cause losing
some dependencies.

2. Since https://codereview.chromium.org/2172143003 we record that
there are dependencies on the removed, so not existing, source. So,
when the source is added again, _sourceAvailable() will invalidate
its CONTENT and the whole transitive closure of its users.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2209493003 .
2016-08-03 13:30:09 -07:00
Konstantin Shcheglov 77590f5ab1 Use unitMember/classMember/parameter names instead of offsets in index.
This fixes index for cases when element offset might change without
causing resolution of its users, e.g. incremental changes (like
inserting a whitespace) and incremental invalidation.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2203173002 .
2016-08-02 23:18:29 -07:00
Brian Wilkerson 1ba4a1e887 Mark analysis_server as being strong-mode clean
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2198223002 .
2016-08-01 12:23:22 -07:00
Brian Wilkerson 16cc45417c Make analyzer strong-mode clean
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2196363003 .
2016-08-01 11:55:15 -07:00
Konstantin Shcheglov a3b1936567 Fix for SearchEngine.searchMemberDeclarations() - search exact names.
R=pquitslund@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2183263002 .
2016-07-26 14:47:32 -07:00
pq 9f424fa9d5 Remove duplicated import.
BUG=
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2181423002 .
2016-07-26 10:56:22 -07:00
pq 065238943a Associate excludes with context data.
A step towards centralizing file exclusion handling (which is currently duplicated by all analyzer clients).

BUG=
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2183003003 .
2016-07-26 10:24:39 -07:00
Konstantin Shcheglov dd18f93154 Issue 26926. Don't search hierarchy for static class members.
R=pquitslund@google.com
BUG= https://github.com/dart-lang/sdk/issues/26926

Review URL: https://codereview.chromium.org/2176173004 .
2016-07-25 11:36:52 -07:00
Devon Carew c52843e42d Validate the regex used in search.findTopLevelDeclarations.
BUG=
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2160723002 .
2016-07-18 12:13:12 -07:00
Konstantin Shcheglov 55fcc03572 Use the new StaticWarningCode.UNDEFINED_IDENTIFIER_AWAIT error.
...instead of StaticWarningCode.UNDEFINED_IDENTIFIER

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2162523003 .
2016-07-18 10:48:55 -07:00
Brian Wilkerson 12dfb8b6ed Keep track of where objects are being referenced in memory status page
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2157613002 .
2016-07-15 14:21:31 -07:00
Konstantin Shcheglov 7d9d451730 Don't insert additional ':' when changing a named argument name.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2136223004 .
2016-07-12 17:25:55 -07:00
Konstantin Shcheglov 79f7150d97 Issue 26249. Quick Assist to convert final fields into getters.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26249

Review URL: https://codereview.chromium.org/2140193003 .
2016-07-12 14:15:44 -07:00
Konstantin Shcheglov f1fa32e356 Issue 26249. Quick Assist to convert getters into final fields.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26249

Review URL: https://codereview.chromium.org/2144763002 .
2016-07-12 13:31:53 -07:00
Konstantin Shcheglov bf731dfcd5 Issue 26764. Insert required imports in the correct sorting order.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26764

Review URL: https://codereview.chromium.org/2143023002 .
2016-07-12 11:17:02 -07:00
Konstantin Shcheglov c706a355b1 Tweak for the type of the 'instances' variable.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2142593002 .
2016-07-11 13:26:38 -07:00
Brian Wilkerson cfb3f57a97 Initial memory use status page
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2140583003 .
2016-07-11 10:27:28 -07:00
Konstantin Shcheglov d2d8dbff41 'Import library' fixes should use the same 'addLibraryImports' implementation as the fixes where importing is a side effect.
Preparation for https://github.com/dart-lang/sdk/issues/26764

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2138843002 .
2016-07-11 09:33:58 -07:00
Konstantin Shcheglov ed887c09d1 Validate cache consistency asynchronously. Compute modification times of physical files in a separate isolate.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2132073003 .
2016-07-08 15:01:05 -07:00
Konstantin Shcheglov 1ce4c29f51 Validate only private sources, display statistics.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2131303002 .
2016-07-08 10:07:04 -07:00
danrubel 37a6f62566 fix code completion when enableTrailingCommas is true
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2128693002 .
2016-07-07 12:42:30 -04:00
danrubel b8f6bb0958 remove arglist suggestion
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2124103002 .
2016-07-07 12:40:23 -04:00
Konstantin Shcheglov dc42500408 Issue 26821. Don't add 'void' return type for setters when lint 'avoid_return_types_on_setters' is enabled.
R=brianwilkerson@google.com
BUG= https://github.com/dart-lang/sdk/issues/26821

Review URL: https://codereview.chromium.org/2123333002 .
2016-07-06 13:00:38 -07:00
Brian Wilkerson 552d209a2a Add links to context information for SDK contexts
R=pquitslund@google.com

Review URL: https://codereview.chromium.org/2119713004 .
2016-07-01 13:10:16 -07:00