⬆️ Updates jsdom to v24 - autoclosed #2357
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
16.6.0
->24.1.1
Release Notes
jsdom/jsdom (jsdom)
v24.1.1
Compare Source
selectionchange
event on theDocument
object. (piotr-oles)v24.1.0
Compare Source
getSetCookie()
method to theHeaders
class. (ushiboy)Object.prototype
, like"constructor"
or"toString"
.rweb-cssom
, which can now parse additional CSS constructs.v24.0.0
Compare Source
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 reachesnwsapi
'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:
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
Compare Source
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
Compare Source
ElementInternals
, including theshadowRoot
getter and the string-valued ARIA properties. (zjffun)Element
.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.input.valueAsANumber
setter to handleNaN
correctly. (alexandertrefz)cssstyle
which contains several bug fixes.v23.0.1
Compare Source
canvas
peer dependency.v23.0.0
Compare Source
v22.1.0
Compare Source
crypto.randomUUID()
. (jamesbvaughan)DOMRect
andDOMRectReadOnly
.AbortSignal.timeout()
.abortSignal.throwIfAborted()
.submitter
argument to theFormData
constructor. (jenseng)getComputedStyle()
's results for color-based properties, to resolve named colors and attempt to provide initial inheritance support. (hoekz-wwt)Window
's event handler properties (e.g.oncopy
,ontouchstart
, etc.) to reflect the latest list from the standard.DOMParser
-created documents to inherit their URL from the creating document.v22.0.0
Compare Source
v21.1.2
Compare Source
setRangeText()
used on<input>
and<textarea>
elements to calculate the new end index correctly. (pmstss)pageX
,pageY
,offsetX
, andoffsetY
onMouseEvent
s during dispatch. (jenseng)nwsapi
to v2.2.4, bringing along various fixes to our selector engine.v21.1.1
Compare Source
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)location.hash = ""
to leave any#
in location.href.cssom
withrweb-cssom
, since the latter is maintained. (seanparmelee)v21.1.0
Compare Source
x
,y
,pageX
,pageY
,offsetX
, andoffsetY
toMouseEvent
. (jenseng, ViniciusFXavier)unset
withgetComputedStyle()
. (jsnajdr)submitter
property toSubmitEvent
. (jenseng)MouseEvent
'sscreenX
andscreenY
to no longer coerce to integers, allowing fractional values. (jenseng)formEl.submit()
to not longer firesubmit
events. (jenseng)<link>
is removed. (jsnajdr)pointer-events
to inherit when used withgetComputedStyle()
. (jnajdr)<script>
elements with nosrc=""
to no longer fireload
events. (t1ger2080)getComputedStyle()
to cache its results, which should make it much faster. (jsnajdr)v21.0.0
Compare Source
A potentially-breaking bug fix:
window
,document
,location
, andtop
properties ofWindow
to be non-configurable. (ExE-Boss)Other changes:
<input type=image>
submitting forms. (jenseng)location
setter to theWindow
object, which forwards to thelocation.href
setter. Setting the URL is still only implemented for fragment navigations, however. (ExE-Boss)defer=""
<script>
elements that are added afterDOMContentLoaded
to execute, instead of being skipped.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)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)JSDOM.fromURL()
in the browser build of jsdom. (LungZeno)v20.0.3
Compare Source
w3c-xmlserializer
, which fixes usingDOMParser
on XML documents containing emoji.v20.0.2
Compare Source
xhr.abort()
to no longer give an exception when the constructedXMLHttpRequest
was invalid. (whamtet)event.getModifierState()
onMouseEvent
andKeyboardEvent
instances to properly consult thectrlKey
,altKey
,metaKey
, andshiftKey
properties of the event. (juzerzarif)window.customElements
property. (bicknellr)v20.0.1
Compare Source
<option>
elements to<select>
elements. (TheHound)location.pathname
getter to not crash when theJSDOM
instance was created using an opaque-path URL, including the default URL ofabout:blank
.crypto.getRandomValues()
to accept typed array subclasses. (sebamarynissen)nwsapi
fixed some selectors bugs, andtough-cookie
fixed some cookie bugs.v20.0.0
Compare Source
crypto.getRandomValues()
. (sjrd)HTMLFormControlsCollection
andRadioNodeList
, soformEl.elements
now behaves correctly. (UndefinedBehavior)signal
option toaddEventListener()
. (cheap-glitch):root
pseudoclass to work correctly. (hughs-ch)parse5
, bringing along some HTML parsing and serialization fixes. (fb55)v19.0.0
Compare Source
jsdom.nodeLocation()
to returnundefined
when used on nodes that originate via fragment parsing (e.g., viainnerHTML
). 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)window.close()
inside theWindow
'sload
event to no longer crash. (MattiasBuelens)v18.1.1
Compare Source
connectedCallback
to fire in situations involving document fragments, which was broken in v18.0.1. (GrantGryczan)v18.1.0
Compare Source
headers.append()
andheaders.set()
to normalize values. (MattiasBuelens)pageshow
events to havebubbles: true
andcancelable: true
. (MattiasBuelens)reason
property onAbortSignal
s, along with the correspondingreason
argument toabortSignal.abort()
andAbortSignal.abort()
. (MattiasBuelens)v18.0.1
Compare Source
Range
s to update correctly after callingnode.normalize()
. (hgiesel)Range
s to update correctly after removing child nodes. (hgiesel)inputEl.valueAsDate = null
to no longer throw an exception, but instead set the value to the empty string. (simon-weimann)node.contains()
. (GrantGryczan)v18.0.0
Compare Source
Potentially-breaking bug fixes:
ResourceLoader
'sstrictSSL
option (which defaults totrue
).Promise
andTypeError
instances are created to be the jsdom global, not the Node.js global. This could affect any code that usesinstanceof
.Other changes:
tagName
cache, allowing it to return a lowercase value once it's in the XML document. (LucasLefevre)v17.0.0
Compare Source
Breaking change: Node v12 is now the minimum supported version.
v16.7.0
Compare Source
AbortSignal.abort()
. (ninevra)x
andy
properties to the return value ofgetBoundingClientRect()
. (eiko)textareaEl.value
if thewrap=""
attribute is specified. (ninevra)<textarea>
s according to recent HTML Standard updates. (ninevra)getComputedStyle()
. (romain-trotard)Configuration
📅 Schedule: Branch creation - "after 10pm every weekday,before 5am every weekday,every weekend" in timezone Europe/Moscow, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.