Adding package:smoke. This CL includes the intial APIs, a mirror-based
implementation, a static-based implementation (meant to be used with codegen one
day), and tests.

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@32878 260f80e4-7a28-3924-810f-c04153c831b5
For now, do not remove the default mirror-based implementation on pub-build.

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@32946 260f80e4-7a28-3924-810f-c04153c831b5
Use smoke in polymer and polymer_expressions.

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@32991 260f80e4-7a28-3924-810f-c04153c831b5
Adapting observe to use smoke (this is built on top of the previous change that
adds the smoke package)

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@32995 260f80e4-7a28-3924-810f-c04153c831b5
Fixes in smoke, which in turn should fix todomvc.

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@33047 260f80e4-7a28-3924-810f-c04153c831b5
[polymer] update pubspecs to prepare for -pre.0 release

R=sigmund@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@33178 260f80e4-7a28-3924-810f-c04153c831b5
[smoke] add homepage field to pubspec
[browser] use "author" instead of "authors" (the latter expects a list, I think)

R=sigmund@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@33180 260f80e4-7a28-3924-810f-c04153c831b5
Add codegen support in smoke

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34087 260f80e4-7a28-3924-810f-c04153c831b5
Fixes how to lookup sdk dir to support tests deeper inside test/ folders.

R=blois@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34091 260f80e4-7a28-3924-810f-c04153c831b5
Fix end_to_end_test in windows (File takes posix style paths)

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34095 260f80e4-7a28-3924-810f-c04153c831b5
These are 3 changes in smoke in preparation of polymer's codegen. I happened to make them at once, but let me know if you prefer that I split them up a bit:

(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/pkg/smoke@34117 260f80e4-7a28-3924-810f-c04153c831b5
Fixing e2e test in windows

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34122 260f80e4-7a28-3924-810f-c04153c831b5
Fix smoke version.

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34123 260f80e4-7a28-3924-810f-c04153c831b5
Fix string literals and add support for static methods in smoke.  This fixes two issues I noticed while testing things
out in polymer:
 - names should use raw strings, in case identifiers have a $
 - static methods were not supported in static.dart

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34272 260f80e4-7a28-3924-810f-c04153c831b5
Change path-observer to lookup properties aggressively and report errors
asynchronously. Add patch in smoke to work around a mirrors bug revealed by
these changes.

BUG=
R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34399 260f80e4-7a28-3924-810f-c04153c831b5
Revert "Change path-observer to lookup properties aggressively and report errors"

Seems that I broke template_binding tests. The fix should be simple, but I'll revert for now until I got it all working again.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34402 260f80e4-7a28-3924-810f-c04153c831b5
Reapply change that makes path-observer more agressive with property lookups.
Additionally fixes template-iterator to be robust in the precense of these
errors.

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34456 260f80e4-7a28-3924-810f-c04153c831b5
Fix smoke codegen for [].

R=jmesserly@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34461 260f80e4-7a28-3924-810f-c04153c831b5
Widen the barback constraints for code_transformers and smoke.

Barback 0.12.0 doesn't introduce any transformer-level backwards incompatibilities.

R=blois@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34462 260f80e4-7a28-3924-810f-c04153c831b5
Enables codegen support in polymer

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

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/smoke@34531 260f80e4-7a28-3924-810f-c04153c831b5