Skip to content

Add Python 3.14 builds; bump test dependencies to match#74

Merged
MarshalX merged 1 commit into
MarshalX:mainfrom
moreati:py3.14
Oct 22, 2025
Merged

Add Python 3.14 builds; bump test dependencies to match#74
MarshalX merged 1 commit into
MarshalX:mainfrom
moreati:py3.14

Conversation

@moreati

@moreati moreati commented Aug 23, 2025

Copy link
Copy Markdown
Contributor

This is semi-optimistic concurrency, given 3.14 is still in RC phase. The test suite ran succcessfully locally (see comment in PR). I synced uv.lock under Python 3.8 and 3.140rc2, the changes were idempotent.

I went for

  • oldest viable looking Maturin (best availability to end-users)
  • newest available pytest (benefit from latest fixes in CI jobs)

Maturin 1.8.7 contains a fix for Python 3.14t on Windows. Maturin 1.9.3 is newest as a I write this.

PyTest 8.4.0 was the first release with official Python 3.14 support. PyTest 8.4.1 is newest as I write this.

See

This is semi-optimistic concurrency, given 3.14 is still in RC phase. The test
suite ran succcessfully locally (see comment in PR). I synced uv.lock under
Python 3.8 and 3.140rc2, the changes were idempotent.

I went for
- oldest viable looking Maturin (best availability to end-users)
- newest available pytest (benefit from latest fixes in CI jobs)

Maturin 1.8.7 contains a fix for Python 3.14t on Windows.
Maturin 1.9.3 is newest as a I write this.

PyTest 8.4.0 was the first release with official Python 3.14 support.
PyTest 8.4.1 is newest as I write this.

See
- https://www.maturin.rs/changelog.html#187
- https://docs.pytest.org/en/stable/changelog.html#pytest-8-4-1-2025-06-17
@moreati

moreati commented Aug 23, 2025

Copy link
Copy Markdown
Contributor Author
➜  python-libipld git:(py3.14) ✗ uv run pytest
============================================================================================ test session starts =============================================================================================
platform darwin -- Python 3.14.0rc2, pytest-8.4.1, pluggy-1.6.0
benchmark: 5.1.0 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
rootdir: /Users/alex/src/python-libipld
configfile: pyproject.toml
plugins: xdist-3.8.0, benchmark-5.1.0
collected 259 items                                                                                                                                                                                          

pytests/test_cid.py ....                                                                                                                                                                               [  1%]
pytests/test_dag_cbor.py ............................................................................................................................................................................. [ 68%]
.........................................                                                                                                                                                              [ 84%]
pytests/test_decode_car.py .........                                                                                                                                                                   [ 87%]
pytests/test_decode_dag_cbor_multi.py ..........................                                                                                                                                       [ 97%]
pytests/test_multibase.py ......                                                                                                                                                                       [100%]

============================================================================================ 259 passed in 0.69s =============================================================================================

@MarshalX MarshalX left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

looking good! builds locally and passes tests on my side as well. idk will the CI fail or not, but gonna handle it in the next PRs. gonna merge it. thank you!

@MarshalX MarshalX merged commit c62b5ea into MarshalX:main Oct 22, 2025
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