Commit Graph

1367 Commits

Author SHA1 Message Date
Jacob Richman 2ed6fbe9e7 minor code cleanup
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1002443002
2015-03-11 08:36:23 -07:00
Sigmund Cherem a6befe3a1d Add dart_core.js (fixes #89)
R=vsm@google.com

Review URL: https://codereview.chromium.org/986023003
2015-03-10 18:31:32 -07:00
Sigmund Cherem 6d9564b4ff Support browser caching using hashes in serverMode (fixes #93, fixes #92).
Now the HTML can include a hash in the URL for cachable resources, and the serve knows how to include cache-control headers.

In the process of doing so, I had to change a couple things that made it possible to fix #92 as well (producing different output in the command-line than in server mode).

R=vsm@google.com

Review URL: https://codereview.chromium.org/993213003
2015-03-10 18:27:23 -07:00
Vijay Menon 135c1e586a Small fixes
I hit these compiling angular.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/992973002
2015-03-10 10:25:35 -07:00
Vijay Menon 74476b5e4c Log the runtime type of messages
This makes is a little easier to investigate errors.

R=sigmund@google.com

Review URL: https://codereview.chromium.org/993513005
2015-03-09 11:46:27 -07:00
Sigmund Cherem 4e4dd98e6b Add widget to display errors, and report graph errors correctly.
This fixes the compiler so that all error messages in dependency_graph are reported via the reporter and unifies how errors are constructed in other places as well. With all errors reported together, we use a widget (adapted from polymer) to display the error messages as part of the app in server mode.

R=vsm@google.com

Review URL: https://codereview.chromium.org/988483006
2015-03-09 11:37:22 -07:00
Sigmund Cherem ca80f2c473 Add JavaScriptSourceNode to represent runtime libraries (fixes #85)
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/986723002
2015-03-09 11:33:46 -07:00
Sigmund Cherem 0991bea1ef Allow changing a file from a part to a library, and viceversa.
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/983553002
2015-03-09 10:59:18 -07:00
Vijay Menon 122a190387 Make inference defaults consts for easy tweaking
R=sigmund@google.com

Review URL: https://codereview.chromium.org/988743003
2015-03-06 12:38:23 -08:00
Vijay Menon 448729446b Disable infer-from-overrides by default
See: https://github.com/dart-lang/dev_compiler/issues/86

R=sigmund@google.com

Review URL: https://codereview.chromium.org/980103002
2015-03-05 12:27:39 -08:00
John Messerly 322ab47e1f cleanup: js_codegen now returns a js_ast.Program
For some reason we were emitting a Block and then doing extra work to
avoid emitting the braces. Program handles this already.

R=sigmund@google.com

Review URL: https://codereview.chromium.org/960353003
2015-03-04 16:52:06 -08:00
Vijay Menon 8df5b06aac Fix increment on nullable
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/977153002
2015-03-04 12:56:02 -08:00
John Messerly 6e824067a3 rename ddc -> dev_compiler, fixes #84
R=sigmund@google.com

Review URL: https://codereview.chromium.org/967933005
2015-03-04 11:12:19 -08:00
Vijay Menon f9909f0d07 Flesh out dynamic invocation code
This gets sunflower working with ignore-types.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/961513002
2015-03-04 10:13:21 -08:00
Sigmund Cherem 7dd29efd8f Initial cut for a development server
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/973433003
2015-03-04 09:40:06 -08:00
Vijay Menon 946676554b Make int and double nullable by default
See patch set 1 for the initial step back and patch set 2 to try to get some of this back.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/977613002
2015-03-03 12:08:30 -08:00
Sigmund Cherem f7b7f43d28 Fixing layout in js output (use full paths rather than just the library name)
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/968273002
2015-03-03 09:05:09 -08:00
John Messerly 77e62cc7fb implement private members, fixes #74
naturally, lots of things to iterate on, but this expresses the key idea (per-library ES6 symbols for privacy).

R=vsm@google.com

Review URL: https://codereview.chromium.org/963343002
2015-03-03 06:44:25 -08:00
John Messerly a3aebf03ed fix dummy setters -- grammar requires an identifier
R=vsm@google.com

Review URL: https://codereview.chromium.org/974703003
2015-03-03 06:42:04 -08:00
John Messerly b8fcd8cb42 rename as helper to make tools happy
WebStorm ES6 support treats `as` as a keyword. Not sure why, as I don't see it in any ES6 specs, even under "future reserved words".

R=sigmund@google.com

Review URL: https://codereview.chromium.org/971823002
2015-03-02 11:03:31 -08:00
John Messerly 5d52de79e1 implement rethrow
R=sigmund@google.com

Review URL: https://codereview.chromium.org/969783002
2015-03-02 09:49:17 -08:00
John Messerly a260ce7a62 fixes #69, avoid module name inside module scope
R=vsm@google.com

Review URL: https://codereview.chromium.org/967713002
2015-03-02 07:10:55 -08:00
Sigmund Cherem 212bb2af11 Fix reporter
R=vsm@google.com

Review URL: https://codereview.chromium.org/968483002
2015-02-27 15:36:34 -08:00
John Messerly 4d7aa8e397 add source maps support, fixes #50
R=sigmund@google.com

Review URL: https://codereview.chromium.org/965033002
2015-02-27 15:17:19 -08:00
John Messerly bd06d9e7f4 support the JS builtin
* fix a few cases where we regressed js_ast parser interpolations
* infer correct static type for JS call expressions

R=vsm@google.com

Review URL: https://codereview.chromium.org/962083002
2015-02-27 11:28:41 -08:00
Vijay Menon 6859e76565 DDC fixes on DDC
This isn't everything by far, but most issues local to DDC itself that
we mark error right now.  There are a bunch of down casts around
literals and not-quite-generic methods.

R=leafp@google.com

Review URL: https://codereview.chromium.org/963063003
2015-02-27 10:16:14 -08:00
John Messerly 2a5adfe05a fix analysis messages
seen on the latest dev channel editor w/ analysis server

R=sigmund@google.com

Review URL: https://codereview.chromium.org/962213003
2015-02-27 09:06:13 -08:00
John Messerly a3bbe2a291 cleans up sdk patching so we no longer have unresolved names
js_codegen.dart and patch_sdk.dart are the only human-changed files.

This also pulls in dart:isolate, which is depended on from one of the implementation libraries

This also moves dart:_* files back to `lib/_internal/compiler/js_lib/` because there's where libraries.dart points to, and hence Analyzer looks for them there. Alternatively, we could put them somewhere like `tool/input_sdk_internal` and then copy that file into the right path.

R=vsm@google.com

Review URL: https://codereview.chromium.org/955513008
2015-02-26 17:58:13 -08:00
Leaf Petersen 40688929e5 Typecheck map and list literals
We were not checking the elements of list and map literals against the declared type of the literal.

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/957013002
2015-02-26 16:45:15 -08:00
Vijay Menon 50753e3a47 Typecheck constructor initializers properly
R=leafp@google.com

Review URL: https://codereview.chromium.org/959003003
2015-02-26 16:19:27 -08:00
Sigmund Cherem 9369b3e981 Fix new line breaks on }
R=leafp@google.com

Review URL: https://codereview.chromium.org/959073002
2015-02-26 14:32:48 -08:00
Sigmund Cherem 2ffd89471a Disable formatting and add new-lines to make tests faster.
R=vsm@google.com

Review URL: https://codereview.chromium.org/963593002
2015-02-26 13:13:56 -08:00
Sigmund Cherem 9b00a0ecd2 Move argument parsing also to the options.dart file, adds fields for flags we were not storing in the CompilerOptions object.
R=vsm@google.com

Review URL: https://codereview.chromium.org/961503002
2015-02-25 16:40:20 -08:00
John Messerly b82e83f383 use js_ast instead of strings to generate JS
fixes https://github.com/dart-lang/dev_compiler/issues/61

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

Review URL: https://codereview.chromium.org/949383003
2015-02-25 11:14:19 -08:00
Sigmund Cherem e57c960817 rename package:ddc to package:dev_compiler
BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/954773003
2015-02-24 17:01:15 -08:00
Vijay Menon 5c1c9c2381 Add LICENSE and corresponding headers
Fix expectations where line number has changed.

R=dgrove@google.com

Review URL: https://chromereviews.googleplex.com/158257013
2015-02-24 15:02:26 -08:00
Sigmund Cherem 6ca4479a85 Undo rename of analyzer now that we are unforked
BUG=

Review URL: https://chromereviews.googleplex.com/158907014
2015-02-24 10:06:47 -08:00
John Messerly 7dbb2c44ef Add js_ast package at lib/src/js
This is a clean copy so it will be easier to review my changes for ES6. This is r43816 from SVN pkg/compiler/lib/src/js, with dart2js internal files removed (js.dart, rewrite_async.dart)

As with analyzer, we'll have a fork so we can iterate faster. But we'll upstream the changes.

R=sigmund@google.com

Review URL: https://chromereviews.googleplex.com/160777013
2015-02-24 08:41:14 -08:00
Vijay Menon ee887b1ed9 Flag to ignore types during codegen
R=jmesserly@google.com, leafp@google.com

Review URL: https://chromereviews.googleplex.com/161647013
2015-02-20 17:06:01 -08:00
Sigmund Cherem 608906db87 Fixes needed so we work correctly with the latest analyzer
Review URL: https://chromereviews.googleplex.com/157367013
2015-02-20 15:39:28 -08:00
Vijay Menon ddce235e3d Set nonnullable types by flag
R=sigmund@google.com

Review URL: https://chromereviews.googleplex.com/156397013
2015-02-20 14:34:44 -08:00
Sigmund Cherem d2834b49a6 Reenable type promotion
R=jmesserly@google.com, vsm@google.com

Review URL: https://chromereviews.googleplex.com/159667013
2015-02-20 13:56:46 -08:00
Sigmund Cherem 1a83c63a08 Small changes to reduce modifications in analyzer
R=vsm@google.com

Review URL: https://chromereviews.googleplex.com/160677013
2015-02-20 13:48:14 -08:00
John Messerly 6c7cd9b731 Begin to handle some of the *_patch.dart files
Moves: test/sdk --> tool/input_sdk_src
Also moves: test/sdk/lib/_internal/js_lib --> tool/input_sdk_patch
we'll eventually need to customize that code

Adds tool/patch_sdk.dart, an offline transformation step that produces: test/generated_sdk

Essentially this merges the "external" declarations and the @patch syntactically. There's a comment in tool/patch_sdk.dart explaining the rationale behind this approach.

There's still *lots* to do in the generated code. This does none of that. The only new code is tool/patch_sdk.dart and the minimum changes to test/codegen_test.dart and js_codegen.dart to get test.sh running and debuggable.

Tracking bug for SDK is https://github.com/dart-lang/dart-dev-compiler/issues/58

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

Review URL: https://chromereviews.googleplex.com/157137013
2015-02-20 08:58:01 -08:00
Sigmund Cherem c1f84cfada Add more flags, fix missing initialization of a couple flags
BUG=
R=vsm@google.com

Review URL: https://chromereviews.googleplex.com/150577015
2015-02-19 16:13:21 -08:00
John Messerly 0ddedfb3da fix incorrect DartObject reference
Review URL: https://chromereviews.googleplex.com/156337013
2015-02-19 09:32:21 -08:00
Vijay Menon 7bb76996ea Fix maybe nullable check when no nonnullable types
R=leafp@google.com

Review URL: https://chromereviews.googleplex.com/154527013
2015-02-19 08:57:27 -08:00
Sigmund Cherem d78ecd3241 Infer consts and final fields based on RHS
R=vsm@google.com

Review URL: https://chromereviews.googleplex.com/142457013
2015-02-19 08:34:01 -08:00
Sigmund Cherem ce3dd48740 Accept compilng HTML files
R=jmesserly@google.com, vsm@google.com

Review URL: https://chromereviews.googleplex.com/153157013
2015-02-18 16:48:56 -08:00
John Messerly 7c1ab1f04d work around issue #51, super restrictions in V8
Adds an explicit "extends dart.Object", which we probably want for other reasons (e.g. toString, runtimeType, hashCode)

Attempts to recover some readability by tweaking the name of the initialize functions. This closes #51, but we should open another tracking bug because there are concerning aspects to this workaround.

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

Review URL: https://chromereviews.googleplex.com/150417015
2015-02-18 16:27:32 -08:00