-
Notifications
You must be signed in to change notification settings - Fork 792
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
PyObjectAlloc no longer uses specialization and freelist is removed #264
Conversation
cc #210 |
I have mixed feelings about this. It's true that it's an obstacle for compiling on stable and not widely used. OTOH it's a feature coming directly from the python c api and is relevant to performance. Would it be possible to feature gate with an off-by-default |
The `impl<T> PyObjectAlloc` for PyObjectWithFreeList is an obstacle to removing specialization. It is unused in all projects linked from the README and within pyo3 itself, so let's just remove it.
Having the feature only benefits custom classes that choose to define it, and I don't see any in pyo3 or client projects. CPython classes are unaffected. If there is zero usage I think that suggest removing it. But I can look into a feature if you still prefer keeping it. |
I'm against this change. |
@konstin |
What would you think about this branch? Afaik that should work for all cases and we can even allow overriding with |
@konstin |
The
impl<T> PyObjectAlloc
for PyObjectWithFreeList is an obstacle toremoving specialization. It is unused in all projects linked from
the README and within pyo3 itself, so let's just remove it.