Commit Graph

699 Commits

Author SHA1 Message Date
Vijay Menon 8fb3eb3362 Fixes for exports
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1488273002 .
2015-12-01 15:54:54 -08:00
Olivier Chafik 6410051fd0 Convert dart_utils.js to input_sdk/lib/_internal/utils.dart (#310)
BUG=
R=jmesserly@google.com, vsm@google.com

Review URL: https://codereview.chromium.org/1486473002 .
2015-12-01 19:02:43 +00:00
Vijay Menon 7f8505512e More mirrors
A little more implementation and workarounds for Angular.  See #199.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1489043002 .
2015-12-01 11:01:28 -08:00
Vijay Menon 5b2e5f8e30 Regen DDC files
These are due to the upgrade to analyzer 0.26.3

TBR=jmesserly@google.com,leafp@google.com

Review URL: https://codereview.chromium.org/1486753003 .
2015-11-30 13:39:16 -08:00
John Messerly 2ede0ed01f Merge pull request #388 from jonaskello/babel-workarounds
Babel workarounds
2015-11-18 16:04:09 -08:00
Jonas Kello 958b5698a6 Babel workaround 2015-11-19 01:03:15 +01:00
Jacob Richman d0cec4ac47 Switch ddc to use @JS instead of @JSName. Also update dart:js to support new public methods added for 1.13
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1448993002 .
2015-11-16 12:55:30 -08:00
Vijay Menon bceee1d180 Fix field override error
This fixes the following error reported by https://codereview.chromium.org/1430953004/ (not landed yet):

severe: [InvalidFieldOverride] Field declaration _ControllerSubscription<T>._controller cannot be overridden in _BroadcastSubscription. (dart:async/broadcast_stream_controller.dart, line 40, col 3)

Devon: this should address https://github.com/flutter/atom-flutter-dev/issues/2

R=leafp@google.com

Review URL: https://codereview.chromium.org/1413303005 .
2015-11-06 14:13:20 -08:00
Olivier Chafik 5337fc001e Compile package:js.{rest, spread} helpers.
Note: need new package:js release before merging this in (https://github.com/dart-lang/sdk/issues/24623). Maybe it's time to think again about sneaking JsName + JsPeerInterface into it? (https://github.com/dart-lang/dev_compiler/issues/135)

BUG=https://github.com/dart-lang/dev_compiler/issues/310
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1424133007 .
2015-10-29 18:44:11 +00:00
Olivier Chafik 7add882a7a Move runtime js files down to lib/runtime/dart
Prepare for writing all the runtime in Dart:
- Move js runtime files to lib/runtime/dart (dart_runtime.js ->
dart/_runtime.js),
- Use rest params instead of arguments slicing in a couple of places.

BUG=https://github.com/dart-lang/dev_compiler/issues/310
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1413683006 .
2015-10-29 16:44:49 +00:00
Vijay Menon 2358366f56 Rewire DDC to use the analyzer task model
This is WIP - not quite ready for review.

Not all tests are passing yet.  Most checker and inference tests are passing, but about a quarter are failing - need to look.

The non-runtime changes under lib along with test/testing.dart are the only real changes.

We seem to be losing some type info - lots of new casts - but I see at least one removed.

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

Review URL: https://codereview.chromium.org/1355893003 .
2015-10-08 13:42:53 -07:00
John Messerly 47bab055d7 [js] simplify qualified names
R=vsm@google.com

Review URL: https://codereview.chromium.org/1368153002 .
2015-09-25 13:03:59 -07:00
John Messerly 9383237f36 additional SDK fixes. This gets all of them, once we upgrade to new analyzer
there's still a lot of warnings, those are next up

R=leafp@google.com

Review URL: https://codereview.chromium.org/1347153005 .
2015-09-18 17:11:21 -07:00
John Messerly 28f1e80cd6 fix some errors in our SDK, mostly around numbers, see issue #103
also improved codegen of JSNumber's methods

R=leafp@google.com

Review URL: https://codereview.chromium.org/1348453004 .
2015-09-18 17:10:02 -07:00
John Messerly 6038aa2955 Merge pull request #334 from dart-lang/finish_rename
finish rename of devc.dart to dartdevc.dart
2015-09-17 08:22:39 -07:00
Devon Carew 01ffd2684d finish rename of devc.dart to dartdevc.dart 2015-09-16 21:22:57 -07:00
Olivier Chafik 56a534ae65 Speed Travis CI up with some caching & faster fails 2015-09-12 17:55:46 +01:00
Vijay Menon 2ef54c946b Fixes for Angular
R=leafp@google.com

Review URL: https://codereview.chromium.org/1324693004 .
2015-09-02 13:39:53 -07:00
Olivier Chafik 8ebe4c8a09 Merge pull request #286 from dart-lang/closure-annotations
Output Closure annotations when --closure (very experimental feature)
2015-09-02 18:34:54 +01:00
John Messerly 798076dbc8 make build_sdk more incremental
saves about 3s off a typical rebuild where nothing changed

R=vsm@google.com

Review URL: https://codereview.chromium.org/1327573002 .
2015-09-02 08:43:00 -07:00
Vijay Menon b0abb3b302 Some preliminary support for quasi-generics
This just expands John's earlier hack on min/max.  No downward
inference, etc, but it captures some simple cases.  Worthwhile?

Testing whether this makes much of a difference on our larger code bases.

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

Review URL: https://codereview.chromium.org/1317933005 .
2015-08-31 09:56:41 -07:00
John Messerly 9c832d6a6b makes tests faster, see #304
this doesn't completely address the issue, but it knocks off some of the time.
also attempt to stabilize error message order.

R=vsm@google.com

Review URL: https://codereview.chromium.org/1321103002 .
2015-08-28 10:14:16 -07:00
Olivier Chafik 59cf5dd893 Output some basic type annotations for the Closure Compiler when --closure is set. 2015-08-27 16:30:20 +01:00
Vijay Menon 604b199ed3 Make implicit casts hints
This appears to cut out about 1/3 of the strong mode errors reported
in angular2.  The actual cases removed that I looked at seem fine - e.g., we may inject an implicit cast, but it'll work fine at runtime.

Fixes #302

R=leafp@google.com

Review URL: https://codereview.chromium.org/1310053005 .
2015-08-26 15:01:59 -07:00
Vijay Menon 50eb282f87 Infer parameter types on overrides
Fixes #105

This overlaps with brian's recent CL moving override inference logic.  If this looks good, we'll need to move it over as well.

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

Review URL: https://codereview.chromium.org/1311863005 .
2015-08-25 10:45:08 -07:00
John Messerly e420033f7c sort errors so they appear in stable order
should be the same order analyzer_cli uses

R=vsm@google.com

Review URL: https://codereview.chromium.org/1299993004 .
2015-08-20 08:59:48 -07:00
Vijay Menon 8f9c38b128 Enable is and as checks on non-ground types
Failures generate a StrongModeError.  Fixes #236.  Partially addresses #238.

Some issues to do:
- We're too eager to throw a StrongModeError.  E.g., <int>[] is List<String> will throw.
- We don't differentiate between implicit and explicit casts.

R=leafp@google.com

Review URL: https://codereview.chromium.org/1298893003 .
2015-08-19 06:15:04 -07:00
Vijay Menon c0100939c2 Implement more of dart:mirrors
This unblocks angular.

See #199

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1252953003 .
2015-08-07 12:40:34 -07:00
John Messerly cbe23ee268 implement exports, fixes #141
R=vsm@google.com

Review URL: https://codereview.chromium.org/1263583005 .
2015-08-04 17:23:13 -07:00
John Messerly 2535238ee8 fixes #276, path manipulation issues on windows. Also fixes server mode
R=leafp@google.com

Review URL: https://codereview.chromium.org/1270993002 .
2015-08-04 16:34:53 -07:00
John Messerly 8422d7ab48 fix language_tests.js to use strict mode
we weren't running a bunch of tests on the bots :|
amazingly, none were broken yet
this also fixes karma.conf log level, and disables some spammy prints from one of the tests

R=vsm@google.com

Review URL: https://codereview.chromium.org/1257233008 .
2015-08-03 14:08:28 -07:00
Olivier Chafik 8426fa9e17 Added bin/devrun.dart, which runs DDC's output with iojs or d8 (issue #225) 2015-07-29 14:17:56 +01:00
John Messerly 49d101c1c4 format with dart_style 0.2.0-rc.3
this unblocks null aware ops

R=vsm@google.com

Review URL: https://codereview.chromium.org/1266483003 .
2015-07-28 18:19:55 -07:00
John Messerly 9137a4538c fixes #221, initial sync*, async, async* implementation
also fixes #270

R=vsm@google.com

Review URL: https://codereview.chromium.org/1243503007 .
2015-07-28 16:52:23 -07:00
John Messerly 486f8dc70e restore arrow function bind this workaround
to help out https://github.com/dart-lang/dev_compiler/pull/266
it seems io.js is using a V8 build from right before this was fixed

R=vsm@google.com

Review URL: https://codereview.chromium.org/1263593003 .
2015-07-28 14:51:31 -07:00
John Messerly 3996aaf3d4 fix for bin/devc relative path
R=vsm@google.com

Review URL: https://codereview.chromium.org/1243693002 .
2015-07-23 09:55:21 -07:00
John Messerly 26528756bd some fixes for --strong warnings
I didn't go all the way, in case we want to change some of these. Thoughts?

R=leafp@google.com

Review URL: https://codereview.chromium.org/1245013002 .
2015-07-22 15:37:55 -07:00
John Messerly 8aa0f1c695 fix code coverage to work on dev channel
R=vsm@google.com

Review URL: https://codereview.chromium.org/1236493003 .
2015-07-22 14:50:23 -07:00
John Messerly 60aba749ca fixes #219, able to compile multiple entry points
also speeds up codegen_test by reusing the analysis context
BatchCompiler is pretty close to how analyzer_cli works now (other than missing features)

R=vsm@google.com

Review URL: https://codereview.chromium.org/1235503010.
2015-07-16 17:41:33 -07:00
John Messerly c4267e5d35 analyzer fixes
found these in the "dart analysis" tool window
(after excluding test files and such)

R=vsm@google.com

Review URL: https://codereview.chromium.org/1239803005.
2015-07-15 10:00:20 -07:00
John Messerly bc4e0f2a38 fixes #6, refactor to use AnalysisError/Listener throughout dev_compiler
Main goal here was to get rid of the enter/exit compilation unit tracking, to allow further Compiler/Server refactoring. We can get the Uri/LineInfo/contents off Source, which AnalysisError already has
SummaryReporter is now fairly generic.

TODOs for the future:
* figure out what to do about ErrorCodes, in particular dev_compiler prefix feels off.
* skip the intermediate StaticInfo types? They're really just builders now for AnalysisError.
* don't classify all existing messages as "AnalyzerError" ... just print them ...
* skip logger. For our command line program, stdout is part of its "API", IMO it shouldn't use logging for those messages. Consider Pub, which uses stdout/err for its messages, and uses logging for more detailed troubleshooting.

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

Review URL: https://codereview.chromium.org/1230903002.
2015-07-10 10:15:08 -07:00
John Messerly f17187f3aa fix for 1.12.0-dev SDK and 0.25.1 analyzer breaking changes
unfortunately we can't run on stable anymore

R=vsm@google.com

Review URL: https://codereview.chromium.org/1228063003.
2015-07-09 10:11:32 -07:00
John Messerly 139483d395 create another copy of libraries.dart for 1.12-dev SDK
also adds .packages to .gitignore
Note: this isn't enough to fix things yet, it seems 0.25.1 analyzer has other breaking changes

R=vsm@google.com

Review URL: https://codereview.chromium.org/1231643009.
2015-07-09 09:36:52 -07:00
Vijay Menon a458150539 Run canary tests in presubmit
This partially addresses #128

R=leafp@google.com

Review URL: https://codereview.chromium.org/1208413003
2015-06-26 10:03:11 -07:00
John Messerly c2e65df22c fixes #168, dart:js implementation with a test
R=vsm@google.com

Review URL: https://codereview.chromium.org/1200233004.
2015-06-25 13:18:52 -07:00
John Messerly 8d76f5f34e have build/test scripts automatically update baselines
we already have to review them, so running a diff and failing the rest of the test pass seems unhelpful. Instead operate like our generated SDK does, and update in place

R=vsm@google.com

Review URL: https://codereview.chromium.org/1188173003.
2015-06-17 09:05:59 -07:00
John Messerly 7d8b38a236 js_ast: implement rest/spread parsing
R=vsm@google.com

Review URL: https://codereview.chromium.org/1183033004.
2015-06-16 16:10:05 -07:00
Vijay Menon d48b153193 dart:mirrors
This is a very bare bones version - just enough to get angular running.

See #199

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1186683005.
2015-06-15 16:22:54 -07:00
John Messerly b769aa5fbc fixes #25, most analyzer errors were not computed
It helps to call computeErrors ;)

R=vsm@google.com

Review URL: https://codereview.chromium.org/1183733004.
2015-06-15 08:55:59 -07:00
John Messerly d1a4c5dc94 first step for #168, adds dart:js impl to the build
the code most likely does not work yet. But this gets it in so we can iterate more easily, from a clean baseline.

R=jacobr@google.com

Review URL: https://codereview.chromium.org/1179643005.
2015-06-12 15:17:38 -07:00