Skip to content

ci: exclude pytest 9.1.0 (params-fixture override regression) - #1329

Merged
henryiii merged 1 commit into
mainfrom
ci/exclude-pytest-9.1.0
Jun 16, 2026
Merged

henryiii merged 1 commit into
mainfrom
ci/exclude-pytest-9.1.0

Conversation

@henryiii

Copy link
Copy Markdown
Collaborator

🤖 AI text below 🤖

Problem

pytest 9.1.0 shipped a regression (pytest-dev/pytest#13974, fixed upstream in #13976, landing in 9.1.1) where overriding a params=-fixture via @pytest.mark.parametrize(..., indirect=True) raises duplicate parametrization at collection time.

Because our config sets filterwarnings = ["error"] and these surface as collection errors, the suite hard-fails on the three tests that override the editable fixture (defined with params=[None, "redirect", "inplace"] in tests/conftest.py):

  • test_editable.py::test_cython_pxd
  • test_editable_generated.py::test_generated_files
  • test_pyproject_pep660.py::test_pep660_wheel

Fix

Pin pytest >=7.2,!=9.1.0 in the test-core dependency group. The exclusion is narrow: 9.1.1+ (with the upstream fix) is allowed once released. No test code changes needed.

Verified collection is clean (622 tests, no errors) with the pin applied.

🤖 Generated with Claude Code

pytest 9.1.0 regressed overriding a params-fixture via
`@pytest.mark.parametrize(..., indirect=True)`, raising
"duplicate parametrization" at collection. With filterwarnings=error
this hard-fails the editable-fixture tests. Fixed upstream in 9.1.1.

Refs: pytest-dev/pytest#13974

Assisted-by: ClaudeCode:claude-opus-4.8
@henryiii
henryiii merged commit 70fc620 into main Jun 16, 2026
62 checks passed
@henryiii
henryiii deleted the ci/exclude-pytest-9.1.0 branch June 16, 2026 01:25
henryiii added a commit to pypa/pyproject-metadata that referenced this pull request Jun 16, 2026
Updates the scikit-build-core downstream test pin to its current main HEAD
(70fc620), which excludes the broken pytest 9.1.0 (scikit-build/scikit-build-core#1329).
The previous pin (8621243) pulled pytest 9.1.0, whose params-fixture override
regression broke scikit-build-core's test collection, reddening the downstream
job on unrelated PRs.

Assisted-by: ClaudeCode:claude-opus-4.8
@henryiii henryiii mentioned this pull request Jul 3, 2026
3 of 5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant