All Versions
224
Latest Version
Avg Release Cycle
36 days
Latest Release
-

Changelog History
Page 1

  • v20.0.2 Changes

    • ๐Ÿ›  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)
  • v20.0.1 Changes

    • ๐Ÿ‘Œ 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.
  • v20.0.0 Changes

    • ๐Ÿ‘ 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)
  • v19.0.0 Changes

    • ๐Ÿ”„ 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)
  • v18.1.1 Changes

    • ๐Ÿ›  Fixed connectedCallback to fire in situations involving document fragments, which was broken in v18.0.1. (GrantGryczan)
  • v18.1.0 Changes

    • ๐Ÿ›  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)
  • v18.0.1 Changes

    • ๐Ÿ›  Fixed live Ranges to update correctly after calling node.normalize(). (hgiesel)
    • ๐Ÿ›  Fixed live Ranges to update correctly after removing child nodes. (hgiesel)
    • ๐Ÿ›  Fixed setting inputEl.valueAsDate = null to no longer throw an exception, but instead set the value to the empty string. (simon-weimann)
    • ๐Ÿ‘Œ Improved performance of node insertion and node.contains(). (GrantGryczan)
  • v18.0.0 Changes

    ๐Ÿ›  Potentially-breaking bug fixes:

    • ๐Ÿ›  Fixed SSL certificate checking for WebSocket connections. Previously, invalid SSL certificates were always accepted; now, they properly respect the ResourceLoader's strictSSL option (which defaults to true).
    • ๐Ÿ”„ Changed the global in which almost all Promise and TypeError instances are created to be the jsdom global, not the Node.js global. This could affect any code that uses instanceof.

    Other changes:

    • ๐Ÿ›  Fixed moving an element between HTML and XML documents to reset the tagName cache, allowing it to return a lowercase value once it's in the XML document. (LucasLefevre)
    • ๐Ÿ›  Fixed form submission to not happen when the form is invalid. (pozil)
  • v17.0.0 Changes

    ๐Ÿ’ฅ Breaking change: Node v12 is now the minimum supported version.

  • v16.7.0 Changes

    • โž• Added AbortSignal.abort(). (ninevra)
    • โž• Added dummy x and y properties to the return value of getBoundingClientRect(). (eiko)
    • Implemented wrapping for textareaEl.value if the wrap="" attribute is specified. (ninevra)
    • โšก๏ธ Changed newline normalization in <textarea>s according to recent HTML Standard updates. (ninevra)
    • ๐Ÿ›  Fixed some bad cascade computation in getComputedStyle(). (romain-trotard)