-
Notifications
You must be signed in to change notification settings - Fork 22
Support the free-threaded build #54
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
Conversation
* tweak comments * Simplify critical sections * avoid resource leak
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This module would greatly benefit from a RWLock.
Might be worth adding an issue for follow-up.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rather only do that if this shows up as a performance bottleneck.
|
I went ahead and added a couple sentences to the readme along with the comments @crusaderky suggested. |
|
OK, let's merge this. Rather than doing a release ASAP with cp314t wheels, we're going to first set up nightly wheels (scientific-python/upload-nightly-action#146) and then set up nightly testing for packages like spaCy further up the stack. Once the full stack is working, we'll do coordinated releases of all the packages including cp314t wheels. |
Adds support for the free-threaded build.
I made
BloomFilterandPreshedMapthread-safe under the free-threaded build using critical sections. I also added tests for multithreaded sharing ofBloomFilterandPreshedMap.The other types are not used by spaCy so I don't think it's worth updating them. Ideally I'd document this somewhere, but this project has very minimal docs, so it's not clear where I'd put that.
There's also a few changes included that aren't strictly related to free-threaded support:
bloom.pxdarray.arrayin theBloomFilterserialization. This is substantially faster and makes the multithreaded test I added substantially faster.