Fixed Node v10 and v11 support when runScripts was set.
Fixed the behavior when changing an <input>'s type="" attribute.
Fixed input validation behavior for <input type="range"> when max="" is less than min="".
Version 16.0.0
For this release we'd like to welcome @pmdartus to the core team. Among other work, he's driven the heroic effort of constructor prototype and reform in jsdom and its dependencies over the last few months, to allow us to move away from shared constructors and prototypes, and set the groundwork for custom elements support (coming soon!).
Breaking changes:
Node v10 is now the minimum supported version.
The dom.runVMScript() API has been replaced with the more general dom.getInternalVMContext() API.
Each jsdom Window now creates new instances of all the web platform globals. That is, our old shared constructor and prototypes caveat is no longer in play.
Each jsdom Window now exposes all JavaScript-spec-defined globals uniformly. When runScripts is disabled, it exposes them as aliases of the ones from the outer Node.js environment. Whereas when runScripts is enabled, it exposes fresh copies of each global from the new scripting environment. (Previously, a few typed array classes would always be aliased, and with runScripts disabled, the other classes would not be exposed at all.)
Other changes:
Added the AbstractRange, Range, StaticRange, Selection, and window.getSelection() APIs.
Added working constructors for Comment, Text, and DocumentFragment.
Added valueAsDate, valueAsNumber, stepUp() and stepDown() to <input> elements. (kraynel)
Added window.origin.
Removed document.origin.
Fixed \<template> to work correctly inside XML documents.
Fixed some bugs which would cause jsdom to choose the wrong character encoding because it was failing to detect <meta charset> or <meta http-equiv="charset"> elements.
Fixed input.type to default to "text". (connormeredith)
Fixed incorrect validation errors for <input> with fractional values for their step="" attribute. (kontomondo)
Fixed incorrect validation errors on readonly <input> elements.
Fixed fileReader.readAsDataURL() to always base64-encode the result. (ytetsuro)
Fixed inserting <img> elements into documents without a browsing context to no longer crash when the canvas package is installed.
Fixed a memory leak when using window.setTimeout() or window.setInterval().
Improved the performance of getComputedStyle(). (eps1lon)
Version 15.2.1
Fixed JSDOM.fromURL() handling of URLs with hashes in them, to no longer send the hash to the server and append an extra copy of it when constructing the Document. (rchl)
Fixed focusing an already-focused element to correctly do nothing, instead of firing additional focus events. (eps1lon)
Fixed typo in the not-implemented message for mediaElement.addTextTrack(). (mtsmfm)
Upgraded nwsapi minimum version to 2.2.0, which fixes issues with ::-webkit- prefixed pseudo-elements and namespaced attribute selectors.
Version 15.2.0
Added basic style inheritance in getComputedStyle() for the 'visibility' property. This sets the foundation for further work on inheritance, cascading, and specificity. (eps1lon)
Added shadowRoot.activeElement.
Added readystatechange events during document loading.
Added a stub for form.requestSubmit(), to match our existing stub for form.submit().
Changed el.tabIndex's default value, when no tabindex="" attribute was set, to reflect the updated specification.
Changed the exception thrown by el.attachShadow() on something that's already a shadow host, to reflect the updated specification.
Fixed the validation logic for <input type="range">.
Fixed selectEl.value when no <option> is selected to return the empty string, instead of the value of the first option. (tgohn)
Fixed various correctness issues with new FormData(formElement). (brendo)
Fixed Node v10 and v11 support when runScripts was set.
Fixed the behavior when changing an <input>'s type="" attribute.
Fixed input validation behavior for <input type="range"> when max="" is less than min="".
16.0.0
For this release we'd like to welcome @pmdartus to the core team. Among other work, he's driven the heroic effort of constructor prototype and reform in jsdom and its dependencies over the last few months, to allow us to move away from shared constructors and prototypes, and set the groundwork for custom elements support (coming soon!).
Breaking changes:
Node v10 is now the minimum supported version.
The dom.runVMScript() API has been replaced with the more general dom.getInternalVMContext() API.
Each jsdom Window now creates new instances of all the web platform globals. That is, our old shared constructor and prototypes caveat is no longer in play.
Each jsdom Window now exposes all JavaScript-spec-defined globals uniformly. When runScripts is disabled, it exposes them as aliases of the ones from the outer Node.js environment. Whereas when runScripts is enabled, it exposes fresh copies of each global from the new scripting environment. (Previously, a few typed array classes would always be aliased, and with runScripts disabled, the other classes would not be exposed at all.)
Other changes:
Added the AbstractRange, Range, StaticRange, Selection, and window.getSelection() APIs.
Added working constructors for Comment, Text, and DocumentFragment.
Added valueAsDate, valueAsNumber, stepUp() and stepDown() to <input> elements. (kraynel)
Added window.origin.
Removed document.origin.
Fixed \<template> to work correctly inside XML documents.
Fixed some bugs which would cause jsdom to choose the wrong character encoding because it was failing to detect <meta charset> or <meta http-equiv="charset"> elements.
Fixed input.type to default to "text". (connormeredith)
Fixed incorrect validation errors for <input> with fractional values for their step="" attribute. (kontomondo)
Fixed incorrect validation errors on readonly <input> elements.
Fixed fileReader.readAsDataURL() to always base64-encode the result. (ytetsuro)
Fixed inserting <img> elements into documents without a browsing context to no longer crash when the canvas package is installed.
Fixed a memory leak when using window.setTimeout() or window.setInterval().
Improved the performance of getComputedStyle(). (eps1lon)
15.2.1
Fixed JSDOM.fromURL() handling of URLs with hashes in them, to no longer send the hash to the server and append an extra copy of it when constructing the Document. (rchl)
Fixed focusing an already-focused element to correctly do nothing, instead of firing additional focus events. (eps1lon)
Fixed typo in the not-implemented message for mediaElement.addTextTrack(). (mtsmfm)
Upgraded nwsapi minimum version to 2.2.0, which fixes issues with ::-webkit- prefixed pseudo-elements and namespaced attribute selectors.
15.2.0
Added basic style inheritance in getComputedStyle() for the 'visibility' property. This sets the foundation for further work on inheritance, cascading, and specificity. (eps1lon)
Added shadowRoot.activeElement.
Added readystatechange events during document loading.
Added a stub for form.requestSubmit(), to match our existing stub for form.submit().
Changed el.tabIndex's default value, when no tabindex="" attribute was set, to reflect the updated specification.
Changed the exception thrown by el.attachShadow() on something that's already a shadow host, to reflect the updated specification.
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.
If all status checks pass Dependabot will automatically merge this pull request.
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)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Automerge options (never/patch/minor, and dev/runtime dependencies)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Bumps jsdom from 9.11.0 to 16.0.1.
Release notes
Sourced from jsdom's releases.
Changelog
Sourced from jsdom's changelog.
Commits
afc85c8
Version 16.0.16472db4
Fix Node v10 and Node v11 support16c9856
Improved "expected fail" messages for web platform testse2dbad8
Add support for <input type=time> reverse range validation94b40d3
Implement <input> type state switch logicc292572
Add comment about radio button activation muddiness52109d5
Clean up <input> typeMismatch constraint validation4a374e5
Clean up _defaultStepBase in <input>92e9adb
Consistently use <input>._value for constraint validation11664ca
More consistent applicability checking for <input> attributesDependabot 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
.If all status checks pass Dependabot will automatically merge this pull request.
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) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)