Commit graph

5561 commits

Author SHA1 Message Date
paulberry@google.com dffb8c8a68 Status updates for issue 22475.
TBR=rmacnak@google.com

Review URL: https://codereview.chromium.org//938593004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43843 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-18 15:18:39 +00:00
sgjesse@google.com a468b5cd60 Add README file to the mime package
Also update CHANGELOG after last change.

R=kustermann@google.com, wibling@google.com
BUG=http://dartbug.com/22442

Review URL: https://codereview.chromium.org//936733004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43841 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-18 14:45:30 +00:00
sigurdm@google.com 6ff10c59a9 Support for interpolated declarations in the js parser.
Also use this support to avoid non-constant templates in async_rewrite.

R=floitsch@google.com

Review URL: https://codereview.chromium.org//932053002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43837 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-18 13:00:41 +00:00
herhut@google.com 38512aca1b Make value range analysis tolerate erroneous length expressions.
BUG= http://dartbug.com/21166
R=floitsch@google.com

Review URL: https://codereview.chromium.org//936483004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43836 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-18 12:11:58 +00:00
sgjesse@google.com f44c9f3b6c Fix bug in subscription handling in mime package
The parser now parses each received chunk to the end no matter what the
paused state of the part stream is. This will add data to the part
stream controller before it is even listened on, but only the data already
received from the original input stream.

Not trying to stop the parsing on a received chunk when the part stream
is paused makes the code simpler to reason about.

The two added tests modes failed without this change. Either by hanging
or by hitting an exception trying to invoke the getter 'length' on null.

R=kustermann@google.com
BUG=

Review URL: https://codereview.chromium.org//934763004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43835 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-18 07:27:48 +00:00
scheglov@google.com 4e34c0d247 Generate artificial hashCode for often used classes.
By avoiding calling Object.hashCode we analyze about 1% faster.

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

Review URL: https://codereview.chromium.org//934113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43832 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-18 01:12:43 +00:00
brianwilkerson@google.com 0e73ada9c2 Use package: URIs for files in lib
R=paulberry@google.com

Review URL: https://codereview.chromium.org//914373004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43827 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 22:47:34 +00:00
paulberry@google.com 5090dd0228 In analyzer, track time spent computing library cycles.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//935673002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43826 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 22:38:23 +00:00
jwren@google.com 89219a623f Fix build, address comments from Brian in previous email.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//931833003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43820 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 20:26:09 +00:00
scheglov@google.com 55a3255070 Return RequestErrorCode.NO_INDEX_GENERATED for search/refactoring requests.
Also remove passing a SearchEngine instance into Quick assists/fixes - they don't use it.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//923103004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43819 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 20:01:45 +00:00
jwren@google.com a46fc6016d Addition of the --no-index flag to the analysis server spec.
R=scheglov@google.com

Review URL: https://codereview.chromium.org//932883002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43816 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 17:55:00 +00:00
kevmoo@google.com 4cc4e28411 status files: trying out new SkipSlow flag
and selectively used SkipByDesign in more places

R=whesse@google.com

Review URL: https://codereview.chromium.org//928523002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43815 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 17:21:39 +00:00
sigurdm@google.com 3ae9ac92c5 Fix error handling in dart2js async-await
BUG= dartbug.com/22372
R=floitsch@google.com

Review URL: https://codereview.chromium.org//925973002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43812 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 14:51:49 +00:00
herhut@google.com da95947849 Make [EnumClassElement.enumValues] a [List].
BUG=
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//935613002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43811 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 14:28:53 +00:00
herhut@google.com f59c01304e Implement Function.apply in the new emitter.
BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//928203003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43807 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-17 11:47:49 +00:00
brianwilkerson@google.com 298747c23e Add properties to the element tree
R=scheglov@google.com

Review URL: https://codereview.chromium.org//934603003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43801 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 21:41:50 +00:00
floitsch@google.com 11cbcf647b Avoid spurious "The compiler crashed" messages in batch mode.
BUG= http://dartbug.com/21926
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//923103003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43799 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 11:52:29 +00:00
floitsch@google.com a2bf14ba1d Support @NoInlining in the ssa-builder.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//912223003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43798 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 11:50:37 +00:00
floitsch@google.com 2ffa638e82 dart2js: fix dart2js crash when getRuntimeTypeArgument was not registered.
R=johnniwinther@google.com, karlklose@google.com

