Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(460)

Unified Diff: pkg/polymer/lib/src/build/generated/messages.html

Issue 513023002: Step one towards stable error messages with details: (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/polymer/lib/src/build/generated/messages.html
diff --git a/pkg/polymer/lib/src/build/generated/messages.html b/pkg/polymer/lib/src/build/generated/messages.html
new file mode 100644
index 0000000000000000000000000000000000000000..c00761d42ec7c2d57eac8e4fd979af2f1c473221
--- /dev/null
+++ b/pkg/polymer/lib/src/build/generated/messages.html
@@ -0,0 +1,565 @@
+<!doctype html>
+<!--
+ This file is autogenerated with polymer/tool/create_message_details_page.dart
+-->
+<html>
+<style>
+@font-face {
+ font-family: 'Montserrat';
+ font-style: normal;
+ font-weight: 400;
+ src: url(https://themes.googleusercontent.com/static/fonts/montserrat/v4/zhcz-_WihjSQC0oHJ9TCYL3hpw3pgy2gAi-Ip7WPMi0.woff) format('woff');
+}
+@font-face {
+ font-family: 'Montserrat';
+ font-style: normal;
+ font-weight: 700;
+ src: url(https://themes.googleusercontent.com/static/fonts/montserrat/v4/IQHow_FEYlDC4Gzy_m8fcnbFhgvWbfSbdVg11QabG8w.woff) format('woff');
+}
+@font-face {
+ font-family: 'Roboto';
+ font-style: normal;
+ font-weight: 300;
+ src: url(https://themes.googleusercontent.com/static/fonts/roboto/v10/Hgo13k-tfSpn0qi1SFdUfbO3LdcAZYWl9Si6vvxL-qU.woff) format('woff');
+}
+@font-face {
+ font-family: 'Roboto';
+ font-style: normal;
+ font-weight: 400;
+ src: url(https://themes.googleusercontent.com/static/fonts/roboto/v10/CrYjSnGjrRCn0pd9VQsnFOvvDin1pK8aKteLpeZ5c0A.woff) format('woff');
+}
+
+body {
+width: 80vw;
+margin: 20px;
+font-family: Roboto, sans-serif;
+}
+
+h1 {
+ font-family: Montserrat, sans-serif;
+ box-sizing: border-box;
+ color: rgb(72, 72, 72);
+ display: block;
+ font-style: normal;
+ font-variant: normal;
+ font-weight: normal;
+}
+
+h2 {
+ font-family: Montserrat, sans-serif;
+ box-sizing: border-box;
+ color: rgb(72, 72, 72);
+ display: block;
+ font-style: normal;
+ font-variant: normal;
+ font-weight: normal;
+}
+
+pre {
+ display: block;
+ padding: 9.5px;
+ margin: 0 0 10px;
+ line-height: 1.42857143;
+ color: #333;
+ word-break: break-all;
+ word-wrap: break-word;
+ background-color: #f5f5f5;
+ border: 1px solid #ccc;
+ border-radius: 4px;
+}
+
+code {
+ font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
+ box-sizing: border-box;
+ padding: 0;
+ font-size: 90%;
+ color: #0084c5;
+ white-space: nowrap;
+ border-radius: 4px;
+ background-color: #f9f2f4;
+}
+
+pre > code {
+ white-space: inherit;
+}
+
+a {
+ color: rgb(42, 100, 150);
+}
+
+h2 > a {
+ display: none;
+ font-size: 0.8em;
+}
+
+h2:hover > a {
+display: inline;
+}
+</style>
+<body>
+<h1>Messages from package <code>code_transformers</code></h1>
+<hr />
+
+<h2 id="msg_code_transformers_1">Absolute paths not allowed <a href="#msg_code_transformers_1">#1</a></h2>
+<p>The transformers processing your code were trying to resolve a URL and identify
+a file that they correspond to. Currently only relative paths can be resolved.</p>
+<hr />
+
+<h2 id="msg_code_transformers_2">Invalid url to reach another package <a href="#msg_code_transformers_2">#2</a></h2>
+<p>To reach an asset that belongs to another package, we use <code>package:</code> URLs in
+Dart code, but in any other language (like HTML or CSS) we use relative URLs.</p>
+<p>These are the rules you must follow to write URLs that refer to files in other
+packages:</p><ul><li>
+<p>if the file containing the relative URL is an entrypoint under <code>web</code>, use
+<code>packages/package_name/path_to_file</code></p></li><li>
+<p>if the file containing the URL is under <code>web</code>, but on a different directory
+than your entrypoint, walk out to the same level as the entrypoint first,
+then enter the <code>packages</code> folder.</p>
+<p><strong>Note</strong>: this means that if you have two entrypoints including this file,
+either both entrypoints have to live in the same directory, or you need to
+move the file to the <code>lib</code> folder.</p></li><li>
+<p>if the file containing the URL lives under <code>lib</code>, walk up as many levels as
+directories you have + 1. This is because code in <code>lib/a/b</code> is loaded from
+<code>packages/package_name/a/b</code>.</p></li></ul>
+<p>The rules are easier to follow if you know how the code is layed out for
+Dartium before you build, and how it is layed out after you build it with <code>pub
+build</code>. Consider the following example:</p>
+<p> package a</p>
+<pre><code> lib/
+ '- a1.html
+
+ web/
+ '- a2.html
+</code></pre>
+<p> package b</p>
+<pre><code> lib/
+ |- b1.html
+ '- b2/
+ '- b3.html
+</code></pre>
+<p> package c</p>
+<pre><code> lib/
+ '- c3.html
+
+ web/
+ |- index.html
+ |- index.dart
+ |- c1/
+ '- c2.html
+</code></pre>
+<p>If your app is package <code>c</code>, you'll notice that in your file system there is a
+packages folder generated in the web folder, like this:</p>
+<pre><code> web/
+ |- index.html
+ |- index.dart
+ |- c1/
+ | '- c2.html
+ '- packages/
+ |- a/
+ | '- a1.html
+ |- b/
+ | |- b1.html
+ | '- b2/
+ | '- b3.html
+ '- c/
+ '- c3.html
+</code></pre>
+<p>Note that there is no <code>lib</code> folder under the <code>packages</code> folder. When you load
+<code>index.html</code> in Dartium, it will infer that the package root is under
+<code>web/packages/</code>.</p>
+<p>If you need to refer to any file in other packages from <code>index.html</code>, you can
+simply do <code>packages/package_name/path_to_file</code>. For example
+<code>packages/b/b2/b3.html</code>. From <code>index.html</code> you can also refer to files under the
+web folder of the same package using a simple relative URL, like <code>c1/c2.html</code>.</p>
+<p>However, if you want to load <code>a1.html</code> from <code>c2.html</code>, you need to reach out to
+the packages folder that lives next to your entrypoint and then load the file
+from there, for example <code>../packages/a/a1.html</code>. Because pub generates symlinks
+to the packages folder also under c1, you may be tempted to write
+<code>packages/a/a1.html</code>, but that is incorrect - it would yield a canonicalization
+error (see more below).</p>
+<p>If you want to load a file from the lib folder of your own package, you
+should also use a package URL. For example, <code>packages/c/c3.html</code> and not
+<code>../lib/c3.html</code>. This will allow you to write code in <code>lib</code> in a way that it
+can be used within and outside your package without making any changes to it.</p>
+<p>Because any time you reach inside a <code>lib/</code> folder you do so using a <code>packages/</code>
+URL, the rules for reaching into other files in other packages are always
+consistent: go up to exit the <code>packages</code> folder and go back inside to the file you
+are looking for. For example, to reach <code>a1.html</code> from <code>b3.html</code> you need to
+write <code>../../../packages/a/a1.html</code>.</p>
+<p>The motivation behind all these rules is that we would like to have URLs that
+work under many scenarios at once:</p><ul><li>
+<p>They need to work in Dartium without any code transformation: resolving the
+path in the context of a simple HTTP server, or using <code>file:///</code> URLs,
+should yield a valid path to assets. Since pub already creates a <code>packages</code>
+directory next to entrypoints of your application, we assume we can use it.</p></li><li>
+<p>They need to be canonical. To take advantage of caching, multiple URLs
+reaching the same asset should resolve to the same absolute URL.</p>
+<p>Also, in projects that use HTML imports (like polymer) we make sure that if
+you reach a library twice, once with Dart imports, and a second time with
+HTML imports, then they are correctly resolved to be the same library. Our
+rules are designed to allow tools to ensure this.</p>
+<p>For example, consider you have an import might like:</p>
+<pre><code>&lt;link rel=import href=packages/a/a.html&gt;
+</code></pre>
+<p>where a.html has <code>&lt;script type="application/dart" src="a.dart"&gt;</code>. If your
+Dart entrypoint also loads <code>"package:a/a.dart"</code>, then we need to make sure
+that both versions of <code>a.dart</code> are loaded from the same URL. Otherwise, you
+may see errors at runtime like: <code>A is not a subtype of A</code>, which can be
+extremely confusing.</p>
+<p>When you follow the rules above, our tools can detect the pattern in the
+HTML-import URL containing <code>packages/</code> and canonicalize the import
+by converting <code>packages/a/a.dart</code> into <code>package:a/a.dart</code> under the hood.</p></li><li>
+<p>They need to continue to be valid after applications are built.
+Technically this could be done automatically with pub transformers, but to
+make sure that code works also in Dartium with a simple HTTP Server,
+existing transformers do not fix URLs, they just detect inconsistencies and
+produce an error message like this one, instead.</p></li></ul>
+<hr />
+
+<h2 id="msg_code_transformers_3">Incomplete import to asset in another package <a href="#msg_code_transformers_3">#3</a></h2>
+<p>Currently we require that URLs that refer to assets in other packages to
+explicitly mention the <code>packages/</code> folder. In the future we might remove this
+requiremnt, but for now we ask that you use a canonical URL form for it.</p>
+<p>For example, if you have <code>packages/a/a.html</code> using an HTML import to
+<code>packages/b/b.html</code>, you could technically just write <code>../b/b.html</code>, but we
+require that you write <code>../../packages/b/b.html</code>.
+See <a href="http://dartbug.com/15797">issue 15797</a>.</p>
+<hr /><h1>Messages from package <code>observe</code></h1>
+<hr />
+
+<h2 id="msg_observe_1"><code>@observable</code> on a library is not supported. <a href="#msg_observe_1">#1</a></h2>
+<p>Long ago <code>@observable</code> was supported on classes, libraries, and even top-level
+declarations and static fields. Today, the annotation has no effect on these
+elements. Only instance fields on <code>Observable</code> classes are supported, and you
+must explicitly opt-in on each field you wish to make observable. </p>
+<hr />
+
+<h2 id="msg_observe_2"><code>@observable</code> on top-level fields is not supported. <a href="#msg_observe_2">#2</a></h2>
+<p>Long ago <code>@observable</code> was supported on classes, libraries, and even top-level
+declarations and static fields. Today, the annotation has no effect on these
+elements. Only instance fields on <code>Observable</code> classes are supported, and you
+must explicitly opt-in on each field you wish to make observable. </p>
+<hr />
+
+<h2 id="msg_observe_3"><code>@observable</code> on classes is not supported. <a href="#msg_observe_3">#3</a></h2>
+<p>Long ago <code>@observable</code> was supported on classes, libraries, and even top-level
+declarations and static fields. Today, the annotation has no effect on these
+elements. Only instance fields on <code>Observable</code> classes are supported, and you
+must explicitly opt-in on each field you wish to make observable. </p>
+<hr />
+
+<h2 id="msg_observe_4"><code>@observable</code> on static fields is not supported. <a href="#msg_observe_4">#4</a></h2>
+<p>Long ago <code>@observable</code> was supported on classes, libraries, and even top-level
+declarations and static fields. Today, the annotation has no effect on these
+elements. Only instance fields on <code>Observable</code> classes are supported, and you
+must explicitly opt-in on each field you wish to make observable. </p>
+<hr />
+
+<h2 id="msg_observe_5"><code>@observable</code> must be used on a class that implements <code>Observable</code>. <a href="#msg_observe_5">#5</a></h2>
+<p>Long ago <code>@observable</code> was supported on classes, libraries, and even top-level
+declarations and static fields. Today, the annotation has no effect on these
+elements. Only instance fields on <code>Observable</code> classes are supported, and you
+must explicitly opt-in on each field you wish to make observable. </p>
+<hr /><h1>Messages from package <code>polymer</code></h1>
+<hr />
+
+<h2 id="msg_polymer_1">Import not found <a href="#msg_polymer_1">#1</a></h2>
+<p>An HTML import seems to be broken. This could be because the file doesn't exist
+or because the link URL is incorrect.</p>
+<hr />
+
+<h2 id="msg_polymer_2">Duplicate definition <a href="#msg_polymer_2">#2</a></h2>
+<p>Custom element names are global and can only be defined once. Some common
+reasons why you might get two definitions:</p><ul><li>There are two different elements defined with the same name.</li><li>
+<p>A single HTML file defining an element, is imported from two different
+URLs.</p></li></ul>
+<hr />
+
+<h2 id="msg_polymer_3">Missing import to polymer.html <a href="#msg_polymer_3">#3</a></h2>
+<p>Starting with polymer 0.11.0 we require that each file that uses the definition
+of polymer-element has to import it either directly or transitively.</p>
+<hr />
+
+<h2 id="msg_polymer_4">Can't use imports inside &lt;polymer-element> <a href="#msg_polymer_4">#4</a></h2>
+<p>HTML imports are expected on the top of each document, outside of any
+polymer-element definitions. The polymer build process combines all your HTML
+files together so you can deploy a single HTML file with your application. This
+build process will ignore imports that appear to be in the wrong location.</p>
+<hr />
+
+<h2 id="msg_polymer_5">Missing init.dart <a href="#msg_polymer_5">#5</a></h2>
+<p>We determined that your application entry point didn't have any Dart script
+tags, and hence, it's missing some initialization needed for polymer.dart.</p>
+<hr />
+
+<h2 id="msg_polymer_6">No script tags with experimental bootstrap. <a href="#msg_polymer_6">#6</a></h2>
+<p>This experimental feature is no longer supported.</p>
+<hr />
+
+<h2 id="msg_polymer_7">Single tag per document <a href="#msg_polymer_7">#7</a></h2>
+<p>Dartium currently limits to have a single script tag per document. Any
+additional script tags might be ignored or result in an error. This will
+likely change in the future, but for now, we recommend that you combine the
+script tags together into a single Dart library.</p>
+<hr />
+
+<h2 id="msg_polymer_8">Imports before script tags <a href="#msg_polymer_8">#8</a></h2>
+<p>It is good practice to put all your HTML imports at the beginning of the
+document, above any Dart script tags. Today, the execution of Dart script tags
+is not synchronous in Dartium, so the difference is not noticeable. However, we
+are planning changes in Dartium that will eventually make the timing of script
+tags execution match how they are in Javascript. At that point the order of your
+imports with respect to script tags will be important. Following the practice of
+putting imports first protects your app from a future breaking change in this
+respect.</p>
+<hr />
+
+<h2 id="msg_polymer_9">Missing href on a <code>&lt;link&gt;</code> tag <a href="#msg_polymer_9">#9</a></h2>
+<p>All <code>&lt;link&gt;</code> tags should have a valid URL to a resource.</p>
+<hr />
+
+<h2 id="msg_polymer_10"><code>&lt;element&gt;</code> is deprecated <a href="#msg_polymer_10">#10</a></h2>
+<p>Long ago <code>&lt;polymer-element&gt;</code> used to be called <code>&lt;element&gt;</code>. You probably ran
+into this error if you were migrating code that was written on a very early
+version of polymer.</p>
+<hr />
+
+<h2 id="msg_polymer_11">Definition of a custom element not found <a href="#msg_polymer_11">#11</a></h2>
+<p>The polymer build was not able to find the definition of a custom element. This
+can happen if an element is defined with a <code>&lt;polymer-element&gt;</code> tag, but you are
+missing an HTML import or the import link is incorrect.</p>
+<p>This warning can also be a false alarm. For instance, when an element is defined
+programatically using <code>document.registerElement</code>. In that case the polymer build
+will not be able to see the definition and will produce this warning.</p>
+<hr />
+
+<h2 id="msg_polymer_12">Empty script tag <a href="#msg_polymer_12">#12</a></h2>
+<p>Script tags should either have a <code>src</code> attribute or a non-empty body.</p>
+<hr />
+
+<h2 id="msg_polymer_13">Expected Dart mime-type <a href="#msg_polymer_13">#13</a></h2>
+<p>You seem to have a <code>.dart</code> extension on a script tag, but the mime-type
+doesn't match <code>application/dart</code>.</p>
+<hr />
+
+<h2 id="msg_polymer_14">Expected Dart file extension <a href="#msg_polymer_14">#14</a></h2>
+<p>You are using the <code>application/dart</code> mime-type on a script tag, so we expected
+the URL to the script source URL to have a <code>.dart</code> extension, but it doesn't.</p>
+<hr />
+
+<h2 id="msg_polymer_15">Script tags should have either a URL or an inlined body. <a href="#msg_polymer_15">#15</a></h2>
+<p>You have a script tag that includes both a <code>src</code> attribute, and script text
+inlined. You must choose one or the other.</p>
+<hr />
+
+<h2 id="msg_polymer_16">Incorrect instantiation: missing base tag in instantiation. <a href="#msg_polymer_16">#16</a></h2>
+<p>When you declare that a custom element extends from a base tag, for example:</p>
+<pre><code>&lt;polymer-element name="my-example" extends="ul"&gt;
+</code></pre>
+<p>or:</p>
+<pre><code>&lt;polymer-element name="my-example2" extends="ul"&gt;
+&lt;polymer-element name="my-example" extends="my-example2"&gt;
+</code></pre>
+<p>You should instantiate <code>my-example</code> by using this syntax:</p>
+<pre><code>&lt;ul is="my-example"&gt;
+</code></pre>
+<p>And not:</p>
+<pre><code>&lt;my-example&gt;
+</code></pre>
+<p>Only elements that don't extend from existing HTML elements are created using
+the latter form.</p>
+<p>This is because browsers first create the base element, and then upgrade them to
+have the extra functionality of your custom element. In the example above, using
+<code>&lt;ul&gt;</code> tells the browser what is the base type that they need to create before
+doing the upgrade.</p>
+<hr />
+
+<h2 id="msg_polymer_17">Incorrect instantiation: extra <code>is</code> attribute or missing <code>extends</code> in declaration. <a href="#msg_polymer_17">#17</a></h2>
+<p>Creating a custom element using the syntax:</p>
+<pre><code>&lt;ul is="my-example"&gt;
+</code></pre>
+<p>means that the declaration of <code>my-example</code> extends transitively from <code>ul</code>. This
+error message is shown if the definition of <code>my-example</code> doesn't declare this
+extension. It might be that you no longer extend from the base element, in which
+case the fix is to change the instantiation to:</p>
+<pre><code>&lt;my-example&gt;
+</code></pre>
+<p>or that the declaration needs to be fixed and include the <code>extends</code> attribute,
+for example:</p>
+<pre><code>&lt;polymer-element name="my-example" extends="ul"&gt;
+</code></pre>
+<hr />
+
+<h2 id="msg_polymer_18">Incorrect instantiation: base tag seems wrong <a href="#msg_polymer_18">#18</a></h2>
+<p>It seems you have a declaration like:</p>
+<pre><code>&lt;polymer-element name="my-example" extends="div"&gt;
+</code></pre>
+<p>but an instantiation like:</p>
+<pre><code>&lt;span is="my-example"&gt;
+</code></pre>
+<p>Both the declaration and the instantiation need to match on the base type. So
+either the instantiation needs to be fixed to be more like:</p>
+<pre><code>&lt;span is="my-example"&gt;
+</code></pre>
+<p>or the declaration should be fixed to be like:</p>
+<pre><code>&lt;polymer-element name="my-example" extends="span"&gt;
+</code></pre>
+<hr />
+
+<h2 id="msg_polymer_19">No dashes allowed in custom attributes <a href="#msg_polymer_19">#19</a></h2>
+<p>Polymer used to recognize attributes with dashes like <code>my-name</code> and convert them
+to match properties where dashes were removed, and words follow the camelCase
+style (for example <code>myName</code>). This feature is no longer available. Now simply
+use the same name as the property.</p>
+<p>Because HTML attributes are case-insensitive, you can also write the name of
+your property entirely in lowercase. Just be sure that your custom-elements
+don't declare two properties with the same name but different capitalization.</p>
+<hr />
+
+<h2 id="msg_polymer_20">Event handlers not supported here <a href="#msg_polymer_20">#20</a></h2>
+<p>Bindings of the form <code>{{ }}</code> are supported inside <code>&lt;template&gt;</code> nodes, even outside
+of <code>&lt;polymer-element&gt;</code> declarations. However, those bindings only support binding
+values into the content of a node or an attribute.</p>
+<p>Inline event handlers of the form <code>on-click="{{method}}"</code> are a special feature
+of polymer elements, so they are only supported inside <code>&lt;polymer-element&gt;</code>
+definitions.</p>
+<hr />
+
+<h2 id="msg_polymer_21">Event handler bindings are method names, not expressions. <a href="#msg_polymer_21">#21</a></h2>
+<p>Unlike data bindings, event handler bindings of the form <code>on-click="{{method}}"</code>
+are not evaluated as expressions. They are meant to just contain a simple name
+that resolves to a method in your polymer element's class definition.</p>
+<hr />
+
+<h2 id="msg_polymer_22">Nested polymer element definitions are not allowed. <a href="#msg_polymer_22">#22</a></h2>
+<p>Because custom element names are global, there is no need to have a
+<code>&lt;polymer-element&gt;</code> defined nested within a <code>&lt;polymer-element&gt;</code>. If you have a
+definition inside another, please move the sencond definition out.</p>
+<p>It's possible that you see this error if you have an HTML import within a
+polymer element. You should be able to also move the import out of the element
+definition.</p>
+<hr />
+
+<h2 id="msg_polymer_23">Polymer element definitions must have a name. <a href="#msg_polymer_23">#23</a></h2>
+<p>Polymer element definitions must have a name. You can include a name by using
+the <code>name</code> attribute in <code>&lt;polymer-element&gt;</code> for example:</p>
+<pre><code>&lt;polymer-element name="my-example"&gt;
+</code></pre>
+<hr />
+
+<h2 id="msg_polymer_24">Custom element names must have a dash. <a href="#msg_polymer_24">#24</a></h2>
+<p>Custom element names must have a dash and can't be any of the following
+reserved names:</p><ul><li><code>annotation-xml</code></li><li><code>color-profile</code></li><li><code>font-face</code></li><li><code>font-face-src</code></li><li><code>font-face-uri</code></li><li><code>font-face-format</code></li><li><code>font-face-name</code></li><li><code>missing-glyph</code></li></ul>
+<hr />
+
+<h2 id="msg_polymer_25">An error occurred while iniling an import <a href="#msg_polymer_25">#25</a></h2>
+<p>An error occurred while iniling an import in the polymer build. This is often
+the result of a broken HTML import.</p>
+<hr />
+
+<h2 id="msg_polymer_26">An error occurred while iniling a stylesheet. <a href="#msg_polymer_26">#26</a></h2>
+<p>An error occurred while iniling a stylesheet in the polymer build. This is often
+the result of a broken URL in a <code>&lt;link rel="stylesheet" href="..."&gt;</code>.</p>
+<hr />
+
+<h2 id="msg_polymer_27">URL to a script file might be incorrect <a href="#msg_polymer_27">#27</a></h2>
+<p>An error occurred trying to read a script tag on a given URL. This is often the
+result of a broken URL in a <code>&lt;script src="..."&gt;</code>.</p>
+<hr />
+
+<h2 id="msg_polymer_28">Not all browsers support bindings to URL attributes <a href="#msg_polymer_28">#28</a></h2>
+<p>Not all browsers support bindings to URL attributes. Some browsers might
+sanitize the attributes and result in an incorrect link. For this reason polymer
+provides a special set of attributes that let you bypass any browser internal
+attribute validation. The name of the attribute is the same as the original
+attribute, but with a leading underscore. For example, instead of writing:</p>
+<pre><code>&lt;img src="{{binding}}"&gt;
+</code></pre>
+<p>you can write:</p>
+<pre><code>&lt;img _src="{{binding}}"&gt;
+</code></pre>
+<p>For more information, see <a href="http://goo.gl/5av8cU">http://goo.gl/5av8cU</a>.</p>
+<hr />
+
+<h2 id="msg_polymer_29">The special underscore attribute is only for bindings. <a href="#msg_polymer_29">#29</a></h2>
+<p>A special attribute exists to support bindings on URL attributes. For example,
+this correctly binds the <code>src</code> attribute in an image:</p>
+<pre><code>&lt;img _src="{{binding}}"&gt;
+</code></pre>
+<p>However, this special <code>_src</code> attribute is only available for bindings. If you
+just have a URL, use the normal <code>src</code> attribute instead.</p>
+<hr />
+
+<h2 id="msg_polymer_30">Internal error: don't know how to include a URL <a href="#msg_polymer_30">#30</a></h2>
+<p>Sorry, you just run into a bug in the polymer transformer code. Please file a
+bug at <a href="http://dartbug.com/new">http://dartbug.com/new</a> including if possible some example code that can
+help us reproduce the issue so we can investigate.</p>
+<hr />
+
+<h2 id="msg_polymer_31">Internal error: phases run out of order <a href="#msg_polymer_31">#31</a></h2>
+<p>Sorry, you just run into a bug in the polymer transformer code. Please file a
+bug at <a href="http://dartbug.com/new">http://dartbug.com/new</a> including if possible some example code that can
+help us reproduce the issue so we can investigate.</p>
+<hr />
+
+<h2 id="msg_polymer_32"><code>@CustomTag</code> is only supported on public classes. <a href="#msg_polymer_32">#32</a></h2>
+<p>The <code>@CustomTag</code> annotation is currently only supported on public classes. If
+you need to register a custom element whose implementation is a private class,
+you can still do so by invoking <code>Polymer.register</code> within a public method marked
+with <code>@initMethod</code>.</p>
+<hr />
+
+<h2 id="msg_polymer_33"><code>@initMethod</code> is only supported on public functions. <a href="#msg_polymer_33">#33</a></h2>
+<p>The <code>@initMethod</code> annotation is currently only supported on public top-level
+functions.</p>
+<hr />
+
+<h2 id="msg_polymer_34">Missing argument in annotation <a href="#msg_polymer_34">#34</a></h2>
+<p>The annotation expects one argument, but the argument was not provided.</p>
+<hr />
+
+<h2 id="msg_polymer_35">Invalid argument in annotation <a href="#msg_polymer_35">#35</a></h2>
+<p>We expected a constant argument in an annotation, but the polymer build was not
+able to extract the value of this argument. This can happen if your code is
+currently in a state that can't be analyzed (for example, it has parse
+errors) or if the expression passed as an argument is invalid (for example, it
+is not a compile-time constant).</p>
+<hr />
+
+<h2 id="msg_polymer_36">No polymer initializers found <a href="#msg_polymer_36">#36</a></h2>
+<p>No polymer initializers were found. Make sure to either
+annotate your polymer elements with @CustomTag or include a
+top level method annotated with @initMethod that registers your
+elements. Both annotations are defined in the polymer library (
+package:polymer/polymer.dart).</p>
+<hr />
+
+<h2 id="msg_polymer_37">Event bindings with @ are no longer supported <a href="#msg_polymer_37">#37</a></h2>
+<p>For a while there was an undocumented feature that allowed users to include
+expressions in event bindings using the <code>@</code> prefix, for example:</p>
+<pre><code>&lt;div on-click="{{@a.b.c}}"&gt;
+
+</code></pre>
+<p>This feature is no longer supported.</p>
+<hr />
+
+<h2 id="msg_polymer_38">Private symbols cannot be used in event handlers <a href="#msg_polymer_38">#38</a></h2>
+<p>Currently private members can't be used on event handlers. So you can't write:</p>
+<pre><code>&lt;div on-click="{{_method}}"&gt;
+</code></pre>
+<p>This restriction might be removed in the future, but for now, you need to make
+your event handlers public.</p>
+<hr />
+
+<h2 id="msg_polymer_39">Private symbols are not supported <a href="#msg_polymer_39">#39</a></h2>
+<p>Private members can't be used on binding expressions. For example, you can't
+write:</p>
+<pre><code>&lt;div&gt;{{a.b._c}}&lt;/div&gt;
+</code></pre>
+<hr />
+
+<h2 id="msg_polymer_40">A warning was found while parsing the html document <a href="#msg_polymer_40">#40</a></h2>
+<p>We use a parser that implements the HTML5 spec (<code>html5lib</code>). We report any
+warnings that were detected by our parser during the polymer build process.</p>
+<hr /></body>
+</html>

Powered by Google App Engine
This is Rietveld 408576698