Fixed the window, document, location, and top properties of Window to be non-configurable. (ExE-Boss)
Other changes:
Added support for <input type=image> submitting forms. (jenseng)
Added the location setter to the Window object, which forwards to the location.href setter. Setting the URL is still only implemented for fragment navigations, however. (ExE-Boss)
Fixed defer=""<script> elements that are added after DOMContentLoaded to execute, instead of being skipped.
Fixed selectElement.selectedOptions being incorrect when optionElement.selected is set. This was a regression introduced in v20.0.1. Unfortunately this also reverts the performance improvement when appending <option> elements that was introduced then. (eps1lon)
Fixed the self, locationbar, menubar, personalbar, scrollbars, statusbar, toolbar, frames, parent, external, length, and screen properties of Window to be replaceable: that is, setting them will override their values, instead of having the new value be ignored. (ExE-Boss)
Fixed a few issues with JSOM.fromURL() in the browser build of jsdom. (LungZeno)
Version 20.0.3
Updated dependencies, notably w3c-xmlserializer, which fixes using DOMParser on XML documents containing emoji.
Version 20.0.2
Fixed xhr.abort() to no longer give an exception when the constructed XMLHttpRequest was invalid. (whamtet)
Fixed event.getModifierState() on MouseEvent and KeyboardEvent instances to properly consult the ctrlKey, altKey, metaKey, and shiftKey properties of the event. (juzerzarif)
Fixed custom element creation to not be affected by any modifications to the window.customElements property. (bicknellr)
Version 20.0.1
Improved the performance of appending <option> elements to <select> elements. (TheHound)
Fixed location.pathname getter to not crash when the JSDOM instance was created using an opaque-path URL, including the default URL of about:blank.
Fixed crypto.getRandomValues() to accept typed array subclasses. (sebamarynissen)
Updated various dependency minor versions. Notably, nwsapi fixed some selectors bugs, and tough-cookie fixed some cookie bugs.
Version 20.0.0
Node.js v14 is now the minimum supported version.
Added crypto.getRandomValues(). (sjrd)
Added HTMLFormControlsCollection and RadioNodeList, so formEl.elements now behaves correctly. (UndefinedBehavior)
Added the signal option to addEventListener(). (cheap-glitch)
Fixed the :root pseudoclass to work correctly. (hughs-ch)
Updated parse5, bringing along some HTML parsing and serialization fixes. (fb55)
Version 19.0.0
Changed jsdom.nodeLocation() to return undefined when used on nodes that originate via fragment parsing (e.g., via innerHTML). Previously it would return based on the node location of the fragment string, which made node locations unreliable with respect to the original document source. This restores the behavior that was present in v14.0.0, and was accidentally broken in v14.1.0. (bakkot)
Fixed calling window.close() inside the Window's load event to no longer crash. (MattiasBuelens)
Version 18.1.1
Fixed connectedCallback to fire in situations involving document fragments, which was broken in v18.0.1. (GrantGryczan)
Version 18.1.0
Fixed headers.append() and headers.set() to normalize values. (MattiasBuelens)
Fixed pageshow events to have bubbles: true and cancelable: true. (MattiasBuelens)
Implemented the reason property on AbortSignals, along with the corresponding reason argument to abortSignal.abort() and AbortSignal.abort(). (MattiasBuelens)
Version 18.0.1
Fixed live Ranges to update correctly after calling node.normalize(). (hgiesel)
Fixed the window, document, location, and top properties of Window to be non-configurable. (ExE-Boss)
Other changes:
Added support for <input type=image> submitting forms. (jenseng)
Added the location setter to the Window object, which forwards to the location.href setter. Setting the URL is still only implemented for fragment navigations, however. (ExE-Boss)
Fixed defer=""<script> elements that are added after DOMContentLoaded to execute, instead of being skipped.
Fixed selectElement.selectedOptions being incorrect when optionElement.selected is set. This was a regression introduced in v20.0.1. Unfortunately this also reverts the performance improvement when appending <option> elements that was introduced then. (eps1lon)
Fixed the self, locationbar, menubar, personalbar, scrollbars, statusbar, toolbar, frames, parent, external, length, and screen properties of Window to be replaceable: that is, setting them will override their values, instead of having the new value be ignored. (ExE-Boss)
Fixed a few issues with JSOM.fromURL() in the browser build of jsdom. (LungZeno)
20.0.3
Updated dependencies, notably w3c-xmlserializer, which fixes using DOMParser on XML documents containing emoji.
20.0.2
Fixed xhr.abort() to no longer give an exception when the constructed XMLHttpRequest was invalid. (whamtet)
Fixed event.getModifierState() on MouseEvent and KeyboardEvent instances to properly consult the ctrlKey, altKey, metaKey, and shiftKey properties of the event. (juzerzarif)
Fixed custom element creation to not be affected by any modifications to the window.customElements property. (bicknellr)
20.0.1
Improved the performance of appending <option> elements to <select> elements. (TheHound)
Fixed location.pathname getter to not crash when the JSDOM instance was created using an opaque-path URL, including the default URL of about:blank.
Fixed crypto.getRandomValues() to accept typed array subclasses. (sebamarynissen)
Updated various dependency minor versions. Notably, nwsapi fixed some selectors bugs, and tough-cookie fixed some cookie bugs.
20.0.0
Node.js v14 is now the minimum supported version.
Added crypto.getRandomValues(). (sjrd)
Added HTMLFormControlsCollection and RadioNodeList, so formEl.elements now behaves correctly. (UndefinedBehavior)
Added the signal option to addEventListener(). (cheap-glitch)
Fixed the :root pseudoclass to work correctly. (hughs-ch)
Updated parse5, bringing along some HTML parsing and serialization fixes. (fb55)
19.0.0
Changed jsdom.nodeLocation() to return undefined when used on nodes that originate via fragment parsing (e.g., via innerHTML). Previously it would return based on the node location of the fragment string, which made node locations unreliable with respect to the original document source. This restores the behavior that was present in v14.0.0, and was accidentally broken in v14.1.0. (bakkot)
Fixed calling window.close() inside the Window's load event to no longer crash. (MattiasBuelens)
18.1.1
Fixed connectedCallback to fire in situations involving document fragments, which was broken in v18.0.1. (GrantGryczan)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps jsdom from 16.4.0 to 21.0.0.
Release notes
Sourced from jsdom's releases.
... (truncated)
Changelog
Sourced from jsdom's changelog.
... (truncated)
Commits
a7c8545
Version 21.0.00c8eb3a
Minor fixes to many Window properties4a7f244
Clean up some pre-Node v14 support codee8f7ca8
Fix defer="" scripts inserted after DOMContentLoaded0c5aea7
Fix JSDOM.fromURL() bugs in the browser build77f530d
Remove redundant style setterdc20dbc
Revert "Improve performance of appending <option> to <select>"bda8241
Test selectedOptions + selected interaction3737347
Minor readme updates59a8af3
Allow <input type=image> to submit formsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)