Jacob Richman
2dfc37b9ed
Use the great new Devtools API for custom formatters. Now Dart objects are now generally as easy to view in the debugger in Chrome using dev_compiler as they are using Dartium. There are still some edge cases that need to be polished but most of the general property display and type information is done.
...
Checkpoint in devtools debugger support.
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1625563002 .
2016-01-22 13:28:28 -08:00
Olivier Chafik
3886194414
Generate _runtime.js from dart ( https://github.com/dart-lang/dev_compiler/issues/310 )
...
The following part files were ported from the original .js (lib/runtime/dart/_foo.js -> input_sdk/private/foo.dart):
- input_sdk/private/rtti.dart
- input_sdk/private/types.dart
- input_sdk/private/classes.dart
- input_sdk/private/errors.dart
- input_sdk/private/generators.dart
- input_sdk/private/operations.dart
- input_sdk/private/runtime.dart
Notes:
- Introduced genericTypeConstructor intrinsic: `JS('', '#(type)', genericTypeConstructor(List))` generates `core.List$(type)`
- Used new JS quasiquotes everywhere
- Depends on new internal `@JSExportName` annotation to alias symbols like dart.{as, is, const, assert, export, implements, throw, async, dynamic, void} (see https://codereview.chromium.org/1580413002/ )
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1530563003 .
2016-01-21 00:45:31 +00:00
John Messerly
cc2f706ded
partial fix for #414 , nSM message for dcall should show correct target
...
R=vsm@google.com
Review URL: https://codereview.chromium.org/1601353002 .
2016-01-19 13:33:54 -08:00
Vijay Menon
077465ddc8
Fixes #412
...
Adds Screen, Navigator.language, and HTMLHtmlElement to dart:html
R=jacobr@google.com
Review URL: https://codereview.chromium.org/1607073002 .
2016-01-19 13:31:12 -08:00
John Messerly
5b45c6ef87
partial fix for #414 , avoid dcall in _convertToDart
...
this doesn't fix the root call, but still, it's nice to clean up this dead code
R=vsm@google.com
Review URL: https://codereview.chromium.org/1609843002 .
2016-01-19 12:02:06 -08:00
Olivier Chafik
51c3bcbe14
Add a @JSExportName annotation for internal use in the runtime (use it to export dart.assert instead of assert_)
...
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1580413002 .
2016-01-19 17:51:18 +00:00
Jacob Richman
2a1cbc829c
Fix for html_common
...
BUG=
R=leafp@google.com
Review URL: https://codereview.chromium.org/1583943002 .
2016-01-13 11:13:59 -08:00
Vijay Menon
e907ebb106
Fixes #408
...
This is a bug on JSON.decode. This should match the hand fix in #404 .
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1579223002 .
2016-01-12 14:17:40 -08:00
Vijay Menon
6e8375ed0d
Added Comment to dart:html
...
R=jacobr@google.com
Review URL: https://codereview.chromium.org/1577423002 .
2016-01-12 14:16:32 -08:00
Vijay Menon
2a3549a8f5
Fixes #410
...
This generates calls to methods on may-be-native types property in generic methods.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1580803002 .
2016-01-12 09:47:44 -08:00
Vijay Menon
3006795312
Support source maps in server mode
...
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1530133003 .
2016-01-07 13:22:03 -08:00
Leaf Petersen
1c119bebb2
Update to latest analyzer
...
Fixes https://github.com/dart-lang/dev_compiler/issues/393
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1554683002 .
2016-01-05 15:58:50 -08:00
Devon Carew
ac183ca086
Update _operations.js
2015-12-17 17:11:59 -08:00
Olivier Chafik
3307317454
JS: Format if statements with no else on a single line
...
To match Dart style:
https://www.dartlang.org/effective-dart/style/#do-use-curly-braces-for-all-flow-control-structures
(also, that's the style we use in our .js runtime files, so that will help with diffs of the js->dart runtime migration from https://github.com/dart-lang/dev_compiler/issues/310 )
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1524843002 .
2015-12-16 19:45:19 +00:00
Vijay Menon
e29437a374
First cut of mini dart:html.
...
This gets us going on Angular.
Note, this is auto-generated from my hacked up versions of the dom scripts. Still tackling the long tail of sdk errors.
R=jmesserly@google.com , leafp@google.com
Review URL: https://codereview.chromium.org/1528613004 .
2015-12-15 13:08:17 -08:00
Vijay Menon
86ef3092a1
Run browser tests on Atom/Electron
...
Tested on travis here: https://travis-ci.org/dart-lang/dev_compiler/builds/96609818
Note, electron shows up in the log as: Chrome 47.0.2526
This fixes #395
R=ochafik@google.com
Review URL: https://codereview.chromium.org/1521283003 .
2015-12-14 06:25:12 -08:00
Olivier Chafik
ee793284ae
Compile the sdk with --no-destructure-named-params ( #396 )
...
This is so the Atom plugin doesn't need to regenerate the SDK (it still
needs to be compiled with --no-destructure-named-params, though, until
Atom is updated to more ES6-compliant node/Chrome).
2015-12-11 17:56:41 +00:00
John Messerly
53842c06ab
Merge pull request #394 from dart-lang/fix-analyzer-version
...
Pin analyzer version to 0.26.2+1 to unbreak the build.
2015-12-09 08:35:58 -08:00
Olivier Chafik
7bc83534aa
Special-case top-level final JS fields to make them non-lazy
...
(follow-up to John's suggestion in https://codereview.chromium.org/1486473002/ )
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1487213002 .
2015-12-09 15:10:33 +00:00
Olivier Chafik
c64b7bbe9e
Pin analyzer version to 0.26.2+1 (newer versions break the build, see issue #393 )
2015-12-09 13:29:58 +00:00
Olivier Chafik
07d3998cdc
Before (for f(a, {b, c: c_default})):
...
function f(a, opts) {
let b = opts && 'b' in opts ? opts.b : null;
let c = opts && 'c' in opts ? opts.c : c_default;
...
After:
function f(a, {b = null, c = c_default} = {}) {
...
Note:
- Still reverting to old code when any parameter clashes with reserved JS names (see discussion in https://github.com/dart-lang/dev_compiler/issues/392 )
- When a parameter clashes with a Object.prototype property, using a clean default opts value (Object.create(null)).
- Passing opts through in aliased constructors, both for speed/concision and correctness (since default param value semantic is weird there)
BUG=
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1484263002 .
2015-12-02 21:56:35 +00:00
Vijay Menon
43760b2956
Expand generic type whitelist for function application checks
...
Hitting this in Angular - reusing the cast whitelist.
R=leafp@google.com
Review URL: https://codereview.chromium.org/1485353002 .
2015-12-01 16:05:50 -08:00
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
Olivier Chafik
82f50549cb
Use const for const/final top-levels, types, symbols.
...
BUG=
R=jmesserly@google.com , vsm@google.com
Review URL: https://codereview.chromium.org/1483813002 .
2015-12-01 01:06:13 +00:00
Vijay Menon
a8c8bdeb58
Remove unnecessary/incorrect bind
...
Fixes #381
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1484003004 .
2015-11-30 14:29:11 -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
John Messerly
749d820ce6
fix escape of $ in template strings
...
https://github.com/dart-lang/dev_compiler/issues/379
R=vsm@google.com
Review URL: https://codereview.chromium.org/1426243002 .
2015-11-02 10:32:49 -08: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
734aeb29e4
Fix the error message widget
...
This had bit-rotted away.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org/1419953002 .
2015-10-27 11:31:23 -07: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
0cdc8c28fb
Revert "Qualified exports and inheritance for Closure"
2015-09-25 11:31:25 -07:00
John Messerly
2d5525fc4a
Merge pull request #319 from dart-lang/closure-qualify
...
Qualified exports and inheritance for Closure
2015-09-25 10:53:37 -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
Devon Carew
5baea1b7e7
make dev_compiler slightly happier with dartdoc
2015-09-16 18:03:52 -07:00
John Messerly
ff1b78ca42
fix a few more codegen issues:
...
* don't generate script tag
* handle U+2028 and U+2029
* handle name conflict with constructor
R=vsm@google.com
Review URL: https://codereview.chromium.org/1347453002 .
2015-09-14 17:06:28 -07:00
Olivier Chafik
58f1ca9259
Qualified exports and inheritance for Closure (fixes core.Object issue)
2015-09-14 14:07:02 +01:00
John Messerly
637c2c83de
fixes #314 , super method tear offs
...
R=leafp@google.com
Review URL: https://codereview.chromium.org/1310513013 .
2015-09-10 17:18:21 -07: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
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
Olivier Chafik
59cf5dd893
Output some basic type annotations for the Closure Compiler when --closure is set.
2015-08-27 16:30:20 +01:00
John Messerly
74c760066b
implement null aware ops, fixes #249
...
this also implements multitest support, which fixes #280
Fixes some other preexisting bugs:
* MetaLets did not simplify themselves correctly in some nested cases
* Library prefixed identifiers did not work as lvalues in opassign
* dsetindex/dput/[]= methods did not return a value
* checker did not correctly handle invalid constructor field initializers
* cascades did not correctly work with method invocations(?)
* postfix ++/-- did not correctly generate lvalues in some cases
The good news: because this reuses on our existing lvalue/metalet helpers, it managed to flush out a lot of bugs in other features that use them.
R=vsm@google.com
Review URL: https://codereview.chromium.org/1316723003 .
2015-08-25 15:13:18 -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