mirror of
https://github.com/astral-sh/uv.git
synced 2025-07-07 13:25:00 +00:00
Merge fc962d72f0
into f609e1ddaf
This commit is contained in:
commit
c83ed59f79
3 changed files with 960 additions and 2 deletions
|
@ -95,7 +95,7 @@ pub enum Libc {
|
|||
}
|
||||
|
||||
impl Libc {
|
||||
pub(crate) fn from_env() -> Result<Self, LibcDetectionError> {
|
||||
pub fn from_env() -> Result<Self, LibcDetectionError> {
|
||||
match std::env::consts::OS {
|
||||
"linux" => Ok(Self::Some(match detect_linux_libc()? {
|
||||
LibcVersion::Manylinux { .. } => match std::env::consts::ARCH {
|
||||
|
|
642
crates/uv/tests/it/python-downloads-metadata.json
Normal file
642
crates/uv/tests/it/python-downloads-metadata.json
Normal file
|
@ -0,0 +1,642 @@
|
|||
{
|
||||
"cpython-3.14.0a6-darwin-aarch64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 14,
|
||||
"patch": 0,
|
||||
"prerelease": "a6",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.14.0a6%2B20250409-aarch64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "ee5a7b630874554bae30b5f11bee55ef7ffd093f691cb7161cae34874c00ecf0",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.14.0a6-darwin-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 14,
|
||||
"patch": 0,
|
||||
"prerelease": "a6",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.14.0a6%2B20250409-x86_64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "a187d2c50f43095c8f51b34babae1c291ee1a42d6777ce8d8bcd58517652f987",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.14.0a6-linux-aarch64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 14,
|
||||
"patch": 0,
|
||||
"prerelease": "a6",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.14.0a6%2B20250409-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "498849c92f28b6f1b1c5dfe83587660eff5ac574dc7974bada9ce68634ded6f1",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.14.0a6-linux-x86_64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 14,
|
||||
"patch": 0,
|
||||
"prerelease": "a6",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.14.0a6%2B20250409-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "a777bbf17e251cec96d14c3ab70f67cce752930a5542b8e04ce22e892470c594",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.14.0a6-windows-i686-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "i686",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 14,
|
||||
"patch": 0,
|
||||
"prerelease": "a6",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.14.0a6%2B20250409-i686-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "26c7fbad360c7c0e7296f453620691a8a36c710063741b9525a9e660ef25e79f",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.14.0a6-windows-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 14,
|
||||
"patch": 0,
|
||||
"prerelease": "a6",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.14.0a6%2B20250409-x86_64-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "1efb04f1441cab2f848cada6aad59ec396d5721dc5c426f2f4823df0345ca96a",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3-darwin-aarch64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-aarch64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "1326772bfdb61a136c6ede7955872636ff601bc0b33fca80bb2c81b3ca370931",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3-darwin-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-x86_64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "466f2880f8ce065d51fe24be35b99011c54b4aff5461b1ed15cd2cbabd84e15b",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3-linux-aarch64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "640a37de9d0cf00a9b7173977f0752455a3a4dad8c938486c511370360f551bd",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3-linux-x86_64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "01d08b9bc8a96698b9d64c2fc26da4ecc4fa9e708ce0a34fb88f11ab7e552cbd",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3-windows-i686-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "i686",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-i686-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "153ccf24ca68f575d97dca38ebe0c81d1f525ca678f6c4f6e757f25d3c65b51a",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3-windows-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-x86_64-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "efe00d799923e7cdd54ad6014f160802964b3f9b9c2acaa2390ea26eac7b188e",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.3+freethreaded-darwin-aarch64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-aarch64-apple-darwin-freethreaded%2Bpgo%2Blto-full.tar.zst",
|
||||
"sha256": "5f88cb204e745229f95a6b024dff500a4a4ec825786d192add6c43879c322fbb",
|
||||
"variant": "freethreaded"
|
||||
},
|
||||
"cpython-3.13.3+freethreaded-darwin-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-x86_64-apple-darwin-freethreaded%2Bpgo%2Blto-full.tar.zst",
|
||||
"sha256": "5c0a566b641997e53713f4c76cb53835fda6220af41dfe4b99c2b3e0c16f3892",
|
||||
"variant": "freethreaded"
|
||||
},
|
||||
"cpython-3.13.3+freethreaded-linux-aarch64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-aarch64-unknown-linux-gnu-freethreaded%2Blto-full.tar.zst",
|
||||
"sha256": "0878d9e9908da2124c12370e620d22f68fd4b50f427455afca132cecb20245c6",
|
||||
"variant": "freethreaded"
|
||||
},
|
||||
"cpython-3.13.3+freethreaded-linux-x86_64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-x86_64-unknown-linux-gnu-freethreaded%2Bpgo%2Blto-full.tar.zst",
|
||||
"sha256": "d447be565ae006fd74eb86289086d3d0170bcf7527dccd64343f6aa88813f005",
|
||||
"variant": "freethreaded"
|
||||
},
|
||||
"cpython-3.13.3+freethreaded-windows-i686-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "i686",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-i686-pc-windows-msvc-freethreaded%2Bpgo-full.tar.zst",
|
||||
"sha256": "148acee346ff79f0ed2f6046e4d35797d9bc35cbe4641fa7273d642b17d087c1",
|
||||
"variant": "freethreaded"
|
||||
},
|
||||
"cpython-3.13.3+freethreaded-windows-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 3,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-x86_64-pc-windows-msvc-freethreaded%2Bpgo-full.tar.zst",
|
||||
"sha256": "e81c6d067abf56ebf924cd03d8fe47f3cb1f0f407d17423d9bf8d10451330087",
|
||||
"variant": "freethreaded"
|
||||
},
|
||||
"cpython-3.13.2-darwin-aarch64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 2,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250317/cpython-3.13.2%2B20250317-aarch64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "9002e620e4113e7439b2de0db5ff9b2dc914cde4fba2f10134cce3a5cdebac81",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.2-darwin-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 2,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250317/cpython-3.13.2%2B20250317-x86_64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "e5a904ecfb4061389773dd655d3b5665447c80cbf2948fcb1c07e92716eed955",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.2-linux-aarch64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 2,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250317/cpython-3.13.2%2B20250317-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "106bf4f243a2d02a1e3995ad0551bf15bdfb33abfc18f85138e6b8dd0d1923fc",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.2-linux-x86_64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 2,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250317/cpython-3.13.2%2B20250317-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "ee909a9d0fb16375ebd3b3ca0322fd9cac0904b304e28ad68527036858e301e9",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.2-windows-i686-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "i686",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 2,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250317/cpython-3.13.2%2B20250317-i686-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "d6213591700d5ee5aeb37508c4f67cc3d751679f78962aabe6f6f5ba2170c71d",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.13.2-windows-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 13,
|
||||
"patch": 2,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250317/cpython-3.13.2%2B20250317-x86_64-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "1d948860b5ddeff67a6fece81cc3354f9144161968d2128186d4e1a3562a4e76",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.12.10-darwin-aarch64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 12,
|
||||
"patch": 10,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.12.10%2B20250409-aarch64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "0be1fe0b35a4d3c382141764ef16ed3b8cc2b4620b657f678daa7b7f8df39699",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.12.10-darwin-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 12,
|
||||
"patch": 10,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.12.10%2B20250409-x86_64-apple-darwin-install_only_stripped.tar.gz",
|
||||
"sha256": "ad3bef94b6054adcf8e0a47886e21b00dfc6a37f22eea229cf0f8725bd0e1023",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.12.10-linux-aarch64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 12,
|
||||
"patch": 10,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.12.10%2B20250409-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "e1f450b77b81a250411855bb5e5cbd0f0acbc9ad46b5ea97f224452831bb3276",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.12.10-linux-x86_64-gnu": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 12,
|
||||
"patch": 10,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.12.10%2B20250409-x86_64-unknown-linux-gnu-install_only_stripped.tar.gz",
|
||||
"sha256": "8c59b9ac6bff2dc3934181d7bc82594f9f59a613afed8d72c9e89d7194e790ee",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.12.10-windows-i686-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "i686",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 12,
|
||||
"patch": 10,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.12.10%2B20250409-i686-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "77f7a21fe01c1e437e8ac7ba01299ff0647071e86449f6fdf824e58d0d019e42",
|
||||
"variant": null
|
||||
},
|
||||
"cpython-3.12.10-windows-x86_64-none": {
|
||||
"name": "cpython",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 12,
|
||||
"patch": 10,
|
||||
"prerelease": "",
|
||||
"url": "https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.12.10%2B20250409-x86_64-pc-windows-msvc-install_only_stripped.tar.gz",
|
||||
"sha256": "08670ab68f041481b8127b2ea27e01ddf56131e61fcf845f489024fddcd3deec",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.11.11-darwin-aarch64-none": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 11,
|
||||
"patch": 11,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.11-v7.3.19-macos_arm64.tar.bz2",
|
||||
"sha256": "7704e0d5302e53920d32dcfe9afeeb10436d4c94233e8830cf603aa955a861c1",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.11.11-darwin-x86_64-none": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 11,
|
||||
"patch": 11,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.11-v7.3.19-macos_x86_64.tar.bz2",
|
||||
"sha256": "a2439f9d30dfdae96a5e9101c7dc54a8a68b56c9d7314ea399b0a25d3e87ebb2",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.11.11-linux-aarch64-gnu": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 11,
|
||||
"patch": 11,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.11-v7.3.19-aarch64.tar.bz2",
|
||||
"sha256": "13207dbf81ce24e96da760b1b863627b77bb20b1fb4c95191e02a0b72383df74",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.11.11-linux-x86_64-gnu": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 11,
|
||||
"patch": 11,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.11-v7.3.19-linux64.tar.bz2",
|
||||
"sha256": "9177d9e0bb91b05f921c642cb0ff71a0f3653b5d29a42d40d6a078c15b75720f",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.11.11-windows-x86_64-none": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 11,
|
||||
"patch": 11,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.11-v7.3.19-win64.zip",
|
||||
"sha256": "b61c7c1dbf879eda6f779c374bfbbeecd3f618ada08404705a1a19d39df48dbd",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.10.16-darwin-aarch64-none": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 10,
|
||||
"patch": 16,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.10-v7.3.19-macos_arm64.tar.bz2",
|
||||
"sha256": "3db8a03fc496164801646844d7f3b12baa0adb3ad9a0b7cb124521bc2e168a36",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.10.16-darwin-x86_64-none": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "darwin",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 10,
|
||||
"patch": 16,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.10-v7.3.19-macos_x86_64.tar.bz2",
|
||||
"sha256": "2c5e5c2a33ac882551d7f28b98d19d486b8995aa50824a73b4edcc6aeec35c63",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.10.16-linux-aarch64-gnu": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "aarch64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 10,
|
||||
"patch": 16,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.10-v7.3.19-aarch64.tar.bz2",
|
||||
"sha256": "af27a589178f11198e2244ab65ca510630ba97c131d7ccc4021eb5bc58de7f57",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.10.16-linux-x86_64-gnu": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "linux",
|
||||
"libc": "gnu",
|
||||
"major": 3,
|
||||
"minor": 10,
|
||||
"patch": 16,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.10-v7.3.19-linux64.tar.bz2",
|
||||
"sha256": "c73ac2cc2380ac9227fd297482bf2a3e17a80618ba46db7544d535515321ec1e",
|
||||
"variant": null
|
||||
},
|
||||
"pypy-3.10.16-windows-x86_64-none": {
|
||||
"name": "pypy",
|
||||
"arch": {
|
||||
"family": "x86_64",
|
||||
"variant": null
|
||||
},
|
||||
"os": "windows",
|
||||
"libc": "none",
|
||||
"major": 3,
|
||||
"minor": 10,
|
||||
"patch": 16,
|
||||
"prerelease": "",
|
||||
"url": "https://downloads.python.org/pypy/pypy3.10-v7.3.19-win64.zip",
|
||||
"sha256": "c0d07bba6c8fb4e5804f4a8b3f8ef07cc3d89f6ad1db42a45ffb9be60bbb7cc2",
|
||||
"variant": null
|
||||
}
|
||||
}
|
|
@ -1,4 +1,8 @@
|
|||
use uv_python::platform::{Arch, Os};
|
||||
#![allow(dead_code, unused_imports)]
|
||||
|
||||
use anyhow::Result;
|
||||
use assert_fs::prelude::{FileWriteBin, PathChild};
|
||||
use uv_python::platform::{Arch, Libc, Os};
|
||||
use uv_static::EnvVars;
|
||||
|
||||
use crate::common::{TestContext, uv_snapshot};
|
||||
|
@ -29,6 +33,17 @@ fn python_list() {
|
|||
----- stderr -----
|
||||
");
|
||||
|
||||
// Show only the installed interpreters
|
||||
uv_snapshot!(context.filters(), context.python_list().arg("--only-installed"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.12.[X]-[PLATFORM] [PYTHON-3.12]
|
||||
cpython-3.11.[X]-[PLATFORM] [PYTHON-3.11]
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// Request Python 3.12
|
||||
uv_snapshot!(context.filters(), context.python_list().arg("3.12"), @r"
|
||||
success: true
|
||||
|
@ -126,6 +141,307 @@ fn python_list() {
|
|||
");
|
||||
}
|
||||
|
||||
/// A subset versions of the `uv-python/download-metadata.json` file for `uv python list` tests.
|
||||
const PYTHON_DOWNLOADS_JSON: &[u8] = include_bytes!("python-downloads-metadata.json");
|
||||
|
||||
#[test]
|
||||
#[cfg(unix)] // Windows does not have aarch64 yet, its output is different
|
||||
fn python_list_downloads() -> Result<()> {
|
||||
let context: TestContext = TestContext::new("3.11").with_collapsed_whitespace();
|
||||
|
||||
let downloads_json = context.temp_dir.child("python-downloads.json");
|
||||
downloads_json.write_binary(PYTHON_DOWNLOADS_JSON)?;
|
||||
|
||||
let python_list = || {
|
||||
let mut cmd = context.python_list();
|
||||
cmd.arg("--only-downloads")
|
||||
.env(EnvVars::UV_PYTHON_DOWNLOADS, "true")
|
||||
.env(EnvVars::UV_PYTHON_DOWNLOADS_JSON_URL, &*downloads_json);
|
||||
cmd
|
||||
};
|
||||
|
||||
// Regex to match the current os, arch and libc
|
||||
let platform = format!(
|
||||
"((?:cpython|pypy)-(?:[^-]+))-{}-{}-{}",
|
||||
Os::from_env(),
|
||||
Arch::from_env(),
|
||||
Libc::from_env()?
|
||||
);
|
||||
let platform_filters = [(platform.as_ref(), "$1-[OS]-[ARCH]-[LIBC]")]
|
||||
.into_iter()
|
||||
.chain(context.filters())
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
// `--only-downloads` only shows available downloads for the current platform.
|
||||
uv_snapshot!(platform_filters, python_list(), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.14.0a6-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.13.3-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.13.3+freethreaded-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.12.10-[OS]-[ARCH]-[LIBC] <download available>
|
||||
pypy-3.11.[X]-[OS]-[ARCH]-[LIBC] <download available>
|
||||
pypy-3.10.16-[OS]-[ARCH]-[LIBC] <download available>
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// `--all-versions` shows all versions for current platform, including old patch versions.
|
||||
uv_snapshot!(platform_filters, python_list().arg("--all-versions"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.14.0a6-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.13.3-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.13.3+freethreaded-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.13.2-[OS]-[ARCH]-[LIBC] <download available>
|
||||
cpython-3.12.10-[OS]-[ARCH]-[LIBC] <download available>
|
||||
pypy-3.11.[X]-[OS]-[ARCH]-[LIBC] <download available>
|
||||
pypy-3.10.16-[OS]-[ARCH]-[LIBC] <download available>
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// TODO: enable `--all-arches` tests in https://github.com/astral-sh/uv/pull/12953
|
||||
// `--all-arches` show all architectures for the current platform, with non-latest patch versions hidden.
|
||||
// uv_snapshot!(platform_any_arch_filters, python_list().arg("--all-arches"), @r#"
|
||||
// success: true
|
||||
// exit_code: 0
|
||||
// ----- stdout -----
|
||||
// cpython-3.14.0a6-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.13.3-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.13.3+freethreaded-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.12.10-[OS]-aarch64-[LIBC] <download available>
|
||||
// pypy-3.11.[X]-[OS]-aarch64-[LIBC] <download available>
|
||||
// pypy-3.10.16-[OS]-aarch64-[LIBC] <download available>
|
||||
//
|
||||
// ----- stderr -----
|
||||
// "#);
|
||||
|
||||
// --all-versions && --all-arches
|
||||
// uv_snapshot!(platform_any_arch_filters, python_list().arg("--all-versions").arg("--all-arches"), @r#"
|
||||
// success: true
|
||||
// exit_code: 0
|
||||
// ----- stdout -----
|
||||
// cpython-3.14.0a6-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.13.3-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.13.3+freethreaded-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.13.2-[OS]-aarch64-[LIBC] <download available>
|
||||
// cpython-3.12.10-[OS]-aarch64-[LIBC] <download available>
|
||||
// pypy-3.11.[X]-[OS]-aarch64-[LIBC] <download available>
|
||||
// pypy-3.10.16-[OS]-aarch64-[LIBC] <download available>
|
||||
//
|
||||
// ----- stderr -----
|
||||
// "#);
|
||||
|
||||
// `--all-platforms` shows all platforms, its output is independent of the current platform.
|
||||
uv_snapshot!(context.filters(), python_list().arg("--all-platforms"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.14.0a6-windows-x86_64-none <download available>
|
||||
cpython-3.14.0a6-windows-x86-none <download available>
|
||||
cpython-3.14.0a6-macos-x86_64-none <download available>
|
||||
cpython-3.14.0a6-macos-aarch64-none <download available>
|
||||
cpython-3.14.0a6-linux-x86_64-gnu <download available>
|
||||
cpython-3.14.0a6-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3-windows-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86_64-none <download available>
|
||||
cpython-3.13.3-windows-x86-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86-none <download available>
|
||||
cpython-3.13.3-macos-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-x86_64-none <download available>
|
||||
cpython-3.13.3-macos-aarch64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-aarch64-none <download available>
|
||||
cpython-3.13.3-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-aarch64-gnu <download available>
|
||||
cpython-3.12.10-windows-x86_64-none <download available>
|
||||
cpython-3.12.10-windows-x86-none <download available>
|
||||
cpython-3.12.10-macos-x86_64-none <download available>
|
||||
cpython-3.12.10-macos-aarch64-none <download available>
|
||||
cpython-3.12.10-linux-x86_64-gnu <download available>
|
||||
cpython-3.12.10-linux-aarch64-gnu <download available>
|
||||
pypy-3.11.[X]-windows-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-aarch64-none <download available>
|
||||
pypy-3.11.[X]-linux-x86_64-gnu <download available>
|
||||
pypy-3.11.[X]-linux-aarch64-gnu <download available>
|
||||
pypy-3.10.16-windows-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-aarch64-none <download available>
|
||||
pypy-3.10.16-linux-x86_64-gnu <download available>
|
||||
pypy-3.10.16-linux-aarch64-gnu <download available>
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// --all-platforms && --all-versions
|
||||
uv_snapshot!(context.filters(), python_list().arg("--all-platforms").arg("--all-versions"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.14.0a6-windows-x86_64-none <download available>
|
||||
cpython-3.14.0a6-windows-x86-none <download available>
|
||||
cpython-3.14.0a6-macos-x86_64-none <download available>
|
||||
cpython-3.14.0a6-macos-aarch64-none <download available>
|
||||
cpython-3.14.0a6-linux-x86_64-gnu <download available>
|
||||
cpython-3.14.0a6-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3-windows-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86_64-none <download available>
|
||||
cpython-3.13.3-windows-x86-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86-none <download available>
|
||||
cpython-3.13.3-macos-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-x86_64-none <download available>
|
||||
cpython-3.13.3-macos-aarch64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-aarch64-none <download available>
|
||||
cpython-3.13.3-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.2-windows-x86_64-none <download available>
|
||||
cpython-3.13.2-windows-x86-none <download available>
|
||||
cpython-3.13.2-macos-x86_64-none <download available>
|
||||
cpython-3.13.2-macos-aarch64-none <download available>
|
||||
cpython-3.13.2-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.2-linux-aarch64-gnu <download available>
|
||||
cpython-3.12.10-windows-x86_64-none <download available>
|
||||
cpython-3.12.10-windows-x86-none <download available>
|
||||
cpython-3.12.10-macos-x86_64-none <download available>
|
||||
cpython-3.12.10-macos-aarch64-none <download available>
|
||||
cpython-3.12.10-linux-x86_64-gnu <download available>
|
||||
cpython-3.12.10-linux-aarch64-gnu <download available>
|
||||
pypy-3.11.[X]-windows-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-aarch64-none <download available>
|
||||
pypy-3.11.[X]-linux-x86_64-gnu <download available>
|
||||
pypy-3.11.[X]-linux-aarch64-gnu <download available>
|
||||
pypy-3.10.16-windows-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-aarch64-none <download available>
|
||||
pypy-3.10.16-linux-x86_64-gnu <download available>
|
||||
pypy-3.10.16-linux-aarch64-gnu <download available>
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// --all-platforms && --all-arches
|
||||
uv_snapshot!(context.filters(), python_list().arg("--all-platforms").arg("--all-arches"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.14.0a6-windows-x86_64-none <download available>
|
||||
cpython-3.14.0a6-windows-x86-none <download available>
|
||||
cpython-3.14.0a6-macos-x86_64-none <download available>
|
||||
cpython-3.14.0a6-macos-aarch64-none <download available>
|
||||
cpython-3.14.0a6-linux-x86_64-gnu <download available>
|
||||
cpython-3.14.0a6-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3-windows-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86_64-none <download available>
|
||||
cpython-3.13.3-windows-x86-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86-none <download available>
|
||||
cpython-3.13.3-macos-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-x86_64-none <download available>
|
||||
cpython-3.13.3-macos-aarch64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-aarch64-none <download available>
|
||||
cpython-3.13.3-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-aarch64-gnu <download available>
|
||||
cpython-3.12.10-windows-x86_64-none <download available>
|
||||
cpython-3.12.10-windows-x86-none <download available>
|
||||
cpython-3.12.10-macos-x86_64-none <download available>
|
||||
cpython-3.12.10-macos-aarch64-none <download available>
|
||||
cpython-3.12.10-linux-x86_64-gnu <download available>
|
||||
cpython-3.12.10-linux-aarch64-gnu <download available>
|
||||
pypy-3.11.[X]-windows-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-aarch64-none <download available>
|
||||
pypy-3.11.[X]-linux-x86_64-gnu <download available>
|
||||
pypy-3.11.[X]-linux-aarch64-gnu <download available>
|
||||
pypy-3.10.16-windows-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-aarch64-none <download available>
|
||||
pypy-3.10.16-linux-x86_64-gnu <download available>
|
||||
pypy-3.10.16-linux-aarch64-gnu <download available>
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// --all-platforms && --all-versions && --all-arches
|
||||
uv_snapshot!(context.filters(), python_list().arg("--all-platforms").arg("--all-versions").arg("--all-arches"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.14.0a6-windows-x86_64-none <download available>
|
||||
cpython-3.14.0a6-windows-x86-none <download available>
|
||||
cpython-3.14.0a6-macos-x86_64-none <download available>
|
||||
cpython-3.14.0a6-macos-aarch64-none <download available>
|
||||
cpython-3.14.0a6-linux-x86_64-gnu <download available>
|
||||
cpython-3.14.0a6-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3-windows-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86_64-none <download available>
|
||||
cpython-3.13.3-windows-x86-none <download available>
|
||||
cpython-3.13.3+freethreaded-windows-x86-none <download available>
|
||||
cpython-3.13.3-macos-x86_64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-x86_64-none <download available>
|
||||
cpython-3.13.3-macos-aarch64-none <download available>
|
||||
cpython-3.13.3+freethreaded-macos-aarch64-none <download available>
|
||||
cpython-3.13.3-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.3-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.3+freethreaded-linux-aarch64-gnu <download available>
|
||||
cpython-3.13.2-windows-x86_64-none <download available>
|
||||
cpython-3.13.2-windows-x86-none <download available>
|
||||
cpython-3.13.2-macos-x86_64-none <download available>
|
||||
cpython-3.13.2-macos-aarch64-none <download available>
|
||||
cpython-3.13.2-linux-x86_64-gnu <download available>
|
||||
cpython-3.13.2-linux-aarch64-gnu <download available>
|
||||
cpython-3.12.10-windows-x86_64-none <download available>
|
||||
cpython-3.12.10-windows-x86-none <download available>
|
||||
cpython-3.12.10-macos-x86_64-none <download available>
|
||||
cpython-3.12.10-macos-aarch64-none <download available>
|
||||
cpython-3.12.10-linux-x86_64-gnu <download available>
|
||||
cpython-3.12.10-linux-aarch64-gnu <download available>
|
||||
pypy-3.11.[X]-windows-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-x86_64-none <download available>
|
||||
pypy-3.11.[X]-macos-aarch64-none <download available>
|
||||
pypy-3.11.[X]-linux-x86_64-gnu <download available>
|
||||
pypy-3.11.[X]-linux-aarch64-gnu <download available>
|
||||
pypy-3.10.16-windows-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-x86_64-none <download available>
|
||||
pypy-3.10.16-macos-aarch64-none <download available>
|
||||
pypy-3.10.16-linux-x86_64-gnu <download available>
|
||||
pypy-3.10.16-linux-aarch64-gnu <download available>
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// `--show-urls` also shows the download URLs
|
||||
uv_snapshot!(context.filters(), python_list().arg("cpython-3.13.3-linux-aarch64-gnu").arg("--show-urls"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
cpython-3.13.3-linux-aarch64-gnu https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
// `--output-format=json` outputs in JSON format
|
||||
uv_snapshot!(context.filters(), python_list().arg("cpython-3.13.3-linux-aarch64-gnu").arg("--output-format=json"), @r#"
|
||||
success: true
|
||||
exit_code: 0
|
||||
----- stdout -----
|
||||
[{"key":"cpython-3.13.3-linux-aarch64-gnu","version":"3.13.3","version_parts":{"major":3,"minor":13,"patch":3},"path":null,"symlink":null,"url":"https://github.com/astral-sh/python-build-standalone/releases/download/20250409/cpython-3.13.3%2B20250409-aarch64-unknown-linux-gnu-install_only_stripped.tar.gz","os":"linux","variant":"default","implementation":"cpython","arch":"aarch64","libc":"gnu"}]
|
||||
|
||||
----- stderr -----
|
||||
"#);
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn python_list_pin() {
|
||||
let context: TestContext = TestContext::new_with_versions(&["3.11", "3.12"])
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue