Skip to content
This repository has been archived by the owner on Jul 30, 2019. It is now read-only.

Commit

Permalink
Fix all FATAL ERRORs when using the latest [evergreen] bikeshed in ma…
Browse files Browse the repository at this point in the history
…ster branch (#727)

* Fix #707

Fix #707

Bikeshed updates have made the following unnecessary:
1. idl dfn attributes to mark which interface they use
2. for attributes on elements -- reworking the two cases we have in the
spec for this (source and title)
Found other bugs exposed by this bikeshed update in our spec, namely
around use of enum, that should have been enum-value.

* Finish merge of <source> element, and related cleanup.

* final changes to fix fatal-errors during build process
  • Loading branch information
travisleithead authored and stevefaulkner committed Nov 29, 2016
1 parent fe32faa commit 524b1ef
Show file tree
Hide file tree
Showing 22 changed files with 378 additions and 431 deletions.
26 changes: 13 additions & 13 deletions sections/browsers.include
Expand Up @@ -958,7 +958,7 @@

<h3 id="the-window-object">The <code>Window</code> object</h3>

<pre class="idl" data-highlight="webidl" dfn-for="Window">
<pre class="idl" data-highlight="webidl">
[PrimaryGlobal, LegacyUnenumerableNamedProperties]
/*sealed*/ interface Window : EventTarget {
// the current browsing context
Expand Down Expand Up @@ -1488,7 +1488,7 @@

Each interface element is represented by a <code>BarProp</code> object:

<pre class="idl" data-highlight="webidl" dfn-for="BarProp">
<pre class="idl" data-highlight="webidl">
interface BarProp {
readonly attribute boolean visible;
};
Expand Down Expand Up @@ -2468,11 +2468,11 @@

<h4 id="the-history-interface">The <code>History</code> interface</h4>

<pre class="idl" data-highlight="webidl" dfn-for="ScrollRestoration">
<pre class="idl" data-highlight="webidl">
enum ScrollRestoration { "auto", "manual" };
</pre>

<pre class="idl" data-highlight="webidl" dfn-for="History">
<pre class="idl" data-highlight="webidl">
interface History {
readonly attribute unsigned long length;
attribute ScrollRestoration scrollRestoration;
Expand Down Expand Up @@ -2985,7 +2985,7 @@
<a>current entry</a> of the <a>browsing context</a>'s session history to be changed, by adding or
replacing entries in the {{Window/history}} object.

<pre class="idl" data-highlight="webidl" dfn-for="Location">
<pre class="idl" data-highlight="webidl">
interface Location {
[Unforgeable] stringifier attribute USVString href;
[Unforgeable] readonly attribute USVString origin;
Expand Down Expand Up @@ -4644,14 +4644,14 @@

<h5 id="the-popstateevent-interface">The <code>PopStateEvent</code> interface</h5>

<pre class="idl" data-highlight="webidl" dfn-for="PopStateEvent">
<pre class="idl" data-highlight="webidl">
[Constructor(DOMString type, optional PopStateEventInit eventInitDict), Exposed=(Window,Worker)]
interface PopStateEvent : Event {
readonly attribute any state;
};
</pre>

<pre class="idl" data-highlight="webidl" dfn-for="PopStateEventInit">
<pre class="idl" data-highlight="webidl">
dictionary PopStateEventInit : EventInit {
any state = null;
};
Expand All @@ -4675,15 +4675,15 @@

<h5 id="the-hashchangeevent-interface">The <code>HashChangeEvent</code> interface</h5>

<pre class="idl" data-highlight="webidl" dfn-for="HashChangeEvent">
<pre class="idl" data-highlight="webidl">
[Constructor(DOMString type, optional HashChangeEventInit eventInitDict), Exposed=(Window,Worker)]
interface HashChangeEvent : Event {
readonly attribute USVString oldURL;
readonly attribute USVString newURL;
};
</pre>

<pre class="idl" data-highlight="webidl" dfn-for="HashChangeEventInit">
<pre class="idl" data-highlight="webidl">
dictionary HashChangeEventInit : EventInit {
USVString oldURL = "";
USVString newURL = "";
Expand Down Expand Up @@ -4712,14 +4712,14 @@

<h5 id="the-pagetransitionevent-interface">The <code>PageTransitionEvent</code> interface</h5>

<pre class="idl" data-highlight="webidl" dfn-for="PageTransitionEvent">
<pre class="idl" data-highlight="webidl">
[Constructor(DOMString type, optional PageTransitionEventInit eventInitDict), Exposed=(Window,Worker)]
interface PageTransitionEvent : Event {
readonly attribute boolean persisted;
};
</pre>

<pre class="idl" data-highlight="webidl" dfn-for="PageTransitionEventInit">
<pre class="idl" data-highlight="webidl">
dictionary PageTransitionEventInit : EventInit {
boolean persisted = false;
};
Expand Down Expand Up @@ -4949,7 +4949,7 @@

<h5 id="the-beforeunloadevent-interface">The <code>BeforeUnloadEvent</code> interface</h5>

<pre class="idl" data-highlight="webidl" dfn-for="BeforeUnloadEvent">
<pre class="idl" data-highlight="webidl">
interface BeforeUnloadEvent : Event {
attribute DOMString returnValue;
};
Expand Down Expand Up @@ -5017,7 +5017,7 @@

<h4 id="browser-state">Browser state</h4>

<pre class="idl" data-highlight="webidl" dfn-for="NavigatorOnLine">
<pre class="idl" data-highlight="webidl">
[NoInterfaceObject, Exposed=(Window, Worker)]
interface NavigatorOnLine {
readonly attribute boolean onLine;
Expand Down
16 changes: 8 additions & 8 deletions sections/dom.include
Expand Up @@ -72,7 +72,7 @@
The DOM specification defines a {{Document}} interface, which this specification extends
significantly:

<pre class="idl" data-highlight="webidl" dfn-for="Document">
<pre class="idl" data-highlight="webidl">
enum DocumentReadyState { "loading", "interactive", "complete" };

typedef (HTMLScriptElement or SVGScriptElement) HTMLOrSVGScriptElement;
Expand Down Expand Up @@ -542,7 +542,7 @@
<div class="impl">
<h4 id="loading-xml-documents">Loading XML documents</h4>

<pre class="idl" data-highlight="webidl" dfn-for="XMLDocument">
<pre class="idl" data-highlight="webidl">
partial interface XMLDocument {
boolean load(DOMString url);
};
Expand Down Expand Up @@ -696,7 +696,7 @@
<span class="impl">and which must be used by elements that have no additional requirements,</span>
is the {{HTMLElement}} interface.

<pre class="idl" data-highlight="webidl" dfn-for="HTMLElement">
<pre class="idl" data-highlight="webidl">
interface HTMLElement : Element {
// metadata attributes
attribute DOMString title;
Expand All @@ -723,7 +723,7 @@
HTMLElement implements ElementContentEditable;
</pre>

<pre class="idl" data-highlight="webidl" dfn-for="HTMLUnknownElement">
<pre class="idl" data-highlight="webidl">
interface HTMLUnknownElement : HTMLElement { };
</pre>

Expand Down Expand Up @@ -1980,12 +1980,12 @@
</pre>
</div>

<h5 id="the-xmlbase-attribute-xml-only">The <dfn element for="global"><code>xml:base</code></dfn> attribute (XML only)</h5>
<h5 id="the-xmlbase-attribute-xml-only">The <code>xml:base</code> attribute (XML only)</h5>

The <code>xml:base</code> attribute is defined in XML Base. [[!XMLBASE]]
The <dfn element-attr for="global"><code>xml:base</code></dfn> attribute is defined in XML Base. [[!XMLBASE]]

The <code>xml:base</code> attribute may be used on <a>html elements</a> of <a>XML documents</a>.
Authors must not use the <code>xml:base</code> attribute on <a>html elements</a> in
The <{global/xml:base}> attribute may be used on <a>html elements</a> of <a>XML documents</a>.
Authors must not use the <{global/xml:base}> attribute on <a>html elements</a> in
<a>HTML documents</a>.

<h5 id="the-dir-attribute">The <code>dir</code> attribute</h5>
Expand Down
10 changes: 5 additions & 5 deletions sections/editing.include
Expand Up @@ -1744,7 +1744,7 @@

<h4 id="making-document-regions-editable-the-contenteditable-content-attribute">Making document regions editable: The <code>contenteditable</code> content attribute</h4>

<pre class="idl" data-highlight="webidl" dfn-for="ElementContentEditable">
<pre class="idl" data-highlight="webidl">
[NoInterfaceObject]
interface ElementContentEditable {
attribute DOMString contentEditable;
Expand Down Expand Up @@ -2333,7 +2333,7 @@
{{DataTransfer}} objects are used to expose the <a>drag data store</a> that
underlies a drag-and-drop operation.

<pre class="idl" data-highlight="webidl" dfn-for="DataTransfer">
<pre class="idl" data-highlight="webidl">
interface DataTransfer {
attribute DOMString dropEffect;
attribute DOMString effectAllowed;
Expand Down Expand Up @@ -2645,7 +2645,7 @@
Each {{DataTransfer}} object is associated with a {{DataTransferItemList}}
object.

<pre class="idl" data-highlight="webidl" dfn-for="DataTransferItemList">
<pre class="idl" data-highlight="webidl">
interface DataTransferItemList {
readonly attribute unsigned long length;
getter DataTransferItem (unsigned long index);
Expand Down Expand Up @@ -2795,7 +2795,7 @@
Each {{DataTransferItem}} object is associated with a {{DataTransfer}}
object.

<pre class="idl" data-highlight="webidl" dfn-for="DataTransferItem">
<pre class="idl" data-highlight="webidl">
interface DataTransferItem {
readonly attribute DOMString kind;
readonly attribute DOMString type;
Expand Down Expand Up @@ -2913,7 +2913,7 @@
The drag-and-drop processing model involves several events. They all use the
{{DragEvent}} interface.

<pre class="idl" data-highlight="webidl" dfn-for="DragEvent">
<pre class="idl" data-highlight="webidl">
[Constructor(DOMString type, optional DragEventInit eventInitDict)]
interface DragEvent : MouseEvent {
readonly attribute DataTransfer? dataTransfer;
Expand Down
4 changes: 0 additions & 4 deletions sections/element-interfaces.include
Expand Up @@ -369,10 +369,6 @@
<td> <{source}>
</td><td> {{HTMLSourceElement}} : {{HTMLElement}}

</td></tr><tr>
<td> <a element lt="picture source"><code>source</code></a>
</td><td> <a href='#Picture-HTMLSourceElement'><code>HTMLSourceElement</code></a> : {{HTMLElement}}

</td></tr><tr>
<td> <{span}>
</td><td> {{HTMLSpanElement}} : {{HTMLElement}}
Expand Down
24 changes: 7 additions & 17 deletions sections/elements.include
Expand Up @@ -1021,7 +1021,7 @@
<a lt="Phrasing content">phrasing</a>;
<a lt="Embedded content">embedded</a></td>
<td><a lt="Phrasing content">phrasing</a></td>
<td><a element lt="picture source"><code>source</code></a>*; one <{img}>;
<td><{source}>*; one <{img}>;
<a>script-supporting elements</a></td>
<td><a lt="global attributes">globals</a></td>
<td>{{HTMLPictureElement}}</td>
Expand Down Expand Up @@ -1218,30 +1218,20 @@

<tr>
<th><{source}></th>
<td>Media source for <{video}> or <{audio}></td>
<td>Media source for <{video}> or <{audio}> or as image source for <{picture}></td>
<td>none</td>
<td><{video}>;
<{audio}>;
<{template}></td>
<{template}>;
<{picture}></td>
<td>empty</td>
<td><a lt="global attributes">globals</a>;
<{source/src}>;
<{source/type}></td>
<td>{{HTMLSourceElement}}</td>
</tr>

<tr>
<th><a element lt="picture source"><code>source</code></a></th>
<td>Image source for <{img}></td>
<td>none</td>
<td><{picture}></td>
<td>empty</td>
<td><a lt="global attributes">globals</a>;
<{source/type}>;
<{source/srcset}>;
<{source/sizes}>;
<{source/media}>;
<{source/type}></td>
<td><a href='#Picture-HTMLSourceElement'><code>HTMLSourceElement</code></a></td>
<{source/media}></td>
<td>{{HTMLSourceElement}}</td>
</tr>

<tr>
Expand Down
12 changes: 6 additions & 6 deletions sections/infrastructure.include
Expand Up @@ -3881,7 +3881,7 @@
{{HTMLAllCollection}} object consist of all the descendant elements of the root {{Document}}.
</p>

<pre class="idl" data-highlight="webidl" dfn-for="HTMLAllCollection">
<pre class="idl" data-highlight="webidl">
[LegacyUnenumerableNamedProperties]
interface HTMLAllCollection {
readonly attribute unsigned long length;
Expand Down Expand Up @@ -3981,14 +3981,14 @@
The <code>HTMLFormControlsCollection</code> interface is used for <a lt="collection">collections</a> of
<a>listed elements</a> in <{form}> elements.

<pre class="idl" data-highlight="webidl" dfn-for="HTMLFormControlsCollection">
<pre class="idl" data-highlight="webidl">
interface HTMLFormControlsCollection : HTMLCollection {
// inherits length and item()
getter (RadioNodeList or Element)? namedItem(DOMString name); // shadows inherited namedItem()
};
</pre>

<pre class="idl" data-highlight="webidl" dfn-for="RadioNodeList">
<pre class="idl" data-highlight="webidl">
interface RadioNodeList : NodeList {
attribute DOMString value;
};
Expand Down Expand Up @@ -4093,7 +4093,7 @@
<{option}> elements. It is always rooted on a <{select}> element and has
attributes and methods that manipulate that element's descendants.

<pre class="idl" data-highlight="webidl" dfn-for="HTMLOptionsCollection">
<pre class="idl" data-highlight="webidl">
interface HTMLOptionsCollection : HTMLCollection {
// inherits item(), namedItem()
attribute unsigned long length; // shadows inherited length
Expand Down Expand Up @@ -4256,7 +4256,7 @@
one for <dfn>getting the list of name-value pairs</dfn>, one for
<dfn>setting names to certain values</dfn>, and one for <dfn>deleting names</dfn>.

<pre class="idl" data-highlight="webidl" dfn-for="DOMStringMap">
<pre class="idl" data-highlight="webidl">
[OverrideBuiltins]
interface DOMStringMap {
getter DOMString (DOMString name);
Expand Down Expand Up @@ -4320,7 +4320,7 @@
getting the list of name-element mappings, one for mapping a name to a certain element, and one
for deleting mappings by name.

<pre class="idl" data-highlight="webidl" dfn-for="DOMElementMap">
<pre class="idl" data-highlight="webidl">
interface DOMElementMap {
getter Element (DOMString name);
setter creator void (DOMString name, Element value);
Expand Down
6 changes: 3 additions & 3 deletions sections/introduction.include
Expand Up @@ -323,7 +323,7 @@

<h4 id="typographic-conventions">Typographic conventions</h4>

<div dfn-for="conventions">
<div>
This is a definition, requirement, or explanation.

<p class="note">This is a note.</p>
Expand All @@ -347,8 +347,8 @@

<pre class="css" highlight="css">/* this is a CSS fragment */</pre>

The defining instance of a term is marked up like <dfn noexport>this</dfn>. Uses of that term
are marked up like <a>this</a> or like <a><i>this</i></a>.
The defining instance of a term is marked up like <dfn noexport>this</dfn>.
Uses of that term are marked up like [=this=] or like <a><i>this</i></a>.

The defining instance of an element, attribute, or API is marked up like
<dfn element noexport><code>this</code></dfn>. References to that element, attribute, or API are
Expand Down

0 comments on commit 524b1ef

Please sign in to comment.