-
Notifications
You must be signed in to change notification settings - Fork 101
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
How about checking Python version rather than the executable path? #182
Comments
Actually, I think I was wrong — this code will precompile differently if libpython changes (or if libpython is statically linked). |
Actually, what I meant to write was to replace the check to see if the path is different ( I also just noticed that checking just major version is not enough since this code also would compile differently in Python < 3.2 and Python >= 3.2. Am I correct?: (Though I think it's OK to drop Python < 3.2. Aren't they somewhat more exotic than 2.7 nowadays?) So, does it make sense to replace |
The point is, if exe_differs then the path of libpython may differ and hence the pysym macro will change, even if the version number is identical, no? Also, if the exe is different then the PYTHONHOME may be different, and that is hardcoded into deps.jl. |
Ah, I see. Thanks a lot for the explanation. So then my plan won't work... |
Currently, pyjulia tries to use separate cache if (1) the path of Python interpreters are different or (2) if the current interpreter is statically linked:
pyjulia/julia/core.py
Line 335 in 9dfc132
But according to @stevengj, all that matter is the major part of the Python version number #172 (comment). Then isn't it better to just compare the major version number (which is stored in
PyCall/deps/deps.jl
)? This would alleviate the issue #173 (difficulty of private cache support in Julia >= 0.7) since this makes Python 3 distributed by some Linux distros (but sadly not Ubuntu) usable with the same PyCall cache. For example, this would make pyjulia usable with Julia >= 0.7 in python Docker image.If this is the right way to go, I can do the fix (which would be very straightforward, I think).
The text was updated successfully, but these errors were encountered: