Skip to content

Conversation

@acul71
Copy link
Contributor

@acul71 acul71 commented Dec 20, 2025

This PR adds Python 3.14 support to py-libp2p.

Changes

  • Added Python 3.14 to classifiers in pyproject.toml
  • Updated tox.ini to include Python 3.14 in test environments (core, lint, wheel, interop)
  • Updated GitHub Actions workflow to test against Python 3.14 on both Linux and Windows
  • Created newsfragment for issue Add Python 3.14 support #1100

Testing

  • All tests pass with make pr
  • Documentation builds successfully with make docs
  • Newsfragment validated and included in release notes preview

Known Issue: coincurve Dependency

Current Status: Python 3.14 CI tests are currently failing due to a build issue with coincurve==21.0.0, not with Python 3.14 itself.

Root Cause:
The error RuntimeError: Expected exactly one LICENSE file in cffi distribution, got 0 occurs during coincurve's build process when it checks for LICENSE files in the cffi distribution. This is a known compatibility issue between coincurve==21.0.0 and cffi 2.0.0 (required for Python 3.14).

Fix Status:
The fix is already merged in coincurve's master branch:

However, the latest coincurve release is v21.0.0 (March 8, 2025), which predates these fixes. Once coincurve releases a new version (likely v21.0.1 or v22.0.0) with these fixes, we can update the dependency and Python 3.14 CI tests should pass.

References:

Status

✅ Python 3.14 support added to codebase
✅ All configuration files updated
⏳ Waiting for coincurve release with Python 3.14 fix

Note: The PR is ready to merge from a code perspective, but CI will fail for Python 3.14 until the coincurve dependency is updated.

Closes #1100

@acul71
Copy link
Contributor Author

acul71 commented Dec 20, 2025

Hi @pacrob @seetadev it seems that we have to wait for coincurve to release a new version...

@seetadev
Copy link
Contributor

@acul71 : Thank you so much for sharing the feedback.Appreciate it.

Ccing @ofek from Coincurve team.

@ofek: Hope you are doing well.

We are planning to add python 3.14 support.
Wish if you could visit the thread above.

Looking forward to hearing your thoughts and feedback.

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.

Add Python 3.14 support

3 participants