-
Notifications
You must be signed in to change notification settings - Fork 25
Always find newest Python 3 executable on machine #436
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 small caveat here: long-lived (i.e., on premise) machines may get new Python 3 features during OS or artefact updates (see #379, especially mid-term thoughts about keeping artefacts up to date. that could mean an OS update which moves from e.g., Python 3.8 to 3.9 loses information about installed packages. fortunately, this is extremely unlikely given the care vendors put into their package upgrade procedures |
I'd like to emphasize and update the most important benefits of this PR:
The points about EOLs and security are actually more related to #465 though the Python 3.11 installation on /fyi @garath |
blocked by work on #1371 — that must be merged first |
unblocked now that #1371 fix is in |
Resolved w/ !35549 |
our current code uses a few different approaches to find the "correct" Python 3 executable on a machine. this is problematic for a few reasons e.g.,
pip
andcryptography
releases (probably more)pip
and other installed packages including our wheels may not be usable. that is, package installations are specific to the chosen Python versionfor example, some of our Linux code always looks in /usr/bin for the executable, but our custom OSX installation places the executable in /usr/local/bin. we also special case
python3.6
in a few places, but not everywherenote this issue is not about using e.g.
python3.9-dev
where that's available. we might want to investigate the exact versionpython3-dev
(or similar) corresponds to these days. but that's separate from where we find Python 3.I have most of the work done in an existing dotnet-helix-machines PR. will be separating that out for consideration on its own soon.
Release Note Category
Release Note Description
Updated our Python 3 discovery scripts and code to always find the newest executable on a machine. This improves consistency and security of our features, as well as enabling more rapid Python package version bumps going forward.
The text was updated successfully, but these errors were encountered: