today, downloading the Swift toolchain is needlessly weird, and adds some complexity to CI workflow specifications. it is not a lot per-repo, but it really adds up when summed across dozens of repos and hundreds of YAML files, even with automation in place.
there are two really, really simple changes that could be made that would make the Swift installation story a lot smoother:
download.swift.orgcould ignore the dot inubuntuXX.XX. thus, it would be possible to download the Ubuntu toolchain from a URL like
https://download.swift.org/swift-6.3-release/ubuntu24.04-aarch64/swift-6.3-RELEASE/swift-6.3-RELEASE-ubuntu24.04-aarch64.tar.gz
instead of having to do string processing to obtain
https://download.swift.org/swift-6.3-release/ubuntu2404-aarch64/swift-6.3-RELEASE/swift-6.3-RELEASE-ubuntu24.04-aarch64.tar.gz
this would allow users to pass just one platform specifier string, instead of two variants of the same string, as is currently required.
download.swift.orgcould allow thex86_64toolchain to be downloaded fromPLATFORM-x86_64instead of justPLATFORM, which would make matrix interpolations much more logical.
thus, you could download the x86_64 toolchain from
https://download.swift.org/swift-6.3-release/ubuntu2404-x86_64/swift-6.3-RELEASE/swift-6.3-RELEASE-ubuntu24.04-x86_64.tar.gz
instead of
https://download.swift.org/swift-6.3-release/ubuntu2404/swift-6.3-RELEASE/swift-6.3-RELEASE-ubuntu24.04.tar.gz
please, can we make toolchain download URLs make sense?