[heycam/webidl] Merge branch 'master' into tostringtag (#861)

To resolve this, simply fast‑forward `tostringtag` to the tip of my [`EB‑Forks:fix/only‑install‑tostringtag‑on‑prototype`](https://github.com/EB-Forks/webidl/tree/fix/only-install-tostringtag-on-prototype) branch.

---

The diff against master is the same as in <https://github.com/heycam/webidl/pull/860>.



<!--
    This comment and the below content is programatically generated.
    You may add a comma-separated list of anchors you'd like a
    direct link to below (e.g. #idl-serializers, #idl-sequence):

    Don't remove this comment or modify anything below this line.
    If you don't want a preview generated for this pull request,
    just replace the whole of this comment's content by "no preview"
    and remove what's below.
-->
***

### :boom: Error: 400 Bad Request :boom: ###

[PR Preview](https://github.com/tobie/pr-preview#pr-preview) failed to build. _(Last tried on Mar 19, 2020, 3:42 PM UTC)_.

<details>
<summary>More</summary>


PR Preview relies on a number of web services to run. There seems to be an issue with the following one:

:rotating_light: [CSS Spec Preprocessor](https://api.csswg.org/bikeshed/) - CSS Spec Preprocessor is the web service used to build Bikeshed specs.

:link: [Related URL](https://api.csswg.org/bikeshed/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fheycam%2Fwebidl%2Ffe1ff924f55bc14cbe701ea7f3a236417e200c86%2Findex.bs&md-warning=not%20ready)

```
Error running preprocessor, returned code: 1.
LINK ERROR: Ambiguous for-less link for 'detach', please see <https://tabatkins.github.io/bikeshed/#ambi-for> for instructions:
Local references:
spec:webidl-2; type:dfn; for:ArrayBuffer; text:detach
for-less references:
spec:svg2; type:dfn; for:/; text:detached
spec:svg2; type:dfn; for:/; text:detached
WARNING: This specification has neither a 'Security Considerations' nor a 'Privacy Considerations' section. Please consider adding both, see https://w3ctag.github.io/security-questionnaire/.

FATAL ERROR: IDL SYNTAX ERROR LINE: 2 - skipped: "serializer"
 ✘  Did not generate, due to fatal errors
```

_If you don't have enough information above to solve the error by yourself (or to understand to which web service the error is related to, if any), please [file an issue](https://github.com/tobie/pr-preview/issues/new?title=Error%20not%20surfaced%20properly&body=See%20heycam/webidl%23861.)._
</details>

You can view, comment on, or merge this pull request online at:

  https://github.com/heycam/webidl/pull/861


-- Commit Summary --

  * Add [AllowShared] to allow accepting SharedArrayBuffers
  * Remove custom [[HasInstance]] behaviors
  * Clarify and add examples for "extended attributes associated with"
  * Fix [TreatNullAs] usage in example (#360)
  * Add [LegacyWindowAlias] extended attribute (#364)
  * Replace default [[Set]] by OrdinarySet. (#367)
  * Replace serializers by toJSON and [Default] extended attribute (#323)
  * Editorial: fix toJSON algorithm example
  * Editorial: minor language fix
  * Add frozen array types to the list of JSON types
  * Add dedicated URL for filing bugs with WebKit (#375)
  * Add bug template URL for Chromium (#374)
  * Re-align DOMException objects with what is implemented (#378)
  * Fix typos in advisements relating to using true as default values
  * Remove DOMException terminal from the grammar
  * Editorial: improve array index property name algorithm (#386)
  * Link function objects to ES spec directly. (#387)
  * Fix incorrect example in Overloading section. (#389)
  * Editorial: improve language used around real numeric values. (#388)
  * Clarify that unrestricted doubles and floats include NaNs. (#393)
  * Fix sentence that required optionality values to be boolean (#394)
  * Clarify the effective overload set algorithm. (#390)
  * Remove orphaned Inherit non-terminal
  * Add the symbol type
  * Define [[OwnPropertyKeys]] of legacy platform objects (#402)
  * Specify all arguments to Set in attribute setter (#406)
  * Editorial: Use <emu-val> only for constant values (#405)
  * Handle Symbols correctly in legacy platform object's [[DefineOwnProperty]] (#411)
  * Editorial: Refactor overloading section using infra types (#392)
  * Clarify value vs type in distinguishability categories (#413)
  * Specify the property descriptor of @@unscopables. (#396)
  * Update and link ES exception handling (#417)
  * Link function objects and constructors to relevant DFNs in ES (#418)
  * Update SessionManager example (#421)
  * Editorial: Improve advisements for legacy APIs (#416)
  * Editorial: fix incorrect sentence about dictionaries (#424)
  * Add [LegacyNamespace] to allow defining an interface in a namespace (#425)
  * Editorial: correctly reference ES bindings section on constants (#431)
  * Link to ES for "array index" (#427)
  * Meta: fix links in README.
  * Meta: Use OrdinarySetWithOwnDescriptor (#435)
  * Do not version the ECMAScript spec used
  * Reword internal methods and slots definition
  * Remove confusing "type" linking
  * Remove outdated ES abstract op list
  * Use abstract-op appropriately
  * Remove legacy callers
  * Editorial: fix copy/paste error in [EnforceRange] section
  * Add a section on overloads vs. union/optional (#426)
  * De-emphasize constants (#447)
  * Editorial: fix spelling mistakes (#454)
  * More ECMAScript biblio cleanup (#451)
  * Check grammar is LL(1) as part of Travis builds
  * Fix grammar conflicts
  * Add support for interface mixins
  * Link grammar elements in the grammar index to one another
  * Editorial: Add note about SyntaxError DOMException (#459)
  * Editorial: punctuation
  * Fix #461 - clarify applicability of overload resolution (#462)
  * Editorial: ack Tim Ruffles
  * Use post-processor in pr-preview
  * Add post-processing to deploy script
  * Add post-processing to Makefile
  * Fix SOTD (#456)
  * Fix grammar references in Operations section (#474)
  * Meta: replace remaining emu-t.symbol (#475)
  * Editorial: add missing full stops (#482)
  * Make [Exposed] mandatory, remove [PrimaryGlobal] (#423)
  * Use Infra notation for strings
  * Consistent use of internal slots/methods
  * Add space to class string of iterator objects
  * Meta: fix typo in cross-reference
  * Editorial: cleanup platform and legacy platform object descriptions (#493)
  * Meta: fix markup now that Bikeshed supports mixins (#499)
  * Fix and clarify exposed dfn (#464)
  * Meta: add TSJS-lib-generator to parsers that need to be notified of syntax changes
  * Editorial: Correct assertion (#500)
  * Clarify that [Unforgeable] doesn't apply to static members (#498)
  * Editorial: add DOMRectList to the legacy [NoInterfaceObject] list (#502)
  * Editorial: Revert #502. (#503)
  * Include typedefs in the JSON type definition (#505)
  * Editorial: fix note
  * Add informative section on legacy constructs (#506)
  * Editorial: remove the remaining subscript notation for argument lists (#508)
  * Specify PropertyDescriptor of @@toStringTag symbol (#513)
  * Editorial: Four (not five) kind of special operations (#519)
  * Disallow -0 in algorithm for checking array index (#517)
  * Remove definition of class strings of default iterator objects (#501)
  * Meta: export "includes" dfn. (#530)
  * Editorial: correctly reference ES bindings section on constants (#531)
  * Editorial: minor copy editing (#538)
  * Make interface object and interface prototype object creation imperative
  * Editorial: remove extra line breaks
  * Editorial: use realm.[[Intrinsics]] where appropriate.
  * Meta: remove label info from README (#546)
  * Editorial: use SetFunctionLength abstract ops
  * Meta: fix link in README
  * [LegacyArrayClass] is gone from CSSOM
  * Remove [LegacyArrayClass]
  * Editorial: fix copy/paste error in LenientSetter section
  * Editorial: update wpt URLs in Readme (#565)
  * Editorial: use less-confusing variable names in dictionary conversion (#570)
  * Disallow multiple keywords for SpecialOperation (#562)
  * A dictionary inheriting from a non-JSON type can't be a JSON type. (#571)
  * cleanup following #562 (#573)
  * Editorial: add missing [ for [SecureContext] (#575)
  * Editorial: further cleanup following #519 (#576)
  * Editorial: further cleanup following #573 (#578)
  * Editorial: clarify the definition of the class string of a platform object
  * Editorial: add a missing cross-reference for 'class string'
  * Include the legacy namespace identifier
  * Editorial: correct the spelling of "additionally" (#590)
  * Editorial: Fix typo in example in Namespaces section (#593)
  * Only [Global] platform objects have an immutable prototype
  * [[ViewedArrayBuffer]] cannot be undefined during usage
  * Detached ArrayBuffer objects should not throw
  * Use map/exists to define dictionary/present. (#610)
  * Editorial: refer to the correct types in integer conversion algorithms
  * Editorial: clarify the wording of an Exposed requirement
  * Use %PromiseProto_then% to 'perform some steps once a promise is settled'. (#611)
  * Fix namespace/attribute setter interaction
  * Editorial: remove section numbers from ES references
  * Editorial: fix language in nullable types section (#628)
  * Rename the 'float' production to 'decimal'
  * Make "call a user object’s operation"'s opName argument required
  * Restrict the extended attributes for partial interfaces
  * Disallow a default value for required dictionary members in the grammar
  * Allow identifiers that start with a hyphen
  * Editorial: clarify interface mixins' elements vs. inherited ones
  * Correctly rethrow exceptions when using Call()
  * Clarify the interpretation of string literal tokens
  * Disallow underscore or hyphen only identifiers (#633)
  * Check ignoreNamedProps before the named property visibility algorithm.
  * Meta: point out commit instructions
  * Add cross-reference to 'exposed' in the [SecureContext] definition
  * Correct requirement to define Global properties on the object itself (#639)
  * Define the static operations on the interface object
  * Editorial: use the new signature of CreateBuiltinFunction
  * Editorial: gsnedders's name changed
  * Use PerformPromiseThen to perform some steps once a promise is settled
  * Editorial: correct 'callback interface' cross-reference
  * Add an algorithm to create a platform object
  * Add a Privacy and Security Considerations section
  * Disallow combining LegacyWindowAlias and LegacyNamespace
  * Clarify object creation in named constructors (#652)
  * Specify what typeof should return for exotic objects
  * Define "implements" checks using internal slots
  * Imperatively define the global property references
  * Formally define a [[Realm]] slot on platform objects
  * Editorial: remove redundant requirement for existence of 'length'
  * Clarify note about enum conversion exceptions
  * Editorial: improve language around conversions to JS
  * Editorial: fix some bikeshed link warnings
  * Remove the 'user object' concept.
  * Editorial: Clarify that attributes and operations may be namespace members (#678)
  * Disallow combining an indexed getter with a maplike/setlike
  * Deduplicate unforgeable member functions
  * Remove references to ECMAScript global environments
  * Editorial: mark former editors as such (#685)
  * Correct the 'indexed getter' cross-reference
  * Editorial: run platform algorithms on IDL objects
  * Imperatively create the interface prototype objects
  * Disallow constants to be null (#686)
  * Ensure that interface objects aren't used before they exist
  * Make the grammar check more robust
  * Formalize the 'this' and 'given value' ambient values
  * Remove support for overloading callbacks (#690)
  * Update the requirement about the definition of a constructor (#697)
  * Correct the effective overload set use for named constructors
  * Remove unused callback interface functionality
  * Tighten the grammar for the 'inherit' keyword (#704)
  * Fix a grammar mistake in the 'partial interface' definition
  * Add [AllowShared] to the list of applicable-to-types
  * Editorial: Remove a duplicate emu-nt start tag
  * Editorial: Add littledan to the acknowledgements
  * JavaScript defines typeof fully now
  * Remove a check for array index in [[Set]]
  * Stop claiming callback interfaces are interfaces
  * Editorial: Shorten the conditions in the [[Set]] algorithm
  * Editorial: Stop using markdown for bold
  * Editorial: Add min-width to distinguishable-table's cells
  * Editorial: Provide a definition for "compute an effective overload set" and use it (#727)
  * Define Synthetic Module Records
  * Remove the Error IDL type
  * Remove DOMException conversion section
  * Remove the 'exception types' definition
  * Clarify note about DOMException
  * the GetIterator operation in ECMA262 now takes three arguments
  * add emu-const element/css for ECMA262 "sync" constant
  * Meta: use "good first issue" label
  * Rename Module.Instantiate to Module.Link
  * Disallow combining Global with Constructor/NamedConstructor. (#745)
  * Use IDL this for the synthetic forEach method.
  * Define a way to specify a default value for dictionaries (the literal "{}") and require it to be specified for the dictionary arguments that are required to be optional. (#750)
  * Fix the grammar for CallbackInterfaceMembers. (#753)
  * Disallow Promise types in unions at the syntax level.
  * Remove unnecessary epsilon from PromiseType case.
  * Make DOMException serializable
  * Fix one inconsistent use of [] in examples. (#759)
  * Clarify the restrictions on SecureContext combinations. (#763)
  * Improve the definition of the void type. (#757)
  * Editorial: Add syntax highlighting to an example. (#764)
  * Add async_iterable support
  * Formalize value pairs.
  * Editorial: Split out an 'iterator result' algorithm.
  * Editorial: Don't use ReadWriteMapLike/ReadWriteSetLike after 'readonly'. (#766)
  * Allow `async` and `includes` as member names (#769)
  * Editorial: Fix markup in DOMException section.
  * Import the Promises Guide.
  * Stop using extended attributes for constructors
  * Use new syntax for DOMException. (#780)
  * Editorial: Add an example of using ordered map syntax for dictionaries. (#775)
  * Clarify the relation between the secure context definitions.
  * Allow "constructor" as an argument name (#786)
  * Revert "Use new syntax for DOMException. (#780)"
  * Fix example for 'upon settling'.
  * Use "react" for the spec promise.then() analog
  * Remove use of [Constructor] extended attribute
  * Define "overridden constructor steps"
  * Meta: fix Makefile escaping in fallback case
  * Fix "overriden" typo (#806)
  * Meta: fix and prevent Bikeshed warnings
  * effective overload set tuples: definition out of sync with new constructor ops
  * effective overload set can concern constructor ops or named constructors, not both at once
  * "constructor" is now a terminal, so prohibiting it as an identifier is redundant
  * Revert ""constructor" is now a terminal, so prohibiting it as an identifier is redundant"
  * add missing terminals to Other and ArgumentNameKeyword (#814)
  * Tweak async iterator algorithms
  * Allow "get the next iteration result" to reject
  * Editorial: async iterator cleanups
  * Allow async iterators to specify return algorithms
  * Fix typo: inferface. (#821)
  * Correct non-normative summary of the overload resolution algorithm. (#822)
  * fix(`callback interface`): Make `EventListener` into reference (#826)
  * Fix "this" typo in constructor operations example (#830)
  * Call Set with Throw=false for [PutForwards] (#832)
  * Fix typo: protoype (#834)
  * Align a bit with Infra
  * Stepping down as editor
  * "creating a frozen array" as link text
  * Meta: use Makefile from deploy.sh
  * Meta: markup [PrimaryGlobal] as only an extended attribute
  * Editorial: Better explanation of the TreatNonObjectAsNull extended attribute.
  * Introduce the observable array type
  * Include stringification of iterable in example
  * Merge branch 'master' into tostringtag

-- File Changes --

    M .gitignore (1)
    M .pr-preview.json (5)
    M .travis.yml (4)
    M Makefile (49)
    M README.md (31)
    A check-grammar.js (54)
    M deploy.sh (3)
    M index.bs (9847)
    A package.json (12)

-- Patch Links --

https://github.com/heycam/webidl/pull/861.patch

https://github.com/heycam/webidl/pull/861.diff


-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/heycam/webidl/pull/861

Received on Thursday, 19 March 2020 15:43:14 UTC