Skip to content

Comments

Make 'steal' command atomic#1144

Merged
nicoddemus merged 1 commit intopytest-dev:masterfrom
amezin:steal-atomic
Oct 30, 2024
Merged

Make 'steal' command atomic#1144
nicoddemus merged 1 commit intopytest-dev:masterfrom
amezin:steal-atomic

Conversation

@amezin
Copy link
Collaborator

@amezin amezin commented Oct 23, 2024

Either unschedule all requested tests, or none if it's not possible - if some of the requested tests have already been processed by the time the request arrives. It may happen if the worker runs tests faster than the controller receives and processes status updates. But in this case maybe it's just better to let the worker keep running.

This is a prerequisite for group/scope support in worksteal scheduler - so they won't be broken up incorrectly.

This change could break schedulers that use "steal" command. However:

  1. worksteal scheduler doesn't need any adjustments.

  2. I'm not aware of any external schedulers relying on this command yet.

So I think it's better to keep the protocol simple, not complicate it for imaginary compatibility with some unknown and likely non-existent schedulers.

@amezin amezin force-pushed the steal-atomic branch 2 times, most recently from aa1324c to eb4388c Compare October 23, 2024 05:09
Copy link
Member

@nicoddemus nicoddemus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @amezin, overall looks good!

I left a few minor comments.

@amezin amezin force-pushed the steal-atomic branch 2 times, most recently from ddb7e68 to 8dea23c Compare October 23, 2024 14:26
@amezin amezin requested a review from nicoddemus October 23, 2024 14:29
Copy link
Member

@nicoddemus nicoddemus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@RonnyPfannschmidt would appreciate a second set of eyes before we merge this.

Either unschedule all requested tests, or none if it's not possible -
if some of the requested tests have already been processed by the time
the request arrives. It may happen if the worker runs tests faster than
the controller receives and processes status updates. But in this case
maybe it's just better to let the worker keep running.

This is a prerequisite for group/scope support in worksteal scheduler -
so they won't be broken up incorrectly.

This change could break schedulers that use "steal" command. However:

1) worksteal scheduler doesn't need any adjustments.

2) I'm not aware of any external schedulers relying on this command yet.

So I think it's better to keep the protocol simple, not complicate it for
imaginary compatibility with some unknown and likely non-existent
schedulers.

Co-authored-by: Bruno Oliveira <[email protected]>
@nicoddemus nicoddemus merged commit 9788f12 into pytest-dev:master Oct 30, 2024
github-actions bot added a commit to mikelane/reddit-get that referenced this pull request May 27, 2025
Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from
3.6.1 to 3.7.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.7.0 (2025-05-26)</h1>
<h2>Features</h2>
<ul>
<li>

