- change scopes to have either variable or model, but not both
- change lookup to aggressively read from the model, and not use hasGetter
- trap all errors (not just eval errors), so that rendering is smooth.
- change error reporting to fire an async error. Now there is no need for
using logger/registering the logger.
- fix test in polymer that apparently was swalling an error in
dart2js-minified. This fix wont be needed once we have codegen.
R=jmesserly@google.com
Review URL: https://codereview.chromium.org//207433002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34283 260f80e4-7a28-3924-810f-c04153c831b5
(a) add filter to query. This makes it easier to support *Changed without having to generate metadata about lots of useless methods. We might remove *Changed in the future, but I still think this is a nice feature for smoke.
(b) changed recorder.dart to automatically include getters/setters for queries. It is the most common use case that you query a member because you want both the metadata and to read/write/invoke it.
(c) add a new smoke implementation to make it easier to debug inconsistencies between static vs mirrors implementations. (I used this while debugging stuffin polymer)
R=jmesserly@google.com
Review URL: https://codereview.chromium.org//204143002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34117 260f80e4-7a28-3924-810f-c04153c831b5
Imports polymer-elements and polymer-ui-elements into (for now) the polymer package. This will allow us to begin to reuse the JavaScript custom elements.
Notes:
In an ideal world we would have some way of importing these straight from Bower, probably via Pub. However we don't have support for that.
It would also be nice to have separate Pub packages, at least for polymer-elements and polymer-ui-elements (the lovely Dart ports @ http://pub.dartlang.org/packages/polymer_elements follow this pattern). However that too depends on some kind of Pub+Bower integration, as they use (at least) the convention of "components/" for dependencies instead of "packages/" or "assets/".
So for now, we'll import them into package:polymer.
R=sigmund@google.com
Review URL: https://codereview.chromium.org//175443005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33183 260f80e4-7a28-3924-810f-c04153c831b5
Deletes:
pkg/shadow_dom
pkg/custom_element (except web_ui stuff)
pkg/html_import
Adds:
pkg/web_components, with README.md and build instructions
Changes:
pkg/html5lib -- deprecate queryAll/query in favor of *Selector
pkg/polymer -- test fixes & a few small changes to work with new polyfills, mostly in build
tests/html/custom -- can't load the CE polyfill at runtime, must now be injected statically via an HTML page, similar to the style @blois used for some custom element tests.
R=blois@google.com, sigmund@google.com
Review URL: https://codereview.chromium.org//158083002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32533 260f80e4-7a28-3924-810f-c04153c831b5
The biggest changes are in pkg:observe where we picked up a lot of optimizations to PathObserver/CompoundObserver.
template_binding gets one-time bindings, synchronous expansion, and lightweight "bindable" objects.
The tests are heavily refactored to use Future instead of the hacky observeTest/performMicrotaskCheckpoint pattern (I have been slowly changing the style for new tests, but observe-js made the change for all of them. yay!). Oh and the performMC stuff is gone from pkg:observe now.
There's also a new pkg:polymer feature for observation, which was ported so we are at a consistent baseline. (http://www.polymer-project.org/polymer.html#observeblock)
R=justinfagnani@google.com, sigmund@google.com
Review URL: https://codereview.chromium.org//132403010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32342 260f80e4-7a28-3924-810f-c04153c831b5
"package/" under the web/ directory. Resolution under 'lib' is the same, but it and gives better suggestions if the path looks wrong. This summarizes what changed:
- source file: lib/b.html
import to "packages/c/d.html" was error, now is error + suggestion
import to "../packages/c/d.html" was error, now is error + suggestion
import to "../../packages/c/d.html" was resolved, now is resolved too
- source file: lib/a/b.html
import to "packages/c/d.html" was error, now is error + suggestion
import to "../packages/c/d.html" was error, now is error + suggestion
import to "../../packages/c/d.html" was error, now is error + suggestion
import to "../../../packages/c/d.html" was resolved, now is resolved too
- source file: web/b.html
import to "packages/c/d.html" was and continues to be resolved
import to "../packages/c/d.html" was error, now is resolved
- source file: web/a/b.html
import to "packages/c/d.html" was error, now is resolved
import to "../packages/c/d.html" was and continues to be resolved
import to "../../packages/c/d.html" was and continues to be resolved
Note: polymer-build and development mode are slightly different: polymer-build
detects and issues an error for bad paths inside lib/. These are not detected by
our package-resolution in loader.dart, but as long as users are not creating
symlinks by hand, Dartium should detect if the paths are wrong.
When we switch to start using pub-serve by default, we should be able to go back
to the web-ui style of using "package:" urls directly in HTML.
R=jmesserly@google.com, kustermann@google.com
Review URL: https://codereview.chromium.org//148913003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32170 260f80e4-7a28-3924-810f-c04153c831b5