Skip to content

Releases: jsdom/webidl2js

14.0.0

16 Feb 21:41
Compare
Choose a tag to compare
  • (Breaking) Raised minimum Node.js version to v10.
  • Added processCEReactions and processHTMLConstructor options to the API. See the documentation for more.
  • Improved the performance of generated wrappers that used legacy platform object features (i.e. named/indexed getters/setters). (#156, @ExE-Boss)

13.0.0

03 Jan 22:33
Compare
Choose a tag to compare
  • (Breaking) Removed support for [Constructor] in favor of supporting constructor operations, per the Web IDL spec update.
  • Made it possible to have dependency cycles involving the generated files, as long as their exports are referenced after module startup.

12.0.0

14 Dec 19:36
Compare
Choose a tag to compare
  • (Breaking) Removed support for exception types, since they were removed from Web IDL.
  • Fixed conversions and type checks involving the various BufferSource types to avoid using instanceof, to prevent multi-global issues.

11.0.0

22 Nov 01:18
Compare
Choose a tag to compare

This version dramatically changes the code generated by webidl2js. It now is designed for installing new constructors and prototypes on a given global object, instead of exporting constructors directly.

See the updated README for more usage details, but a quick summary of the changes:

  • The generated files for interfaces now export an install(globalObject) function, instead of an interface constructor.
  • The create() and createImpl() exports now take a global object as their new first parameter, making their signature (globalObject, constructorArgs, privateData).
  • Similarly, impl class constructors now also take a global object as their first argument, given them the same signature.
  • The expose export was removed, as it was not generally used. We may introduce better support for exposure in the future, probably as an option to the install() export.
  • [WebIDL2JSFactory] was removed, as it is no longer necessary: all interfaces are now per-global object.

10.0.0

13 Oct 14:38
Compare
Choose a tag to compare

Breaking changes:

  • Raised Node.js minimum version to v8. This allowed us to remove the getOwnPropertyDescriptors polyfill in the generated utilities file, as well as the dependency on co. (#132, #134, @pmdartus)
  • Removed support for old-style mixins. (#135, @pmdartus)
  • Changed the [Reflect] implementation to use the setAttributeNS and getAttributeNS methods on the impl classes, instead of the wrapper classes. (#136, @pmdartus)

Other fixes:

  • Fixed warning in the output about the "babylon" parser.
  • Fixed the prototype of the [Symbol.unscopables] value to be null instead of Object.prototype, following the spec.

9.2.2

27 Sep 06:30
Compare
Choose a tag to compare

Fix operation ordering of record type coercion, which could have caused a subtle bug when a Proxy object is provided as the input.

9.2.1

31 Mar 22:54
Compare
Choose a tag to compare

Fixed [Reflect] to not modify or return attributes with namespaces; the getters/setters now only operate on null-namespace content attributes.

9.2.0

11 Dec 14:31
Compare
Choose a tag to compare

This release includes the features that were supposed to land in v9.1.0, but have since been reverted. The underlying issues were fixed by @saschanaz in #116, allowing us to re-land those commits.

9.1.2

03 Dec 04:45
Compare
Choose a tag to compare

Also reverted the fix to [Unscopeable] and mixins, since it built off of the previous mixins work.

This release should be identical to v9.0.1.

9.1.1

03 Dec 04:38
Compare
Choose a tag to compare

Reverted support for interface mixins. The accompanying upgrade to a newer version of our webidl2 dependency brought along some other subtle breaking change, which is being investigated in jsdom/jsdom#2443. Until we have that sorted out, this release reverts interface mixin support in order to avoid regressions.

This release was broken upon release and cannot be used, as more code needed to be reverted. Use v9.1.2 (or v9.0.1) instead.