<p><code>[#1142](pytest-dev/pytest-xdist#1142)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1142&gt;</code>_:
Added support for Python 3.13.</p>
</li>
<li>

<p><code>[#1144](pytest-dev/pytest-xdist#1144)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1144&gt;</code>_:
The internal <code>steal</code> command is now atomic - it unschedules
either all requested tests or none.</p>
<p>This is a prerequisite for group/scope support in the
<code>worksteal</code> scheduler, so test groups won't be broken up
incorrectly.</p>
</li>
<li>

<p><code>[#1170](pytest-dev/pytest-xdist#1170)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1170&gt;</code>_:
Add the <code>--px</code> arg to create proxy gateways.</p>
<p>Proxy gateways are passed to additional gateways using the
<code>via</code> keyword.
They can serve as a way to run multiple workers on remote machines.</p>
</li>
<li>

<p><code>[#1200](pytest-dev/pytest-xdist#1200)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1200&gt;</code>_:
Now multiple <code>xdist_group</code> markers are considered when
assigning tests to groups (order does not matter).</p>
<p>Previously, only the last marker would assign a test to a group, but
now if a test has multiple <code>xdist_group</code> marks applied (for
example via parametrization or via fixtures), they are merged to make a
new group.</p>
</li>
</ul>
<h2>Removals</h2>
<ul>

<li><code>[#1162](pytest-dev/pytest-xdist#1162)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1162&gt;</code>_:
Dropped support for EOL Python 3.8.</li>
</ul>
<h2>Trivial Changes</h2>
<ul>
<li>

<p><code>[#1092](pytest-dev/pytest-xdist#1092)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1092&gt;</code>_:
Update an error message to better indicate where users should go for
more information.</p>
</li>
<li>

<p><code>[#1190](pytest-dev/pytest-xdist#1190)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1190&gt;</code>_:
Switched to using a SPDX license identifier introduced in PEP 639.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b561916eaf6ec0a8a448ed0bcc90a351ab3c58e3"><code>b561916</code></a>
Release 3.7.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/71bd3ede1982a65cf74cf248c0ba906fe6062ce7"><code>71bd3ed</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1204">#1204</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/65de0ab30e602a5f466b8746fcfff0cf0945b600"><code>65de0ab</code></a>
Join multiple xdist_group markers (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1201">#1201</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/199f949716792db8745a69444091f4d4fddae0e2"><code>199f949</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1202">#1202</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b0215da1edf369d5b63b7811b41d750bb5ebb072"><code>b0215da</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1199">#1199</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/18e47853ed9272a87b9e6d29b1630f854d458d4a"><code>18e4785</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1198">#1198</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/731c05d86ad3a42e0b2e3d3b4c8cdd5e33e81988"><code>731c05d</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1197">#1197</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/16c5be32031f904a5f48c2cdbf3424f6528af3b0"><code>16c5be3</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1195">#1195</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/e03757a1d77805776babf6faa73b696ea36c001c"><code>e03757a</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1193">#1193</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f1d81a4402e611dca7ae5bf4b892decfef9d4f08"><code>f1d81a4</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1192">#1192</a>
from adamchainz/document_disabling</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.7.0">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually 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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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>
github-actions bot pushed a commit to evroon/bracket that referenced this pull request May 27, 2025
Updates the requirements on
[pytest-xdist](https://github.com/pytest-dev/pytest-xdist) to permit the
latest version.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.7.0 (2025-05-26)</h1>
<h2>Features</h2>
<ul>
<li>

<p><code>[#1142](pytest-dev/pytest-xdist#1142)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1142&gt;</code>_:
Added support for Python 3.13.</p>
</li>
<li>

<p><code>[#1144](pytest-dev/pytest-xdist#1144)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1144&gt;</code>_:
The internal <code>steal</code> command is now atomic - it unschedules
either all requested tests or none.</p>
<p>This is a prerequisite for group/scope support in the
<code>worksteal</code> scheduler, so test groups won't be broken up
incorrectly.</p>
</li>
<li>

<p><code>[#1170](pytest-dev/pytest-xdist#1170)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1170&gt;</code>_:
Add the <code>--px</code> arg to create proxy gateways.</p>
<p>Proxy gateways are passed to additional gateways using the
<code>via</code> keyword.
They can serve as a way to run multiple workers on remote machines.</p>
</li>
<li>

<p><code>[#1200](pytest-dev/pytest-xdist#1200)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1200&gt;</code>_:
Now multiple <code>xdist_group</code> markers are considered when
assigning tests to groups (order does not matter).</p>
<p>Previously, only the last marker would assign a test to a group, but
now if a test has multiple <code>xdist_group</code> marks applied (for
example via parametrization or via fixtures), they are merged to make a
new group.</p>
</li>
</ul>
<h2>Removals</h2>
<ul>

<li><code>[#1162](pytest-dev/pytest-xdist#1162)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1162&gt;</code>_:
Dropped support for EOL Python 3.8.</li>
</ul>
<h2>Trivial Changes</h2>
<ul>
<li>

<p><code>[#1092](pytest-dev/pytest-xdist#1092)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1092&gt;</code>_:
Update an error message to better indicate where users should go for
more information.</p>
</li>
<li>

<p><code>[#1190](pytest-dev/pytest-xdist#1190)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1190&gt;</code>_:
Switched to using a SPDX license identifier introduced in PEP 639.</p>
</li>
</ul>
<h1>pytest-xdist 3.6.1 (2024-04-28)</h1>
<h2>Bug Fixes</h2>
<ul>

<li><code>[#1071](pytest-dev/pytest-xdist#1071)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1071&gt;</code>_:
Add backward compatibility for deadlock issue with the
<code>execnet</code> new <code>main_thread_only</code>
&quot;execmodel&quot; triggered when pytest-cov accesses rinfo.</li>
</ul>
<h1>pytest-xdist 3.6.0 (2024-04-19)</h1>
<p>This release was YANKED due to a regression fixed in 3.6.1.</p>
<h2>Features</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b561916eaf6ec0a8a448ed0bcc90a351ab3c58e3"><code>b561916</code></a>
Release 3.7.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/71bd3ede1982a65cf74cf248c0ba906fe6062ce7"><code>71bd3ed</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1204">#1204</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/65de0ab30e602a5f466b8746fcfff0cf0945b600"><code>65de0ab</code></a>
Join multiple xdist_group markers (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1201">#1201</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/199f949716792db8745a69444091f4d4fddae0e2"><code>199f949</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1202">#1202</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b0215da1edf369d5b63b7811b41d750bb5ebb072"><code>b0215da</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1199">#1199</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/18e47853ed9272a87b9e6d29b1630f854d458d4a"><code>18e4785</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1198">#1198</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/731c05d86ad3a42e0b2e3d3b4c8cdd5e33e81988"><code>731c05d</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1197">#1197</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/16c5be32031f904a5f48c2cdbf3424f6528af3b0"><code>16c5be3</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1195">#1195</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/e03757a1d77805776babf6faa73b696ea36c001c"><code>e03757a</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1193">#1193</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f1d81a4402e611dca7ae5bf4b892decfef9d4f08"><code>f1d81a4</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1192">#1192</a>
from adamchainz/document_disabling</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.7.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually 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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
github-actions bot pushed a commit to aio-libs/aiohttp that referenced this pull request May 27, 2025
Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from
3.6.1 to 3.7.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.7.0 (2025-05-26)</h1>
<h2>Features</h2>
<ul>
<li>

<p><code>[#1142](pytest-dev/pytest-xdist#1142)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1142&gt;</code>_:
Added support for Python 3.13.</p>
</li>
<li>

<p><code>[#1144](pytest-dev/pytest-xdist#1144)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1144&gt;</code>_:
The internal <code>steal</code> command is now atomic - it unschedules
either all requested tests or none.</p>
<p>This is a prerequisite for group/scope support in the
<code>worksteal</code> scheduler, so test groups won't be broken up
incorrectly.</p>
</li>
<li>

<p><code>[#1170](pytest-dev/pytest-xdist#1170)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1170&gt;</code>_:
Add the <code>--px</code> arg to create proxy gateways.</p>
<p>Proxy gateways are passed to additional gateways using the
<code>via</code> keyword.
They can serve as a way to run multiple workers on remote machines.</p>
</li>
<li>

<p><code>[#1200](pytest-dev/pytest-xdist#1200)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1200&gt;</code>_:
Now multiple <code>xdist_group</code> markers are considered when
assigning tests to groups (order does not matter).</p>
<p>Previously, only the last marker would assign a test to a group, but
now if a test has multiple <code>xdist_group</code> marks applied (for
example via parametrization or via fixtures), they are merged to make a
new group.</p>
</li>
</ul>
<h2>Removals</h2>
<ul>

<li><code>[#1162](pytest-dev/pytest-xdist#1162)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1162&gt;</code>_:
Dropped support for EOL Python 3.8.</li>
</ul>
<h2>Trivial Changes</h2>
<ul>
<li>

<p><code>[#1092](pytest-dev/pytest-xdist#1092)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1092&gt;</code>_:
Update an error message to better indicate where users should go for
more information.</p>
</li>
<li>

<p><code>[#1190](pytest-dev/pytest-xdist#1190)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1190&gt;</code>_:
Switched to using a SPDX license identifier introduced in PEP 639.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b561916eaf6ec0a8a448ed0bcc90a351ab3c58e3"><code>b561916</code></a>
Release 3.7.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/71bd3ede1982a65cf74cf248c0ba906fe6062ce7"><code>71bd3ed</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1204">#1204</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/65de0ab30e602a5f466b8746fcfff0cf0945b600"><code>65de0ab</code></a>
Join multiple xdist_group markers (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1201">#1201</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/199f949716792db8745a69444091f4d4fddae0e2"><code>199f949</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1202">#1202</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b0215da1edf369d5b63b7811b41d750bb5ebb072"><code>b0215da</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1199">#1199</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/18e47853ed9272a87b9e6d29b1630f854d458d4a"><code>18e4785</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1198">#1198</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/731c05d86ad3a42e0b2e3d3b4c8cdd5e33e81988"><code>731c05d</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1197">#1197</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/16c5be32031f904a5f48c2cdbf3424f6528af3b0"><code>16c5be3</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1195">#1195</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/e03757a1d77805776babf6faa73b696ea36c001c"><code>e03757a</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1193">#1193</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f1d81a4402e611dca7ae5bf4b892decfef9d4f08"><code>f1d81a4</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1192">#1192</a>
from adamchainz/document_disabling</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.7.0">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually 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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
github-actions bot pushed a commit to aio-libs/aiohttp that referenced this pull request May 27, 2025
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from
3.6.1 to 3.7.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.7.0 (2025-05-26)</h1>
<h2>Features</h2>
<ul>
<li>

<p><code>[#1142](pytest-dev/pytest-xdist#1142)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1142&gt;</code>_:
Added support for Python 3.13.</p>
</li>
<li>

<p><code>[#1144](pytest-dev/pytest-xdist#1144)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1144&gt;</code>_:
The internal <code>steal</code> command is now atomic - it unschedules
either all requested tests or none.</p>
<p>This is a prerequisite for group/scope support in the
<code>worksteal</code> scheduler, so test groups won't be broken up
incorrectly.</p>
</li>
<li>

<p><code>[#1170](pytest-dev/pytest-xdist#1170)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1170&gt;</code>_:
Add the <code>--px</code> arg to create proxy gateways.</p>
<p>Proxy gateways are passed to additional gateways using the
<code>via</code> keyword.
They can serve as a way to run multiple workers on remote machines.</p>
</li>
<li>

<p><code>[#1200](pytest-dev/pytest-xdist#1200)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1200&gt;</code>_:
Now multiple <code>xdist_group</code> markers are considered when
assigning tests to groups (order does not matter).</p>
<p>Previously, only the last marker would assign a test to a group, but
now if a test has multiple <code>xdist_group</code> marks applied (for
example via parametrization or via fixtures), they are merged to make a
new group.</p>
</li>
</ul>
<h2>Removals</h2>
<ul>

<li><code>[#1162](pytest-dev/pytest-xdist#1162)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1162&gt;</code>_:
Dropped support for EOL Python 3.8.</li>
</ul>
<h2>Trivial Changes</h2>
<ul>
<li>

<p><code>[#1092](pytest-dev/pytest-xdist#1092)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1092&gt;</code>_:
Update an error message to better indicate where users should go for
more information.</p>
</li>
<li>

<p><code>[#1190](pytest-dev/pytest-xdist#1190)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1190&gt;</code>_:
Switched to using a SPDX license identifier introduced in PEP 639.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b561916eaf6ec0a8a448ed0bcc90a351ab3c58e3"><code>b561916</code></a>
Release 3.7.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/71bd3ede1982a65cf74cf248c0ba906fe6062ce7"><code>71bd3ed</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1204">#1204</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/65de0ab30e602a5f466b8746fcfff0cf0945b600"><code>65de0ab</code></a>
Join multiple xdist_group markers (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1201">#1201</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/199f949716792db8745a69444091f4d4fddae0e2"><code>199f949</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1202">#1202</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b0215da1edf369d5b63b7811b41d750bb5ebb072"><code>b0215da</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1199">#1199</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/18e47853ed9272a87b9e6d29b1630f854d458d4a"><code>18e4785</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1198">#1198</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/731c05d86ad3a42e0b2e3d3b4c8cdd5e33e81988"><code>731c05d</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1197">#1197</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/16c5be32031f904a5f48c2cdbf3424f6528af3b0"><code>16c5be3</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1195">#1195</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/e03757a1d77805776babf6faa73b696ea36c001c"><code>e03757a</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1193">#1193</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f1d81a4402e611dca7ae5bf4b892decfef9d4f08"><code>f1d81a4</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1192">#1192</a>
from adamchainz/document_disabling</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.7.0">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually 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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
neu-ro-github-bot bot pushed a commit to neuro-inc/apolo-cli that referenced this pull request May 27, 2025
Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from
3.6.1 to 3.7.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.7.0 (2025-05-26)</h1>
<h2>Features</h2>
<ul>
<li>

<p><code>[#1142](pytest-dev/pytest-xdist#1142)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1142&gt;</code>_:
Added support for Python 3.13.</p>
</li>
<li>

<p><code>[#1144](pytest-dev/pytest-xdist#1144)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1144&gt;</code>_:
The internal <code>steal</code> command is now atomic - it unschedules
either all requested tests or none.</p>
<p>This is a prerequisite for group/scope support in the
<code>worksteal</code> scheduler, so test groups won't be broken up
incorrectly.</p>
</li>
<li>

<p><code>[#1170](pytest-dev/pytest-xdist#1170)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1170&gt;</code>_:
Add the <code>--px</code> arg to create proxy gateways.</p>
<p>Proxy gateways are passed to additional gateways using the
<code>via</code> keyword.
They can serve as a way to run multiple workers on remote machines.</p>
</li>
<li>

<p><code>[#1200](pytest-dev/pytest-xdist#1200)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1200&gt;</code>_:
Now multiple <code>xdist_group</code> markers are considered when
assigning tests to groups (order does not matter).</p>
<p>Previously, only the last marker would assign a test to a group, but
now if a test has multiple <code>xdist_group</code> marks applied (for
example via parametrization or via fixtures), they are merged to make a
new group.</p>
</li>
</ul>
<h2>Removals</h2>
<ul>

<li><code>[#1162](pytest-dev/pytest-xdist#1162)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1162&gt;</code>_:
Dropped support for EOL Python 3.8.</li>
</ul>
<h2>Trivial Changes</h2>
<ul>
<li>

<p><code>[#1092](pytest-dev/pytest-xdist#1092)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1092&gt;</code>_:
Update an error message to better indicate where users should go for
more information.</p>
</li>
<li>

<p><code>[#1190](pytest-dev/pytest-xdist#1190)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1190&gt;</code>_:
Switched to using a SPDX license identifier introduced in PEP 639.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b561916eaf6ec0a8a448ed0bcc90a351ab3c58e3"><code>b561916</code></a>
Release 3.7.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/71bd3ede1982a65cf74cf248c0ba906fe6062ce7"><code>71bd3ed</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1204">#1204</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/65de0ab30e602a5f466b8746fcfff0cf0945b600"><code>65de0ab</code></a>
Join multiple xdist_group markers (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1201">#1201</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/199f949716792db8745a69444091f4d4fddae0e2"><code>199f949</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1202">#1202</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b0215da1edf369d5b63b7811b41d750bb5ebb072"><code>b0215da</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1199">#1199</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/18e47853ed9272a87b9e6d29b1630f854d458d4a"><code>18e4785</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1198">#1198</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/731c05d86ad3a42e0b2e3d3b4c8cdd5e33e81988"><code>731c05d</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1197">#1197</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/16c5be32031f904a5f48c2cdbf3424f6528af3b0"><code>16c5be3</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1195">#1195</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/e03757a1d77805776babf6faa73b696ea36c001c"><code>e03757a</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1193">#1193</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f1d81a4402e611dca7ae5bf4b892decfef9d4f08"><code>f1d81a4</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1192">#1192</a>
from adamchainz/document_disabling</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.7.0">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually 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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
github-merge-queue bot pushed a commit to openvinotoolkit/openvino that referenced this pull request Jun 2, 2025
Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) from
3.6.1 to 3.7.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst">pytest-xdist's
changelog</a>.</em></p>
<blockquote>
<h1>pytest-xdist 3.7.0 (2025-05-26)</h1>
<h2>Features</h2>
<ul>
<li>

<p><code>[#1142](pytest-dev/pytest-xdist#1142)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1142&gt;</code>_:
Added support for Python 3.13.</p>
</li>
<li>

<p><code>[#1144](pytest-dev/pytest-xdist#1144)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1144&gt;</code>_:
The internal <code>steal</code> command is now atomic - it unschedules
either all requested tests or none.</p>
<p>This is a prerequisite for group/scope support in the
<code>worksteal</code> scheduler, so test groups won't be broken up
incorrectly.</p>
</li>
<li>

<p><code>[#1170](pytest-dev/pytest-xdist#1170)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1170&gt;</code>_:
Add the <code>--px</code> arg to create proxy gateways.</p>
<p>Proxy gateways are passed to additional gateways using the
<code>via</code> keyword.
They can serve as a way to run multiple workers on remote machines.</p>
</li>
<li>

<p><code>[#1200](pytest-dev/pytest-xdist#1200)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1200&gt;</code>_:
Now multiple <code>xdist_group</code> markers are considered when
assigning tests to groups (order does not matter).</p>
<p>Previously, only the last marker would assign a test to a group, but
now if a test has multiple <code>xdist_group</code> marks applied (for
example via parametrization or via fixtures), they are merged to make a
new group.</p>
</li>
</ul>
<h2>Removals</h2>
<ul>

<li><code>[#1162](pytest-dev/pytest-xdist#1162)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1162&gt;</code>_:
Dropped support for EOL Python 3.8.</li>
</ul>
<h2>Trivial Changes</h2>
<ul>
<li>

<p><code>[#1092](pytest-dev/pytest-xdist#1092)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1092&gt;</code>_:
Update an error message to better indicate where users should go for
more information.</p>
</li>
<li>

<p><code>[#1190](pytest-dev/pytest-xdist#1190)
&lt;https://github.com/pytest-dev/pytest-xdist/issues/1190&gt;</code>_:
Switched to using a SPDX license identifier introduced in PEP 639.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b561916eaf6ec0a8a448ed0bcc90a351ab3c58e3"><code>b561916</code></a>
Release 3.7.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/71bd3ede1982a65cf74cf248c0ba906fe6062ce7"><code>71bd3ed</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1204">#1204</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/65de0ab30e602a5f466b8746fcfff0cf0945b600"><code>65de0ab</code></a>
Join multiple xdist_group markers (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1201">#1201</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/199f949716792db8745a69444091f4d4fddae0e2"><code>199f949</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1202">#1202</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/b0215da1edf369d5b63b7811b41d750bb5ebb072"><code>b0215da</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1199">#1199</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/18e47853ed9272a87b9e6d29b1630f854d458d4a"><code>18e4785</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1198">#1198</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/731c05d86ad3a42e0b2e3d3b4c8cdd5e33e81988"><code>731c05d</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1197">#1197</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/16c5be32031f904a5f48c2cdbf3424f6528af3b0"><code>16c5be3</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1195">#1195</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/e03757a1d77805776babf6faa73b696ea36c001c"><code>e03757a</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1193">#1193</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-xdist/commit/f1d81a4402e611dca7ae5bf4b892decfef9d4f08"><code>f1d81a4</code></a>
Merge pull request <a
href="https://redirect.github.com/pytest-dev/pytest-xdist/issues/1192">#1192</a>
from adamchainz/document_disabling</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.7.0">compare
view</a></li>
</ul>
</details>
<br />


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

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually 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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ansibuddy pushed a commit to ansible/molecule that referenced this pull request Jun 2, 2025