-
Notifications
You must be signed in to change notification settings - Fork 38
Allow using "filters.python" in a python process on OS X #76
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
Looks like the test failures aren't caused by my change, as #77 also fails |
oops, I forgot to merge #78 that cures the test issues. |
It looks like tests are ✅ . Can you provide a test that actually exercises your fix? |
Added test, verified that before my change the test fails with:
|
Is |
I don't really know anything about the build process for the python extension at this point, but all this seems to do is add |
|
No, it's safe to use for any version of python. |
(Writing this mostly for the history...) So, to be clear, we're still linking against libpython.dylib in order to resolve build-time symbols, but when using the extension, we're resolving those symbols against the python executable because 1) they're exported and 2) they're already loaded so they're found in the already loaded code, rather than the shared lib, despite the fact that there's a DT_NEEDED record in libpdal_plugin_filter_python.dylib for libpython.dylib. I wrote one of the Python devs but didn't hear back, but still have not heard what's going on that causes the actual failure. I can't think of any general reason why having two copies of the interpreter that come from different libraries should be a problem. I'm disappointed that they haven't described this in detail or tried to fix it and we're left with this brittle situation. |
2.3.6 pushed with this fix. https://pypi.org/project/PDAL/ |
This fixes #75