Skip to content

MPT-22084 send both description and shortDescription in helpdesk queue fixture - #345

Merged
jentyk merged 1 commit into
mainfrom
bugfix/MPT-22084/restore-description-field-in-helpdesk-queue-fixture
Jun 12, 2026
Merged

jentyk merged 1 commit into
mainfrom
bugfix/MPT-22084/restore-description-field-in-helpdesk-queue-fixture

Conversation

@jentyk

@jentyk jentyk commented Jun 12, 2026 •

Copy link
Copy Markdown
Member

🤖 AI-generated PR — Please review carefully.

Summary

Follow-up to #344 (MPT-22084). The first fix renamed the helpdesk queue_data fixture payload key description → shortDescription, which dropped coverage of the still-valid description field.

The MPT public OpenAPI Queue schema (https://api.s1.show/public/v1/openapi.json) defines both description and shortDescription as valid string fields (the helpdesk queue convention differs from products/extensions, which use shortDescription/longDescription). This restores description alongside shortDescription so the fixture sends the complete, valid payload.

Changes

  • tests/e2e/helpdesk/conftest.py: add description back to the queue_data fixture, alongside shortDescription.

Testing

  • make check (ruff format/check, flake8, mypy, uv lock --check) — passed.
  • Running the helpdesk E2E suite requires live MPT credentials and was not executed as part of this change.

Jira: MPT-22084

Closes MPT-22084

  • Restored the description field in the helpdesk queue_data fixture alongside shortDescription to ensure complete coverage of valid OpenAPI Queue schema fields

The MPT helpdesk Queue schema defines both "description" and
"shortDescription" as valid fields (per the public OpenAPI spec). The
previous fix renamed "description" to "shortDescription" and dropped
coverage of the still-valid "description" field. Send both so the
queue_data fixture exercises the complete payload.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@jentyk
jentyk requested a review from a team as a code owner June 12, 2026 13:37
@jentyk
jentyk requested review from d3rky and robcsegal June 12, 2026 13:37
@coderabbitai

coderabbitai Bot commented Jun 12, 2026 •

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Run ID: 69d773fd-49c7-4826-a541-50abc2e310ed

📥 Commits

Reviewing files that changed from the base of the PR and between 01785dc and 09fae5e.

📒 Files selected for processing (1)
  • tests/e2e/helpdesk/conftest.py
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • softwareone-platform/mpt-extension-skills (manual)
📜 Recent review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build
🧰 Additional context used
📓 Path-based instructions (2)
**/*

⚙️ CodeRabbit configuration file

**/*: For each subsequent commit in this PR, explicitly verify if previous review comments have been resolved

Files:

  • tests/e2e/helpdesk/conftest.py
**

⚙️ CodeRabbit configuration file

**: # AGENTS.md

Working protocol for any task in this repository:

  1. Identify the task type and select only the local repository files that are relevant to that task.
  2. Read only those relevant local files before making changes.
  3. If any selected local file references shared standards or shared operational guidance that are relevant to the same task, read those shared documents too before proceeding.
  4. Treat repository-local documents as repository-specific additions, restrictions, or overrides to shared guidance.
  5. If a repository-local rule conflicts with a shared rule, the local repository rule takes precedence.

Python API client for the SoftwareONE Marketplace Platform (MPT) API. Provides synchronous
(MPTClient) and asynchronous (AsyncMPTClient) clients built on httpx, with typed
resource services, mixin-based HTTP operations, and an RQL query builder.

Documentation Reading Order

When applicable, read the repository documentation in this order:

  1. README.md — repository overview, quick start, and documentation map
  2. docs/usage.md — installation, configuration, Python usage examples, and supported Docker-based commands
  3. docs/architecture.md — layered architecture, directory structure, and key abstractions
  4. docs/local-development.md — Docker-only setup and execution model
  5. docs/testing.md — repository-specific testing strategy and command mapping
  6. docs/contributing.md — repository-specific workflow and links to shared standards
  7. docs/documentation.md — repository-specific documentation rules
  8. docs/unit_tests.md — unit test structure and guidance
  9. docs/e2e_tests.md — end-to-end test setup and execution

Then inspect the code paths relevant to the task:

  • mpt_api_client/mpt_client.py — public sync and async client entry points
  • mpt_api_client/http/ — HTTP clients, services, query state, and reusable mixins
  • mpt_api_client/resources/ — domain resource groups such as catalog, commerce, billing, and integrati...

Files:

  • tests/e2e/helpdesk/conftest.py
🧠 Learnings (8)
📚 Learning: 2025-12-12T15:02:20.732Z
Learnt from: robcsegal
Repo: softwareone-platform/mpt-api-python-client PR: 160
File: tests/e2e/commerce/agreement/attachment/test_async_agreement_attachment.py:55-58
Timestamp: 2025-12-12T15:02:20.732Z
Learning: In pytest with pytest-asyncio, if a test function uses async fixtures but contains no await, declare the test function as def (synchronous) instead of async def. Pytest-asyncio will resolve the async fixtures automatically; this avoids linter complaints about unnecessary async functions. This pattern applies to any test file under the tests/ directory that uses such fixtures.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-04-02T09:35:03.825Z
Learnt from: jentyk
Repo: softwareone-platform/mpt-api-python-client PR: 269
File: tests/e2e/helpdesk/chats/links/test_sync_links.py:18-18
Timestamp: 2026-04-02T09:35:03.825Z
Learning: In this repository’s test suite, flake8-aaa/flake8-aaa codes use short two-digit suffixes (e.g., `# noqa: AAA01`), not three-digit variants like `AAA001`. If you see `# noqa: AAA01` in a test file (e.g., when the Act step is performed via a pytest fixture rather than inline code), treat it as valid and intentional—do not flag it as an invalid/no-longer-needed noqa, and do not suggest removing it even if Ruff reports `RUF102`, since `AAA` is configured under `tool.ruff.lint.external` and these noqa directives are expected to be preserved.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-01-08T08:34:05.465Z
Learnt from: albertsola
Repo: softwareone-platform/mpt-api-python-client PR: 183
File: tests/e2e/catalog/price_lists/conftest.py:29-30
Timestamp: 2026-01-08T08:34:05.465Z
Learning: In end-to-end tests (e.g., tests/e2e/...), reuse existing API resources for read-only operations and safe mutations to speed up test execution. Reserve isolated fixtures (e.g., created_price_list) for destructive tests that require per-test creation and cleanup. Ensure tests document when a fixture creates/destroys data and clearly indicate which operations are destructive, so tests stay fast and properly isolated.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-01-08T23:38:19.565Z
Learnt from: robcsegal
Repo: softwareone-platform/mpt-api-python-client PR: 186
File: tests/e2e/billing/ledger/charge/test_sync_ledger_charge.py:33-39
Timestamp: 2026-01-08T23:38:19.565Z
Learning: In Python e2e tests under tests/e2e, hardcoded external IDs (e.g., INV12345) are intentional because they come from seeded test data. Ensure the test data seeds consistently include these IDs; if seeds change, update tests accordingly. Prefer using a named constant for such IDs (e.g., INV_EXTERNAL_ID) and document the dependency on seed data to avoid brittle tests.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-02-02T13:05:41.144Z
Learnt from: albertsola
Repo: softwareone-platform/mpt-api-python-client PR: 201
File: tests/unit/resources/accounts/mixins/test_activatable_mixin.py:132-139
Timestamp: 2026-02-02T13:05:41.144Z
Learning: In the mpt-api-python-client repository, tests are configured to use pytest asyncio mode auto, which auto-detects async test functions and runs them without requiring pytest.mark.asyncio. Reviewers should rely on this behavior for all Python test files under tests/, and avoid adding unnecessary asyncio markers in async tests. Ensure test files in tests/ adhere to this convention unless a specific test requires an explicit marker.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-04-02T16:26:46.138Z
Learnt from: albertsola
Repo: softwareone-platform/mpt-api-python-client PR: 275
File: tests/e2e/exchange/currencies/conftest.py:43-43
Timestamp: 2026-04-02T16:26:46.138Z
Learning: In this repo’s Python E2E conftest files, line-specific flake8/wemake suppressions like `# noqa: WPS421` placed inline on individual statements (e.g., on specific `print()` calls in teardown blocks) are intentional and acceptable. When reviewing, avoid suggesting converting these to a file-wide ignore (e.g., adding per-file ignores under `[tool.flake8]` in `pyproject.toml`), since that would over-suppress WPS421 for the entire file. Also treat Ruff `RUF102` about an unknown rule code as expected here when suppressing `WPS421` from wemake-python-styleguide.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-04-06T09:03:34.466Z
Learnt from: albertsola
Repo: softwareone-platform/mpt-api-python-client PR: 277
File: tests/e2e/extensibility/extensions/conftest.py:37-40
Timestamp: 2026-04-06T09:03:34.466Z
Learning: In this repo’s E2E test conftest teardown fixtures, it is intentional to catch `MPTAPIError` broadly (not just 404) and to print a diagnostic message instead of re-raising. This avoids failing the test suite during teardown when a resource cannot be deleted in some scenarios. Do not recommend narrowing the `except` clause in these teardown blocks (e.g., checking `error.status == 404`), unless the fixture is clearly not intended as an E2E teardown diagnostic.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
📚 Learning: 2026-04-16T13:00:41.320Z
Learnt from: jentyk
Repo: softwareone-platform/mpt-api-python-client PR: 303
File: tests/e2e/helpdesk/chats/participants/conftest.py:25-31
Timestamp: 2026-04-16T13:00:41.320Z
Learning: In mpt-api-python-client, do not treat list-wrapped arguments to CreateMixin.create() / AsyncCreateMixin.create() as an error. ResourceData is intentionally typed as Resource | list[Resource] (see mpt_api_client/models/model.py), so create() should accept either a single resource dict or a list of resource dicts (e.g., create([chat_participant_data])) to perform a batch create and return a ModelCollection. Therefore, reviewers should only flag list-wrapped create() arguments when there is evidence they violate the expected API contract beyond this documented batch-create behavior.

Applied to files:

  • tests/e2e/helpdesk/conftest.py
🔇 Additional comments (1)
tests/e2e/helpdesk/conftest.py (1)

14-17: LGTM!


📝 Walkthrough

Walkthrough

The PR adds a description field to the queue_data pytest fixture in the e2e helpdesk test configuration, extending the queue payload with a fixed description value.

Changes

Queue Fixture Description Update

Layer / File(s) Summary
Queue data fixture description
tests/e2e/helpdesk/conftest.py
The queue_data fixture now includes a "description": "E2E Created Helpdesk Queue" field in the returned queue payload.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Pr And Commit Formatting ✅ Passed PR #345 title is “MPT-22084 send both description and shortDescription…”, body explains restore of description/shortDescription; single conventional-commit commit with explanatory body; 1 commit im...
Documentation Up To Date ✅ Passed PR appears to change only tests/e2e/helpdesk/conftest.py fixture payload by adding "description"; docs don’t describe field-level queue payloads, so no documentation update impact.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud

Copy link
Copy Markdown

@jentyk
jentyk merged commit b33ba9c into main Jun 12, 2026
4 checks passed
@jentyk
jentyk deleted the bugfix/MPT-22084/restore-description-field-in-helpdesk-queue-fixture branch June 12, 2026 13:41
svazquezco added a commit that referenced this pull request Sep 14, 2026
…with 4 updates (#415)

Bumps the python-development group with 4 updates in the / directory:
[ipython](https://github.com/ipython/ipython),
[pytest-randomly](https://github.com/pytest-dev/pytest-randomly),
[pytest-rerunfailures](https://github.com/pytest-dev/pytest-rerunfailures)
and [ruff](https://github.com/astral-sh/ruff).

Updates `ipython` from 9.16.1 to 9.17.1
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ipython/ipython/commit/48ff02957a9a0cdb30a63e15f6493e583e9ec54b"><code>48ff029</code></a>
release 9.17.1</li>
<li><a
href="https://github.com/ipython/ipython/commit/ed47107a5218bfc6419fe5f2a79ebda22a77d612"><code>ed47107</code></a>
Have builin-lazy magics have a lower priority than registered on.</li>
<li><a
href="https://github.com/ipython/ipython/commit/19f9ae0a863c21cff52fa07c74b18fc5b482d9c3"><code>19f9ae0</code></a>
back to dev</li>
<li><a
href="https://github.com/ipython/ipython/commit/3278f6f5b71b3152e084478cac8fa20405c49b5a"><code>3278f6f</code></a>
release 9.17.0</li>
<li><a
href="https://github.com/ipython/ipython/commit/40cfb95e634b8807ff66dac1a269610794f7da66"><code>40cfb95</code></a>
Update what's new for 9.17</li>
<li><a
href="https://github.com/ipython/ipython/commit/2ed42ae6a01e77c8a11ead7b168ceb920f4cb563"><code>2ed42ae</code></a>
Fix RST formatting in display_functions.py</li>
<li><a
href="https://github.com/ipython/ipython/commit/a487a06bb1193f4d166210153e7068af694ec2ae"><code>a487a06</code></a>
change emojis</li>
<li><a
href="https://github.com/ipython/ipython/commit/7f0ee55684f08f5af18190aa58d4bb3018fb20d2"><code>7f0ee55</code></a>
Declare IPython's built-in magics lazily</li>
<li><a
href="https://github.com/ipython/ipython/commit/ee0239282e9439ea181a723187ede0cc55475414"><code>ee02392</code></a>
Only run the psutil-free kitty detection test where /proc exists</li>
<li><a
href="https://github.com/ipython/ipython/commit/af386cf710668a2f81abdae3621a8c2fe7be3494"><code>af386cf</code></a>
Annotate <code>_find_dunder</code> and put measured numbers in the
whatsnew</li>
<li>Additional commits viewable in <a
href="https://github.com/ipython/ipython/compare/9.16.1...9.17.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `pytest-randomly` from 4.1.0 to 5.0.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-randomly/blob/main/CHANGELOG.rst">pytest-randomly's
changelog</a>.</em></p>
<blockquote>
<h2>5.0.0 (2026-09-01)</h2>
<ul>
<li>
<p>Support Python 3.15.</p>
</li>
<li>
<p>Shuffle tests in a wrapper around the
<code>pytest_collection_modifyitems</code> hook, guaranteeing that the
shuffle runs before all other plugins’ implementations of the hook.</p>
<p>Previously, pytest-randomly shuffled in a plain <code>tryfirst</code>
hook implementation.
When another plugin also implemented the hook with
<code>tryfirst</code>, as pytest-django does, whichever plugin pytest
happened to register later ran first.
Registration order comes from package metadata on disk, which can differ
between seemingly identical environments — even two containers built
from the same <code>Dockerfile</code>, or the same virtual environment
after reinstalling a package.
As a result, the same seed could yield different test orders in
different environments.
Worse, in environments where pytest-randomly ended up shuffling last, it
silently destroyed the other plugin’s ordering — for pytest-django, the
grouping of database tests that mirrors Django’s test runner
(non-transactional database tests, then transactional ones, then the
rest).</p>
<p>Now the shuffle always runs first, and plugins that group tests with
a stable sort apply their grouping on top of the shuffled order, so the
final order is reproducible from the seed alone.
In environments that previously hit the reversed hook order, upgrading
changes the test order for a given seed — restoring both reproducibility
and other plugins’ grouping.</p>
<p><code>PR
[#746](pytest-dev/pytest-randomly#746)
&lt;https://github.com/pytest-dev/pytest-randomly/pull/746&gt;</code><strong>.
Thanks to milssky for the report in <code>Issue
[#701](pytest-dev/pytest-randomly#701)
&lt;https://github.com/pytest-dev/pytest-randomly/issues/701&gt;</code></strong>.</p>
</li>
<li>
<p>Require pytest 8+, the first version to require a version of pluggy
that supports hook wrappers, as used by the above fix.</p>
<p><code>PR
[#746](pytest-dev/pytest-randomly#746)
&lt;https://github.com/pytest-dev/pytest-randomly/pull/746&gt;</code>__.</p>
</li>
<li>
<p>Reset <code>Polyfactory
&lt;https://polyfactory.litestar.dev/&gt;</code>__\’s default random
state at the start of every test, if it is installed.</p>
<p>Thanks to Rahul Kumar in <code>PR
[#735](pytest-dev/pytest-randomly#735)
&lt;https://github.com/pytest-dev/pytest-randomly/issues/735&gt;</code>__.</p>
</li>
<li>
<p>Switch package build backend from setuptools to <code>uv_build
&lt;https://docs.astral.sh/uv/concepts/build-backend/&gt;</code>__.
This makes builds with uv about nine times faster, since uv runs the
backend natively, without creating a build environment or spawning a
Python process.
Additionally, source distributions no longer include test files, which
setuptools previously included incompletely, missing the files needed to
actually run them.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/89ddfb1025cf15a81eb3defec7554740f32bcbe3"><code>89ddfb1</code></a>
Version 5.0.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/0d00951e3fd85145567adfa2b638c7987f3e33ef"><code>0d00951</code></a>
Shuffle before other plugins' collection hooks (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/746">#746</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/817091daca7b0540edb45da652ffc84a766724a1"><code>817091d</code></a>
Upgrade dependencies (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/745">#745</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/42a2066ee95bdb1c606945436d7170ef3a6376c5"><code>42a2066</code></a>
Fix podcast link in README (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/740">#740</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/c2a001d37d14abc95940c923f730a07ccf87b4e2"><code>c2a001d</code></a>
Reset Polyfactory's default random state on each test (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/735">#735</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/cc4762bcb547a455b670b812ea362c483a31e7ef"><code>cc4762b</code></a>
Upgrade dependencies (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/744">#744</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/94aba4ad675e863b65f024ab924688e595fa8a3f"><code>94aba4a</code></a>
Upgrade dependencies (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/743">#743</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/c9140eff32cadcdc14d82a944e63d3ad1b4dbe8c"><code>c9140ef</code></a>
Support Python 3.15 (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/741">#741</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/15f531e2a7c1c88f27febc9c92966472d5bb18fc"><code>15f531e</code></a>
Switch build backend to uv_build (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/739">#739</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-randomly/commit/79eee6c2f5475911d178b1a42b649182cbfc5e9f"><code>79eee6c</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-randomly/issues/738">#738</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-randomly/compare/4.1.0...5.0.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `pytest-rerunfailures` from 16.6 to 16.6.1
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-rerunfailures/blob/master/CHANGES.rst">pytest-rerunfailures's
changelog</a>.</em></p>
<blockquote>
<h2>16.6.1 (2026-09-03)</h2>
<p>Bug Fixes
+++++++++</p>
<ul>
<li>Ensure teardown reports are passed to
<code>pytest_runtest_logreport</code> for rerun
attempts.
(<code>[#237](pytest-dev/pytest-rerunfailures#237)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/237&gt;</code>_)</li>
<li>Prevent superseded built-in subtest failures from remaining in the
final test
result when rerunning tests with pytest-xdist.
(<code>[#350](pytest-dev/pytest-rerunfailures#350)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/350&gt;</code>_)</li>
<li>Restore module, class, and session scoped fixture teardown when a
<code>flaky</code>
marker condition is falsy.
(<code>[#351](pytest-dev/pytest-rerunfailures#351)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/351&gt;</code>_)</li>
<li>Restore module, class, and session scoped fixture teardown when an
error
raised during teardown rules out a re-run.
(<code>[#356](pytest-dev/pytest-rerunfailures#356)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/356&gt;</code>_)</li>
<li>Keep module, class, and session scoped fixtures alive across re-runs
of a
test whose call phase failed through subtests only.
(<code>[#357](pytest-dev/pytest-rerunfailures#357)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/357&gt;</code>_)</li>
<li>Authenticate xdist StatusDB connections with a per-session token.
(<code>[#358](pytest-dev/pytest-rerunfailures#358)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/358&gt;</code>_)</li>
<li>Ensure negative rerun counts do not skip the initial test execution.
(<code>[#359](pytest-dev/pytest-rerunfailures#359)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/359&gt;</code>_)</li>
</ul>
<p>Misc
++++</p>
<ul>
<li>Replace deprecated <code>Config.getvalue()</code> calls with
<code>Config.getoption()</code>.

(<code>[#345](pytest-dev/pytest-rerunfailures#345)
&lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/345&gt;</code>_)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/dad07a7f360e96c0cbbc4301e36cdc439eb9a36b"><code>dad07a7</code></a>
Preparing release 16.6.1</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/968fb6c1d3982ea35f041ecb62024e79016324bb"><code>968fb6c</code></a>
Prevent negative reruns from skipping initial execution (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/360">#360</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/367df9044cbcf3bbf153269bdab995e1f9eb113c"><code>367df90</code></a>
Keep higher-scoped fixtures alive across re-runs of failed subtests (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/357">#357</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/69ac0a7e66f1f55c1e94a2f237e2659250795ef7"><code>69ac0a7</code></a>
Authenticate xdist StatusDB connections (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/358">#358</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/20decd37b22736b1a92ecb7a6ed598e7fd70cff1"><code>20decd3</code></a>
Restore higher-scoped teardown when a teardown error rules out a re-run
(<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/356">#356</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/84af73d63c1ac3eeeeba73a5e3ac91a44078c7bb"><code>84af73d</code></a>
Fix subtest rerun reporting with xdist (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/352">#352</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/d784cdda0b946c8788939255b6b72df67da82a19"><code>d784cdd</code></a>
Test with pytest-xdist on CI (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/354">#354</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/9f85e063dac5387cb0b17ffcb8aadeca545292a8"><code>9f85e06</code></a>
Restore higher-scoped teardown when a flaky condition is falsy (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/351">#351</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/eab650fb2a2665d61539aafda81ae549440c2834"><code>eab650f</code></a>
Test rerun-except for setup errors (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/349">#349</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-rerunfailures/commit/0b0843a83fb7e79c37e626092a77c5f7cd49f4df"><code>0b0843a</code></a>
Fix only_rerun marker precedence test (<a
href="https://github.com/proxy/redirect.github.com/pytest-dev/pytest-rerunfailures/issues/348">#348</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-rerunfailures/compare/16.6...16.6.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `ruff` from 0.16.5 to 0.16.7
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/astral-sh/ruff/releases">ruff's
releases</a>.</em></p>
<blockquote>
<h2>0.16.7</h2>
<h2>Release Notes</h2>
<p>Released on 2026-09-10.</p>
<h3>Preview features</h3>
<ul>
<li>[<code>ruff</code>] Add rule for default values on method receivers
(<code>RUF077</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/26700">#26700</a>)</li>
<li>[<code>ruff</code>] Recognize <code>re.prefixmatch</code>
(<code>RUF039</code>, <code>RUF055</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28311">#28311</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Alternate nested quotes inside format spec interpolations (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28259">#28259</a>)</li>
<li>[<code>flake8-implicit-str-concat</code>] Mark fix unsafe when it
creates a docstring (<code>ISC003</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/27981">#27981</a>)</li>
<li>[<code>flake8-tidy-imports</code>] Skip fixes for multi-member
imports (<code>TID254</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/26584">#26584</a>)</li>
<li>[<code>pylint</code>] Gate <code>ImportCycleError</code> on Python
3.15 (<code>PLW0133</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28310">#28310</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Correct <code>D211</code> and <code>D203</code> rule conflict
diagnostic (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28444">#28444</a>)</li>
<li>Recognize <code>slice</code> and <code>frozendict</code> generics
(<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28477">#28477</a>)</li>
<li>Stop defining <code>__cached__</code> for Python 3.15 (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28476">#28476</a>)</li>
<li>[<code>pyupgrade</code>] Stop recommending removed
<code>typing.no_type_check_decorator</code> (<code>UP035</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28475">#28475</a>)</li>
</ul>
<h3>Performance</h3>
<ul>
<li>Reuse parser name lookups when interning (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28399">#28399</a>)</li>
<li>Speed up inherited configuration resolution (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28299">#28299</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Fix <code>line-length</code> path in <code>--config</code> example
(<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28392">#28392</a>)</li>
<li>Remove the &quot;Who’s Using Ruff?&quot; list (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28455">#28455</a>)</li>
</ul>
<h3>Other changes</h3>
<ul>
<li>Embed archive checksums in the shell installer (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28281">#28281</a>)</li>
</ul>
<h3>Contributors</h3>
<ul>
<li><a
href="https://github.com/The-Compiler"><code>@​The-Compiler</code></a></li>
<li><a
href="https://github.com/mdiniz97"><code>@​mdiniz97</code></a></li>
<li><a href="https://github.com/zsol"><code>@​zsol</code></a></li>
<li><a
href="https://github.com/gorewilliams"><code>@​gorewilliams</code></a></li>
<li><a
href="https://github.com/RafaelJohn9"><code>@​RafaelJohn9</code></a></li>
<li><a href="https://github.com/qatcod"><code>@​qatcod</code></a></li>
<li><a href="https://github.com/zanieb"><code>@​zanieb</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a href="https://github.com/ntBre"><code>@​ntBre</code></a></li>
<li><a
href="https://github.com/charliermarsh"><code>@​charliermarsh</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/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's
changelog</a>.</em></p>
<blockquote>
<h2>0.16.7</h2>
<p>Released on 2026-09-10.</p>
<h3>Preview features</h3>
<ul>
<li>[<code>ruff</code>] Add rule for default values on method receivers
(<code>RUF077</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/26700">#26700</a>)</li>
<li>[<code>ruff</code>] Recognize <code>re.prefixmatch</code>
(<code>RUF039</code>, <code>RUF055</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28311">#28311</a>)</li>
</ul>
<h3>Bug fixes</h3>
<ul>
<li>Alternate nested quotes inside format spec interpolations (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28259">#28259</a>)</li>
<li>[<code>flake8-implicit-str-concat</code>] Mark fix unsafe when it
creates a docstring (<code>ISC003</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/27981">#27981</a>)</li>
<li>[<code>flake8-tidy-imports</code>] Skip fixes for multi-member
imports (<code>TID254</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/26584">#26584</a>)</li>
<li>[<code>pylint</code>] Gate <code>ImportCycleError</code> on Python
3.15 (<code>PLW0133</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28310">#28310</a>)</li>
</ul>
<h3>Rule changes</h3>
<ul>
<li>Correct <code>D211</code> and <code>D203</code> rule conflict
diagnostic (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28444">#28444</a>)</li>
<li>Recognize <code>slice</code> and <code>frozendict</code> generics
(<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28477">#28477</a>)</li>
<li>Stop defining <code>__cached__</code> for Python 3.15 (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28476">#28476</a>)</li>
<li>[<code>pyupgrade</code>] Stop recommending removed
<code>typing.no_type_check_decorator</code> (<code>UP035</code>) (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28475">#28475</a>)</li>
</ul>
<h3>Performance</h3>
<ul>
<li>Reuse parser name lookups when interning (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28399">#28399</a>)</li>
<li>Speed up inherited configuration resolution (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28299">#28299</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Fix <code>line-length</code> path in <code>--config</code> example
(<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28392">#28392</a>)</li>
<li>Remove the &quot;Who’s Using Ruff?&quot; list (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28455">#28455</a>)</li>
</ul>
<h3>Other changes</h3>
<ul>
<li>Embed archive checksums in the shell installer (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/pull/28281">#28281</a>)</li>
</ul>
<h3>Contributors</h3>
<ul>
<li><a
href="https://github.com/The-Compiler"><code>@​The-Compiler</code></a></li>
<li><a
href="https://github.com/mdiniz97"><code>@​mdiniz97</code></a></li>
<li><a href="https://github.com/zsol"><code>@​zsol</code></a></li>
<li><a
href="https://github.com/gorewilliams"><code>@​gorewilliams</code></a></li>
<li><a
href="https://github.com/RafaelJohn9"><code>@​RafaelJohn9</code></a></li>
<li><a href="https://github.com/qatcod"><code>@​qatcod</code></a></li>
<li><a href="https://github.com/zanieb"><code>@​zanieb</code></a></li>
<li><a
href="https://github.com/MichaReiser"><code>@​MichaReiser</code></a></li>
<li><a href="https://github.com/ntBre"><code>@​ntBre</code></a></li>
<li><a
href="https://github.com/charliermarsh"><code>@​charliermarsh</code></a></li>
<li><a
href="https://github.com/nightt5879"><code>@​nightt5879</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/astral-sh/ruff/commit/b5dba861cc38e3f7fb4524c9ceba3e01a474ea13"><code>b5dba86</code></a>
Bump version to 0.16.7 (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28496">#28496</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/5992d0504697d86565d8fc3a4d8245a5f4047d24"><code>5992d05</code></a>
Install rustfmt before linting releases (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28495">#28495</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/1713a1f4325494d883a080d590a25a1946f399e8"><code>1713a1f</code></a>
ensure prepare release changes pass prek (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28488">#28488</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/18cdbb4f3d14058794420e758864795f55336334"><code>18cdbb4</code></a>
use scoped token for release workflow (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28484">#28484</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/c3813a501faf887fd01948c98bb8d58ad26488bd"><code>c3813a5</code></a>
add a workflow for preparing releases (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28486">#28486</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/00948c00a671b81f5358af9f038436bcbb993b38"><code>00948c0</code></a>
Remove the &quot;Who’s Using Ruff?&quot; list (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28455">#28455</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/86a2eba7b48e3c10386f7ab8a5425c7275d2b427"><code>86a2eba</code></a>
[<code>pyupgrade</code>] Stop recommending removed
<code>typing.no_type_check_decorator</code> (`UP...</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/609e184aa35f0034b7ef63e3e04327081c484af6"><code>609e184</code></a>
Stop defining <code>__cached__</code> for Python 3.15 (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28476">#28476</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/859ff2f01670c43ffff1ea597c8a2e375ada0fbe"><code>859ff2f</code></a>
[ty] Track symlinked directory status in listings (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28482">#28482</a>)</li>
<li><a
href="https://github.com/astral-sh/ruff/commit/77f653825800ddaf3bc221ae6db49a500e1002d5"><code>77f6538</code></a>
Use paid GitHub-hosted runners for Linux (<a
href="https://github.com/proxy/redirect.github.com/astral-sh/ruff/issues/28478">#28478</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/astral-sh/ruff/compare/0.16.5...0.16.7">compare
view</a></li>
</ul>
</details>
<br />
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.

2 participants