chore(front): update dependency jsdom to v24 (develop)
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
jsdom | devDependencies | major | 20.0.3 -> 24.0.0 |
Release Notes
jsdom/jsdom (jsdom)
v24.0.0
This release reverts our selector engine back to nwsapi
. As discussed in #3659, the performance regressions from @asamuzakjp/dom-selector
turned out to be higher than anticipated. In the future, we can revisit @asamuzakjp/dom-selector
after it reaches nwsapi
's performance on the two real-world benchmarks provided by the community.
Since reverting to nwsapi
causes several functionality regressions, e.g. removing :has()
support, we've decided to make this a major version.
Additionally:
- Small fixes to edge-case behavior of the following properties:
input.maxLength
,input.minLength
,input.size
,progress.max
,tableCell.colSpan
,tableCell.rowSpan
,tableCol.span
,textArea.cols
,textArea.maxLength
,textArea.minLength
,textArea.rows
.
v23.2.0
This release switches our CSS selector engine from nwsapi
to @asamuzakjp/dom-selector
. The new engine is more actively maintained, and supports many new selectors: see the package's documentation for the full list. It also works better with shadow trees.
There is a potential of a performance regression due to this change. In our stress test benchmark, which runs most of these 273 selectors against this 128 KiB document, the new engine completes the benchmark only 0.25x as fast. However, we're hopeful that in more moderate usage this will not be a significant issue. Any help speeding up @asamuzakjp/dom-selector
is appreciated, and feel free to open an issue if this has had a significant impact on your project.
v23.1.0
- Added an initial implementation of
ElementInternals
, including theshadowRoot
getter and the string-valued ARIA properties. (zjffun) - Added the string-valued ARIA attribute-reflecting properties to
Element
. - Fixed
history.pushState()
andhistory.replaceState()
to follow the latest specification, notably with regards to how they handle empty string inputs and what new URLs are possible. - Fixed the
input.valueAsANumber
setter to handleNaN
correctly. (alexandertrefz) - Updated various dependencies, including
cssstyle
which contains several bug fixes.
v23.0.1
- Fixed the incorrect
canvas
peer dependency introduced in v23.0.0.
v23.0.0
- Node.js v18 is now the minimum supported version.
- Updated various dependencies, including
whatwg-url
which integrates various additions to theURL
andURLSearchParams
objects.
v22.1.0
- Added
crypto.randomUUID()
. (jamesbvaughan) - Added
DOMRect
andDOMRectReadOnly
. - Added
AbortSignal.timeout()
. - Added
abortSignal.throwIfAborted()
. - Added support for the
submitter
argument to theFormData
constructor. (jenseng) - Improved
getComputedStyle()
's results for color-based properties, to resolve named colors and attempt to provide initial inheritance support. (hoekz-wwt) - Updated
Window
's event handler properties (e.g.oncopy
,ontouchstart
, etc.) to reflect the latest list from the standard. - Fixed
DOMParser
-created documents to inherit their URL from the creating document.
v22.0.0
- Node.js v16 is now the minimum supported version.
- Removed support for running jsdom in the browser via a browserified bundle. This carried with it too much complexity, especially for our testing infrastructure, and a testing package we relied on was recently deprecated.
v21.1.2
- Fixed
setRangeText()
used on<input>
and<textarea>
elements to calculate the new end index correctly. (pmstss) - Fixed
pageX
,pageY
,offsetX
, andoffsetY
onMouseEvent
s during dispatch. (jenseng) - Upgraded
nwsapi
to v2.2.4, bringing along various fixes to our selector engine.
v21.1.1
- Fixed
jsdom.reconfigure()
to also adjust the URL as seen by the history API, so that e.g.history.replaceState(null, "")
would not mess up the URL. (jdufresne) - Fixed
location.hash = ""
to leave any#
in location.href. - Fixes a few bugs with CSS parsing by replacing
cssom
withrweb-cssom
, since the latter is maintained. (seanparmelee)
v21.1.0
- Added
x
,y
,pageX
,pageY
,offsetX
, andoffsetY
toMouseEvent
. (jenseng, ViniciusFXavier) - Added support for
unset
withgetComputedStyle()
. (jsnajdr) - Added the
submitter
property toSubmitEvent
. (jenseng) - Fixed
MouseEvent
'sscreenX
andscreenY
to no longer coerce to integers, allowing fractional values. (jenseng) - Fixed
formEl.submit()
to not longer firesubmit
events. (jenseng) - Fixed stylesheets to no longer affect the document after their corresponding
<link>
is removed. (jsnajdr) - Fixed
pointer-events
to inherit when used withgetComputedStyle()
. (jnajdr) - Fixed
<script>
elements with nosrc=""
to no longer fireload
events. (t1ger2080) - Improved
getComputedStyle()
to cache its results, which should make it much faster. (jsnajdr)
v21.0.0
A potentially-breaking bug fix:
- Fixed the
window
,document
,location
, andtop
properties ofWindow
to be non-configurable. (ExE-Boss)
Other changes:
- Added support for
<input type=image>
submitting forms. (jenseng) - Added the
location
setter to theWindow
object, which forwards to thelocation.href
setter. Setting the URL is still only implemented for fragment navigations, however. (ExE-Boss) - Fixed
defer=""
<script>
elements that are added afterDOMContentLoaded
to execute, instead of being skipped. - Fixed
selectElement.selectedOptions
being incorrect whenoptionElement.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
, andscreen
properties ofWindow
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
JSDOM.fromURL()
in the browser build of jsdom. (LungZeno)
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.