paulberry@google.com
0b9ed18603
Allow completions to wait for analysis without requiring a busy wait loop.
...
Two new methods are added to the AnalysisContext which return
Futures--the futures complete with the result of analysis once it's
available, avoiding the need for a busy wait loop in the completion engine.
The futures are guaranteed to complete eventually (provided that
analysis reaches quiescence). If it is determined that the requested
analysis will never become available (e.g. because analysis was
requested for a file or file/library combination that is not subject
to analysis), the future will be completed with an
AnalysisNotScheduledError, so that the client isn't stalled forever
waiting for analysis results.
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//800723002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42339 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-12 18:22:34 +00:00
brianwilkerson@google.com
77b819cd76
Report pub status
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//800913002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42328 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-12 17:40:04 +00:00
brianwilkerson@google.com
44b69647a3
Rework instrumentation API
...
R=danrubel@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//801543002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42321 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-12 16:00:23 +00:00
scheglov@google.com
956e9e41ed
Fix for exchaning comparison operators arguments.
...
R=danrubel@google.com
BUG=
Review URL: https://codereview.chromium.org//800593002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42299 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-11 21:07:14 +00:00
danrubel@google.com
45bebf8b76
filter imported element suggestions to reduce number of results sent to client
...
BUG=
R=paulberry@google.com
Review URL: https://codereview.chromium.org//795633004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42289 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-11 17:18:13 +00:00
brianwilkerson@google.com
f58bf4dbc9
Remove old instrumentation
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//784623004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42267 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 21:53:08 +00:00
danrubel@google.com
6995092b9d
code completion for dynamic type elements
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//783383003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42261 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 19:09:29 +00:00
brianwilkerson@google.com
2fc10f606d
Shutdown instrumentation
...
R=danrubel@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//756403004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42260 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 19:04:28 +00:00
brianwilkerson@google.com
8e7dd100f1
Code clean-up
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//792053002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42252 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 17:06:19 +00:00
brianwilkerson@google.com
bdb6a6a61f
Instrument communications
...
R=danrubel@google.com , lukechurch@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//790063002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42250 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 16:48:08 +00:00
scheglov@google.com
583b9447f5
Rollback r42232.
...
R=danrubel@google.com
BUG=
Review URL: https://codereview.chromium.org//785393003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42233 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 01:18:57 +00:00
scheglov@google.com
bd65677ec2
Comment out the function causing CPU burn up.
...
TBR
R=brianwilkerson@google.com , danrubel@google.com
BUG=
Review URL: https://codereview.chromium.org//793433004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42232 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-10 00:46:26 +00:00
danrubel@google.com
e24f040b46
skip completion if client closed stream
...
BUG=
R=paulberry@google.com
Review URL: https://codereview.chromium.org//774033003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42229 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 23:57:12 +00:00
danrubel@google.com
4247fe2550
bound the time waiting for analysis to complete
...
BUG=
R=paulberry@google.com
Review URL: https://codereview.chromium.org//790743003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42228 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 23:54:06 +00:00
scheglov@google.com
897a446835
Sort Quick Fixes. Make lower priorities more relavant than higher.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//788983002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42227 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 22:23:27 +00:00
brianwilkerson@google.com
0a8dc970d2
Hooks for instrumentation
...
R=scheglov@google.com
Review URL: https://codereview.chromium.org//787763004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42218 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 20:14:42 +00:00
scheglov@google.com
495cb6d5bf
Issue 21801. Index redirecting constructor invocations.
...
R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21801
Review URL: https://codereview.chromium.org//783223003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42202 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 02:21:07 +00:00
scheglov@google.com
e30b2b313d
Ignore ButtonType when computing an extracted method return type.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//789543002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42201 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-09 02:19:54 +00:00
scheglov@google.com
3b73b01511
Issue 21740. Allow inlining local variables declared in SwitchCase.
...
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21740
Review URL: https://codereview.chromium.org//780653005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42191 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 22:33:07 +00:00
danrubel@google.com
f0bc442ea4
cache suggestions on change in priority sources
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//787663004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42189 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 22:00:16 +00:00
danrubel@google.com
dc9f446021
update computeFast/Full now that completion manager is long lived
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//758953003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42188 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 21:56:56 +00:00
scheglov@google.com
e73e5faaad
Getters should not have parameters.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//787603004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42183 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 21:04:44 +00:00
danrubel@google.com
8ef4de75cd
include lower relevance suggestions only if they are already cached
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//784853003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42172 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 18:56:43 +00:00
danrubel@google.com
cbbcadc423
remove unused cache arguments
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//787653002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42167 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 16:59:02 +00:00
danrubel@google.com
c3a22ba02d
invoke computeCache when priority sources change
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//787553002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42160 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-08 12:04:32 +00:00
danrubel@google.com
2d6a8357f3
make completion managers responsible for their own caches
...
- move cache out of CompletionDomainHandler into CompletionManager
- make CompletionManager longer lived
- move context and source fields out of DartCompletionManager and into superclass
- encapsulate information related to a specific request in new CompletionRequest rather than in the manager
- remove request specific information from CompletionManager creation
- use same ContextManager instance for consecutive requests on the same context/source pair
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//723263004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42157 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-07 19:31:59 +00:00
scheglov@google.com
d0ec660798
Add an option for incremental resolution of API breaking changes.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//781783002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42113 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-04 17:10:29 +00:00
brianwilkerson@google.com
1d4ba5fba7
Add paging support
...
R=paulberry@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//769963003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42084 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-03 15:54:20 +00:00
scheglov@google.com
354081528c
Update local functions methods/functions.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//770253003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42078 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-02 23:51:10 +00:00
scheglov@google.com
2427406da3
Fix for NPE in navigation after some incremental changes.
...
TBR
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//774543002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42058 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-02 02:07:10 +00:00
scheglov@google.com
20d82e5135
Compressed/optimized navigation notification.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//766323002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42049 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-01 22:21:28 +00:00
paulberry@google.com
c5a938fde2
Allow the contents of the analysis cache to be inspected via http debugging.
...
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//759083003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41975 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-26 00:51:55 +00:00
scheglov@google.com
283b78e260
Add --enable-incremental-resolution option.
...
R=brianwilkerson@google.com , paulberry@google.com
BUG=
Review URL: https://codereview.chromium.org//756193002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41971 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 20:53:10 +00:00
paulberry@google.com
002769a47c
Coalesce analysis server output messages into a single write call.
...
This ensures that only one call to stdout.write() is made per run of
the event loop, so the output of the analysis server should not fall
behind the rate of analysis.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//758833004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41969 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 20:39:49 +00:00
paulberry@google.com
8a12fbbb59
Use write instead of writeln for client/server communication.
...
We have observed that each string sent from the server to the client
using stdout.write() takes at least one cycle of the event loop to
complete. Since writeln() is implemented using two calls to write(),
this means that streaming of messages to the client was almost always
falling behind the actual rate of analysis, resulting in very annoying
delays for the user.
As a stopgap, send each message from server to client using a single
call to write(). This doesn't completely solve the problem, but it
should reduce its impact while we work on a better solution.
R=scheglov@google.com
Review URL: https://codereview.chromium.org//757013002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41959 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-25 16:06:30 +00:00
danrubel@google.com
369b7f3918
fix broadcast streams
...
BUG=
R=paulberry@google.com
Review URL: https://codereview.chromium.org//752193002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41940 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 20:26:59 +00:00
danrubel@google.com
8745f2073a
new onPriorityChanged event stream
...
BUG=
R=brianwilkerson@google.com
Review URL: https://codereview.chromium.org//757613002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41935 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 17:56:17 +00:00
scheglov@google.com
0cd030eeb8
Issue 21613. Fix for renaming FieldFormalParameterElement.
...
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21613
Review URL: https://codereview.chromium.org//749173002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41929 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 16:00:28 +00:00
scheglov@google.com
2996ef1754
Issue 21650. Fix linked positions added after insert code buffers.
...
R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21650
Review URL: https://codereview.chromium.org//750423002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41928 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 15:52:58 +00:00
scheglov@google.com
a255faf85c
Exchanging operands of a comparision operator should invert the operator.
...
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//756483002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41927 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 15:51:47 +00:00
scheglov@google.com
52d55e933d
Issue 21662. Fix 'Sort Members' when both directives and declarations are updated.
...
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21662
Review URL: https://codereview.chromium.org//753883003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41926 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 15:50:19 +00:00
danrubel@google.com
be636515be
refactor import caching to exclude suggestions for inherited members
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//752833002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41925 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-24 12:28:07 +00:00
scheglov@google.com
703b744966
Issue 21655. Don't import self when add type declaration.
...
R=paulberry@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21655
Review URL: https://codereview.chromium.org//747613002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41869 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 22:10:57 +00:00
danrubel@google.com
a714eb2faf
cache import suggestions
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//742163002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41865 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 19:31:31 +00:00
danrubel@google.com
5977fec49b
discard code completion cache if context or other sources change
...
BUG=
R=scheglov@google.com
Review URL: https://codereview.chromium.org//744043002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41860 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 18:40:23 +00:00
danrubel@google.com
4a50ed6cf8
cleanup hints
...
BUG=
R=brianwilkerson@google.com , paulberry@google.com , scheglov@google.com
Review URL: https://codereview.chromium.org//734403004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41852 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-20 14:03:18 +00:00
scheglov@google.com
91c02b4a8e
Issue 21618. Fix for empty code for 'dynamic' type.
...
R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=21618
Review URL: https://codereview.chromium.org//731313004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41838 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-19 17:42:29 +00:00
scheglov@google.com
438fbd7f6b
Cache ElementLocation instance and index key/location ids.
...
This saves us about 9% of time, as the previous CL.
From 22294 ms to 20040 ms.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//739643003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41814 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 23:02:14 +00:00
scheglov@google.com
58587a470e
Rollback r41807.
...
As discussed, it is not compatible with the incremental analysis.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//736603005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41809 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 18:50:28 +00:00
scheglov@google.com
4032b4d86b
Use shorter DartElementLocation.
...
This improves analyzer + analysis_server analysis time from 21841 ms to 19839 ms.
I.e. about 9% faster.
However it is still 25% slower than without index at all - 15593 ms.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//738673002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41807 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-18 16:21:01 +00:00