Skip to content

Bump jsdom from v28 to v29, update CI node matrix - #50

Merged
flipbit merged 1 commit into
mainfrom
chore/bump-js-dom
Aug 27, 2026
Merged

flipbit merged 1 commit into
mainfrom
chore/bump-js-dom

Conversation

@flipbit

@flipbit flipbit commented Aug 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • Upgrades jsdom from ^28.1.0 to ^29.1.1
  • Updates CI node matrix from [20, 22] to [22, 24] - Node 20 is EOL and jsdom 29 requires Node ≥22.13.0. Node 24 added as current release alongside Node 22 LTS.

Why v29 and not v30?

jsdom 30 has a bug in its new CSSOM implementation where getComputedStyle returns borderTopWidth: "16px" for all elements, even when borderStyle is "none". Per the CSS spec, computed border-width should resolve to 0px when border-style is none. This breaks our coordinate scaling tests (25 failures) since the plugin reads padding/border insets from getComputedStyle to calculate content area dimensions.

Sticking with v29 until that's sorted.

Test plan

  • All 351 unit tests pass on jQuery 3
  • All 351 unit tests pass on jQuery 4

jsdom 29 requires Node ≥22.13.0, so drop Node 20 (now EOL) from CI
and add Node 24 (current release) alongside Node 22 (active LTS).
@flipbit
flipbit merged commit 546e7ac into main Aug 27, 2026
5 checks passed
@flipbit
flipbit deleted the chore/bump-js-dom branch August 27, 2026 09:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant