Skip to content

chore: release v4.14.0 - #1479

Merged
Garbee merged 23 commits into
masterfrom
release
Oct 15, 2026
Merged

Garbee merged 23 commits into
masterfrom
release

Conversation

@axe-core

Copy link
Copy Markdown
Contributor

Changelog Additions:

4.14.0 (2026-10-06)

Bug Fixes

Features

This PR was automatically created by a 🤖

G-Rath and others added 23 commits August 10, 2026 15:54
The latest version of `selenium-webdriver` does not have the `headless`
function.

No QA Required
## Problem

The production `Deploy` job's final step has failed on **every** release
since v4.11.0:

```
cannot generate release notes from tag v4.13.0 as it does not exist locally
##[error]Process completed with exit code 1
```

Runs:
[v4.13.0](https://github.com/dequelabs/axe-core-npm/actions/runs/31515664375),
[v4.12.1](https://github.com/dequelabs/axe-core-npm/actions/runs/28037100897),
[v4.11.3](https://github.com/dequelabs/axe-core-npm/actions/runs/25161892807),
[v4.11.2](https://github.com/dequelabs/axe-core-npm/actions/runs/24567463371),
[v4.11.1](https://github.com/dequelabs/axe-core-npm/actions/runs/21642701479),
[v4.11.0](https://github.com/dequelabs/axe-core-npm/actions/runs/18691499897).

The npm publish itself succeeded every time — only the GitHub release
step broke, so the tags and releases have been created by hand after the
fact.

`gh release create --notes-from-tag` reads the annotated tag's message
out of the local clone, but no tag exists at that point:

- `lerna publish from-package` only publishes the versions already in
`package.json`; it does not version or tag.
- `actions/checkout` runs at the default `fetch-depth: 1` with no
`fetch-tags`, so even an existing remote tag would not be in the clone.

The job also declared `contents: read`, so fixing the tag lookup alone
would have moved the failure to a 403 on release creation.

## Fix

- `--notes-from-tag` → `--generate-notes`, building notes from merged
PRs instead of a tag message. This matches how the notes on the existing
v4.11.x releases were actually written.
- `--target master` → `--target "$GITHUB_SHA"`, so `gh release create`
creates the tag at the exact commit that was published rather than
wherever `master` has drifted to.
- `contents: read` → `contents: write` on the production job, required
to create the tag.

Pushing an annotated tag in a separate step and keeping
`--notes-from-tag` was the alternative — more moving parts for the same
outcome.

## Note

v4.13.0 was published to npm successfully but had no release. I created
[`v4.13.0`](https://github.com/dequelabs/axe-core-npm/releases/tag/v4.13.0)
manually at `70dca94` with the same `--generate-notes` this PR switches
to, so the release history is current. **v4.12.0 and v4.12.1 are still
missing releases** and should be backfilled separately if we want them.


Re-running a partially-failed deploy will now error on the duplicate tag
rather than silently no-op. Since we tag after deploy, this shouldn't
impact anything. We will close the gap later as we harden all these
workflows more.


No QA Required
Bumps and
[brace-expansion](https://github.com/juliangruber/brace-expansion).
These dependencies needed to be updated together.
Updates `brace-expansion` from 2.0.2 to 2.1.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/juliangruber/brace-expansion/releases">brace-expansion's
releases</a>.</em></p>
<blockquote>
<h2>v2.1.1</h2>
<ul>
<li>Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)
c3a817c</li>
</ul>
<hr />
<p><a
href="https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1">https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/b25213dff0446d622f97d736420b9830ee1abc32"><code>b25213d</code></a>
2.1.4</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1e30c930238d7162802d88a94189182def178dac"><code>1e30c93</code></a>
Merge commit from fork</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/878df3989e816dfb28cbe0d64de0b88738ff0ed6"><code>878df39</code></a>
2.1.3</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c8bd93cfff4e45cb295557d2be17e1d1d4e52a11"><code>c8bd93c</code></a>
npm ignore .claude</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/d13ff455a58b0d56704f0111e3c2a0b16ceb06eb"><code>d13ff45</code></a>
fix: backport GHSA-mh99-v99m-4gvg (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/130">#130</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/9e67a3b151e418679ac4800f31f874ec6d220b4a"><code>9e67a3b</code></a>
2.1.2</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/835d6be91201122d9adffb0c0c8c094189ace265"><code>835d6be</code></a>
fix: v2 backport for CVE-2026-13149 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/123">#123</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/64b71d31d7c43b956ce64fccc1dda5a3729be728"><code>64b71d3</code></a>
2.1.1</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c3a817c8e5421d19a37c9babcf3f216b6bf2e6b4"><code>c3a817c</code></a>
Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1ee4a9069c69a51bd502aab289c0c6629c8920ca"><code>1ee4a90</code></a>
2.1.0</li>
<li>Additional commits viewable in <a
href="https://github.com/juliangruber/brace-expansion/compare/v2.0.2...v2.1.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `brace-expansion` from 5.0.4 to 5.0.9
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/juliangruber/brace-expansion/releases">brace-expansion's
releases</a>.</em></p>
<blockquote>
<h2>v2.1.1</h2>
<ul>
<li>Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)
c3a817c</li>
</ul>
<hr />
<p><a
href="https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1">https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/b25213dff0446d622f97d736420b9830ee1abc32"><code>b25213d</code></a>
2.1.4</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1e30c930238d7162802d88a94189182def178dac"><code>1e30c93</code></a>
Merge commit from fork</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/878df3989e816dfb28cbe0d64de0b88738ff0ed6"><code>878df39</code></a>
2.1.3</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c8bd93cfff4e45cb295557d2be17e1d1d4e52a11"><code>c8bd93c</code></a>
npm ignore .claude</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/d13ff455a58b0d56704f0111e3c2a0b16ceb06eb"><code>d13ff45</code></a>
fix: backport GHSA-mh99-v99m-4gvg (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/130">#130</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/9e67a3b151e418679ac4800f31f874ec6d220b4a"><code>9e67a3b</code></a>
2.1.2</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/835d6be91201122d9adffb0c0c8c094189ace265"><code>835d6be</code></a>
fix: v2 backport for CVE-2026-13149 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/123">#123</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/64b71d31d7c43b956ce64fccc1dda5a3729be728"><code>64b71d3</code></a>
2.1.1</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c3a817c8e5421d19a37c9babcf3f216b6bf2e6b4"><code>c3a817c</code></a>
Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1ee4a9069c69a51bd502aab289c0c6629c8920ca"><code>1ee4a90</code></a>
2.1.0</li>
<li>Additional commits viewable in <a
href="https://github.com/juliangruber/brace-expansion/compare/v2.0.2...v2.1.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `brace-expansion` from 5.0.5 to 5.0.9
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/juliangruber/brace-expansion/releases">brace-expansion's
releases</a>.</em></p>
<blockquote>
<h2>v2.1.1</h2>
<ul>
<li>Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)
c3a817c</li>
</ul>
<hr />
<p><a
href="https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1">https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/b25213dff0446d622f97d736420b9830ee1abc32"><code>b25213d</code></a>
2.1.4</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1e30c930238d7162802d88a94189182def178dac"><code>1e30c93</code></a>
Merge commit from fork</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/878df3989e816dfb28cbe0d64de0b88738ff0ed6"><code>878df39</code></a>
2.1.3</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c8bd93cfff4e45cb295557d2be17e1d1d4e52a11"><code>c8bd93c</code></a>
npm ignore .claude</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/d13ff455a58b0d56704f0111e3c2a0b16ceb06eb"><code>d13ff45</code></a>
fix: backport GHSA-mh99-v99m-4gvg (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/130">#130</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/9e67a3b151e418679ac4800f31f874ec6d220b4a"><code>9e67a3b</code></a>
2.1.2</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/835d6be91201122d9adffb0c0c8c094189ace265"><code>835d6be</code></a>
fix: v2 backport for CVE-2026-13149 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/123">#123</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/64b71d31d7c43b956ce64fccc1dda5a3729be728"><code>64b71d3</code></a>
2.1.1</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c3a817c8e5421d19a37c9babcf3f216b6bf2e6b4"><code>c3a817c</code></a>
Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1ee4a9069c69a51bd502aab289c0c6629c8920ca"><code>1ee4a90</code></a>
2.1.0</li>
<li>Additional commits viewable in <a
href="https://github.com/juliangruber/brace-expansion/compare/v2.0.2...v2.1.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `brace-expansion` from 1.1.12 to 1.1.18
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/juliangruber/brace-expansion/releases">brace-expansion's
releases</a>.</em></p>
<blockquote>
<h2>v2.1.1</h2>
<ul>
<li>Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)
c3a817c</li>
</ul>
<hr />
<p><a
href="https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1">https://github.com/juliangruber/brace-expansion/compare/v2.1.0...v2.1.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/b25213dff0446d622f97d736420b9830ee1abc32"><code>b25213d</code></a>
2.1.4</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1e30c930238d7162802d88a94189182def178dac"><code>1e30c93</code></a>
Merge commit from fork</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/878df3989e816dfb28cbe0d64de0b88738ff0ed6"><code>878df39</code></a>
2.1.3</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c8bd93cfff4e45cb295557d2be17e1d1d4e52a11"><code>c8bd93c</code></a>
npm ignore .claude</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/d13ff455a58b0d56704f0111e3c2a0b16ceb06eb"><code>d13ff45</code></a>
fix: backport GHSA-mh99-v99m-4gvg (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/130">#130</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/9e67a3b151e418679ac4800f31f874ec6d220b4a"><code>9e67a3b</code></a>
2.1.2</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/835d6be91201122d9adffb0c0c8c094189ace265"><code>835d6be</code></a>
fix: v2 backport for CVE-2026-13149 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/123">#123</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/64b71d31d7c43b956ce64fccc1dda5a3729be728"><code>64b71d3</code></a>
2.1.1</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/c3a817c8e5421d19a37c9babcf3f216b6bf2e6b4"><code>c3a817c</code></a>
Backport v5.0.6 change to v2 (<a
href="https://redirect.github.com/juliangruber/brace-expansion/issues/109">#109</a>)</li>
<li><a
href="https://github.com/juliangruber/brace-expansion/commit/1ee4a9069c69a51bd502aab289c0c6629c8920ca"><code>1ee4a90</code></a>
2.1.0</li>
<li>Additional commits viewable in <a
href="https://github.com/juliangruber/brace-expansion/compare/v2.0.2...v2.1.4">compare
view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/dequelabs/axe-core-npm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tar](https://github.com/isaacs/node-tar) to 7.5.22 and updates
ancestor dependency
[lerna](https://github.com/lerna/lerna/tree/HEAD/packages/lerna). These
dependencies need to be updated together.

Updates `tar` from 7.5.7 to 7.5.22
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/isaacs/node-tar/commit/2a22bfc5d3a432a606d9da0e2d87ba634aa3b1cb"><code>2a22bfc</code></a>
7.5.22</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/df1cd8dc09cded47b00c4129698824b3986432ac"><code>df1cd8d</code></a>
Allow transform to be falsey</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/0cd9cc3c5814446d3c0cbea6a31d6c00c2c8a9d9"><code>0cd9cc3</code></a>
7.5.21</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/631ae59121bf8fc8a22bbae35f074cb9b789cd4a"><code>631ae59</code></a>
list: prevent unbounded recursion</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/ebbb72094159d003f428dcd1cb28255d37ea4873"><code>ebbb720</code></a>
7.5.20</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/2f271963a7fe5a5960aee5dd6adf9647a1e266fd"><code>2f27196</code></a>
fix: fully disable and dispose of unzip when aborting parser</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/be440da64e9fe80c68c755d8147328ea1cc2a9ad"><code>be440da</code></a>
7.5.19</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/2812e9338665659b183aa7226518c307044957d3"><code>2812e93</code></a>
add maxDecompressionRatio guard against explosive decompression</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/9ecd4d2956fd915507eca018ddc1fea727fbba93"><code>9ecd4d2</code></a>
7.5.18</li>
<li><a
href="https://github.com/isaacs/node-tar/commit/9e78bf058b2c22dd4d52e00d8922d5c06fc2f7b5"><code>9e78bf0</code></a>
refuse to let header size be less than 0</li>
<li>Additional commits viewable in <a
href="https://github.com/isaacs/node-tar/compare/v7.5.7...v7.5.22">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~isaacs">isaacs</a>, a new releaser for tar
since your current version.</p>
</details>
<details>
<summary>Install script changes</summary>
<p>This version adds <code>prepare</code> script that runs during
installation. Review the package contents before updating.</p>
</details>
<br />

Updates `lerna` from 9.0.4 to 10.0.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/lerna/lerna/releases">lerna's
releases</a>.</em></p>
<blockquote>
<h2>v10.0.1</h2>
<h2><a
href="https://github.com/lerna/lerna/compare/v10.0.0...v10.0.1">10.0.1</a>
(2026-08-19)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>missing peer dependency in lerna 10 (<a
href="https://redirect.github.com/lerna/lerna/issues/4412">#4412</a>)
(<a
href="https://github.com/lerna/lerna/commit/06b8acb541a6d00bd87c96cc39ae17d06eee7895">06b8acb</a>)</li>
<li>skip unnecessary package managers during release (<a
href="https://redirect.github.com/lerna/lerna/issues/4413">#4413</a>)
(<a
href="https://github.com/lerna/lerna/commit/ed46de57e4273400a4007faac8aaaffae24245e5">ed46de5</a>)</li>
</ul>
<h2>v10.0.0</h2>
<h1><a
href="https://github.com/lerna/lerna/compare/v9.0.7...v10.0.0">10.0.0</a>
(2026-07-29)</h1>
<ul>
<li>feat!: throw error in case of stale remote for CI mode (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4369">#4369</a>)
(<a
href="https://github.com/lerna/lerna/commit/3e816822837edb0a1f70cd52c90207f520461907">3e81682</a>),
closes <a
href="https://redirect.github.com/lerna/lerna/issues/4369">#4369</a></li>
<li>feat!: support node ^22.13.0 || ^24.0.0 || ^26.0.0, ship lerna as
ESM-only (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4390">#4390</a>)
(<a
href="https://github.com/lerna/lerna/commit/a148ba23882e4e3d201b0198eefc37d6f18196d9">a148ba2</a>),
closes <a
href="https://redirect.github.com/lerna/lerna/issues/4390">#4390</a></li>
<li>fix(core)!: replace deprecated conventional-changelog dependencies
(<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4332">#4332</a>)
(<a
href="https://github.com/lerna/lerna/commit/b1ff72f7053870eaf661b06af9759c9fe6c0c5d6">b1ff72f</a>),
closes <a
href="https://redirect.github.com/lerna/lerna/issues/4332">#4332</a></li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>core:</strong> remove p-map-series, p-pipe, p-reduce, and
p-waterfall (<a
href="https://redirect.github.com/lerna/lerna/issues/4321">#4321</a>)
(<a
href="https://github.com/lerna/lerna/commit/fe066cb52fa47a590022108a098a9ba5fb108af2">fe066cb</a>)</li>
<li><strong>core:</strong> remove upath dependency (<a
href="https://redirect.github.com/lerna/lerna/issues/4317">#4317</a>)
(<a
href="https://github.com/lerna/lerna/commit/aa654700fdfb3bfe79e79a38cabbe3ff078a5f5b">aa65470</a>)</li>
<li><strong>core:</strong> support changelog presets that only expose
the ESM import condition (<a
href="https://redirect.github.com/lerna/lerna/issues/4385">#4385</a>)
(<a
href="https://github.com/lerna/lerna/commit/294e33a2a6885bb34fdd8e48125eaf80d1058db1">294e33a</a>)</li>
<li><strong>core:</strong> support OIDC trusted publishing on CircleCI
(<a
href="https://redirect.github.com/lerna/lerna/issues/4383">#4383</a>)
(<a
href="https://github.com/lerna/lerna/commit/a0963b909d7aea85cfef74ec1f3b65ff3df9d264">a0963b9</a>)</li>
<li><strong>publish:</strong> show output from publish and postpublish
lifecycle scripts (<a
href="https://redirect.github.com/lerna/lerna/issues/4330">#4330</a>)
(<a
href="https://github.com/lerna/lerna/commit/9e87a343d88ecb717e08841d1461072a7928c90d">9e87a34</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>core:</strong> add bun as supported package manager (<a
href="https://redirect.github.com/lerna/lerna/issues/4264">#4264</a>)
(<a
href="https://github.com/lerna/lerna/commit/4ca7d2cc46feef31641d6877cf32f420d2ebc897">4ca7d2c</a>)</li>
</ul>
<h3>BREAKING CHANGES</h3>
<ul>
<li>
<p>In CI, <code>EBEHIND</code> will now be thrown during versioning and
publishing if the checkout is behind the latest on the remote. This
previously only occurred outside of CI environments.</p>
<p>If you wish to opt into the old behavior, you can do so by setting
<code>--ci-behind-behavior</code> (error | skip, default error) or
<code>command.version.ciBehindBehavior</code> in
<code>lerna.json</code>.</p>
</li>
<li>
<p>Lerna is now shipped as ESM-only and the lowest supported node
version has changed to 22.13.0, because on this version CommonJS
consumers can still require in its entry points without any additional
flags or warnings.</p>
</li>
<li>
<p>Lerna now uses the current conventional-changelog APIs instead of the
deprecated conventional-changelog-core stack.</p>
<p>Generated CHANGELOG.md output may differ, including normalized
whitespace and URL-encoded tag names. Projects using custom changelog
presets should verify their output; Lerna retains compatibility for
legacy parser/writer option names and Handlebars string templates.</p>
<p>CLI options and version-bump behavior remain unchanged.</p>
</li>
</ul>
<h2>v9.0.7</h2>
<h2><a
href="https://github.com/lerna/lerna/compare/v9.0.6...v9.0.7">9.0.7</a>
(2026-03-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>core:</strong> normalize ./ prefix in workspace globs for
package detection (<a
href="https://redirect.github.com/lerna/lerna/issues/4308">#4308</a>)
(<a
href="https://github.com/lerna/lerna/commit/bd397791843623b2caead97c9ee136c250b58937">bd39779</a>)</li>
<li><strong>core:</strong> remove multimatch dependency and legacy-core
internals (<a
href="https://redirect.github.com/lerna/lerna/issues/4314">#4314</a>)
(<a
href="https://github.com/lerna/lerna/commit/ec01462a9c6b6911f47d328e6662aa7afd7feea5">ec01462</a>)</li>
<li><strong>version:</strong> skip config resolution in prettier
getFileInfo check (<a
href="https://redirect.github.com/lerna/lerna/issues/4306">#4306</a>)
(<a
href="https://github.com/lerna/lerna/commit/ae53efefc47917fbcbc576db278dacb4ecc37512">ae53efe</a>)</li>
<li><strong>version:</strong> support ESM and new v8+
conventional-changelog preset API (<a
href="https://redirect.github.com/lerna/lerna/issues/4302">#4302</a>)
(<a
href="https://github.com/lerna/lerna/commit/575b248e93c3f2efa8695d593769a4ee45d9c935">575b248</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/lerna/lerna/blob/main/packages/lerna/CHANGELOG.md">lerna's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/lerna/lerna/compare/v10.0.0...v10.0.1">10.0.1</a>
(2026-08-19)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>missing peer dependency in lerna 10 (<a
href="https://redirect.github.com/lerna/lerna/issues/4412">#4412</a>)
(<a
href="https://github.com/lerna/lerna/commit/06b8acb541a6d00bd87c96cc39ae17d06eee7895">06b8acb</a>)</li>
</ul>
<h1><a
href="https://github.com/lerna/lerna/compare/v9.0.7...v10.0.0">10.0.0</a>
(2026-07-29)</h1>
<ul>
<li>feat!: throw error in case of stale remote for CI mode (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4369">#4369</a>)
(<a
href="https://github.com/lerna/lerna/commit/3e816822837edb0a1f70cd52c90207f520461907">3e81682</a>),
closes <a
href="https://redirect.github.com/lerna/lerna/issues/4369">#4369</a></li>
<li>feat!: support node ^22.13.0 || ^24.0.0 || ^26.0.0, ship lerna as
ESM-only (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4390">#4390</a>)
(<a
href="https://github.com/lerna/lerna/commit/a148ba23882e4e3d201b0198eefc37d6f18196d9">a148ba2</a>),
closes <a
href="https://redirect.github.com/lerna/lerna/issues/4390">#4390</a></li>
<li>fix(core)!: replace deprecated conventional-changelog dependencies
(<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4332">#4332</a>)
(<a
href="https://github.com/lerna/lerna/commit/b1ff72f7053870eaf661b06af9759c9fe6c0c5d6">b1ff72f</a>),
closes <a
href="https://redirect.github.com/lerna/lerna/issues/4332">#4332</a></li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>core:</strong> remove p-map-series, p-pipe, p-reduce, and
p-waterfall (<a
href="https://redirect.github.com/lerna/lerna/issues/4321">#4321</a>)
(<a
href="https://github.com/lerna/lerna/commit/fe066cb52fa47a590022108a098a9ba5fb108af2">fe066cb</a>)</li>
<li><strong>core:</strong> remove upath dependency (<a
href="https://redirect.github.com/lerna/lerna/issues/4317">#4317</a>)
(<a
href="https://github.com/lerna/lerna/commit/aa654700fdfb3bfe79e79a38cabbe3ff078a5f5b">aa65470</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>core:</strong> add bun as supported package manager (<a
href="https://redirect.github.com/lerna/lerna/issues/4264">#4264</a>)
(<a
href="https://github.com/lerna/lerna/commit/4ca7d2cc46feef31641d6877cf32f420d2ebc897">4ca7d2c</a>)</li>
</ul>
<h3>BREAKING CHANGES</h3>
<ul>
<li>
<p>In CI, <code>EBEHIND</code> will now be thrown during versioning and
publishing if the checkout is behind the latest on the remote. This
previously only occurred outside of CI environments.</p>
<p>If you wish to opt into the old behavior, you can do so by setting
<code>--ci-behind-behavior</code> (error | skip, default error) or
<code>command.version.ciBehindBehavior</code> in
<code>lerna.json</code>.</p>
</li>
<li>
<p>Lerna is now shipped as ESM-only and the lowest supported node
version has changed to 22.13.0, because on this version CommonJS
consumers can still require in its entry points without any additional
flags or warnings.</p>
</li>
<li>
<p>Lerna now uses the current conventional-changelog APIs instead of the
deprecated conventional-changelog-core stack.</p>
<p>Generated CHANGELOG.md output may differ, including normalized
whitespace and URL-encoded tag names. Projects using custom changelog
presets should verify their output; Lerna retains compatibility for
legacy parser/writer option names and Handlebars string templates.</p>
<p>CLI options and version-bump behavior remain unchanged.</p>
</li>
</ul>
<h2><a
href="https://github.com/lerna/lerna/compare/v9.0.6...v9.0.7">9.0.7</a>
(2026-03-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>core:</strong> remove multimatch dependency and legacy-core
internals (<a
href="https://redirect.github.com/lerna/lerna/issues/4314">#4314</a>)
(<a
href="https://github.com/lerna/lerna/commit/ec01462a9c6b6911f47d328e6662aa7afd7feea5">ec01462</a>)</li>
</ul>
<h2><a
href="https://github.com/lerna/lerna/compare/v9.0.5...v9.0.6">9.0.6</a>
(2026-03-11)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> add missing ci-info dependency (<a
href="https://redirect.github.com/lerna/lerna/issues/4263">#4263</a>)
(<a
href="https://github.com/lerna/lerna/commit/b76818783c92c582b11555c56c222947ecbd4791">b768187</a>)</li>
<li><strong>deps:</strong> bump tar from 7.5.8 to 7.5.11 (<a
href="https://redirect.github.com/lerna/lerna/issues/4296">#4296</a>)
(<a
href="https://github.com/lerna/lerna/commit/7a69a5753324c70086c9ed760c61dd22d5c89b42">7a69a57</a>)</li>
</ul>
<h2><a
href="https://github.com/lerna/lerna/compare/v9.0.4...v9.0.5">9.0.5</a>
(2026-02-28)</h2>
<h3>Bug Fixes</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/lerna/lerna/commit/35d15a1567932be97759f512d8b8033dad72b411"><code>35d15a1</code></a>
chore(misc): publish 10.0.1</li>
<li><a
href="https://github.com/lerna/lerna/commit/06b8acb541a6d00bd87c96cc39ae17d06eee7895"><code>06b8acb</code></a>
fix: missing peer dependency in lerna 10 (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4412">#4412</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/e50e1a93aa2d3ec420f3bdc91d4f73b1dbb4c99c"><code>e50e1a9</code></a>
chore(deps): bump tar to 7.5.22 (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4406">#4406</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/5f43163692731b80100fc69f73856bf6c440acbd"><code>5f43163</code></a>
chore(misc): publish 10.0.0</li>
<li><a
href="https://github.com/lerna/lerna/commit/138260cc408a50cf5c61d44d95c0ea328b17eedb"><code>138260c</code></a>
chore: nx 23.1 floor instead of 23.0 (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4403">#4403</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/14bb53576ba8728f441b1c4d228c0cd0d4dac57b"><code>14bb535</code></a>
chore(deps): bump js-yaml to 4.3.0 and tar to 7.5.20 (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4397">#4397</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/3e816822837edb0a1f70cd52c90207f520461907"><code>3e81682</code></a>
feat!: throw error in case of stale remote for CI mode (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4369">#4369</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/a148ba23882e4e3d201b0198eefc37d6f18196d9"><code>a148ba2</code></a>
feat!: support node ^22.13.0 || ^24.0.0 || ^26.0.0, ship lerna as
ESM-only (#...</li>
<li><a
href="https://github.com/lerna/lerna/commit/b1ff72f7053870eaf661b06af9759c9fe6c0c5d6"><code>b1ff72f</code></a>
fix(core)!: replace deprecated conventional-changelog dependencies (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4332">#4332</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/1f7e1095893f644e560e51b1e094cc8ae4b5720f"><code>1f7e109</code></a>
chore(repo): migrate from jest to vitest (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/4389">#4389</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/lerna/lerna/commits/v10.0.1/packages/lerna">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~GitHub%20Actions">GitHub Actions</a>, a new
releaser for lerna since your current version.</p>
</details>
<br />


You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/dequelabs/axe-core-npm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
npm workspaces hoists everything into one flat `node_modules`, so a
package can import a dependency it never declared and nothing complains
until publish. It also runs every install script. This moves the
monorepo to pnpm 11: the isolated store means a package only sees what
it declares, and `allowBuilds` makes install-time script execution an
explicit allowlist.

The strictness paid for itself immediately — `sinon`, `dotenv`,
`@types/sinon`, `@jest/globals`, and `@wdio/types` were all relying on
hoisting and are now declared where they are used. The two cross-package
dependencies moved to the workspace protocol. `package-lock.json`
becomes `pnpm-lock.yaml`, `lerna.json` gains `npmClient: pnpm`, and the
root pins `packageManager: pnpm@11.23.0`, which pnpm reads and
self-switches on — so no Corepack, which Node 25 removes.

CI installs pnpm through a SHA-pinned `pnpm/action-setup` with
`standalone: true`, so `@pnpm/exe`'s bundled Node satisfies pnpm's
`engines.node: >=22.13` on the Node 20 leg. Installs are
`--frozen-lockfile`, and every `--filter` carries `--fail-if-no-match` —
bare `--filter` exits 0 on no match, which left the ten test jobs
fail-open. `workspaceConcurrency: 2` stops five browser-driving packages
launching at once. `minimumReleaseAge` adds a supply-chain cooldown just
under Dependabot's seven days.

Node 18 is dropped; the matrix is 20/22/24. `chromedriver`'s
`install.js` requires `proxy-agent`, ESM-only since v8.

`cheerio` is pinned to `1.0.0-rc.12`. 1.x is ESM, and the `browser`
export condition jsdom selects cannot be required from enzyme's CJS. The
pin lifts when enzyme is replaced.


Closes: #1346

---------

Co-authored-by: Gabe <41127686+Zidious@users.noreply.github.com>
The monorepo's dependencies had drifted far enough behind that
Dependabot's
ignore list was doing the work a version ceiling should do, and several
packages advertised `engines.node` floors that no longer matched what
their own
dependencies actually required. Both problems are invisible until a
release
breaks for a consumer on an older Node.

This branch brings the tree current — TypeScript 6, ESLint 10, Puppeteer
25,
selenium-webdriver 4.47, chromedriver 152, execa 10, commander 15 in the
CLI,
plus the `@types/*` packages that follow them — and moves the version
ceilings
themselves into pnpm `overrides`, so a ceiling is enforced at resolution
time
rather than merely requested of Dependabot. The Dependabot ignore list
keeps
matching entries for the majors those overrides hold back, since an
override
pins the resolved version but does not stop Dependabot from opening a PR
the
override then reverts. `tempy` and `delay` are dropped in favour of
`node:fs`
and native equivalents.

To keep the engine floors honest going forward, CI now runs
`.github/scripts/audit-engines.mjs`, which compares each published
package's
`engines.node` against the ranges declared by its production and peer
dependencies and fails when we advertise a Node version a dependency
does not
support. The `test/*` workspaces are out of scope — they are private
harnesses
whose engine floor nobody consumes. The CLI's advertised floor is
corrected to
what that audit reports. The unused `test/release` package is removed
rather than upgraded; it
had no callers and its presence forced dependency resolutions the rest
of the
tree no longer needs.

## Direct dependencies

Ranges are as declared across the workspaces; a dependency declared in
more than
one workspace lists each distinct range. `—` means the dependency is no
longer
declared anywhere in the tree.

| Package | Type | Previous Version | Current Version |
| --- | --- | --- | --- |
| `@axe-core/cli` | Production | latest | — |
| `@axe-core/playwright` | Production | latest | — |
| `@axe-core/puppeteer` | Production | latest | — |
| `@axe-core/react` | Production, Dev | ^4.2.2, ^4.7.3 | ^4.2.2, ^4.7.3
|
| `@axe-core/webdriverio` | Production, Dev | latest, workspace:* |
workspace:* |
| `@axe-core/webdriverjs` | Production | latest, workspace:^ |
workspace:^ |
| `@babel/core` | Dev | ^7.19.3 | ^7.19.3 |
| `@babel/preset-env` | Dev | ^7.19.4 | ^7.19.4 |
| `@babel/preset-react` | Dev | ^7.18.6 | ^7.18.6 |
| `@babel/preset-typescript` | Dev | ^7.18.6 | ^7.18.6 |
| `@eslint/js` | Dev | ^9.2.0 | ^10.0.1 |
| `@jest/globals` | Dev | ^30.2.0 | ^30.2.0 |
| `@playwright/test` | Dev | ^1.60.0 | ^1.60.0 |
| `@types/chai` | Dev | ^4.3.3, ^4.3.9 | ^5.2.3 |
| `@types/chromedriver` | Dev | ^81.0.1 | ^81.0.1 |
| `@types/clone` | Dev | ^2.1.1 | ^2.1.1 |
| `@types/cssesc` | Dev | ^3.0.0 | ^3.0.0 |
| `@types/express` | Dev | ^5.0.3 | ^5.0.3 |
| `@types/jsonld` | Dev | github:types/jsonld | github:types/jsonld |
| `@types/mocha` | Dev | ^10.0.0, ^10.0.3, ^10.0.6 | ^10.0.0, ^10.0.3,
^10.0.6 |
| `@types/node` | Dev | ^25.4.0 | ^24.10.1 |
| `@types/react` | Dev | 17.0.0 | 17.0.0 |
| `@types/react-dom` | Dev | 17.0.0 | 17.0.0 |
| `@types/requestidlecallback` | Dev | ^0.3.5 | ^0.3.5 |
| `@types/selenium-webdriver` | Dev | ^4.1.5, ^4.35.6 | ^4.1.5, ^4.35.6
|
| `@types/semver` | Dev | — | ^7.8.0 |
| `@types/sinon` | Dev | ^21.0.0 | ^22.0.0 |
| `@wdio/cli` | Dev | ^9.19.1 | ^9.19.1 |
| `@wdio/globals` | Dev | ^9.17.0 | ^9.17.0 |
| `@wdio/local-runner` | Dev | ^9.19.2 | ^9.19.2 |
| `@wdio/mocha-framework` | Dev | ^9.21.0 | ^9.21.0 |
| `@wdio/spec-reporter` | Dev | ^9.19.1 | ^9.19.1 |
| `@wdio/types` | Dev | ^9.27.0 | ^9.27.0 |
| `@wojtekmaj/enzyme-adapter-react-17` | Dev | ^0.8.0 | ^0.8.0 |
| `async-listen` | Dev | ^3.0.1 | ^3.0.1 |
| `axe-core` | Production, Dev | ~4.13.0 | ~4.13.0 |
| `axe-test-fixtures` | Dev | github:dequelabs/axe-test-fixtures#v1 |
github:dequelabs/axe-test-fixtures#v1 |
| `babel-core` | Dev | ^6.26.0 | ^6.26.0 |
| `babel-preset-es2015` | Dev | ^6.6.0 | ^6.6.0 |
| `babel-preset-react` | Dev | ^6.5.0 | ^6.5.0 |
| `babelify` | Dev | ^8.0.0 | ^8.0.0 |
| `browser-driver-manager` | Production | ^2.0.0 | ^2.0.0 |
| `browserify` | Dev | ^16.1.1 | ^16.1.1 |
| `browserify-css` | Dev | ^0.15.0 | ^0.15.0 |
| `chai` | Production, Dev | ^4.3.10, ^4.3.4, ^4.3.6 | ^4.3.10, ^4.3.6 |
| `chromedriver` | Production, Dev | ^146, latest | ^152.0.0, ~152.0.0 |
| `clone` | Dev | ^2.1.2 | ^2.1.2 |
| `colors` | Production | ^1.4.0 | ^1.4.0 |
| `commander` | Production | ^9.4.1 | ^15.0.0 |
| `create-react-class` | Production | ^15.6.3 | ^15.6.3 |
| `cross-dirname` | Dev | ^0.1.0 | ^0.1.0 |
| `cssesc` | Production | ^3.0.0 | ^3.0.0 |
| `delay` | Dev | ^5.0.0 | — |
| `devtools` | Dev | ^8.27.2 | ^8.27.2 |
| `dotenv` | Production, Dev | ^17.2.2, ^17.3.1 | ^17.2.2, ^17.3.1 |
| `envify` | Dev | ^4.1.0 | ^4.1.0 |
| `enzyme` | Dev | ^3.11.0 | ^3.11.0 |
| `eslint` | Dev | ^9.2.0 | ^10.8.1 |
| `eslint-config-prettier` | Dev | ^10.1.8 | ^10.1.8 |
| `eslint-plugin-prettier` | Dev | ^5.1.3 | ^5.1.3 |
| `execa` | Production, Dev | 5.1.1, ^5.1.1 | 10.0.1 |
| `express` | Dev | ^5.1.0 | ^5.1.0 |
| `glob` | Dev | ^13.0.0 | ^13.0.0 |
| `globals` | Dev | ^17.3.0 | ^17.3.0 |
| `http-server` | Dev | ^14.1.1 | ^14.1.1 |
| `husky` | Dev | ^9.0.10 | ^9.0.10 |
| `jest` | Dev | ^30.0.5 | ^30.0.5 |
| `jest-environment-jsdom` | Dev | ^30.1.2 | ^30.1.2 |
| `jsonld` | Dev | ^9.0.0 | ^9.0.0 |
| `lerna` | Dev | 10.0.1 | 10.0.1 |
| `lint-staged` | Dev | ^17.0.7 | ^17.0.7 |
| `mocha` | Production, Dev | ^11.7.1, ^11.7.5 | ^11.7.1 |
| `next` | Production | ^12.1.0 | ^12.1.0 |
| `nyc` | Dev | ^18.0.0 | ^18.0.0 |
| `playwright` | Production | ^1.16.3 | — |
| `playwright-core` | Peer | >= 1.0.0 | >= 1.0.0 |
| `prettier` | Dev | ^3.0.3 | ^3.0.3 |
| `puppeteer` | Production, Dev, Peer | 24.37.5, >=1.10.0, ^24.33.0 |
25.8.0, >=1.10.0 |
| `react` | Production, Dev | 17.0.2, ^16.8.6, ^17.0.0, ^17.0.2 |
17.0.2, ^16.8.6, ^17.0.0, ^17.0.2 |
| `react-dom` | Production, Dev | 17.0.2, ^16.8.6, ^17.0.2 | 17.0.2,
^16.8.6, ^17.0.2 |
| `react-shadow` | Production, Dev | ^17.0.0, ^20.4.0 | ^17.0.0, ^20.4.0
|
| `requestidlecallback` | Production | ^0.3.0 | ^0.3.0 |
| `rimraf` | Dev | ^6.0.1 | ^6.0.1 |
| `selenium-webdriver` | Production, Dev, Peer | >3.0.0-beta \|\|
>=2.53.1 \|\| >4.0.0-alpha, ^4.1.0, ^4.44.0, ~4.44.0 | >3.0.0-beta \|\|
>=2.53.1 \|\| >4.0.0-alpha, ^4.47.0, ~4.47.0 |
| `semver` | Dev | ^7.5.4 | ^7.5.4, ^7.8.5 |
| `sinon` | Dev | ^22.0.0 | ^22.0.0 |
| `source-map-support` | Dev | ^0.5.21 | ^0.5.21 |
| `styled-components` | Production | ^5.3.0 | ^5.3.0 |
| `tempy` | Dev | ^1.0.0 | — |
| `ts-jest` | Dev | ^29.0.3 | ^29.0.3 |
| `ts-node` | Dev | ^10.9.1, ^10.9.2 | ^10.9.1, ^10.9.2 |
| `tsup` | Dev | ^8.0.1 | ^8.0.1 |
| `typescript` | Dev | ^5.2.2, ^5.9.3 | ^6.0.3 |
| `typescript-eslint` | Dev | ^8.0.0-alpha.12 | ^8.0.0-alpha.12 |
| `webcomponents.js` | Production | ^0.7.24 | ^0.7.24 |
| `webdriverio` | Production, Dev, Peer | ^5 \|\| ^6 \|\| ^7 \|\| ^8
\|\| ^9, ^7.16.10, ^9.27.0 | ^5 \|\| ^6 \|\| ^7 \|\| ^8 \|\| ^9, ^9.27.0
|

Closes: #1425
…rs group (#1435)

Bumps the browser-drivers group with 1 update:
[chromedriver](https://github.com/giggio/node-chromedriver).

Updates `chromedriver` from 152.0.0 to 152.0.1
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/giggio/node-chromedriver/commit/81a0ac1aadfe1e171d8a81c7417f43fb8473f8fc"><code>81a0ac1</code></a>
Bump version to 152.0.1</li>
<li>See full diff in <a
href="https://github.com/giggio/node-chromedriver/compare/152.0.0...152.0.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=chromedriver&package-manager=npm_and_yarn&previous-version=152.0.0&new-version=152.0.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the webdriverio group with 6 updates:

| Package | From | To |
| --- | --- | --- |
|
[webdriverio](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio)
| `9.31.1` | `9.31.2` |
|
[@wdio/cli](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli)
| `9.31.1` | `9.31.2` |
|
[@wdio/local-runner](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-local-runner)
| `9.31.1` | `9.31.2` |
|
[@wdio/mocha-framework](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-mocha-framework)
| `9.31.1` | `9.31.2` |
|
[@wdio/spec-reporter](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-spec-reporter)
| `9.31.1` | `9.31.2` |
|
[@wdio/types](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-types)
| `9.31.1` | `9.31.2` |

Updates `webdriverio` from 9.31.1 to 9.31.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">webdriverio's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">webdriverio's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
<h2>v9.31.0 (2026-08-18)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15471">#15471</a>
feat: Expect's multi-element <code>$()</code> support (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15480">#15480</a>
fix(<code>@​wdio/utils</code>): keep an undefined element that passes
filter (<a
href="https://github.com/luantaraschi"><code>@​luantaraschi</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15488">#15488</a>
fix: respect WEBDRIVER_CACHE_DIR during driver setup (<a
href="https://github.com/shixi-li"><code>@​shixi-li</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15504">#15504</a>
fix(webdriver): retry requests aborted by connectionRetryTimeout (<a
href="https://github.com/birtles"><code>@​birtles</code></a>)</li>
</ul>
</li>
<li><code>wdio-cli</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15474">#15474</a>
feat(cli/repl): support TS files (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15468">#15468</a>
chore(pnpm): fix failing pnpm tests (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15477">#15477</a>
fix(webdriverio): reset current context when browsing context is
destroyed (<a
href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15473">#15473</a>
fix(webdriverio): scroll by deltaX/deltaY in scrollIntoView wheel action
(<a
href="https://github.com/wswebcreation"><code>@​wswebcreation</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15350">#15350</a>
fix(webdriverio): guard ShadowRootManager preload script against
partial-Bidi remotes (<a
href="https://github.com/navin772"><code>@​navin772</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15493">#15493</a>
fix(wdio-utils): compose element command overrides (<a
href="https://github.com/KuznetsovRoman"><code>@​KuznetsovRoman</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/514d1ea03df245adc0a2c193f74476738210f041"><code>514d1ea</code></a>
v9.31.2</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/435e788e70f34925147cd6935d7e0ecc33d644b1"><code>435e788</code></a>
fix(webdriverio): record matching mock responses even when not blocked
(<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15479">#15479</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/b6181d25e767eac227e1b0046ac53ba63a2b45ec"><code>b6181d2</code></a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; ...</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.2/packages/webdriverio">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/cli` from 9.31.1 to 9.31.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/cli's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/cli's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
<h2>v9.31.0 (2026-08-18)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15471">#15471</a>
feat: Expect's multi-element <code>$()</code> support (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15480">#15480</a>
fix(<code>@​wdio/utils</code>): keep an undefined element that passes
filter (<a
href="https://github.com/luantaraschi"><code>@​luantaraschi</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15488">#15488</a>
fix: respect WEBDRIVER_CACHE_DIR during driver setup (<a
href="https://github.com/shixi-li"><code>@​shixi-li</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15504">#15504</a>
fix(webdriver): retry requests aborted by connectionRetryTimeout (<a
href="https://github.com/birtles"><code>@​birtles</code></a>)</li>
</ul>
</li>
<li><code>wdio-cli</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15474">#15474</a>
feat(cli/repl): support TS files (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15468">#15468</a>
chore(pnpm): fix failing pnpm tests (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15477">#15477</a>
fix(webdriverio): reset current context when browsing context is
destroyed (<a
href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15473">#15473</a>
fix(webdriverio): scroll by deltaX/deltaY in scrollIntoView wheel action
(<a
href="https://github.com/wswebcreation"><code>@​wswebcreation</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15350">#15350</a>
fix(webdriverio): guard ShadowRootManager preload script against
partial-Bidi remotes (<a
href="https://github.com/navin772"><code>@​navin772</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15493">#15493</a>
fix(wdio-utils): compose element command overrides (<a
href="https://github.com/KuznetsovRoman"><code>@​KuznetsovRoman</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/514d1ea03df245adc0a2c193f74476738210f041"><code>514d1ea</code></a>
v9.31.2</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.2/packages/wdio-cli">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/local-runner` from 9.31.1 to 9.31.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/local-runner's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/local-runner's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
<h2>v9.31.0 (2026-08-18)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15471">#15471</a>
feat: Expect's multi-element <code>$()</code> support (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15480">#15480</a>
fix(<code>@​wdio/utils</code>): keep an undefined element that passes
filter (<a
href="https://github.com/luantaraschi"><code>@​luantaraschi</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15488">#15488</a>
fix: respect WEBDRIVER_CACHE_DIR during driver setup (<a
href="https://github.com/shixi-li"><code>@​shixi-li</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15504">#15504</a>
fix(webdriver): retry requests aborted by connectionRetryTimeout (<a
href="https://github.com/birtles"><code>@​birtles</code></a>)</li>
</ul>
</li>
<li><code>wdio-cli</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15474">#15474</a>
feat(cli/repl): support TS files (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15468">#15468</a>
chore(pnpm): fix failing pnpm tests (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15477">#15477</a>
fix(webdriverio): reset current context when browsing context is
destroyed (<a
href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15473">#15473</a>
fix(webdriverio): scroll by deltaX/deltaY in scrollIntoView wheel action
(<a
href="https://github.com/wswebcreation"><code>@​wswebcreation</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15350">#15350</a>
fix(webdriverio): guard ShadowRootManager preload script against
partial-Bidi remotes (<a
href="https://github.com/navin772"><code>@​navin772</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15493">#15493</a>
fix(wdio-utils): compose element command overrides (<a
href="https://github.com/KuznetsovRoman"><code>@​KuznetsovRoman</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/514d1ea03df245adc0a2c193f74476738210f041"><code>514d1ea</code></a>
v9.31.2</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.2/packages/wdio-local-runner">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/mocha-framework` from 9.31.1 to 9.31.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/mocha-framework's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/mocha-framework's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
<h2>v9.31.0 (2026-08-18)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15471">#15471</a>
feat: Expect's multi-element <code>$()</code> support (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15480">#15480</a>
fix(<code>@​wdio/utils</code>): keep an undefined element that passes
filter (<a
href="https://github.com/luantaraschi"><code>@​luantaraschi</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15488">#15488</a>
fix: respect WEBDRIVER_CACHE_DIR during driver setup (<a
href="https://github.com/shixi-li"><code>@​shixi-li</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15504">#15504</a>
fix(webdriver): retry requests aborted by connectionRetryTimeout (<a
href="https://github.com/birtles"><code>@​birtles</code></a>)</li>
</ul>
</li>
<li><code>wdio-cli</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15474">#15474</a>
feat(cli/repl): support TS files (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15468">#15468</a>
chore(pnpm): fix failing pnpm tests (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15477">#15477</a>
fix(webdriverio): reset current context when browsing context is
destroyed (<a
href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15473">#15473</a>
fix(webdriverio): scroll by deltaX/deltaY in scrollIntoView wheel action
(<a
href="https://github.com/wswebcreation"><code>@​wswebcreation</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15350">#15350</a>
fix(webdriverio): guard ShadowRootManager preload script against
partial-Bidi remotes (<a
href="https://github.com/navin772"><code>@​navin772</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15493">#15493</a>
fix(wdio-utils): compose element command overrides (<a
href="https://github.com/KuznetsovRoman"><code>@​KuznetsovRoman</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/514d1ea03df245adc0a2c193f74476738210f041"><code>514d1ea</code></a>
v9.31.2</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.2/packages/wdio-mocha-framework">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/spec-reporter` from 9.31.1 to 9.31.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/spec-reporter's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/spec-reporter's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
<h2>v9.31.0 (2026-08-18)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15471">#15471</a>
feat: Expect's multi-element <code>$()</code> support (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15480">#15480</a>
fix(<code>@​wdio/utils</code>): keep an undefined element that passes
filter (<a
href="https://github.com/luantaraschi"><code>@​luantaraschi</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15488">#15488</a>
fix: respect WEBDRIVER_CACHE_DIR during driver setup (<a
href="https://github.com/shixi-li"><code>@​shixi-li</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15504">#15504</a>
fix(webdriver): retry requests aborted by connectionRetryTimeout (<a
href="https://github.com/birtles"><code>@​birtles</code></a>)</li>
</ul>
</li>
<li><code>wdio-cli</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15474">#15474</a>
feat(cli/repl): support TS files (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15468">#15468</a>
chore(pnpm): fix failing pnpm tests (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15477">#15477</a>
fix(webdriverio): reset current context when browsing context is
destroyed (<a
href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15473">#15473</a>
fix(webdriverio): scroll by deltaX/deltaY in scrollIntoView wheel action
(<a
href="https://github.com/wswebcreation"><code>@​wswebcreation</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15350">#15350</a>
fix(webdriverio): guard ShadowRootManager preload script against
partial-Bidi remotes (<a
href="https://github.com/navin772"><code>@​navin772</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15493">#15493</a>
fix(wdio-utils): compose element command overrides (<a
href="https://github.com/KuznetsovRoman"><code>@​KuznetsovRoman</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/514d1ea03df245adc0a2c193f74476738210f041"><code>514d1ea</code></a>
v9.31.2</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.2/packages/wdio-spec-reporter">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/types` from 9.31.1 to 9.31.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/types's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/types's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
<li><a href="https://github.com/Badisi"><code>@​Badisi</code></a></li>
</ul>
<h2>v9.31.0 (2026-08-18)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15471">#15471</a>
feat: Expect's multi-element <code>$()</code> support (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15480">#15480</a>
fix(<code>@​wdio/utils</code>): keep an undefined element that passes
filter (<a
href="https://github.com/luantaraschi"><code>@​luantaraschi</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15488">#15488</a>
fix: respect WEBDRIVER_CACHE_DIR during driver setup (<a
href="https://github.com/shixi-li"><code>@​shixi-li</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15504">#15504</a>
fix(webdriver): retry requests aborted by connectionRetryTimeout (<a
href="https://github.com/birtles"><code>@​birtles</code></a>)</li>
</ul>
</li>
<li><code>wdio-cli</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15474">#15474</a>
feat(cli/repl): support TS files (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15468">#15468</a>
chore(pnpm): fix failing pnpm tests (<a
href="https://github.com/Delta456"><code>@​Delta456</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15477">#15477</a>
fix(webdriverio): reset current context when browsing context is
destroyed (<a
href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15473">#15473</a>
fix(webdriverio): scroll by deltaX/deltaY in scrollIntoView wheel action
(<a
href="https://github.com/wswebcreation"><code>@​wswebcreation</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15350">#15350</a>
fix(webdriverio): guard ShadowRootManager preload script against
partial-Bidi remotes (<a
href="https://github.com/navin772"><code>@​navin772</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>, <code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15493">#15493</a>
fix(wdio-utils): compose element command overrides (<a
href="https://github.com/KuznetsovRoman"><code>@​KuznetsovRoman</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/514d1ea03df245adc0a2c193f74476738210f041"><code>514d1ea</code></a>
v9.31.2</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/b6181d25e767eac227e1b0046ac53ba63a2b45ec"><code>b6181d2</code></a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; ...</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.2/packages/wdio-types">compare
view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [eslint](https://github.com/eslint/eslint) from 10.8.1 to 10.9.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eslint/eslint/releases">eslint's
releases</a>.</em></p>
<blockquote>
<h2>v10.9.0</h2>
<h2>Features</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/08de88e50294c4e01f6cae97eceeb578da55792b"><code>08de88e</code></a>
feat: handle underflow in no-loss-of-precision (<a
href="https://redirect.github.com/eslint/eslint/issues/21218">#21218</a>)
(Rithish S)</li>
<li><a
href="https://github.com/eslint/eslint/commit/55db4791120ae591d88089c43127b7b0e16866d4"><code>55db479</code></a>
feat: add checkConditionalExpressions to
<code>no-unmodified-loop-condition</code> (<a
href="https://redirect.github.com/eslint/eslint/issues/21175">#21175</a>)
(sethamus)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/2ba302554e7a24e9909bbdd026fd0c2d1d0d8638"><code>2ba3025</code></a>
fix: prevent unsafe <code>no-var</code> autofix with hoisted functions
(<a
href="https://redirect.github.com/eslint/eslint/issues/21213">#21213</a>)
(sethamus)</li>
<li><a
href="https://github.com/eslint/eslint/commit/8e6962219a605c5f5add10953aa31027da839194"><code>8e69622</code></a>
fix: Prevent no-var autofix when var is shadowed by catch parameter (<a
href="https://redirect.github.com/eslint/eslint/issues/21204">#21204</a>)
(Yang Hyeonjong)</li>
<li><a
href="https://github.com/eslint/eslint/commit/684b57972e1ddf25e076fb36189c60bbcacee635"><code>684b579</code></a>
fix: prefer-template invalid autofix creates a tagged template call (<a
href="https://redirect.github.com/eslint/eslint/issues/21207">#21207</a>)
(김채영)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/9ef407a3b051e74f50dc7fb8914e2bd89b3e5e53"><code>9ef407a</code></a>
docs: use eslint.config.* wherever config file names are listed (<a
href="https://redirect.github.com/eslint/eslint/issues/21216">#21216</a>)
(Marry (Subin Yang))</li>
<li><a
href="https://github.com/eslint/eslint/commit/87f66f4435c4df7f4f6815c939d153196ec03e3c"><code>87f66f4</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/585ef37516c0dc29ddb91ce2a2cdcc46fdbbd610"><code>585ef37</code></a>
docs: update architecture documentation (<a
href="https://redirect.github.com/eslint/eslint/issues/21112">#21112</a>)
(Francesco Trotta)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f3993b0547bace7370e9728ee7408af49d367d76"><code>f3993b0</code></a>
docs: Update README (GitHub Actions Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/ffc87d6234b2aa4335eec069e5c4d6ac04832b9e"><code>ffc87d6</code></a>
docs: fix broken links in Further Reading sections (<a
href="https://redirect.github.com/eslint/eslint/issues/21203">#21203</a>)
(Minsu)</li>
<li><a
href="https://github.com/eslint/eslint/commit/1a761e1d11b011fcb6bee181231a51010c500e4d"><code>1a761e1</code></a>
docs: update moved JSX specification links (<a
href="https://redirect.github.com/eslint/eslint/issues/21198">#21198</a>)
(Imran Mustafa)</li>
<li><a
href="https://github.com/eslint/eslint/commit/4d00ca4064ae0d1a75b604a16c68ab9f386ad388"><code>4d00ca4</code></a>
docs: update ESLint peer dependency to <code>^10.0.0</code> in shareable
configs (<a
href="https://redirect.github.com/eslint/eslint/issues/21202">#21202</a>)
(lumir)</li>
<li><a
href="https://github.com/eslint/eslint/commit/510d1a2e87bc197219f42e195ddb638d2b183a5a"><code>510d1a2</code></a>
docs: Update README (GitHub Actions Bot)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/899dbf131ce12a194b394bb8d67307df23509d17"><code>899dbf1</code></a>
chore: update github/codeql-action action to v4.37.7 (<a
href="https://redirect.github.com/eslint/eslint/issues/21243">#21243</a>)
(renovate[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/9aa38732177935bd1d7f1493732c0b67666be28a"><code>9aa3873</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/21235">#21235</a>)
(ESLint Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/dc1e7a8416937edefe04cf836ee202a6fc03bedd"><code>dc1e7a8</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/21208">#21208</a>)
(ESLint Bot)</li>
<li><a
href="https://github.com/eslint/eslint/commit/f878d212e9622da9513bcd60d2aedb2e8bb4fc8b"><code>f878d21</code></a>
ci: bump pnpm/action-setup from 6.0.9 to 6.0.10 (<a
href="https://redirect.github.com/eslint/eslint/issues/21200">#21200</a>)
(dependabot[bot])</li>
<li><a
href="https://github.com/eslint/eslint/commit/4891e50aceadb0e886ad7d8ab5ae2beab563de85"><code>4891e50</code></a>
ci: bump github/codeql-action from 4.37.4 to 4.37.6 (<a
href="https://redirect.github.com/eslint/eslint/issues/21199">#21199</a>)
(dependabot[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/eslint/eslint/commit/c27bc926e496985eb7911c09eb60914b2e4b5d0f"><code>c27bc92</code></a>
10.9.0</li>
<li><a
href="https://github.com/eslint/eslint/commit/fa831d95b326e6d23671d9b2df1ea5dbc64f6f34"><code>fa831d9</code></a>
Build: changelog update for 10.9.0</li>
<li><a
href="https://github.com/eslint/eslint/commit/899dbf131ce12a194b394bb8d67307df23509d17"><code>899dbf1</code></a>
chore: update github/codeql-action action to v4.37.7 (<a
href="https://redirect.github.com/eslint/eslint/issues/21243">#21243</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/08de88e50294c4e01f6cae97eceeb578da55792b"><code>08de88e</code></a>
feat: handle underflow in no-loss-of-precision (<a
href="https://redirect.github.com/eslint/eslint/issues/21218">#21218</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/9ef407a3b051e74f50dc7fb8914e2bd89b3e5e53"><code>9ef407a</code></a>
docs: use eslint.config.* wherever config file names are listed (<a
href="https://redirect.github.com/eslint/eslint/issues/21216">#21216</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/9aa38732177935bd1d7f1493732c0b67666be28a"><code>9aa3873</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/21235">#21235</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/2ba302554e7a24e9909bbdd026fd0c2d1d0d8638"><code>2ba3025</code></a>
fix: prevent unsafe <code>no-var</code> autofix with hoisted functions
(<a
href="https://redirect.github.com/eslint/eslint/issues/21213">#21213</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/dc1e7a8416937edefe04cf836ee202a6fc03bedd"><code>dc1e7a8</code></a>
chore: update ecosystem plugins (<a
href="https://redirect.github.com/eslint/eslint/issues/21208">#21208</a>)</li>
<li><a
href="https://github.com/eslint/eslint/commit/87f66f4435c4df7f4f6815c939d153196ec03e3c"><code>87f66f4</code></a>
docs: Update README</li>
<li><a
href="https://github.com/eslint/eslint/commit/8e6962219a605c5f5add10953aa31027da839194"><code>8e69622</code></a>
fix: Prevent no-var autofix when var is shadowed by catch parameter (<a
href="https://redirect.github.com/eslint/eslint/issues/21204">#21204</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/eslint/eslint/compare/v10.8.1...v10.9.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint&package-manager=npm_and_yarn&previous-version=10.8.1&new-version=10.9.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Setting `minimumReleaseAge` auto-enables pnpm's strict mode, and strict
mode cannot prompt in CI.
The ~7 day cooldown therefore blocks the install outright rather than
quietly resolving an older version, which leaves `update-axe-core.yml`
unable to pick up an axe-core release until it ages out.
`minimumReleaseAgeExclude` exempts `axe-core` so the automated bump
works the day a release ships.

This follows the second of the two items raised on #1346.
The sister repo it points at, `axe-devtools-npm`, excludes
`@axe-devtools/*`, `@deque/*`, and `axe-core`.
Only the `axe-core` entry carries over here.
Its first-party scope glob exists because several `@deque/*`
dependencies there resolve from the registry; in this repo both
intra-workspace dependencies use the workspace protocol, so
`@axe-core/*` packages resolve as links, never fetch registry metadata,
and never reach the age check.
Excluding them would be inert today while leaving a standing grant that
pnpm never prunes — and would silently exempt any registry-resolved
`@axe-core/*` dependency added later.
There is no `@deque/*` analogue in this repo at all.

The first item from #1346 — whether pnpm workspaces can hold a fixed
version pin — is deliberately **not** in this PR.
The answer is yes (`workspace:*` publishes an exact version where
`workspace:^` publishes a caret), but acting on it turned out to change
the published contract rather than restore it: every stable
`@axe-core/cli` release has declared a caret on `@axe-core/webdriverjs`,
and the exactness that was lost in the migration is confined to the
canary and release-candidate channels.
That is a consumer-facing decision worth its own discussion, so it moved
to #1442.

Ref: #1346
This pull request updates the version of
[`axe-core`](https://npmjs.org/axe-core) to v4.14.0.

This PR was opened by a robot 🤖 🎉.

Co-authored-by: michael-siek <45568605+michael-siek@users.noreply.github.com>
Bumps
[postcss-selector-parser](https://github.com/postcss/postcss-selector-parser)
from 7.1.5 to 7.1.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/postcss/postcss-selector-parser/releases">postcss-selector-parser's
releases</a>.</em></p>
<blockquote>
<h2>7.1.6</h2>
<ul>
<li>fix: parse flat selectors in linear time, closing a CPU exhaustion
vulnerability (<a
href="https://github.com/advisories/GHSA-rj75-hqrm-r3gf">GHSA-rj75-hqrm-r3gf</a>,
reported by Wayde Shi)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/postcss/postcss-selector-parser/blob/main/CHANGELOG.md">postcss-selector-parser's
changelog</a>.</em></p>
<blockquote>
<h2>7.1.6 - 2026-09-03</h2>
<ul>
<li>fix: parse flat selectors in linear time, closing a CPU exhaustion
vulnerability (<a
href="https://github.com/advisories/GHSA-rj75-hqrm-r3gf">GHSA-rj75-hqrm-r3gf</a>,
reported by Wayde Shi)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/postcss/postcss-selector-parser/commit/4eb3468e754f9f94d2092d103767bae98aa41438"><code>4eb3468</code></a>
7.1.6</li>
<li><a
href="https://github.com/postcss/postcss-selector-parser/commit/62b191792df0a0bc56062e5a875bc74aae2a51cd"><code>62b1917</code></a>
fix: parse flat selectors in linear time, closing a CPU exhaustion
vulnerability</li>
<li>See full diff in <a
href="https://github.com/postcss/postcss-selector-parser/compare/7.1.5...7.1.6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=postcss-selector-parser&package-manager=npm_and_yarn&previous-version=7.1.5&new-version=7.1.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/dequelabs/axe-core-npm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…1451)

Bumps the puppeteer group with 1 update:
[puppeteer](https://github.com/puppeteer/puppeteer).

Updates `puppeteer` from 25.8.0 to 25.12.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/releases">puppeteer's
releases</a>.</em></p>
<blockquote>
<h2>puppeteer-core: v25.12.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v25.11.0...puppeteer-core-v25.12.0">25.12.0</a>
(2026-09-23)</h2>
<h3>🎉 Features</h3>
<ul>
<li>roll to Chrome 154.0.8037.57 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15484">#15484</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/00eec77b9d1ebd4edb29ff9a247b5a8b7edea7a1">00eec77</a>)</li>
<li>roll to Firefox 156.0 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15464">#15464</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/abdc0785df19f5f4a7e935d0eb4757cf260758ab">abdc078</a>)</li>
</ul>
<h3>🛠️ Fixes</h3>
<ul>
<li><strong>launcher:</strong> clean temporary profiles on process exit
(<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15441">#15441</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/b30d91c79c14b3709dba390ab9d9764fad67de92">b30d91c</a>)</li>
<li>release the mouse button when a drag or drop fails (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15231">#15231</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/469621f50a4927e0139d2e436cc143c441fa523b">469621f</a>)</li>
<li>return the shadow host for a text node in a shadow root in
SerializedAXNode.elementHandle (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15451">#15451</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/101c7d501555072510b4f2df00c549617b515c57">101c7d5</a>)</li>
<li>roll to Chrome 153.0.8010.47 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15465">#15465</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/1ce3a9a65ba8dbaf47925bbcf9e8f73369d75a9d">1ce3a9a</a>)</li>
<li>roll to Chrome 153.0.8010.52 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15470">#15470</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/257a6a1973773e08131c432d31d65b16aaf87b12">257a6a1</a>)</li>
<li>roll to Firefox 156.0.1 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15483">#15483</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/73d8fec63f23b1d20e28e13b2717f30f87ca2b83">73d8fec</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.2 to 3.2.3</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>puppeteer: v25.12.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.11.0...puppeteer-v25.12.0">25.12.0</a>
(2026-09-23)</h2>
<h3>🎉 Features</h3>
<ul>
<li>roll to Chrome 154.0.8037.57 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15484">#15484</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/00eec77b9d1ebd4edb29ff9a247b5a8b7edea7a1">00eec77</a>)</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>The following workspace dependencies were updated
<ul>
<li>dependencies
<ul>
<li><code>@​puppeteer/browsers</code> bumped from 3.2.2 to 3.2.3</li>
<li>puppeteer-core bumped from 25.11.0 to 25.12.0</li>
</ul>
</li>
</ul>
</li>
</ul>
<h2>puppeteer-core: v25.11.0</h2>
<h2><a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v25.10.0...puppeteer-core-v25.11.0">25.11.0</a>
(2026-09-13)</h2>
<h3>🎉 Features</h3>
<ul>
<li>roll to Chrome 153.0.8010.36 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15443">#15443</a>)
(<a
href="https://github.com/puppeteer/puppeteer/commit/947d5279dc5b57d2e850e2d651e31e3d5f50803d">947d527</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md">puppeteer's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>Puppeteer's canonical changelogs are maintained with the
packages:</p>
<ul>
<li><a
href="https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer/CHANGELOG.md"><code>puppeteer</code></a></li>
<li><a
href="https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer-core/CHANGELOG.md"><code>puppeteer-core</code></a></li>
</ul>
<p>The <a href="https://pptr.dev/changelog">combined changelog</a> is
generated when the
documentation website is built.</p>
<p>Historical combined entries are retained below.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/15684eb7f1adf98c1c0c4a5d23a154b7995e947e"><code>15684eb</code></a>
chore: release main (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15458">#15458</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/73d8fec63f23b1d20e28e13b2717f30f87ca2b83"><code>73d8fec</code></a>
fix: roll to Firefox 156.0.1 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15483">#15483</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/00eec77b9d1ebd4edb29ff9a247b5a8b7edea7a1"><code>00eec77</code></a>
feat: roll to Chrome 154.0.8037.57 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15484">#15484</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/17b535124f27b9f0c9f6c68e7deea3801b4534d0"><code>17b5351</code></a>
test: better loggin around failed tests (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15467">#15467</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/5cf7e20998ab53ffa0a040d47f644eb82fa3e92a"><code>5cf7e20</code></a>
test: fix Chrome Canary expectations (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15473">#15473</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/8c78a1a16eb1e4bb16e626d4f74dc4a0244ad50a"><code>8c78a1a</code></a>
test: update canary expectations for webmcp tests (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15471">#15471</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/257a6a1973773e08131c432d31d65b16aaf87b12"><code>257a6a1</code></a>
fix: roll to Chrome 153.0.8010.52 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15470">#15470</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/b30d91c79c14b3709dba390ab9d9764fad67de92"><code>b30d91c</code></a>
fix(launcher): clean temporary profiles on process exit (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15441">#15441</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/abdc0785df19f5f4a7e935d0eb4757cf260758ab"><code>abdc078</code></a>
feat: roll to Firefox 156.0 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15464">#15464</a>)</li>
<li><a
href="https://github.com/puppeteer/puppeteer/commit/1ce3a9a65ba8dbaf47925bbcf9e8f73369d75a9d"><code>1ce3a9a</code></a>
fix: roll to Chrome 153.0.8010.47 (<a
href="https://redirect.github.com/puppeteer/puppeteer/issues/15465">#15465</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/puppeteer/puppeteer/compare/puppeteer-v25.8.0...puppeteer-v25.12.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=puppeteer&package-manager=npm_and_yarn&previous-version=25.8.0&new-version=25.12.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [proxy-addr](https://github.com/jshttp/proxy-addr) from 2.0.7 to
2.0.8.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/jshttp/proxy-addr/releases">proxy-addr's
releases</a>.</em></p>
<blockquote>
<h2>2.0.8</h2>
<h2>Important</h2>
<ul>
<li>Fix <a
href="https://www.cve.org/CVERecord?id=CVE-2026-90711">CVE-2026-90711</a>
(<a
href="https://github.com/jshttp/proxy-addr/security/advisories/GHSA-jqcg-44mw-7w3h">GHSA-jqcg-44mw-7w3h</a>)</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>Add OSSF scorecard action by <a
href="https://github.com/carpasse"><code>@​carpasse</code></a> in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/27">jshttp/proxy-addr#27</a></li>
<li>Fix ci pipeline and add missing Node.JS versions by <a
href="https://github.com/carpasse"><code>@​carpasse</code></a> in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/26">jshttp/proxy-addr#26</a></li>
<li>[StepSecurity] Apply security best practices by <a
href="https://github.com/step-security-bot"><code>@​step-security-bot</code></a>
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/29">jshttp/proxy-addr#29</a></li>
<li>build(deps): bump coverallsapp/github-action from 1.2.5 to 2.3.6 by
<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/30">jshttp/proxy-addr#30</a></li>
<li>build(deps): bump github/codeql-action from 2.23.2 to 3.28.18 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/31">jshttp/proxy-addr#31</a></li>
<li>build(deps-dev): bump eslint-plugin-import from 2.23.4 to 2.31.0 by
<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/32">jshttp/proxy-addr#32</a></li>
<li>build(deps): bump ossf/scorecard-action from 2.0.6 to 2.4.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/33">jshttp/proxy-addr#33</a></li>
<li>build(deps): bump actions/upload-artifact from 3.1.3 to 4.6.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/35">jshttp/proxy-addr#35</a></li>
<li>build(deps-dev): bump deep-equal from 1.0.1 to 1.1.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/34">jshttp/proxy-addr#34</a></li>
<li>build(deps-dev): bump eslint-plugin-markdown from 2.2.0 to 2.2.1 by
<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/36">jshttp/proxy-addr#36</a></li>
<li>chore: add funding to package.json by <a
href="https://github.com/Phillip9587"><code>@​Phillip9587</code></a> in
<a
href="https://redirect.github.com/jshttp/proxy-addr/pull/40">jshttp/proxy-addr#40</a></li>
<li>build(deps): bump github/codeql-action from 3.28.18 to 3.29.5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/41">jshttp/proxy-addr#41</a></li>
<li>build(deps): bump github/codeql-action from 3.29.7 to 3.29.11 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/43">jshttp/proxy-addr#43</a></li>
<li>build(deps): bump actions/checkout from 3.6.0 to 5.0.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/42">jshttp/proxy-addr#42</a></li>
<li>build(deps): bump actions/upload-artifact from 4.6.2 to 5.0.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/47">jshttp/proxy-addr#47</a></li>
<li>build(deps): bump github/codeql-action from 3.29.11 to 4.31.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/46">jshttp/proxy-addr#46</a></li>
<li>build(deps): bump coverallsapp/github-action from 2.3.6 to 2.3.7 by
<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/50">jshttp/proxy-addr#50</a></li>
<li>build(deps): bump github/codeql-action from 4.31.2 to 4.31.5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/49">jshttp/proxy-addr#49</a></li>
<li>build(deps): bump actions/checkout from 5.0.0 to 6.0.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/48">jshttp/proxy-addr#48</a></li>
<li>build(deps): bump actions/checkout from 6.0.0 to 6.0.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/56">jshttp/proxy-addr#56</a></li>
<li>build(deps): bump github/codeql-action from 4.31.5 to 4.32.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/55">jshttp/proxy-addr#55</a></li>
<li>build(deps): bump github/codeql-action from 4.32.0 to 4.32.4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/57">jshttp/proxy-addr#57</a></li>
<li>build(deps): bump actions/upload-artifact from 5.0.0 to 7.0.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/58">jshttp/proxy-addr#58</a></li>
<li>Fix &quot;arugment&quot; typo in README by <a
href="https://github.com/schiwekM"><code>@​schiwekM</code></a> in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/61">jshttp/proxy-addr#61</a></li>
<li>build(deps): bump github/codeql-action from 4.32.4 to 4.36.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/64">jshttp/proxy-addr#64</a></li>
<li>build(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/63">jshttp/proxy-addr#63</a></li>
<li>build(deps): bump ossf/scorecard-action from 2.4.2 to 2.4.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/45">jshttp/proxy-addr#45</a></li>
<li>build(deps-dev): bump eslint-plugin-import from 2.31.0 to 2.32.0 by
<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/39">jshttp/proxy-addr#39</a></li>
<li>chore(ci): npm-publish via reusable workflows by <a
href="https://github.com/sheplu"><code>@​sheplu</code></a> in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/54">jshttp/proxy-addr#54</a></li>
<li>refresh CI by <a
href="https://github.com/UlisesGascon"><code>@​UlisesGascon</code></a>
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/69">jshttp/proxy-addr#69</a></li>
<li>fix: typo by <a
href="https://github.com/UlisesGascon"><code>@​UlisesGascon</code></a>
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/71">jshttp/proxy-addr#71</a></li>
<li>Release: 2.0.8 by <a
href="https://github.com/UlisesGascon"><code>@​UlisesGascon</code></a>
in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/70">jshttp/proxy-addr#70</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/carpasse"><code>@​carpasse</code></a>
made their first contribution in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/27">jshttp/proxy-addr#27</a></li>
<li><a
href="https://github.com/step-security-bot"><code>@​step-security-bot</code></a>
made their first contribution in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/29">jshttp/proxy-addr#29</a></li>
<li><a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
made their first contribution in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/30">jshttp/proxy-addr#30</a></li>
<li><a
href="https://github.com/Phillip9587"><code>@​Phillip9587</code></a>
made their first contribution in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/40">jshttp/proxy-addr#40</a></li>
<li><a href="https://github.com/schiwekM"><code>@​schiwekM</code></a>
made their first contribution in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/61">jshttp/proxy-addr#61</a></li>
<li><a href="https://github.com/sheplu"><code>@​sheplu</code></a> made
their first contribution in <a
href="https://redirect.github.com/jshttp/proxy-addr/pull/54">jshttp/proxy-addr#54</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/jshttp/proxy-addr/compare/v2.0.7...v2.0.8">https://github.com/jshttp/proxy-addr/compare/v2.0.7...v2.0.8</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/jshttp/proxy-addr/blob/master/HISTORY.md">proxy-addr's
changelog</a>.</em></p>
<blockquote>
<h1>2.0.8</h1>
<ul>
<li>Fix <a
href="https://www.cve.org/CVERecord?id=CVE-2026-90711">CVE-2026-90711</a>
(<a
href="https://github.com/jshttp/proxy-addr/security/advisories/GHSA-jqcg-44mw-7w3h">GHSA-jqcg-44mw-7w3h</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/a11ad82545698af5c33e59f3ed0b52eab79bf610"><code>a11ad82</code></a>
2.0.8 (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/70">#70</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/780911d84d18e2c5fa008ed0c0d387631ec11965"><code>780911d</code></a>
fix: reject IPv4 trust via mapped IPv6 subnets with a short prefix</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/92e103e3f3ab0467c8846cacea71f27dfc81091d"><code>92e103e</code></a>
fix(ci): use publised as release trigger event (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/71">#71</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/3e5ac75d275d82606d33d6ac47c0ff43c2eccee9"><code>3e5ac75</code></a>
ci: merge coverage via artifacts, disable fail-fast, add Node.js 23-26
(<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/69">#69</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/4b9db8190923840eb732b752a70f3e5ff713768c"><code>4b9db81</code></a>
chore(ci): npm-publish via workflows (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/54">#54</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/655e8950435ac457c586e8287da4d5993b7d0db5"><code>655e895</code></a>
build(deps-dev): bump eslint-plugin-import from 2.31.0 to 2.32.0 (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/39">#39</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/50ce4d09132a4c34f5485b52740ce879a9223b1f"><code>50ce4d0</code></a>
build(deps): bump ossf/scorecard-action from 2.4.2 to 2.4.3 (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/45">#45</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/0fd347f5b342e7502da58a512dc998d4a59cea24"><code>0fd347f</code></a>
build(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/63">#63</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/6a517fa25c741cc107a90019df458b34f580ce55"><code>6a517fa</code></a>
build(deps): bump github/codeql-action from 4.32.4 to 4.36.0 (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/64">#64</a>)</li>
<li><a
href="https://github.com/jshttp/proxy-addr/commit/0d45e2a88e82a2faf1148956b6457e3a6c99ebcd"><code>0d45e2a</code></a>
Fix &quot;arugment&quot; typo in README (<a
href="https://redirect.github.com/jshttp/proxy-addr/issues/61">#61</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/jshttp/proxy-addr/compare/v2.0.7...v2.0.8">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~GitHub%20Actions">GitHub Actions</a>, a new
releaser for proxy-addr since your current version.</p>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=proxy-addr&package-manager=npm_and_yarn&previous-version=2.0.7&new-version=2.0.8)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/dequelabs/axe-core-npm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [nx](https://github.com/nrwl/nx/tree/HEAD/packages/nx) from 23.1.1
to 23.2.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/nrwl/nx/releases">nx's
releases</a>.</em></p>
<blockquote>
<h2>23.2.1 (2026-09-09)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>core:</strong> report the cache location alongside usage (<a
href="https://redirect.github.com/nrwl/nx/pull/36959">#36959</a>)</li>
<li><strong>repo:</strong> add a .NET example for
<code>@​nx/dotnet</code> (<a
href="https://redirect.github.com/nrwl/nx/pull/36701">#36701</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>angular:</strong> correct declaration maps and exports of
buildable libraries (<a
href="https://redirect.github.com/nrwl/nx/pull/36373">#36373</a>, <a
href="https://redirect.github.com/nrwl/nx/issues/36357">#36357</a>)</li>
<li><strong>core:</strong> separate daemon runtime env from graph
identity (<a
href="https://redirect.github.com/nrwl/nx/pull/36565">#36565</a>, <a
href="https://redirect.github.com/nrwl/nx/issues/36564">#36564</a>)</li>
<li><strong>core:</strong> validate the migrations path before
extracting package migrations (<a
href="https://redirect.github.com/nrwl/nx/pull/36887">#36887</a>)</li>
<li><strong>core:</strong> release per-run process listeners and task
history results (<a
href="https://redirect.github.com/nrwl/nx/pull/36866">#36866</a>)</li>
<li><strong>core:</strong> read the pnpm 12 min-release-age policy
instead of deferring to an install (<a
href="https://redirect.github.com/nrwl/nx/pull/36915">#36915</a>, <a
href="https://redirect.github.com/nrwl/nx/issues/36914">#36914</a>)</li>
<li><strong>core:</strong> carry minimumReleaseAge into pruned pnpm
deploy output (<a
href="https://redirect.github.com/nrwl/nx/pull/36900">#36900</a>, <a
href="https://redirect.github.com/nrwl/nx/issues/36899">#36899</a>)</li>
<li><strong>core:</strong> report how a plugin worker was lost instead
of always calling it an exit (<a
href="https://redirect.github.com/nrwl/nx/pull/36894">#36894</a>)</li>
<li><strong>core:</strong> keep the cache in the workspace on CI (<a
href="https://redirect.github.com/nrwl/nx/pull/36922">#36922</a>)</li>
<li><strong>core:</strong> restore the wasm walker imports dropped by a
stray cfg attribute (<a
href="https://redirect.github.com/nrwl/nx/pull/36924">#36924</a>)</li>
<li><strong>core:</strong> avoid mutating target options when resolving
configurations (<a
href="https://redirect.github.com/nrwl/nx/pull/36934">#36934</a>)</li>
<li><strong>js:</strong> resolve tsconfig to absolute path so
${configDir} paths type-check without baseUrl (<a
href="https://redirect.github.com/nrwl/nx/pull/36445">#36445</a>)</li>
<li><strong>misc:</strong> scan package projects for env vars (<a
href="https://redirect.github.com/nrwl/nx/pull/36847">#36847</a>)</li>
<li><strong>release:</strong> exclude AI coding agents from the
changelog Thank You section (<a
href="https://redirect.github.com/nrwl/nx/pull/36892">#36892</a>)</li>
<li><strong>release:</strong> use the release group name when resolving
the previous tag for fixed groups (<a
href="https://redirect.github.com/nrwl/nx/pull/36554">#36554</a>)</li>
<li><strong>repo:</strong> provision JDK 17 for Gradle builds with mise
(<a
href="https://redirect.github.com/nrwl/nx/pull/36965">#36965</a>)</li>
<li><strong>repo:</strong> guard JAVA17_HOME against an uninstalled JDK
(<a
href="https://redirect.github.com/nrwl/nx/pull/36969">#36969</a>)</li>
<li><strong>rspack:</strong> write the normalized cache option in
NxAppRspackPlugin (<a
href="https://redirect.github.com/nrwl/nx/pull/36905">#36905</a>, <a
href="https://redirect.github.com/nrwl/nx/issues/36878">#36878</a>)</li>
</ul>
<h3>❤️ Thank You</h3>
<ul>
<li>AgentEnder <a
href="https://github.com/AgentEnder"><code>@​AgentEnder</code></a></li>
<li>Caleb Ukle</li>
<li>Claude</li>
<li>Craigory Coppola <a
href="https://github.com/AgentEnder"><code>@​AgentEnder</code></a></li>
<li>Denis Frenademetz <a
href="https://github.com/skrtheboss"><code>@​skrtheboss</code></a></li>
<li>Eduardo Speroni <a
href="https://github.com/edusperoni"><code>@​edusperoni</code></a></li>
<li>Federico Bartoli</li>
<li>FrozenPandaz <a
href="https://github.com/FrozenPandaz"><code>@​FrozenPandaz</code></a></li>
<li>Jack Stevenson</li>
<li>Jason Jean <a
href="https://github.com/FrozenPandaz"><code>@​FrozenPandaz</code></a></li>
<li>Jupiter Jayna <a
href="https://github.com/sdjayna"><code>@​sdjayna</code></a></li>
<li>Juri Strumpflohner <a
href="https://github.com/juristr"><code>@​juristr</code></a></li>
<li>Leosvel Pérez Espinosa <a
href="https://github.com/leosvelperez"><code>@​leosvelperez</code></a></li>
<li>Nicolas Beaussart <a
href="https://github.com/beaussan"><code>@​beaussan</code></a></li>
<li>ShwethaSundar</li>
<li>Stephen Jayna</li>
</ul>
<h2>23.2.0 (2026-09-02)</h2>
<h3>🚀 Features</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/nrwl/nx/commit/4008ffd1a523bc86413480f53a7fcfec974d9e46"><code>4008ffd</code></a>
chore(repo): check the wasm target on PRs that touch rust (<a
href="https://github.com/nrwl/nx/tree/HEAD/packages/nx/issues/36925">#36925</a>)</li>
<li><a
href="https://github.com/nrwl/nx/commit/6e7f8278ca47c10d0470f444a8c4004967a85b64"><code>6e7f827</code></a>
feat(core): report the cache location alongside usage (<a
href="https://github.com/nrwl/nx/tree/HEAD/packages/nx/issues/36959">#36959</a>)</li>
<li><a
href="https://github.com/nrwl/nx/commit/0a267e4e461bf53763c7716be0849b426cb780ff"><code>0a267e4</code></a>
fix(core): avoid mutating target options when resolving configurations
(<a
href="https://github.com/nrwl/nx/tree/HEAD/packages/nx/issues/36934">#36934</a>)</li>
<li><a
href="https://github.com/nrwl/nx/commit/f9ba81b5b2f2d78993b025132d6546cce9a81039"><code>f9ba81b</code></a>
fix(core): restore the wasm walker imports dropped by a stray cfg
attribute (...</li>
<li><a
href="https://github.com/nrwl/nx/commit/9469e56d032b6a3c419fd427e53c6016456f910a"><code>9469e56</code></a>
fix(core): keep the cache in the workspace on CI (<a
href="https://github.com/nrwl/nx/tree/HEAD/packages/nx/issues/36922">#36922</a>)</li>
<li><a
href="https://github.com/nrwl/nx/commit/c0b2f2d8419c735f7dadb46f1e26f514d4b91445"><code>c0b2f2d</code></a>
fix(core): report how a plugin worker was lost instead of always calling
it a...</li>
<li><a
href="https://github.com/nrwl/nx/commit/90aab1728d8b662bf4abe482093ce449e72aaf84"><code>90aab17</code></a>
fix(core): carry minimumReleaseAge into pruned pnpm deploy output (<a
href="https://github.com/nrwl/nx/tree/HEAD/packages/nx/issues/36900">#36900</a>)</li>
<li><a
href="https://github.com/nrwl/nx/commit/4871a959b9fe421616a271f41b71db782d9b0279"><code>4871a95</code></a>
fix(core): read the pnpm 12 min-release-age policy instead of deferring
to an...</li>
<li><a
href="https://github.com/nrwl/nx/commit/0ae906996ec7d299706a1e18851e89634e04b51e"><code>0ae9069</code></a>
fix(core): release per-run process listeners and task history results
(<a
href="https://github.com/nrwl/nx/tree/HEAD/packages/nx/issues/36866">#36866</a>)</li>
<li><a
href="https://github.com/nrwl/nx/commit/de37c5ebd1852fac700d70726326236ac398af3f"><code>de37c5e</code></a>
fix(core): validate the migrations path before extracting package
migrations ...</li>
<li>Additional commits viewable in <a
href="https://github.com/nrwl/nx/commits/23.2.1/packages/nx">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=nx&package-manager=npm_and_yarn&previous-version=23.1.1&new-version=23.2.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/dequelabs/axe-core-npm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [adm-zip](https://github.com/cthackers/adm-zip) from 0.6.0 to
0.6.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/cthackers/adm-zip/releases">adm-zip's
releases</a>.</em></p>
<blockquote>
<h2>v0.6.1</h2>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/cthackers/adm-zip/compare/v0.6.0...v0.6.1">https://github.com/cthackers/adm-zip/compare/v0.6.0...v0.6.1</a></p>
<ul>
<li>Updated dev dependencies</li>
<li>Fixed uncaught crash in async decompression on malformed DEFLATE
data</li>
<li>Fixed addLocalFolder following symlinks out of the archived
folder</li>
<li>Stripped setuid/setgid/sticky bits from extracted file
permissions</li>
<li>Enforced the decompression size cap on the async path and for size
0</li>
<li>Rejected archives with duplicate entry names</li>
<li>Blocked extraction from writing through symlinks inside the
target</li>
<li>Routed malformed-header parse errors through the async callback</li>
<li>Rejected zip entries whose declared data extent runs past the
buffer</li>
<li>Fixed addLocalFolderPromise hanging on empty folders and swallowing
errors</li>
<li>Fixed addLocalFolderAsync2 mangling local paths on Windows</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/cthackers/adm-zip/commit/cb2cf9ba4c7c865db426e2de1997cb41194d9872"><code>cb2cf9b</code></a>
Fixed addLocalFolderAsync2 mangling local paths on Windows</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/54902b60f0f1d6d6e8157e81e0f18c5001941ccc"><code>54902b6</code></a>
Fixed addLocalFolderPromise hanging on empty folders and swallowing
errors</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/73131bdce50fa6ed201c48b468082ef456894f2e"><code>73131bd</code></a>
Fixed CI</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/758898d71508e8a016691d5843b5f7ce2d1b208a"><code>758898d</code></a>
Rejected zip entries whose declared data extent runs past the
buffer</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/74b6e9f402c4c7cde4e33f3c87ff8f15ddcd6121"><code>74b6e9f</code></a>
Routed malformed-header parse errors through the async callback</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/eaa35fa73df6108a3d6ebc9b9073371740735265"><code>eaa35fa</code></a>
Blocked extraction from writing through symlinks inside the target</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/1e015e3e713aee426bf3d5c1bc1b555c90f4f3e6"><code>1e015e3</code></a>
Increment version</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/05101d47b3b983b705cc3e66fc34366118ba7b99"><code>05101d4</code></a>
Rejected archives with duplicate entry names</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/491600683dacb6cb9fe0718a0eeb9cb5eb49afa6"><code>4916006</code></a>
Enforced the decompression size cap on the async path and for size
0</li>
<li><a
href="https://github.com/cthackers/adm-zip/commit/6a63c339b83c52915483efacda517660a7a7bf87"><code>6a63c33</code></a>
Stripped setuid/setgid/sticky bits from extracted file permissions</li>
<li>Additional commits viewable in <a
href="https://github.com/cthackers/adm-zip/compare/v0.6.0...v0.6.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=adm-zip&package-manager=npm_and_yarn&previous-version=0.6.0&new-version=0.6.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/dequelabs/axe-core-npm/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…1449)

Bumps the webdriverio group with 7 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
|
[@wdio/globals](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-globals)
| `9.31.1` | `9.31.3` |
|
[webdriverio](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio)
| `9.31.2` | `9.32.0` |
|
[@wdio/cli](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli)
| `9.31.2` | `9.32.0` |
|
[@wdio/local-runner](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-local-runner)
| `9.31.2` | `9.32.0` |
|
[@wdio/mocha-framework](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-mocha-framework)
| `9.31.2` | `9.32.0` |
|
[@wdio/spec-reporter](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-spec-reporter)
| `9.31.2` | `9.32.0` |
|
[@wdio/types](https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-types)
| `9.31.2` | `9.32.0` |


Updates `@wdio/globals` from 9.31.1 to 9.31.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/globals's
releases</a>.</em></p>
<blockquote>
<h2>v9.31.3 (2026-08-25)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>,
<code>wdio-webdriver-mock-service</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15518">#15518</a>
fix: typing for <code>expect-wdio/api</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15513">#15513</a>
fix(<code>@​wdio/local-runner</code>): retry spec files when session
creation fails (<a
href="https://github.com/lorenaskosinskas"><code>@​lorenaskosinskas</code></a>)</li>
</ul>
</li>
</ul>
<h4>:memo: Documentation</h4>
<ul>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15524">#15524</a>
docs(website): added Serenity/JS HTML Reporter (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15526">#15526</a>
docs(devtools): document the Python adapter as language tabs on the S…
(<a
href="https://github.com/vishnuv688"><code>@​vishnuv688</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15520">#15520</a>
doc: A11y doc update (<a
href="https://github.com/vishnuv688"><code>@​vishnuv688</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15510">#15510</a>
docs(sponsor): add Momentic as Premium sponsor (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
</ul>
<h4>:house: Internal</h4>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15517">#15517</a>
fix(docs): unbreak non-English docs builds after flowchart component
removal (<a
href="https://github.com/AutomatedTester"><code>@​AutomatedTester</code></a>)</li>
</ul>
<h4>Committers: 6</h4>
<ul>
<li>Christian Bromann (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li>David Burns (<a
href="https://github.com/AutomatedTester"><code>@​AutomatedTester</code></a>)</li>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Lorenas (<a
href="https://github.com/lorenaskosinskas"><code>@​lorenaskosinskas</code></a>)</li>
<li>Vishnu Vardhan (<a
href="https://github.com/vishnuv688"><code>@​vishnuv688</code></a>)</li>
</ul>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Mauricio Lauffer (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/globals's
changelog</a>.</em></p>
<blockquote>
<h2>v9.31.3 (2026-08-25)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>eslint-plugin-wdio</code>, <code>wdio-browser-runner</code>,
<code>wdio-globals</code>, <code>wdio-jasmine-framework</code>,
<code>wdio-local-runner</code>, <code>wdio-runner</code>,
<code>wdio-webdriver-mock-service</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15518">#15518</a>
fix: typing for <code>expect-wdio/api</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-local-runner</code>, <code>wdio-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15513">#15513</a>
fix(<code>@​wdio/local-runner</code>): retry spec files when session
creation fails (<a
href="https://github.com/lorenaskosinskas"><code>@​lorenaskosinskas</code></a>)</li>
</ul>
</li>
</ul>
<h4>:memo: Documentation</h4>
<ul>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15524">#15524</a>
docs(website): added Serenity/JS HTML Reporter (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15526">#15526</a>
docs(devtools): document the Python adapter as language tabs on the S…
(<a
href="https://github.com/vishnuv688"><code>@​vishnuv688</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15520">#15520</a>
doc: A11y doc update (<a
href="https://github.com/vishnuv688"><code>@​vishnuv688</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15510">#15510</a>
docs(sponsor): add Momentic as Premium sponsor (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
</ul>
<h4>:house: Internal</h4>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15517">#15517</a>
fix(docs): unbreak non-English docs builds after flowchart component
removal (<a
href="https://github.com/AutomatedTester"><code>@​AutomatedTester</code></a>)</li>
</ul>
<h4>Committers: 6</h4>
<ul>
<li>Christian Bromann (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li>David Burns (<a
href="https://github.com/AutomatedTester"><code>@​AutomatedTester</code></a>)</li>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
<li>Lorenas (<a
href="https://github.com/lorenaskosinskas"><code>@​lorenaskosinskas</code></a>)</li>
<li>Vishnu Vardhan (<a
href="https://github.com/vishnuv688"><code>@​vishnuv688</code></a>)</li>
</ul>
<h2>v9.31.2 (2026-08-21)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-types</code>, <code>wdio-utils</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15459">#15459</a>
feat: UNSTABLE Enhance multi-remote instance/element support with
<code>select</code> &amp; <code>filter</code> (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15514">#15514</a>
Add title path (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15479">#15479</a>
fix(webdriverio): record matching mock responses even when not blocked
(<a href="https://github.com/Badisi"><code>@​Badisi</code></a>)</li>
</ul>
</li>
<li><code>wdio-config</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15511">#15511</a>
fix: add .cts to supported file extensions (<a
href="https://github.com/mauriciolauffer"><code>@​mauriciolauffer</code></a>)</li>
</ul>
</li>
</ul>
<h4>:nail_care: Polish</h4>
<ul>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15515">#15515</a>
fix(create-wdio): install <code>@​serenity-js/html-reporter</code>
instead of <code>@​senity-js/serenity-bdd</code> (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>David Prevost (<a
href="https://github.com/dprevost-LMI"><code>@​dprevost-LMI</code></a>)</li>
<li>Dmitrii (<a
href="https://github.com/formaceft-93"><code>@​formaceft-93</code></a>)</li>
<li>Jan Molak (<a
href="https://github.com/jan-molak"><code>@​jan-molak</code></a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/2b9721d052ac24207e8628c65a63c3a0de122a2a"><code>2b9721d</code></a>
v9.31.3</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/5ec2361f59c7cb29156098ac53d7afac71e5c25a"><code>5ec2361</code></a>
fix: typing for <code>expect-wdio/api</code> (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-globals/issues/15518">#15518</a>)</li>
<li>See full diff in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.31.3/packages/wdio-globals">compare
view</a></li>
</ul>
</details>
<br />

Updates `webdriverio` from 9.31.2 to 9.32.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">webdriverio's
releases</a>.</em></p>
<blockquote>
<h2>v9.32.0 (2026-09-20)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-cli</code>, <code>wdio-runner</code>,
<code>wdio-types</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15092">#15092</a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15614">#15614</a>
feat(webdriverio): add acceptDialog and dismissDialog for mobile
permission dialogs (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15528">#15528</a>
feat(create-wdio): add Dioxus service to the project creation wizard and
docs (<a
href="https://github.com/goosewobbler"><code>@​goosewobbler</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15632">#15632</a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15637">#15637</a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15638">#15638</a>
fix(webdriverio): release the session-manager registration on
removeListeners (<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15073">#15073</a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15072">#15072</a>)
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15089">#15089</a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15621">#15621</a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15624">#15624</a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15615">#15615</a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15627">#15627</a>
fix(webdriverio): re-throw original stale element error when refetch
fails (<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15629">#15629</a>
fix(webdriverio): apply throttleNetwork conditions to service workers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15613">#15613</a>
fix(webdriverio): handle dynamic function payloads in mock.respond (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15574">#15574</a>
fix(webdriverio): honor getHTML exclusion options (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15573">#15573</a>
fix(webdriverio): recover owning window after nested frame destruction
(<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15607">#15607</a>
fix(webdriverio): allow URLPattern as browser.mock url (<a
href="https://github.com/Yash121l"><code>@​Yash121l</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15575">#15575</a>
fix(webdriverio): retain detached-first shadow hosts (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
</ul>
</li>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15639">#15639</a>
fix(webdriverio): preserve original stale-element error when refetch
fails (Closes <a
href="https://redirect.github.com/webdriverio/webdriverio/issues/15550">#15550</a>)
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15126">#15126</a>
fix(wdio-protocols): map getActiveElement return type to ElementRefer…
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>wdio-junit-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15616">#15616</a>
fix(junit-reporter): uniquely associate Jasmine filename-only suites (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-sumologic-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15617">#15617</a>
fix(sumo-reporter):sumologic reporter bounded retries (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15619">#15619</a>
fix(wdio-utils): settle some and every on all-hole arrays (<a
href="https://github.com/devangpratap"><code>@​devangpratap</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15625">#15625</a>
fix(utils): clean up incomplete driver cache dir before retrying install
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15577">#15577</a>
fix(wdio-utils): preserve sparse array length in async map (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15596">#15596</a>
fix(utils): encode custom plugin file URLs (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15620">#15620</a>
fix(mock-factory): correct original module type (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15610">#15610</a>
fix(wdio-allure-reporter): stabilize Allure historyId across browser
versions (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15612">#15612</a>
fix(create-wdio): generate tsconfig without overwriting or breaking root
extends (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15611">#15611</a>
fix(webdriver): enable followRedirects for BiDi connections (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-lighthouse-service</code>, <code>wdio-runner</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15317">#15317</a>
Add undefined to getInstance as possible return type (<a
href="https://github.com/la122"><code>@​la122</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">webdriverio's
changelog</a>.</em></p>
<blockquote>
<h2>v9.32.0 (2026-09-20)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-cli</code>, <code>wdio-runner</code>,
<code>wdio-types</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15092">#15092</a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15614">#15614</a>
feat(webdriverio): add acceptDialog and dismissDialog for mobile
permission dialogs (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15528">#15528</a>
feat(create-wdio): add Dioxus service to the project creation wizard and
docs (<a
href="https://github.com/goosewobbler"><code>@​goosewobbler</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15632">#15632</a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15637">#15637</a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15638">#15638</a>
fix(webdriverio): release the session-manager registration on
removeListeners (<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15073">#15073</a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15072">#15072</a>)
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15089">#15089</a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15621">#15621</a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15624">#15624</a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15615">#15615</a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15627">#15627</a>
fix(webdriverio): re-throw original stale element error when refetch
fails (<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15629">#15629</a>
fix(webdriverio): apply throttleNetwork conditions to service workers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15613">#15613</a>
fix(webdriverio): handle dynamic function payloads in mock.respond (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15574">#15574</a>
fix(webdriverio): honor getHTML exclusion options (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15573">#15573</a>
fix(webdriverio): recover owning window after nested frame destruction
(<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15607">#15607</a>
fix(webdriverio): allow URLPattern as browser.mock url (<a
href="https://github.com/Yash121l"><code>@​Yash121l</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15575">#15575</a>
fix(webdriverio): retain detached-first shadow hosts (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
</ul>
</li>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15639">#15639</a>
fix(webdriverio): preserve original stale-element error when refetch
fails (Closes <a
href="https://redirect.github.com/webdriverio/webdriverio/issues/15550">#15550</a>)
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15126">#15126</a>
fix(wdio-protocols): map getActiveElement return type to ElementRefer…
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>wdio-junit-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15616">#15616</a>
fix(junit-reporter): uniquely associate Jasmine filename-only suites (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-sumologic-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15617">#15617</a>
fix(sumo-reporter):sumologic reporter bounded retries (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15619">#15619</a>
fix(wdio-utils): settle some and every on all-hole arrays (<a
href="https://github.com/devangpratap"><code>@​devangpratap</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15625">#15625</a>
fix(utils): clean up incomplete driver cache dir before retrying install
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15577">#15577</a>
fix(wdio-utils): preserve sparse array length in async map (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15596">#15596</a>
fix(utils): encode custom plugin file URLs (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15620">#15620</a>
fix(mock-factory): correct original module type (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15610">#15610</a>
fix(wdio-allure-reporter): stabilize Allure historyId across browser
versions (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15612">#15612</a>
fix(create-wdio): generate tsconfig without overwriting or breaking root
extends (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15611">#15611</a>
fix(webdriver): enable followRedirects for BiDi connections (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-lighthouse-service</code>, <code>wdio-runner</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15317">#15317</a>
Add undefined to getInstance as possible return type (<a
href="https://github.com/la122"><code>@​la122</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/5c2a318d9a5e8424a2f2de95df9374b89bda7936"><code>5c2a318</code></a>
v9.32.0</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/5e0b890cdd9d905a7cdde9a61b769d85707d6b34"><code>5e0b890</code></a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15632">#15632</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/2ce0cf752e6a1534fb18486d4433b4000a54a4d3"><code>2ce0cf7</code></a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15637">#15637</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/f341702f7bc8068c0e93e0e726f33ef050e37485"><code>f341702</code></a>
fix(webdriverio): release the session-manager registration on
removeListeners...</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/4594ffc0c4889ea4eb8f312a385c29f1f37ce051"><code>4594ffc</code></a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15072">#15072</a>)
(<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15073">#15073</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/f073bfafadd943a65478acc7ef062750587c3d34"><code>f073bfa</code></a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15089">#15089</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/00efc63b4d1db566b1d1457370a00bcf00a6a641"><code>00efc63</code></a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15621">#15621</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/7da92cc085b08e589100d9dfc36f6ad1700412c3"><code>7da92cc</code></a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15624">#15624</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/f7a4c2339f932746568855b83266c958c91583b7"><code>f7a4c23</code></a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/webdriverio/issues/15615">#15615</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/36edcfd65f9b39d3a1d1fc438cbd8521d48fddb8"><code>36edcfd</code></a>
fix(webdriverio): re-throw original stale element error when refetch
fails (#...</li>
<li>Additional commits viewable in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.32.0/packages/webdriverio">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/cli` from 9.31.2 to 9.32.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/cli's
releases</a>.</em></p>
<blockquote>
<h2>v9.32.0 (2026-09-20)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-cli</code>, <code>wdio-runner</code>,
<code>wdio-types</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15092">#15092</a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15614">#15614</a>
feat(webdriverio): add acceptDialog and dismissDialog for mobile
permission dialogs (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15528">#15528</a>
feat(create-wdio): add Dioxus service to the project creation wizard and
docs (<a
href="https://github.com/goosewobbler"><code>@​goosewobbler</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15632">#15632</a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15637">#15637</a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15638">#15638</a>
fix(webdriverio): release the session-manager registration on
removeListeners (<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15073">#15073</a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli/issues/15072">#15072</a>)
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15089">#15089</a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15621">#15621</a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15624">#15624</a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15615">#15615</a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15627">#15627</a>
fix(webdriverio): re-throw original stale element error when refetch
fails (<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15629">#15629</a>
fix(webdriverio): apply throttleNetwork conditions to service workers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15613">#15613</a>
fix(webdriverio): handle dynamic function payloads in mock.respond (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15574">#15574</a>
fix(webdriverio): honor getHTML exclusion options (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15573">#15573</a>
fix(webdriverio): recover owning window after nested frame destruction
(<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15607">#15607</a>
fix(webdriverio): allow URLPattern as browser.mock url (<a
href="https://github.com/Yash121l"><code>@​Yash121l</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15575">#15575</a>
fix(webdriverio): retain detached-first shadow hosts (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
</ul>
</li>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15639">#15639</a>
fix(webdriverio): preserve original stale-element error when refetch
fails (Closes <a
href="https://redirect.github.com/webdriverio/webdriverio/issues/15550">#15550</a>)
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15126">#15126</a>
fix(wdio-protocols): map getActiveElement return type to ElementRefer…
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>wdio-junit-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15616">#15616</a>
fix(junit-reporter): uniquely associate Jasmine filename-only suites (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-sumologic-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15617">#15617</a>
fix(sumo-reporter):sumologic reporter bounded retries (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15619">#15619</a>
fix(wdio-utils): settle some and every on all-hole arrays (<a
href="https://github.com/devangpratap"><code>@​devangpratap</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15625">#15625</a>
fix(utils): clean up incomplete driver cache dir before retrying install
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15577">#15577</a>
fix(wdio-utils): preserve sparse array length in async map (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15596">#15596</a>
fix(utils): encode custom plugin file URLs (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15620">#15620</a>
fix(mock-factory): correct original module type (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15610">#15610</a>
fix(wdio-allure-reporter): stabilize Allure historyId across browser
versions (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15612">#15612</a>
fix(create-wdio): generate tsconfig without overwriting or breaking root
extends (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15611">#15611</a>
fix(webdriver): enable followRedirects for BiDi connections (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-lighthouse-service</code>, <code>wdio-runner</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15317">#15317</a>
Add undefined to getInstance as possible return type (<a
href="https://github.com/la122"><code>@​la122</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/cli's
changelog</a>.</em></p>
<blockquote>
<h2>v9.32.0 (2026-09-20)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-cli</code>, <code>wdio-runner</code>,
<code>wdio-types</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15092">#15092</a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15614">#15614</a>
feat(webdriverio): add acceptDialog and dismissDialog for mobile
permission dialogs (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15528">#15528</a>
feat(create-wdio): add Dioxus service to the project creation wizard and
docs (<a
href="https://github.com/goosewobbler"><code>@​goosewobbler</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15632">#15632</a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15637">#15637</a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15638">#15638</a>
fix(webdriverio): release the session-manager registration on
removeListeners (<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15073">#15073</a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli/issues/15072">#15072</a>)
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15089">#15089</a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15621">#15621</a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15624">#15624</a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15615">#15615</a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15627">#15627</a>
fix(webdriverio): re-throw original stale element error when refetch
fails (<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15629">#15629</a>
fix(webdriverio): apply throttleNetwork conditions to service workers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15613">#15613</a>
fix(webdriverio): handle dynamic function payloads in mock.respond (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15574">#15574</a>
fix(webdriverio): honor getHTML exclusion options (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15573">#15573</a>
fix(webdriverio): recover owning window after nested frame destruction
(<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15607">#15607</a>
fix(webdriverio): allow URLPattern as browser.mock url (<a
href="https://github.com/Yash121l"><code>@​Yash121l</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15575">#15575</a>
fix(webdriverio): retain detached-first shadow hosts (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
</ul>
</li>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15639">#15639</a>
fix(webdriverio): preserve original stale-element error when refetch
fails (Closes <a
href="https://redirect.github.com/webdriverio/webdriverio/issues/15550">#15550</a>)
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15126">#15126</a>
fix(wdio-protocols): map getActiveElement return type to ElementRefer…
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>wdio-junit-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15616">#15616</a>
fix(junit-reporter): uniquely associate Jasmine filename-only suites (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-sumologic-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15617">#15617</a>
fix(sumo-reporter):sumologic reporter bounded retries (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15619">#15619</a>
fix(wdio-utils): settle some and every on all-hole arrays (<a
href="https://github.com/devangpratap"><code>@​devangpratap</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15625">#15625</a>
fix(utils): clean up incomplete driver cache dir before retrying install
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15577">#15577</a>
fix(wdio-utils): preserve sparse array length in async map (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15596">#15596</a>
fix(utils): encode custom plugin file URLs (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15620">#15620</a>
fix(mock-factory): correct original module type (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15610">#15610</a>
fix(wdio-allure-reporter): stabilize Allure historyId across browser
versions (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15612">#15612</a>
fix(create-wdio): generate tsconfig without overwriting or breaking root
extends (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15611">#15611</a>
fix(webdriver): enable followRedirects for BiDi connections (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-lighthouse-service</code>, <code>wdio-runner</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15317">#15317</a>
Add undefined to getInstance as possible return type (<a
href="https://github.com/la122"><code>@​la122</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/5c2a318d9a5e8424a2f2de95df9374b89bda7936"><code>5c2a318</code></a>
v9.32.0</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/a28937bf415a5e67090d42f3b5ffe328db3fbaa2"><code>a28937b</code></a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli/issues/15092">#15092</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/702a69539caddbede120ae71e695cded9c494678"><code>702a695</code></a>
fix(<code>@​wdio/local-runner</code>): report a non-zero exit code for
signal terminated wo...</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/f80b770c8b153fd01672da135eff1720264173b4"><code>f80b770</code></a>
v9.31.9</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/d8b6a29ba73af54edb002d2a2e1a55b64849a8ef"><code>d8b6a29</code></a>
Upgrade prod vitest to v3 (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-cli/issues/15588">#15588</a>)</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/eef6a4729751dd99c75fe99c7aa61a0ab906e55a"><code>eef6a47</code></a>
v9.31.8</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/ba488fa25aaac3122a676405969a4f790615757f"><code>ba488fa</code></a>
v9.31.7</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/b18898e3c339a2bba3a6c5af46bdf0f4f897cad8"><code>b18898e</code></a>
v9.31.6</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/4f39140405a3a54a44c391f97a6de1fc3af2d33d"><code>4f39140</code></a>
v9.31.5</li>
<li><a
href="https://github.com/webdriverio/webdriverio/commit/69c45e316f75ba2e40e83ef7475106ece26cf2e2"><code>69c45e3</code></a>
v9.31.4</li>
<li>Additional commits viewable in <a
href="https://github.com/webdriverio/webdriverio/commits/v9.32.0/packages/wdio-cli">compare
view</a></li>
</ul>
</details>
<br />

Updates `@wdio/local-runner` from 9.31.2 to 9.32.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/releases">@​wdio/local-runner's
releases</a>.</em></p>
<blockquote>
<h2>v9.32.0 (2026-09-20)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-cli</code>, <code>wdio-runner</code>,
<code>wdio-types</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15092">#15092</a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15614">#15614</a>
feat(webdriverio): add acceptDialog and dismissDialog for mobile
permission dialogs (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15528">#15528</a>
feat(create-wdio): add Dioxus service to the project creation wizard and
docs (<a
href="https://github.com/goosewobbler"><code>@​goosewobbler</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15632">#15632</a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15637">#15637</a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15638">#15638</a>
fix(webdriverio): release the session-manager registration on
removeListeners (<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15073">#15073</a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-local-runner/issues/15072">#15072</a>)
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15089">#15089</a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15621">#15621</a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15624">#15624</a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15615">#15615</a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15627">#15627</a>
fix(webdriverio): re-throw original stale element error when refetch
fails (<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15629">#15629</a>
fix(webdriverio): apply throttleNetwork conditions to service workers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15613">#15613</a>
fix(webdriverio): handle dynamic function payloads in mock.respond (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15574">#15574</a>
fix(webdriverio): honor getHTML exclusion options (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15573">#15573</a>
fix(webdriverio): recover owning window after nested frame destruction
(<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15607">#15607</a>
fix(webdriverio): allow URLPattern as browser.mock url (<a
href="https://github.com/Yash121l"><code>@​Yash121l</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15575">#15575</a>
fix(webdriverio): retain detached-first shadow hosts (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
</ul>
</li>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15639">#15639</a>
fix(webdriverio): preserve original stale-element error when refetch
fails (Closes <a
href="https://redirect.github.com/webdriverio/webdriverio/issues/15550">#15550</a>)
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15126">#15126</a>
fix(wdio-protocols): map getActiveElement return type to ElementRefer…
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>wdio-junit-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15616">#15616</a>
fix(junit-reporter): uniquely associate Jasmine filename-only suites (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-sumologic-reporter</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15617">#15617</a>
fix(sumo-reporter):sumologic reporter bounded retries (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15619">#15619</a>
fix(wdio-utils): settle some and every on all-hole arrays (<a
href="https://github.com/devangpratap"><code>@​devangpratap</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15625">#15625</a>
fix(utils): clean up incomplete driver cache dir before retrying install
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15577">#15577</a>
fix(wdio-utils): preserve sparse array length in async map (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15596">#15596</a>
fix(utils): encode custom plugin file URLs (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-browser-runner</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15620">#15620</a>
fix(mock-factory): correct original module type (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15610">#15610</a>
fix(wdio-allure-reporter): stabilize Allure historyId across browser
versions (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15612">#15612</a>
fix(create-wdio): generate tsconfig without overwriting or breaking root
extends (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>webdriver</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15611">#15611</a>
fix(webdriver): enable followRedirects for BiDi connections (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>wdio-lighthouse-service</code>, <code>wdio-runner</code>,
<code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15317">#15317</a>
Add undefined to getInstance as possible return type (<a
href="https://github.com/la122"><code>@​la122</code></a>)</li>
</ul>
</li>
<li><code>wdio-allure-reporter</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md">@​wdio/local-runner's
changelog</a>.</em></p>
<blockquote>
<h2>v9.32.0 (2026-09-20)</h2>
<h4>:rocket: New Feature</h4>
<ul>
<li><code>wdio-cli</code>, <code>wdio-runner</code>,
<code>wdio-types</code>, <code>wdio-utils</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15092">#15092</a>
feat(profiling): add support for cpu and heap profiling (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
</ul>
</li>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15614">#15614</a>
feat(webdriverio): add acceptDialog and dismissDialog for mobile
permission dialogs (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
</ul>
</li>
<li><code>create-wdio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15528">#15528</a>
feat(create-wdio): add Dioxus service to the project creation wizard and
docs (<a
href="https://github.com/goosewobbler"><code>@​goosewobbler</code></a>)</li>
</ul>
</li>
</ul>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>webdriverio</code>
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15632">#15632</a>
fix(webdriverio): make addLocatorStrategy work on multi-remote browsers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15637">#15637</a>
fix(webdriverio): keep a valid top-level context on switchToParentFrame
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15638">#15638</a>
fix(webdriverio): release the session-manager registration on
removeListeners (<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15073">#15073</a>
fix: resolve mock state error and race condition (<a
href="https://github.com/webdriverio/webdriverio/tree/HEAD/packages/wdio-local-runner/issues/15072">#15072</a>)
(<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15089">#15089</a>
fix(webdriverio): correctly use navigation ID for networkIdle wait (<a
href="https://github.com/mccmrunal"><code>@​mccmrunal</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15621">#15621</a>
fix(webdriverio): avoid retaining closed browser instances (<a
href="https://github.com/ML642"><code>@​ML642</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15624">#15624</a>
fix(webdriverio): let switchToParentFrame recover a destroyed context
(<a
href="https://github.com/PloneMraz"><code>@​PloneMraz</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15615">#15615</a>
fix(webdriverio): use BiDi accessibility locator for aria selectors (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15627">#15627</a>
fix(webdriverio): re-throw original stale element error when refetch
fails (<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15629">#15629</a>
fix(webdriverio): apply throttleNetwork conditions to service workers
(<a
href="https://github.com/nikolas-sapa"><code>@​nikolas-sapa</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15613">#15613</a>
fix(webdriverio): handle dynamic function payloads in mock.respond (<a
href="https://github.com/christian-bromann"><code>@​christian-bromann</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15574">#15574</a>
fix(webdriverio): honor getHTML exclusion options (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15573">#15573</a>
fix(webdriverio): recover owning window after nested frame destruction
(<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15607">#15607</a>
fix(webdriverio): allow URLPattern as browser.mock url (<a
href="https://github.com/Yash121l"><code>@​Yash121l</code></a>)</li>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15575">#15575</a>
fix(webdriverio): retain detached-first shadow hosts (<a
href="https://github.com/lucasmariano003-wq"><code>@​lucasmariano003-wq</code></a>)</li>
</ul>
</li>
<li>Other
<ul>
<li><a
href="https://redirect.github.com/webdriverio/webdriverio/pull/15639">#15639</a>
fix(webdriverio): preserve original stale-…
Fixes the failing create release candidate run:
https://github.com/dequelabs/axe-core-npm/actions/runs/37512472823/job/112436876078

## Cause

`prepare_release.sh` installed pnpm with `npm install -g
--ignore-scripts @pnpm/exe@11.23.0`. `@pnpm/exe` ships a placeholder
`pnpm` bin ("This file intentionally left blank") that its `preinstall`
script replaces with the platform binary. `--ignore-scripts` skipped
that, so the job ran the placeholder and failed with `pnpm: line 1:
This: command not found` (exit 127).

## Change

- `create-release-candidate.yml`: check out the repo (`fetch-depth: 0`,
`persist-credentials: false`), run `pnpm/action-setup` (`standalone:
true`, version from `packageManager`), and pass `should-checkout: false`
to the composite action so it reuses this checkout.
- `auto-patch-release.yml`: also runs `prepare_release.sh`, so it gets
the same checkout + pnpm setup. Its composite action always re-checks
out `develop`; pnpm is installed outside the workspace, so it survives
that.
- `prepare_release.sh`: remove the npm fallback. pnpm now comes from the
workflow, and a missing setup fails clearly instead of being hidden by a
global install at runtime.

The composite actions push through `peter-evans/create-pull-request`
with their own token, so `persist-credentials: false` should not affect
the release PR push.

No QA Required
#
[4.14.0](v4.13.0...v4.14.0)
(2026-10-06)

### Bug Fixes

* exempt axe-core from the pnpm release-age cooldown
([#1441](#1441))
([0bcb185](0bcb185)),
closes [#1346](#1346)
[#1346](#1346)
[#1442](#1442)
[#1346](#1346)

### Features

* Update axe-core to v4.14.0
([#1456](#1456))
([dccfe7a](dccfe7a))
`@axe-core/cli` prereleases built since #1430 install without an `axe`
bin, and `require('@axe-core/cli')` fails. This fixes the cause and adds
a CI check for every published package, so a broken package layout fails
a pull request instead of reaching a prerelease.

## Cause

#1430 set `"rootDir": "./src"` in `packages/cli/tsconfig.json` to
silence TS5011 under TypeScript 6. When the tests run through ts-node,
the program pulls in `../webdriverjs/dist`, which moves the inferred
common source directory outside the package. Setting the root to `./src`
moved the build output from `dist/src/` to `dist/`. `main`, `typings`
and `bin.axe` in `package.json` still pointed at `dist/src/`, so npm
skipped the bin.

## Change

- **CLI:** `rootDir` is now `"."`. TypeScript 6 still gets an explicit
root, and the `dist/src/` layout that every published path expects comes
back. No published path changes.
- **Package linting in CI:** `publint` and `@arethetypeswrong/cli` are
root devDependencies. Each published package has three new scripts:
- `pack:lint`: `pnpm pack` with lifecycle scripts disabled, written to
`node_modules/.cache/package-lint/`.
  - `lint:package`: `publint --strict` on that tarball.
  - `lint:types`: `attw` on that tarball.

Each job in `tests.yml` runs both lint scripts right after its build.
The `cli` job had no build step before and gains one.
- **ESM types (playwright, puppeteer, react, reporter-earl, webdriverio,
webdriverjs):** `exports["."].types` pointed ESM consumers at the CJS
`.d.ts`, which attw reports as "Masquerading as CJS". Each exports map
now has separate `import` and `require` conditions, each with its own
types (`.d.mts` and `.d.ts`). tsup already produced the `.d.mts` files.
- **react:** `files` now includes `dist/index.d.mts`. Before this, React
never published its ESM types.
- **reporter-earl:** adds `"files": ["dist"]`. It previously published
`src/`, `tests/` and its config files, 24 files in all. It now publishes
7.

### Why pack with pnpm and `ignore-scripts`

`attw --pack` uses `npm pack`, and publint's own packing runs `pnpm
pack` with scripts. Both run `prepare`, which reinstalls Playwright's
browsers and rebuilds `dist` in several packages. `npm pack` also leaves
the `workspace:` protocol in place, so the tarball would not match what
pnpm publishes. The CLI's attw call passes `--entrypoints .` because the
CLI has no `exports` map, and without one attw guesses a nonexistent
`@axe-core/cli/dist` subpath from `files`.

## Verification

| Check | Before | After |
| --- | --- | --- |
| CLI tarball: `.bin/axe` created, `npx axe --version` | missing / fails
| created / exit 0 |
| `publint --strict`, 7 packages | 7 fail | 7 pass |
| `attw`, 7 packages | 7 fail | 7 pass |
| `test:export`, 6 tsup packages | — | pass |
| CLI tests / coverage | — | 82 passing, branches 91.8% |

I also confirmed the checks catch both original bugs. Putting back the
old `rootDir` or a single top-level `types` in `exports` makes both lint
scripts fail.

Closes: #1465
(cherry picked from commit 839553f)
… (#1468)

## Details

Cherry-picks 839553f (#1467) from `develop` onto `release` so v4.14.0
ships with a working `axe` bin for `@axe-core/cli` and the
package-layout lint checks in CI. Applied cleanly with no conflicts; see
#1467 for the full change description.

Verified on this branch: `pnpm -r build`, `lint:package` and
`lint:types` pass for all 7 packages, CLI tests 82 passing.

Ref: #1465
@axe-core
axe-core requested a review from a team as a code owner October 12, 2026 15:03
@Garbee
Garbee enabled auto-merge October 12, 2026 15:35
@Garbee
Garbee merged commit 2375f7f into master Oct 15, 2026
25 checks passed

This branch was successfully deployed

1 active deployment
registry.npmjs.org — d1531a97 Deployed Oct 8, 2026 by Garbee via release-candidate #344
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.

5 participants