mirror of
https://github.com/S2-/minifyfromhtml.git
synced 2025-08-03 04:10:04 +02:00
update node modules
This commit is contained in:
181
node_modules/jsdom/Changelog.md
generated
vendored
181
node_modules/jsdom/Changelog.md
generated
vendored
@@ -1,3 +1,158 @@
|
||||
<!-- Style guide:
|
||||
|
||||
* Use past tense verbs to start the sentence, e.g. "Fixed", "Added", "Removed", ...
|
||||
* Each bullet point is a sentence (or more), and so ends with a period.
|
||||
* Package names are in `code`, sometimes [`linked`]().
|
||||
* Prefer referring to methods and properties via `someInstance.prop`, instead of `ClassName.prototype.prop`. (Never use `ClassName.prop` except for statics.)
|
||||
* Refer to attributes via `attr=""`.
|
||||
* Refer to elements via `<element>`.
|
||||
* Never use the IDL terms "interface", "attribute", or "operation".
|
||||
* URL schemes are in `code`, e.g. `data:`.
|
||||
* Except in the headings, all version numbers get a "v" prefix, e.g. v12.2.0.
|
||||
* Follow the bullet point with parenthetical GitHub usernames when contributed by a non-core team member, e.g. "Fixed foo. (person)"
|
||||
|
||||
Other guidelines:
|
||||
|
||||
* Commit messages are primarily for jsdom developers. Changelog entries are primarily for users. Usually you cannot reuse the commit message.
|
||||
* Sometimes a single commit may expand to multiple changelog entries.
|
||||
* Do not include commits that have no user-facing impact, e.g. test rolls, refactorings, benchmark additions, etc.
|
||||
* For regression fixes, note the version in which something regressed.
|
||||
* Breaking changes get their own section.
|
||||
* Group in the order "Added", "Removed", "Changed", "Fixed".
|
||||
* Roughly order changes within those groupings by impact.
|
||||
-->
|
||||
|
||||
## 14.0.0
|
||||
|
||||
Breaking changes:
|
||||
|
||||
* `JSDOM.fragment()` now creates fragments whose document has no [browsing context](https://html.spec.whatwg.org/multipage/#concept-document-bc), i.e. no associated `Window`. This means the `defaultView` property will be null, resources will not load, etc.
|
||||
* `JSDOM.fragment()`, called with no arguments, now creates a `DocumentFragment` with no children, instead of with a single child text node whose data was `"undefined"`.
|
||||
|
||||
Other changes:
|
||||
|
||||
* Fixed a regression in v13.2.0 when calling `element.blur()` on a focused element.
|
||||
* Fixed inserting `<link>` elements into documents with no browsing context to no longer crash if the originating `JSDOM` was configured to fetch the resource. Now, per spec, `<link>` elements only attempt to fetch if they are browsing-context connected.
|
||||
* Fixed `<template>` elements to have the correct semantics, of using a separate browsing-context-less document to store its contents. In particular this means resources will not be fetched for elements inside the `<template>`, as per spec.
|
||||
|
||||
## 13.2.0
|
||||
|
||||
* Added support for `MutationObserver`s! (pmdartus)
|
||||
* Added support for XML documents loaded in frames and iframes; previously this would error.
|
||||
* Added the `<progress>` element's `value`, `max`, and `position` properties.
|
||||
* Added `navigator.plugins` and `navigator.mimeTypes`. (But, they are always empty.)
|
||||
* Fixed `<summary>` elements respond to click events by toggling their parent `<details>`.
|
||||
* Fixed `<summary>` elements to be focusable.
|
||||
* Fixed XML document DOCTYPE parsing to preserve any custom name values.
|
||||
* Fixed XML documents to default to UTF-8, not windows-1252 like HTML documents do.
|
||||
* Fixed all events fired by jsdom to have `isTrusted` set to `true`.
|
||||
* Fixed `DOMParser`-created documents to have their `readyState` set to `"complete"`.
|
||||
* Fixed how nested `<fieldset>`s get disabled.
|
||||
* Fixed `getComputedStyle()` to throw a sensible exception when passed the wrong argument, instead of one that exposes jsdom internals.
|
||||
* Upgraded our [`saxes`](https://github.com/lddubeau/saxes) dependency, so that it now correctly errors on XML fragments like `<foo bar:="1"/>`.
|
||||
|
||||
## 13.1.0
|
||||
|
||||
* Added `el.insertAdjacentElement()` and `el.insertAdjacentText()`.
|
||||
* Added the firing of a cancelable `"reset"` event to `form.reset()`. (epfremmer)
|
||||
* Added the `type`, `value`, and `defaultValue` properties to `<output>` elements, including their form reset behavior. (epfremmer)
|
||||
* Added the `outputEl.htmlFor` property.
|
||||
* Fixed the performance of parsing large text nodes, particularly noticeable for large inline `<style>` or `<script>` elements. This regressed in v11.6.0. To learn more, see [V8 issue #6730](https://bugs.chromium.org/p/v8/issues/detail?id=6730#c4).
|
||||
* Fixed the `style` property on `<a>` and `<area>` elements. This regressed in v13.0.0.
|
||||
* Fixed `node.isConnected` to not always return false for nodes inside a shadow tree. (pmdartus)
|
||||
* Fixed `<button type="reset">` and `<input type="reset">` elements to actually perform a form reset when clicked, instead of doing nothing. (epfremmer)
|
||||
* Fixed `el.setCustomValidity()` for `<output>` and `<fieldset>`.
|
||||
* Fixed activation behavior when dispatching bubbling click events, so that for example calling `el.click()` on the child of a submit button element will submit the form.
|
||||
* Fixed our XML parsing code to ignore text outside the root element, instead of treating it as an error. (lddubeau)
|
||||
* Fixed XML serialization when elements had an unknown prefix.
|
||||
* Fixed radio button group name matching to be case-sensitive, per [a spec update](https://github.com/whatwg/html/commit/6acdb2122298d2bb7bb839c0a61b4e1f9b0f9bc9).
|
||||
* Fixed `"focus"`/`"blur"` events to be composed.
|
||||
* Fixed `mediaElement.duration` to default to `NaN`.
|
||||
* Fixed `olEl.start` to default to `1`.
|
||||
* Fixed using `XMLHttpRequest` against non-existant `file:` URLs to treat that as a network error, instead of crashing. (pascalbayer) Note that in the future we may completely disable `XMLHttpRequest` usage against `file:` URLs to follow the browser security model.
|
||||
* Fixed `document.title` in SVG documents.
|
||||
* Fixed `titleElement.text` to return the child text content, instead of being the same as `titleElement.innerHTML`.
|
||||
* Fixed `<textarea>`s to properly account for child CDATA section nodes changing.
|
||||
* Fixed the value of `Element.prototype[Symbol.unscopables]`.
|
||||
|
||||
## 13.0.0
|
||||
|
||||
Breaking change:
|
||||
|
||||
* Removed support for v1.x of the [`canvas`](https://github.com/Automattic/node-canvas) package, in favor of v2.x. This also removes support for `canvas-prebuilt`, since `canvas` v2.x has a built-in prebuilt version.
|
||||
|
||||
Other changes:
|
||||
|
||||
* Added proper XML serialization, based on the [`w3c-xmlserializer`](https://github.com/jsdom/w3c-xmlserializer) package. Previously we were just using the HTML serialization, even in XML documents.
|
||||
* Added the `storageEvent.initStorageEvent()` method.
|
||||
* Added support for the `passive` option to `addEventListener()`.
|
||||
* Added the `relList` property to `<a>`, `<area>`, and `<link>` elements.
|
||||
* Fixed our implementation of the node tree modification constraints (for example the [ensure pre-insertion validity](https://dom.spec.whatwg.org/#concept-node-ensure-pre-insertion-validity) algorithm). It is no longer possible to add, remove, or move nodes to create impossible DOM trees. (pmdartus)
|
||||
|
||||
## 12.2.0
|
||||
|
||||
* Added support for shadow DOM! This includes shadow roots, slots, composed events, and more. (pmdartus)
|
||||
* Added the `element.toggleAttribute()` method.
|
||||
* Fixed `XMLHttpRequest` sometimes sending an empty request body after a preflight request. (andreasf)
|
||||
* Fixed the `formElement.form` property to use an algorithm that also checks the `form=""` attribute, instead of always looking for the closest ancestor `<form>` element. (jamietre)
|
||||
* Stopped swallowing errors when the `canvas` or `canvas-prebuilt` packages were installed, but failed to load. (joscha)
|
||||
|
||||
## 12.1.0
|
||||
|
||||
* Dramatically upgraded our XML parser, from the unmaintained [`sax`](https://github.com/isaacs/sax-js) package to the well-maintained [`saxes`](https://github.com/lddubeau/saxes) replacement. This increases our specification conformance, including rejecting certain ill-formed XML documents that were previously accepted, and properly handling other constructs like empty comments, CDATA sections, and `<script>` elements. (lddubeau)
|
||||
* Added `fieldsetEl.elements` and `fieldsetEl.type` properties.
|
||||
* Added the `options` parameter to `dom.runVMScript()`. (SimenB)
|
||||
* Added the ability for custom resource loader `fetch()` implementations to see what element initiated the fetch. (sarvaje)
|
||||
* Fixed `input` and `change` events for `<input>` elements to be trusted and uncancelable.
|
||||
* "Fixed" `<script>`s with the `async` attribute to not execute before sync `<script>`s that precede them. We still do not, in general, have proper execution of scripts during the initial parsing of a document, so this fix is more of a reduction of badness than an alignment with the specification. This behavior regressed in v12.0.0. (sarvaje)
|
||||
|
||||
## 12.0.0
|
||||
|
||||
This major release brings along our [new resource loader API](https://github.com/jsdom/jsdom#loading-subresources), finally bringing all the capabilities from jsdom v9 to the new (jsdom v10+) API. Thanks very much to [@sarvaje](https://github.com/sarvaje) for his work to make this possible!
|
||||
|
||||
Breaking changes:
|
||||
|
||||
* jsdom now requires Node.js v8.
|
||||
* Removed the old jsdom API, as the new API now has all the capabilities you need.
|
||||
* Updated our [`parse5`](https://github.com/inikulin/parse5/) dependency to v5, which changes the format of the node locations returned by `dom.nodeLocation()`.
|
||||
* Updated our [`whatwg-url`](https://github.com/jsdom/whatwg-url) dependency to v7, which changes the origin of `file:` URLs to be an opaque origin (and thus `file:` URLs are no longer same origin to each other).
|
||||
|
||||
Other changes:
|
||||
|
||||
* Added `countReset()`, `dir()` and `dirxml()` methods to `console`.
|
||||
* Added the `InputEvent` class.
|
||||
* Added `window.status`.
|
||||
* Added `htmlElement.draggable`.
|
||||
* Fixed `window.frameElement` to correctly return an actual `HTMLElement` instance, instead of a jsdom internal class.
|
||||
* Fixed cloning of `textarea` elements to preserve their values.
|
||||
* Fixed `select.selectedOptions` sometimes returning outdated results.
|
||||
* Fixed CSS selection APIs sometimes returning outdated results, especially for state pseudo-class selectors like `:checked`.
|
||||
* Fixed CSS selection APIs to throw an error for invalid selectors even when used on empty nodes.
|
||||
* Fixed `window.name` to default to the empty string, per spec, instead of `"nodejs"`.
|
||||
* Fixed the default User-Agent to say "unknown OS" instead of "undefined" when jsdom is used in web browsers.
|
||||
|
||||
## 11.12.0
|
||||
|
||||
* Added `window.localStorage`, `window.sessionStorage`, and `StorageEvent` support. These are currently only stored in-memory; file an issue if you need persistent (on-disk) storage capability so we can discuss adding that. This feature includes the new `storageQuota` option for controlling how much can be stored.
|
||||
* Added `element.closest()`. (caub)
|
||||
* Changed `"hashchange"` and `"popstate"` events to no longer bubble, per a specification update.
|
||||
* Fixed the old API in Node.js v10 to not throw, when given input that is not a valid file path (such as a typical HTML string).
|
||||
* Upgraded `cssstyle` to v1.0.0, bringing along various fixes to our CSS parser and object model. (eddies)
|
||||
* Upgraded `nwsapi` to v2.0.7, bringing along various fixes to our selector engine.
|
||||
|
||||
## 11.11.0
|
||||
|
||||
* Added `node.getRootNode()`. (FrecksterGIT)
|
||||
* Added `label.control`. (FrecksterGIT)
|
||||
* Added `el.labels` for form control elements. (FrecksterGIT)
|
||||
* Fixed the `contentType` of `Document`s created through `<iframe>`s.
|
||||
* Fixed the `contentType` and `origin` of `Document`s created through `document.implementation.createDocument()`.
|
||||
* Fixed `sourceEl.srcset` to return the value of the `srcset=""` attribute, instead of the `cite=""` attribute.
|
||||
* Fixed `node.normalize()` to not modify non-`Text` nodes. (lddubeau)
|
||||
* Upgraded `cssstyle` to v0.3.1, bringing along various fixes to our CSS parser and object model. (jsakas)
|
||||
* Upgraded `whatwg-url` to v6.4.1, fixing the interaction of `URL`'s `href` and `searchParams` properties.
|
||||
* Upgraded our selector matching engine from `nwsmatcher` to `nwsapi`, bringing along extensive fixes, performance improvements, and additional selector support.
|
||||
|
||||
## 11.10.0
|
||||
|
||||
* Added `event.srcElement` and `event.returnValue`.
|
||||
@@ -6,7 +161,7 @@
|
||||
## 11.9.0
|
||||
|
||||
* Added `node.lookupPrefix()`, `node.lookupNamespaceURI()` and `node.isDefaultNamespace()`.
|
||||
* Fixed the cloning of `Document`s; previously it would not clone all of the appropriate state, and wouuld sometimes add an extra document type node.
|
||||
* Fixed the cloning of `Document`s; previously it would not clone all of the appropriate state, and would sometimes add an extra document type node.
|
||||
* Fixed various edge cases in the `textContent` and `nodeValue` properties.
|
||||
* Fixed `canvas.toBlob()` to properly pass through the JPEG quality argument, instead of always passing zero to `node-canvas`. (challakoushik)
|
||||
|
||||
@@ -23,8 +178,8 @@
|
||||
* Fixed an exception that would sometimes get raised when removing an `<img>` element's `src=""` attribute. (atsikov)
|
||||
* Fixed `"abort"` events on `AbortSignal`s to have their `isTrusted` set to true.
|
||||
* Fixed some argument conversions in `XMLHttpRequest`'s `open()` method.
|
||||
* Improved MIME type and data: URL parsing throughout jsdom, by using the new [`whatwg-mimetype`](https://www.npmjs.com/package/whatwg-mimetype) and [`data-urls`](https://www.npmjs.com/package/data-urls) packages.
|
||||
* Removed some unnnecessary `.webidl` files that were included in the npm package.
|
||||
* Improved MIME type and `data:` URL parsing throughout jsdom, by using the new [`whatwg-mimetype`](https://www.npmjs.com/package/whatwg-mimetype) and [`data-urls`](https://www.npmjs.com/package/data-urls) packages.
|
||||
* Removed some unnecessary `.webidl` files that were included in the npm package.
|
||||
|
||||
## 11.6.2
|
||||
|
||||
@@ -271,7 +426,7 @@ Apart from the new API, the following changes were made, with breaking changes b
|
||||
* Added the `blob.isClosed` property. (TimothyGu)
|
||||
* Fixed the `file.lastModified` property to be on `File` instead of on `Blob`. (TimothyGu)
|
||||
* Fixed the `file.lastModified` property to default to the time of the `File` object's creation, not the time that the property is accessed. (TimothyGu)
|
||||
* Fixed a minor edge-case regression where non-HTML elements with the name `"iframe"` became focusable in 9.7.0.
|
||||
* Fixed a minor edge-case regression where non-HTML elements with the name `"iframe"` became focusable in v9.7.0.
|
||||
|
||||
## 9.7.1
|
||||
|
||||
@@ -301,11 +456,11 @@ Apart from the new API, the following changes were made, with breaking changes b
|
||||
|
||||
## 9.4.5
|
||||
|
||||
* Fixed `"error"` events from failed resource loads going missing since 9.4.3. I really should have tested that release better.
|
||||
* Fixed `"error"` events from failed resource loads going missing since v9.4.3. I really should have tested that release better.
|
||||
|
||||
## 9.4.4
|
||||
|
||||
* Fixed a leftover `console.log` introduced in the error handling path in 9.4.3.
|
||||
* Fixed a leftover `console.log` introduced in the error handling path in v9.4.3.
|
||||
|
||||
## 9.4.3
|
||||
|
||||
@@ -378,7 +533,7 @@ Apart from the new API, the following changes were made, with breaking changes b
|
||||
* Fixed `formEl.action` to return a value resolved relative to the document URL, or to return the document URL if the corresponding attribute is missing or empty.
|
||||
* Sped up XPath execution. (vsemozhetbyt)
|
||||
* Fixed `window.close()` not correctly clearing event listeners on the document. (Ojek)
|
||||
* Fixed a regression introduced in 9.0.0 where invalid CSS would cause a crash while attempting to parse it. Instead, a `"jsdomError"` will now be emitted to the virtual console.
|
||||
* Fixed a regression introduced in v9.0.0 where invalid CSS would cause a crash while attempting to parse it. Instead, a `"jsdomError"` will now be emitted to the virtual console.
|
||||
|
||||
## 9.0.0
|
||||
|
||||
@@ -416,7 +571,7 @@ Your normal change log follows:
|
||||
## 8.4.0
|
||||
|
||||
* Added an implementation of the `TreeWalker` class (and `document.createTreeWalker`). (garycourt)
|
||||
* Fixed a few minor bugs in URL parsing and the `URL` API, by upgrading to `whatwg-url` 2.0.1.
|
||||
* Fixed a few minor bugs in URL parsing and the `URL` API, by upgrading to `whatwg-url` v2.0.1.
|
||||
* Fixed a few issues with generated files in the published package, which seem to have impacted webpack users.
|
||||
|
||||
## 8.3.1
|
||||
@@ -430,7 +585,7 @@ Your normal change log follows:
|
||||
* `load` and `error` events will fire on the `<img>` element, according to how well image decoding goes.
|
||||
* You can draw images onto canvases, using the newly-enabled `canvasContext.drawImage` API.
|
||||
* Added `canvasContext.createPattern` and `canvasContext.toBlob`, when the `canvas` npm package is installed. (lehni)
|
||||
* Added a basic implementation of the [Page Visibility API](https://w3c.github.io/page-visibility/), in particular a `document.hidden` property that always returns `true`, and a `document.visibilityState` property that always returns `"prerender"`. This is a more standard alternative to our proprietary `navigator.noUI`, which will be removed whenever we release 9.0.0. (kapouer)
|
||||
* Added a basic implementation of the [Page Visibility API](https://w3c.github.io/page-visibility/), in particular a `document.hidden` property that always returns `true`, and a `document.visibilityState` property that always returns `"prerender"`. This is a more standard alternative to our proprietary `navigator.noUI`, which will be removed whenever we release v9.0.0. (kapouer)
|
||||
|
||||
## 8.2.0
|
||||
|
||||
@@ -665,9 +820,9 @@ Finally, if you're a loyal jsdom fan whose made it this far into the changelog,
|
||||
## 5.6.1
|
||||
|
||||
* Fixed an accidentally-created global `attribute` variable if you ever called `createAttributeNS`.
|
||||
* Dependency upgrades fixed a couple of bugs, although you would have gotten these anyway with a clean jsdom 5.6.0 install:
|
||||
- Parsing of CSS properties that use `url("quoted string")` now works correctly, as of `cssstyle` 0.2.29.
|
||||
- Selectors for the empty string, like `div[title=""]`, now work correctly, as of `nwmatcher` 1.3.6.
|
||||
* Dependency upgrades fixed a couple of bugs, although you would have gotten these anyway with a clean jsdom v5.6.0 install:
|
||||
- Parsing of CSS properties that use `url("quoted string")` now works correctly, as of `cssstyle` v0.2.29.
|
||||
- Selectors for the empty string, like `div[title=""]`, now work correctly, as of `nwmatcher` v1.3.6.
|
||||
|
||||
## 5.6.0
|
||||
|
||||
@@ -698,7 +853,7 @@ Additionally, Joris-van-der-Wel added [a benchmarking framework](https://github.
|
||||
|
||||
## 5.4.1
|
||||
|
||||
* Fixed to work with browserify again (regression introduced in 5.4.0).
|
||||
* Fixed to work with browserify again (regression introduced in v5.4.0).
|
||||
|
||||
## 5.4.0
|
||||
|
||||
|
Reference in New Issue
Block a user