Review URL: https://codereview.chromium.org//923113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43797 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 11:48:17 +00:00
zarah@google.com ffc1bc179b dart2js: register holder of constant in initial value of a static field.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//916413002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43796 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 11:05:30 +00:00
floitsch@google.com a42251a060 dart2js: Track holders better when they are deferred.
R=zarah@google.com

Review URL: https://codereview.chromium.org//915043002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43795 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 09:08:32 +00:00
scheglov@google.com d305f5225d Constant top-level variables should not have setters.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//930703002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43793 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-16 05:36:13 +00:00
danrubel@google.com a56ac2f521 update code completion suggestion relevance based on common usage
BUG=
R=lukechurch@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org//925723002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43792 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-15 21:17:48 +00:00
brianwilkerson@google.com c602cec2e4 Remove unnecessary state transitions
R=scheglov@google.com

Review URL: https://codereview.chromium.org//927903002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43789 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-14 18:07:27 +00:00
zra@google.com 74245deeac Adds a repeatable --url_mapping flag to dartanalyzer
If a Dart file does an import that is 'strange', this flag
allows the imported URI to be understood by the analyzer
so long as an explicit mapping of the URI to an absolute
path to a .dart file is supplied with this flag.

For example, a custom embedding of the Dart VM may refer
to non-SDK libraries through its own URI scheme, e.g.

import 'strange:things';

With the flag and Uri resolver added in this CL, the
analyzer can find the Dart source for 'strange:things':

dartanalyzer ... --url_mapping 'strange:things,/path/to/strange/things.dart'

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//897593005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43788 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-14 07:19:15 +00:00
scheglov@google.com 9e883eb661 Use a slightly faster way to write index data.
It makes initial analysis about 3% faster.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//924943003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43786 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-14 04:30:27 +00:00
scheglov@google.com ef1e368409 Improve code generation for 'bottom' and 'dynamic' arguments.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//924783005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43780 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 21:02:34 +00:00
scheglov@google.com 41ea78aeed Use better hash computer.
This gives us another 2% of performance.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//928613002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43779 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 20:54:28 +00:00
scheglov@google.com c7c2b4584b Replace using runtimeType with 'is'.
This speeds up initial analysis of analyzer + analysis_server on about 4%.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//922383002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43773 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 19:16:49 +00:00
paulberry@google.com 4a5680aec8 Visit async and core library dependencies when computing library cycles.
Previously, we would create the Library objects for the core and async
libraries before calling _computeLibraryDependencies().  As a result,
_computeLibraryDependencies() would skip those libraries when
computing dependencies.  Normally this was not a problem, because the
dependencies surrounding the core and async libraries are so richly
intertwined that all of the necessary files got included in the cycle
anyhow.  However if the starting point of analysis was the
"dart:async" library, some files would be missed entirely, leading to
bogus warnings.

The solution is to let _computeLibraryDependencies() create all the
Library objects, even for the core and async libraries; this way it
won't skip any dependencies.

BUG=dartbug.com/22415
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//921213002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43772 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 18:52:39 +00:00
paulberry@google.com d3c4d57a5b Update status file for bug 22418
TBR=johnniwinther@google.com

Review URL: https://codereview.chromium.org//920043006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43769 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 16:55:17 +00:00
johnniwinther@google.com ff818f49a9 Fix try.
BUG=

Review URL: https://codereview.chromium.org//921173003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43760 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 14:45:58 +00:00
floitsch@google.com 8a095c944b dart2js: remove (broken) support for nsm on native classes.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//897243003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43759 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 14:20:28 +00:00
zarah@google.com b79f2ac673 Initialize 'next' variable in async rewrite when using yield in finally blocks.
R=sigurdm@google.com

Review URL: https://codereview.chromium.org//926433003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43758 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 14:11:48 +00:00
johnniwinther@google.com 1ea67720a6 Refactor SourceFile, SourceFileProvider and SourceLocation.
Main changes in:
  pkg/compiler/lib/src/io/source_file.dart
  pkg/compiler/lib/src/io/source_information.dart
  pkg/compiler/lib/src/source_file_provider.dart

BUG=
R=floitsch@google.com

Review URL: https://codereview.chromium.org//925943002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43756 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 14:02:32 +00:00
zarah@google.com d2babfdb91 dart2js: add special getter to Closure class in new emitter.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//923463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43753 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-13 13:03:03 +00:00
paulberry@google.com 056909e4a7 Rework analysis server performance measurement code.
This change has the following advantages:

- We now keep track of the amount of time spent doing unknown
  activities using its own timer.

- Several pieces of analysis server functionality are now tracked
  (previously we only tracked time spent inside the "analyzer"
  package).

