Skip to content

Commit

Permalink
Ignore freethreaded CPython builds (astral-sh#1437)
Browse files Browse the repository at this point in the history
Fixes astral-sh#1436

This seemed like the simplest fix to ignore freethreaded builds.

Couple other thoughts/things that could happen later:

* this won't help with folks who already downloaded a 3.13.0 CPython
(they'll need to `rye toolchain remove [email protected]` first, and then
`fetch` it again)
* `PlatformTriple#flavor` should probably be a `set[str]`; so
`freethreaded+pgo+lto-full` would become `{'freethreaded', 'pgo',
'lto'}` (tbd what to do with `full`)
  • Loading branch information
Alexis-D authored Nov 22, 2024
1 parent 7b8b101 commit 2d2c6ea
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 4 deletions.
5 changes: 5 additions & 0 deletions rye-devtools/src/rye_devtools/find_downloads.py
Original file line number Diff line number Diff line change
Expand Up @@ -194,6 +194,11 @@ def match_mapping(
# Map, old, special triplets to proper triples for parsing, or
# return the triple if it's not a special one
triple = cls.SPECIAL_TRIPLES.get(triple, triple)

# freethreaded builds are experimental, ignore them for now
if "freethreaded" in triple:
return

pieces = triple.split("-")
flavor = match_flavor(triple)
env, pieces = match_mapping(pieces, cls.ENV_MAPPING)
Expand Down
1 change: 1 addition & 0 deletions rye-devtools/tests/test_basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ def test_batched():
"x86_64-pc-windows-msvc-shared-pgo",
PlatformTriple("x86_64", "windows", None, "shared-pgo"),
),
("aarch64-apple-darwin-freethreaded+pgo-full", None),
],
)
def test_parse_triplets(input, expected):
Expand Down
8 changes: 4 additions & 4 deletions rye/src/sources/generated/python_downloads.inc
Original file line number Diff line number Diff line change
Expand Up @@ -101,11 +101,11 @@ pub const PYTHON_VERSIONS: &[(PythonVersion, &str, Option<&str>)] = &[
(PythonVersion { name: Cow::Borrowed("pypy"), arch: Cow::Borrowed("x86"), os: Cow::Borrowed("linux"), major: 3, minor: 7, patch: 9, suffix: None }, "https://downloads.python.org/pypy/pypy3.7-v7.3.3-linux32.tar.bz2", Some("7d81b8e9fcd07c067cfe2f519ab770ec62928ee8787f952cadf2d2786246efc8")),
(PythonVersion { name: Cow::Borrowed("pypy"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("linux"), major: 3, minor: 7, patch: 9, suffix: None }, "https://downloads.python.org/pypy/pypy3.7-v7.3.3-linux64.tar.bz2", Some("37e2804c4661c86c857d709d28c7de716b000d31e89766599fdf5a98928b7096")),
(PythonVersion { name: Cow::Borrowed("pypy"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("macos"), major: 3, minor: 7, patch: 9, suffix: None }, "https://downloads.python.org/pypy/pypy3.7-v7.3.3-osx64.tar.bz2", Some("d72b27d5bb60813273f14f07378a08822186a66e216c5d1a768ad295b582438d")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("aarch64"), os: Cow::Borrowed("linux"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-aarch64-unknown-linux-gnu-freethreaded%2Blto-full.tar.zst", Some("59b50df9826475d24bb7eff781fa3949112b5e9c92adb29e96a09cdf1216d5bd")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("aarch64"), os: Cow::Borrowed("macos"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-aarch64-apple-darwin-freethreaded%2Bpgo%2Blto-full.tar.zst", Some("efc2e71c0e05bc5bedb7a846e05f28dd26491b1744ded35ed82f8b49ccfa684b")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("aarch64"), os: Cow::Borrowed("linux"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-aarch64-unknown-linux-gnu-lto-full.tar.zst", Some("dab453a00cc921bb9b27db1ea23a7071381ee6b0fb04c5bc299ff9d03c020320")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("aarch64"), os: Cow::Borrowed("macos"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-aarch64-apple-darwin-pgo%2Blto-full.tar.zst", Some("542e5ffac0b90dc1d872ba8157c0e96861b339b73a20eb21c53242f8c92e043c")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("x86"), os: Cow::Borrowed("windows"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-i686-pc-windows-msvc-shared-pgo-full.tar.zst", Some("0ef249cb7ba1e2c451e0a551df063f9caf2e2dc37e09d89f780f98991cd433db")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("linux"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-x86_64-unknown-linux-gnu-freethreaded%2Bpgo%2Blto-full.tar.zst", Some("a73adeda301ad843cce05f31a2d3e76222b656984535a7b87696a24a098b216c")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("macos"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-x86_64-apple-darwin-freethreaded%2Bpgo%2Blto-full.tar.zst", Some("2e07dfea62fe2215738551a179c87dbed1cc79d1b3654f4d7559889a6d5ce4eb")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("linux"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-x86_64-unknown-linux-gnu-pgo%2Blto-full.tar.zst", Some("078de2a3eef67377684e5054cbb059aa3f53d3189b2e19ab022f6b6242de014b")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("macos"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-x86_64-apple-darwin-pgo%2Blto-full.tar.zst", Some("1c1262a5105c1ad725c18b15979fb057b699e7b3c5c158d2af9b9c59ad29157b")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("x86_64"), os: Cow::Borrowed("windows"), major: 3, minor: 13, patch: 0, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.13.0%2B20241016-x86_64-pc-windows-msvc-shared-pgo-full.tar.zst", Some("4b4940208e6c0475105fd2c8bfc2e29a4ccdb61350b26ef13172303930a23b4e")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("aarch64"), os: Cow::Borrowed("linux"), major: 3, minor: 12, patch: 7, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.12.7%2B20241016-aarch64-unknown-linux-gnu-lto-full.tar.zst", Some("bd7688441ddf8d5dc2ccb288bb31fb862330999a4a3f1544aa4f999c93b85a6a")),
(PythonVersion { name: Cow::Borrowed("cpython"), arch: Cow::Borrowed("aarch64"), os: Cow::Borrowed("macos"), major: 3, minor: 12, patch: 7, suffix: None }, "https://github.com/indygreg/python-build-standalone/releases/download/20241016/cpython-3.12.7%2B20241016-aarch64-apple-darwin-pgo%2Blto-full.tar.zst", Some("3f8bf335c97424d0be262687906b0f50511f22fede8b9be77363faa57c4b8e7f")),
Expand Down

0 comments on commit 2d2c6ea

Please sign in to comment.