From cf8b707a080b15746046177e8bdb70c3c5ef295a Mon Sep 17 00:00:00 2001 From: Domenic Denicola Date: Sun, 7 Jan 2024 21:43:14 +0900 Subject: [PATCH] Version 23.2.0 --- AUTHORS.txt | 1 + Changelog.md | 6 ++++++ package-lock.json | 5 +++-- package.json | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/AUTHORS.txt b/AUTHORS.txt index b7d2db7ad..b9914220c 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -33,6 +33,7 @@ Aria Stewart Arrix Aryan Arora asamuzaK (Kazz) +asamuzaK (Kazz) Avery Fay Avi Deitcher Avi Vahl diff --git a/Changelog.md b/Changelog.md index 040c9c082..840086578 100644 --- a/Changelog.md +++ b/Changelog.md @@ -26,6 +26,12 @@ Other guidelines: * Roughly order changes within those groupings by impact. --> +## 23.2.0 + +This release switches our CSS selector engine from [`nwsapi`](https://www.npmjs.com/nwsapi) to [`@asamuzakjp/dom-selector`](@asamuzakjp/dom-selector). The new engine is more actively maintained, and supports many new selectors: see [the package's documentation](https://github.com/asamuzaK/domSelector#supported-css-selectors) 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](https://github.com/jsdom/jsdom/blob/908f27d4e348502a9068f0b335a8518d050ef872/benchmark/selectors/sizzle-speed/selectors.large.css) against [this 128 KiB document](https://github.com/jsdom/jsdom/blob/908f27d4e348502a9068f0b335a8518d050ef872/benchmark/selectors/sizzle-speed/selector.html), 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. + ## 23.1.0 * Added an initial implementation of `ElementInternals`, including the `shadowRoot` getter and the string-valued ARIA properties. (zjffun) diff --git a/package-lock.json b/package-lock.json index e2130ee11..cd83469af 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "jsdom", - "version": "23.1.0", + "version": "23.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "jsdom", - "version": "23.1.0", + "version": "23.2.0", "license": "MIT", "dependencies": { "@asamuzakjp/dom-selector": "^2.0.1", @@ -2412,6 +2412,7 @@ } }, "scripts/eslint-plugin": { + "name": "eslint-plugin-jsdom-internal", "version": "0.0.0", "dev": true } diff --git a/package.json b/package.json index d45182d12..ecfdb0bb0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jsdom", - "version": "23.1.0", + "version": "23.2.0", "description": "A JavaScript implementation of many web standards", "keywords": [ "dom",