Skip to content

Pin Hypothesis to pure-Python version; drop Pyodide 3.12; add Pyodide 3.14 - #282

Merged
tfpf merged 9 commits into
mainfrom
cap-hypothesis
Aug 2, 2026
Merged

Pin Hypothesis to pure-Python version; drop Pyodide 3.12; add Pyodide 3.14#282
tfpf merged 9 commits into
mainfrom
cap-hypothesis

Conversation

@tfpf

@tfpf tfpf commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Restrict Hypothesis to the newest pure-Python version since binary wheels of newer versions are not provided for PyPy 3.10.

tfpf added 2 commits August 2, 2026 01:33
Newer versions are not pure-Python, and their binary wheels are not provided for PyPy 3.10.
@tfpf

tfpf commented Aug 1, 2026

Copy link
Copy Markdown
Owner Author

Asking cibuildwheel to use the newest pure-Python version of Hypothesis does not work:

[tool.cibuildwheel]
archs = ["auto64"]
build-verbosity = 1
enable = ["pypy", "pypy-eol"]
test-command = "pytest {package}"
test-requires = [
    # Its newer versions are implemented using Rust, but no binary wheels are
    # provided for PyPy 3.10.
    "hypothesis<6.156.0",
    "pytest",
]

because Windows cannot parse it for some reason.

+ pip install 'C:\Users\runneradmin\AppData\Local\Temp\cibw-run-x5aaeqrh\cp310-win_amd64\repaired_wheel\pysorteddict-0.14.0-cp310-cp310-win_amd64.whl'
Processing C:\Users\runneradmin\AppData\Local\Temp\cibw-run-x5aaeqrh\cp310-win_amd64\repaired_wheel\pysorteddict-0.14.0-cp310-cp310-win_amd64.whl
Installing collected packages: pysorteddict
Successfully installed pysorteddict-0.14.0
+ pip install 'hypothesis<6.156.0' pytest
The system cannot find the file specified.

I might as well drop support for PyPy 3.10. Python 3.10 will stop getting updates two months later, after all.

@tfpf tfpf changed the title Use newest pure-Python version of Hypothesis Drop support for PyPy 3.10 Aug 1, 2026
@tfpf

tfpf commented Aug 2, 2026

Copy link
Copy Markdown
Owner Author

Specifying the exact Hypothesis version works.

I had to upgrade the cibuildwheel version because the Pyodide build for Python 3.13 was failing with a permission error. However, this means I now get only Pyodide wheels for Python 3.13 and 3.14. Enabling the EOL 3.12 build causes the permission to come back in the Python 3.13 build. Mysterious, but not worth my time.

@tfpf tfpf changed the title Drop support for PyPy 3.10 Pyodide: drop support for 3.12, add support for 3.14 Aug 2, 2026
@tfpf tfpf changed the title Pyodide: drop support for 3.12, add support for 3.14 Pin Hypothesis to pure-Python version; drop Pyodide 3.12; add Pyodide 3.14 Aug 2, 2026
@tfpf
tfpf merged commit 9cbc86e into main Aug 2, 2026
8 checks passed
@tfpf
tfpf deleted the cap-hypothesis branch August 2, 2026 17:36
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