deps: update jsdom to 29.0.0 #86

Open
minori wants to merge 1 commits from dependencies/update-jsdom into main
Owner

Dependency Update

Updates jsdom from 28.1.0 to 29.0.0.

Type

dependencies

Changelog

Changelog

v29.0.0

Breaking changes:

  • Node.js v22.13.0+ is now the minimum supported v22 version (was v22.12.0+).

Other changes:

  • Overhauled the CSSOM implementation, replacing the @acemir/cssom and cssstyle dependencies with fresh internal implementations built on webidl2js wrappers and the css-tree parser. Serialization, parsing, and API behavior is improved in various ways, especially around edge cases.
  • Added CSSCounterStyleRule and CSSNamespaceRule to jsdom Windows.
  • Added cssMediaRule.matches and cssSupportsRule.matches getters.
  • Added proper media query parsing in MediaList, using css-tree instead of naive comma-splitting. Invalid queries become "not all" per spec.
  • Added cssKeyframeRule.keyText getter/setter validation.
  • Added cssStyleRule.selectorText setter validation: invalid selectors are now rejected.
  • Added styleSheet.ownerNode, styleSheet.href, and styleSheet.title.
  • Added bad port blocking per the fetch specification, preventing fetches to commonly-abused ports.
  • Improved Document initialization performance by lazily initializing the CSS selector engine, avoiding ~0.5 ms of overhead per Document. (@thypon)
  • Fixed a memory leak when stylesheets were removed from the document.
  • Fixed CSSStyleDeclaration modifications to properly trigger custom element reactions.
  • Fixed nested @media rule parsing.
  • Fixed CSSStyleSheet's "disallow modification" flag not being checked in all mutation methods.
  • Fixed XMLHttpRequest's response getter returning parsed JSON during the LOADING state instead of null.
  • Fixed getComputedStyle() crashing in XHTML documents when stylesheets contained at-rules such as @page or @font-face.
  • Fixed a potential hang in synchronous XMLHttpRequest caused by a race condition with the worker thread's idle timeout.

This PR was created by Minori, your friendly dependency updater! 🌸

## Dependency Update Updates **jsdom** from `28.1.0` to `29.0.0`. ### Type dependencies ### Changelog ## Changelog ### v29.0.0 Breaking changes: * Node.js v22.13.0+ is now the minimum supported v22 version (was v22.12.0+). Other changes: * Overhauled the CSSOM implementation, replacing the [`@acemir/cssom`](https://www.npmjs.com/package/@acemir/cssom) and [`cssstyle`](https://github.com/jsdom/cssstyle) dependencies with fresh internal implementations built on webidl2js wrappers and the [`css-tree`](https://www.npmjs.com/package/css-tree) parser. Serialization, parsing, and API behavior is improved in various ways, especially around edge cases. * Added `CSSCounterStyleRule` and `CSSNamespaceRule` to jsdom `Window`s. * Added `cssMediaRule.matches` and `cssSupportsRule.matches` getters. * Added proper media query parsing in `MediaList`, using `css-tree` instead of naive comma-splitting. Invalid queries become `"not all"` per spec. * Added `cssKeyframeRule.keyText` getter/setter validation. * Added `cssStyleRule.selectorText` setter validation: invalid selectors are now rejected. * Added `styleSheet.ownerNode`, `styleSheet.href`, and `styleSheet.title`. * Added bad port blocking per the [fetch specification](https://fetch.spec.whatwg.org/#bad-port), preventing fetches to commonly-abused ports. * Improved `Document` initialization performance by lazily initializing the CSS selector engine, avoiding ~0.5 ms of overhead per `Document`. (@thypon) * Fixed a memory leak when stylesheets were removed from the document. * Fixed `CSSStyleDeclaration` modifications to properly trigger custom element reactions. * Fixed nested `@media` rule parsing. * Fixed `CSSStyleSheet`'s "disallow modification" flag not being checked in all mutation methods. * Fixed `XMLHttpRequest`'s `response` getter returning parsed JSON during the `LOADING` state instead of `null`. * Fixed `getComputedStyle()` crashing in XHTML documents when stylesheets contained at-rules such as `@page` or `@font-face`. * Fixed a potential hang in synchronous `XMLHttpRequest` caused by a race condition with the worker thread's idle timeout. --- ✨ This PR was created by Minori, your friendly dependency updater! 🌸
minori added 1 commit 2026-03-25 07:03:14 -07:00
deps: update jsdom to 29.0.0
Node.js CI / CI (pull_request) Failing after 1m39s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m46s
28722ff81b
Some checks are pending
Node.js CI / CI (pull_request) Failing after 1m39s
Security Scan and Upload / Security & DefectDojo Upload (pull_request) Successful in 1m46s
This pull request doesn't have enough required approvals yet. 0 of 1 approvals granted from users or teams on the allowlist.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin dependencies/update-jsdom:dependencies/update-jsdom
git checkout dependencies/update-jsdom
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nhcarrigan/library#86