Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TST: enable CPython free-threading support #468

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

andfoy
Copy link

@andfoy andfoy commented Feb 18, 2025

This PR enables free-threading builds of bottleneck, available from Python 3.13 onwards, this new distribution allows Python packages to leverage true parallel support, as the GIL is now optional.

In particular, this PR performs the following checks:

  • Test the package using pytest-run-parallel, which allows pytest suites to be run concurrently (per test). This analysis didn't throw any major concurrency-related issues, the only tests that were marked as thread-unsafe were related to memory usage checking and concurrent file overwriting.
  • Add a CI to run tests in parallel, as well to build and release free-threaded wheels
  • Check package compliance using Thread Sanitizer (TSAN)
  • Marking each C module as free-threaded compatible

Sorry, something went wrong.

@andfoy andfoy changed the title TST: test bottleneck against pytest-run-parallel TST: enable CPython free-threading support Mar 19, 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.

None yet

1 participant