- The set of all performance timers is tracked in PerformanceTag.all
  so that new timers can be added without having to update the code
  that prints out timing measurements.

- Performance measurement code has been integrated with Observatory
  "user tags", so that the same categories measured by the analysis
  server also show up in the VM profiler view.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org//918383002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43745 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 23:54:49 +00:00
sra@google.com 58613e8885 Revert "dart2js: Refactoring, documentation, and a few bugfixes in Namer class."
I'm reverting this CL because it leaves so many bots red.

You should be able to create a branhc, revert this CL, upload, fix the problem, upload again and get a code review of the fixes without the reviewer needing to review the whole CL, just the delta.

These tests fail (many browser bots are red since they run the same test):

python tools/test.py -mrelease -cdart2js -rff --use-sdk --write-debug-log --write-test-outcome-log --clear_browser_cache --dart2js-batch -t60 html/custom_element_method_clash_test

python tools/test.py -mrelease -rdrt --use-sdk --write-debug-log --write-test-outcome-log --clear_browser_cache --checked -t240 try/web/incremental_compilation_update_test

TBR=asgerf@google.com

Review URL: https://codereview.chromium.org//917083003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43739 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 20:33:28 +00:00
scheglov@google.com 86cfaee2ed Issue 20050. Show corrections for errors.
R=brianwilkerson@google.com, danrubel@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=20050

Review URL: https://codereview.chromium.org//923623002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43736 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 19:17:13 +00:00
brianwilkerson@google.com 01d3621fa3 Stop re-analyzing everything when adding a file
R=scheglov@google.com

Review URL: https://codereview.chromium.org//909493004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43734 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 19:03:00 +00:00
scheglov@google.com 865b217511 Issue 22381. Fix for navigating to constructor from redirecting factory constructor.
R=brianwilkerson@google.com
BUG= https://code.google.com/p/dart/issues/detail?id=22381

Review URL: https://codereview.chromium.org//921833002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43731 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 17:58:29 +00:00
brianwilkerson@google.com d7a69a2912 Flush entries for unreferenced sources
R=scheglov@google.com

Review URL: https://codereview.chromium.org//924563002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43730 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 17:50:40 +00:00
kustermann@google.com f5e64533a3 Fix multipart transformer in package:mime
The error codition occures in the following scenario:
A multipart transformer returns a new multipart, that part is listened on, but
the subscription for more parts is cancelled. This used to cause cancellation of
the byte stream into the multipart parser, which caused the first part to never
be read completely.

R=lrn@google.com, sgjesse@google.com

Review URL: https://codereview.chromium.org//874223002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43726 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 13:51:18 +00:00
asgerf@google.com abc37952d4 dart2js: Refactoring, documentation, and a few bugfixes in Namer class.
See long doc comment in namer.dart.

BUG=
R=floitsch@google.com

Committed: https://code.google.com/p/dart/source/detail?r=43588

Reverted: https://code.google.com/p/dart/source/detail?r=43590

Review URL: https://codereview.chromium.org//891673003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43724 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 13:43:25 +00:00
sigurdm@google.com 4f0f538076 Let the CPS ir builder bail out when given a non-sync function.
BUG=
R=johnniwinther@google.com, karlklose@google.com

Review URL: https://codereview.chromium.org//912293004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43720 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 09:47:48 +00:00
sigurdm@google.com 4150b44a24 Fix checked-mode return for async-functions.
BUG= dartbug.com/22332
R=floitsch@google.com

Review URL: https://codereview.chromium.org//914143002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43719 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 09:35:44 +00:00
sra@google.com 5852e9ef90 Redo "Steps towards making dart2js JS AST templates an indepentent library."
Adds fix for dart2js_incremental

TBR=floitsch@google.com

Review URL: https://codereview.chromium.org//917033002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43712 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 01:58:01 +00:00
sra@google.com ba909cfb3e Revert "Redo "Steps towards making dart2js JS AST templates an indepentent library.""
Investigating failure of dart2js_incremental.

TBR=floitsch@google.com

Review URL: https://codereview.chromium.org//922463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43710 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 01:18:03 +00:00
brianwilkerson@google.com 06b1a16819 Include source info in status AST dump
R=scheglov@google.com

Review URL: https://codereview.chromium.org//922453002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43708 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 00:41:38 +00:00
scheglov@google.com 3f5da18831 Add packageUriResolver before ResourceUriResolver.
Otherwise execution.mapUri always restores file:// URI.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//922433002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43705 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-11 23:06:48 +00:00