GH-50277: [CI][Python] Avoid using generators for test parametrization on newer Pytest#50278
Conversation
|
|
|
@github-actions crossbow submit test-conda-python-3.11-hypothesis |
There was a problem hiding this comment.
Pull request overview
This PR updates PyArrow’s Python memory-pool tests to avoid passing a generator into pytest.mark.parametrize, which triggers PytestRemovedIn10Warning (treated as errors in CI) on newer pytest versions.
Changes:
- Convert
supported_factories()from a generator (yield) to a concrete list-returning function. - Collect supported memory pool factory callables into a list before returning, ensuring
parametrizereceives aCollection.
|
Revision: cdb6e0e Submitted crossbow builds: ursacomputing/crossbow @ actions-b28209428c
|
|
@AlenkaF if you can take a quick look |
|
@github-actions crossbow submit test-conda-python-3.11-hypothesis |
|
Revision: b716114 Submitted crossbow builds: ursacomputing/crossbow @ actions-966d54caba
|
|
After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit 3f4a04e. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. It also includes information about 2 possible false positives for unstable benchmarks that are known to sometimes produce them. |
Rationale for this change
On the hypothesis tests we treat Warnings as errors and the job has been failing with the latest Pytest version (9.1.0). This is related to:
With the latest pytest using generators for parametrization has been deprecated.
What changes are included in this PR?
Change the generator that was causing the failures and return a list of supported_factories instead.
Are these changes tested?
Yes both locally and the archery test that was failing.
Are there any user-facing changes?
No