8998568ef4
Pulled out of https://github.com/astral-sh/uv/pull/18517 I don't have aarch64 hardware available locally, but Claude posited: > When an armv7 binary runs on an aarch64 kernel (e.g., armv7l containers on aarch64 hosts, or 32-bit Raspberry Pi OS on 64-bit hardware), /proc/cpuinfo reports aarch64-style feature flags instead of armv7 flags. The existing check for "vfp" fails because aarch64 uses "fp" instead. > > Add detection of the aarch64 "fp" feature flag (mandatory on all aarch64 CPUs) as a discrete token, indicating hardware floating-point support. This ensures uv selects the gnueabihf (hard-float) Python variant instead of the gnueabi (soft-float) variant. I reproduced this in https://github.com/astral-sh/uv/pull/18532 Under QEMU on aarch64 macOS, both the `vfp` and `fp` feature flags are set. Closes #18509
92 lines
2.1 KiB
TOML
92 lines
2.1 KiB
TOML
doc-valid-idents = [
|
|
"PyPI",
|
|
"PubGrub",
|
|
"PyPy",
|
|
"CPython",
|
|
"GraalPy",
|
|
"ReFS",
|
|
"PyTorch",
|
|
"ROCm",
|
|
"XPU",
|
|
"PowerShell",
|
|
"CycloneDX",
|
|
"SemVer",
|
|
"AArch64",
|
|
"UV_DEV",
|
|
"UV_FROZEN",
|
|
"UV_ISOLATED",
|
|
"UV_LOCKED",
|
|
"UV_MANAGED_PYTHON",
|
|
"UV_NATIVE_TLS",
|
|
"UV_NO_DEV",
|
|
"UV_NO_EDITABLE",
|
|
"UV_NO_ENV_FILE",
|
|
"UV_NO_INSTALLER_METADATA",
|
|
"UV_NO_MANAGED_PYTHON",
|
|
"UV_NO_PROGRESS",
|
|
"UV_NO_SYNC",
|
|
"UV_OFFLINE",
|
|
"UV_PREVIEW",
|
|
"UV_SHOW_RESOLUTION",
|
|
"UV_VENV_CLEAR",
|
|
"UV_VENV_SEED",
|
|
"..", # Include the defaults
|
|
]
|
|
|
|
disallowed-types = [
|
|
"std::fs::DirEntry",
|
|
"std::fs::File",
|
|
"std::fs::OpenOptions",
|
|
"std::fs::ReadDir",
|
|
"tokio::fs::DirBuilder",
|
|
"tokio::fs::DirEntry",
|
|
"tokio::fs::File",
|
|
"tokio::fs::OpenOptions",
|
|
"tokio::fs::ReadDir",
|
|
]
|
|
|
|
disallowed-methods = [
|
|
"std::fs::canonicalize",
|
|
"std::fs::copy",
|
|
"std::fs::create_dir",
|
|
"std::fs::create_dir_all",
|
|
"std::fs::hard_link",
|
|
"std::fs::metadata",
|
|
"std::fs::read",
|
|
"std::fs::read_dir",
|
|
"std::fs::read_link",
|
|
"std::fs::read_to_string",
|
|
"std::fs::remove_dir",
|
|
"std::fs::remove_dir_all",
|
|
"std::fs::remove_file",
|
|
"std::fs::rename",
|
|
"std::fs::set_permissions",
|
|
"std::fs::soft_link",
|
|
"std::fs::symlink_metadata",
|
|
"std::fs::write",
|
|
"tokio::fs::canonicalize",
|
|
"tokio::fs::copy",
|
|
"tokio::fs::create_dir",
|
|
"tokio::fs::create_dir_all",
|
|
"tokio::fs::hard_link",
|
|
"tokio::fs::metadata",
|
|
"tokio::fs::read",
|
|
"tokio::fs::read_dir",
|
|
"tokio::fs::read_link",
|
|
"tokio::fs::read_to_string",
|
|
"tokio::fs::remove_dir",
|
|
"tokio::fs::remove_dir_all",
|
|
"tokio::fs::remove_file",
|
|
"tokio::fs::rename",
|
|
"tokio::fs::set_permissions",
|
|
"tokio::fs::symlink_metadata",
|
|
"tokio::fs::try_exists",
|
|
"tokio::fs::write",
|
|
{ path = "std::os::unix::fs::symlink", allow-invalid = true },
|
|
{ path = "std::os::windows::fs::symlink_dir", allow-invalid = true },
|
|
{ path = "std::os::windows::fs::symlink_file", allow-invalid = true },
|
|
{ path = "tokio::fs::symlink", allow-invalid = true },
|
|
{ path = "tokio::fs::symlink_dir", allow-invalid = true },
|
|
{ path = "tokio::fs::symlink_file", allow-invalid = true },
|
|
]
|