761dafd0d1
Supersedes https://github.com/astral-sh/uv/pull/8517 with an alternative approach of making all the variants available instead of replacing the x86_64 (v1) variant with x86_64_v2. Doesn't add automatic inference of the supported instructions, but that should be doable per @charliermarsh's comment there. Going to do it as a follow-up since this has been pretty time consuming. e.g., ``` ❯ cargo run -q -- python install cpython-3.12.8-linux-x86_64_v3-gnu Installed Python 3.12.8 in 2.72s + cpython-3.12.8-linux-x86_64_v3-gnu ``` Co-authored-by: j178 <10510431+j178@users.noreply.github.com>
40 lines
1.3 KiB
Plaintext
40 lines
1.3 KiB
Plaintext
// Generated with `{{generated_with}}`
|
|
// From template at `{{generated_from}}`
|
|
|
|
use uv_pep440::{Prerelease, PrereleaseKind};
|
|
use crate::PythonVariant;
|
|
use crate::platform::ArchVariant;
|
|
|
|
pub(crate) const PYTHON_DOWNLOADS: &[ManagedPythonDownload] = &[
|
|
{{#versions}}
|
|
ManagedPythonDownload {
|
|
key: PythonInstallationKey {
|
|
major: {{value.major}},
|
|
minor: {{value.minor}},
|
|
patch: {{value.patch}},
|
|
prerelease: {{value.prerelease}},
|
|
implementation: LenientImplementationName::Known(ImplementationName::{{value.name}}),
|
|
arch: Arch{
|
|
family: target_lexicon::Architecture::{{value.arch_family}},
|
|
variant: {{value.arch_variant}},
|
|
},
|
|
os: Os(target_lexicon::OperatingSystem::{{value.os}}),
|
|
{{#value.libc}}
|
|
libc: Libc::Some(target_lexicon::Environment::{{.}}),
|
|
{{/value.libc}}
|
|
{{^value.libc}}
|
|
libc: Libc::None,
|
|
{{/value.libc}}
|
|
variant: {{value.variant}}
|
|
},
|
|
url: "{{value.url}}",
|
|
{{#value.sha256}}
|
|
sha256: Some("{{.}}")
|
|
{{/value.sha256}}
|
|
{{^value.sha256}}
|
|
sha256: None
|
|
{{/value.sha256}}
|
|
},
|
|
{{/versions}}
|
|
];
|