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

📦 Start building wheels with free-threading #1111

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

webknjaz
Copy link
Member

@webknjaz webknjaz commented Sep 5, 2024

What do these changes do?

Fancy 3.13t stuff.

Are there changes in behavior for the user?

Being able to install from wheels under free-threaded Python builds.

Related issue number

N/A

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes

@webknjaz
Copy link
Member Author

webknjaz commented Sep 5, 2024

Looks like this needs an unreleased Cython version from Git.

@bdraco
Copy link
Member

bdraco commented Sep 7, 2024

I think we need to wait for Cython 3.1+ to do this

https://docs.cython.org/en/latest/src/userguide/freethreading.html

@bdraco
Copy link
Member

bdraco commented Oct 8, 2024

Looks like 3.1 is getting closer https://github.com/cython/cython/milestone/65

@isuruf
Copy link

isuruf commented Oct 16, 2024

Projects like numpy use a development version of cython to build wheels because the cython release might be far away.

@webknjaz
Copy link
Member Author

This is fine, we're not in a hurry. It's always been like this.

@asvetlov
Copy link
Member

The target cannot be solved by upgrading Cython version only.

IIRC the quoter uses pre-allocated memory buffer for small strings: https://github.com/aio-libs/yarl/blob/master/yarl/_quoting_c.pyx#L28

Now it's access is protected by GIL, gil-less solution requires some sort of explicit synchronization.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants