-
-
Notifications
You must be signed in to change notification settings - Fork 32k
Make the interpreter paths initialization more consistent #98947
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
Comments
One quirk I have noticed seems to be that launching an embedded interpreter with (Specifically here I'm talking about Rust applications embedding Python via PyO3 - which basically just calls On Linux, I've never had any problems - launching an embedded interpreter with a virtualenv loaded will access the packages from that environment. On macOS and Windows, users have reported that the system Python appears to always be preferred, and while there's been some discussion about possible causes / solutions I wonder if you think it's relevant to this issue? |
Yep, I think that's definitely relevant to this issue. Just beware that I have no estimate of when this work might be completed, so I'd advise to still try to work things out downstream if these issues are affecting your users. |
Appreciate that, thanks. I think even if this work landed in 3.12, given we support all supported Python versions in PyO3 we probably will want to find some solution downstream before Python 3.11 hits EOL ;) |
There's a nice long list of quirks marked in getpath.py already. I don't know whether they can all be resolved, or if they should. Many differences are due to For building alternate Python entry points1 that recognise venv, you will really want to look at getpath.py for the logic (search Footnotes
|
As Steve pointed out in #98790 (comment), it would be really nice to make paths initialization more consistent across platforms.
I am creating this issue to start documenting all the quirks and inconsistencies.
<exec_prefix>
#98790The text was updated successfully, but these errors were encountered: