Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Swift] Add Swift 5.10.1 with additional platforms #16926

Merged
merged 1 commit into from
Jun 7, 2024

Conversation

shahmishal
Copy link
Contributor

  • Adding 5.10.1 with Ubuntu 24.04, Ubuntu 23.10, Debian 12 and Fedora 39
  • Removing 5.4.3, 5.3.3 and 5.2.5

@shahmishal shahmishal requested a review from a team as a code owner June 6, 2024 15:48
Copy link

github-actions bot commented Jun 6, 2024

Diff for 16a58f1:
diff --git a/_bashbrew-cat b/_bashbrew-cat
index 281f4ec..98b066e 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -2,78 +2,6 @@ Maintainers: Ted Kremenek <[email protected]> (@tkremenek), Mishal Shah <mishal
 GitRepo: https://github.com/apple/swift-docker.git
 GitFetch: refs/heads/main
 
-Tags: 5.2.5-amazonlinux2, 5.2-amazonlinux2
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.2/amazonlinux/2
-
-Tags: 5.2.5-amazonlinux2-slim, 5.2-amazonlinux2-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.2/amazonlinux/2/slim
-
-Tags: 5.2.5-centos7, 5.2-centos7
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.2/centos/7
-
-Tags: 5.2.5-centos7-slim, 5.2-centos7-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.2/centos/7/slim
-
-Tags: 5.2.5-focal, 5.2-focal
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.2/ubuntu/20.04
-
-Tags: 5.2.5-focal-slim, 5.2-focal-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.2/ubuntu/20.04/slim
-
-Tags: 5.3.3-amazonlinux2, 5.3-amazonlinux2
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.3/amazonlinux/2
-
-Tags: 5.3.3-amazonlinux2-slim, 5.3-amazonlinux2-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.3/amazonlinux/2/slim
-
-Tags: 5.3.3-centos7, 5.3-centos7
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.3/centos/7
-
-Tags: 5.3.3-centos7-slim, 5.3-centos7-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.3/centos/7/slim
-
-Tags: 5.3.3-focal, 5.3-focal
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.3/ubuntu/20.04
-
-Tags: 5.3.3-focal-slim, 5.3-focal-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.3/ubuntu/20.04/slim
-
-Tags: 5.4.3-amazonlinux2, 5.4-amazonlinux2
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.4/amazonlinux/2
-
-Tags: 5.4.3-amazonlinux2-slim, 5.4-amazonlinux2-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.4/amazonlinux/2/slim
-
-Tags: 5.4.3-centos7, 5.4-centos7
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.4/centos/7
-
-Tags: 5.4.3-centos7-slim, 5.4-centos7-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.4/centos/7/slim
-
-Tags: 5.4.3-focal, 5.4-focal
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.4/ubuntu/20.04
-
-Tags: 5.4.3-focal-slim, 5.4-focal-slim
-GitCommit: 2d2c2fb89fe6ecfd8885157eb1666ed2686503a0
-Directory: 5.4/ubuntu/20.04/slim
-
 Tags: 5.5.3-amazonlinux2, 5.5-amazonlinux2
 GitCommit: 9394b31e064cf0d80eaab08b692a2886c7aea8fe
 Directory: 5.5/amazonlinux/2
@@ -265,56 +193,76 @@ GitCommit: 51f0941d5f6d92af9df8aa89fa75841f5036c127
 Directory: 5.9/windows/LTSC2022
 Constraints: windowsservercore-ltsc2022
 
-Tags: 5.10.0, 5.10, 5.10.0-jammy, 5.10-jammy, jammy, latest
+Tags: 5.10.1, 5.10, 5.10.1-jammy, 5.10-jammy, jammy, latest
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/ubuntu/22.04
 
-Tags: 5.10.0-amazonlinux2, 5.10-amazonlinux2, amazonlinux2
+Tags: 5.10.1-amazonlinux2, 5.10-amazonlinux2, amazonlinux2
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/amazonlinux/2
 
-Tags: 5.10.0-amazonlinux2-slim, 5.10-amazonlinux2-slim, amazonlinux2-slim
+Tags: 5.10.1-amazonlinux2-slim, 5.10-amazonlinux2-slim, amazonlinux2-slim
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/amazonlinux/2/slim
 
-Tags: 5.10.0-centos7, 5.10-centos7, centos7
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+Tags: 5.10.1-bookworm, 5.10-bookworm, bookworm
+Architectures: amd64, arm64v8
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
+Directory: 5.10/debian/12
+
+Tags: 5.10.1-centos7, 5.10-centos7, centos7
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/centos/7
 
-Tags: 5.10.0-centos7-slim, 5.10-centos7-slim, centos7-slim
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+Tags: 5.10.1-centos7-slim, 5.10-centos7-slim, centos7-slim
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/centos/7/slim
 
-Tags: 5.10.0-focal, 5.10-focal, focal
+Tags: 5.10.1-fedora39, 5.10-fedora39, fedora39
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
+Directory: 5.10/fedora/39
+
+Tags: 5.10.1-focal, 5.10-focal, focal
+Architectures: amd64, arm64v8
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/ubuntu/20.04
 
-Tags: 5.10.0-focal-slim, 5.10-focal-slim, focal-slim
+Tags: 5.10.1-focal-slim, 5.10-focal-slim, focal-slim
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/ubuntu/20.04/slim
 
-Tags: 5.10.0-rhel-ubi9, 5.10-rhel-ubi9, rhel-ubi9
+Tags: 5.10.1-mantic, 5.10-mantic, mantic
+Architectures: amd64, arm64v8
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
+Directory: 5.10/ubuntu/23.10
+
+Tags: 5.10.1-noble, 5.10-noble, noble
+Architectures: amd64, arm64v8
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
+Directory: 5.10/ubuntu/24.04
+
+Tags: 5.10.1-rhel-ubi9, 5.10-rhel-ubi9, rhel-ubi9
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/rhel-ubi/9
 
-Tags: 5.10.0-rhel-ubi9-slim, 5.10-rhel-ubi9-slim, rhel-ubi9-slim
+Tags: 5.10.1-rhel-ubi9-slim, 5.10-rhel-ubi9-slim, rhel-ubi9-slim
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/rhel-ubi/9/slim
 
-Tags: 5.10.0-slim, 5.10-slim, 5.10.0-jammy-slim, 5.10-jammy-slim, jammy-slim, slim
+Tags: 5.10.1-slim, 5.10-slim, 5.10.1-jammy-slim, 5.10-jammy-slim, jammy-slim, slim
 Architectures: amd64, arm64v8
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/ubuntu/22.04/slim
 
-Tags: 5.10.0-windowsservercore-ltsc2022, 5.10-windowsservercore-ltsc2022, windowsservercore-ltsc2022
+Tags: 5.10.1-windowsservercore-ltsc2022, 5.10-windowsservercore-ltsc2022, windowsservercore-ltsc2022
 Architectures: windows-amd64
-GitCommit: ea035798755cce4ec41e0c6dbdd320904cef0421
+GitCommit: 53c4d44e4b556d7bab6ff94c80e5bd0444cdc17d
 Directory: 5.10/windows/LTSC2022
 Constraints: windowsservercore-ltsc2022
diff --git a/_bashbrew-list b/_bashbrew-list
index 84b0ad8..f954768 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -1,39 +1,3 @@
-swift:5.2-amazonlinux2
-swift:5.2-amazonlinux2-slim
-swift:5.2-centos7
-swift:5.2-centos7-slim
-swift:5.2-focal
-swift:5.2-focal-slim
-swift:5.2.5-amazonlinux2
-swift:5.2.5-amazonlinux2-slim
-swift:5.2.5-centos7
-swift:5.2.5-centos7-slim
-swift:5.2.5-focal
-swift:5.2.5-focal-slim
-swift:5.3-amazonlinux2
-swift:5.3-amazonlinux2-slim
-swift:5.3-centos7
-swift:5.3-centos7-slim
-swift:5.3-focal
-swift:5.3-focal-slim
-swift:5.3.3-amazonlinux2
-swift:5.3.3-amazonlinux2-slim
-swift:5.3.3-centos7
-swift:5.3.3-centos7-slim
-swift:5.3.3-focal
-swift:5.3.3-focal-slim
-swift:5.4-amazonlinux2
-swift:5.4-amazonlinux2-slim
-swift:5.4-centos7
-swift:5.4-centos7-slim
-swift:5.4-focal
-swift:5.4-focal-slim
-swift:5.4.3-amazonlinux2
-swift:5.4.3-amazonlinux2-slim
-swift:5.4.3-centos7
-swift:5.4.3-centos7-slim
-swift:5.4.3-focal
-swift:5.4.3-focal-slim
 swift:5.5-amazonlinux2
 swift:5.5-amazonlinux2-slim
 swift:5.5-centos7
@@ -131,38 +95,50 @@ swift:5.9.2-windowsservercore-ltsc2022
 swift:5.10
 swift:5.10-amazonlinux2
 swift:5.10-amazonlinux2-slim
+swift:5.10-bookworm
 swift:5.10-centos7
 swift:5.10-centos7-slim
+swift:5.10-fedora39
 swift:5.10-focal
 swift:5.10-focal-slim
 swift:5.10-jammy
 swift:5.10-jammy-slim
+swift:5.10-mantic
+swift:5.10-noble
 swift:5.10-rhel-ubi9
 swift:5.10-rhel-ubi9-slim
 swift:5.10-slim
 swift:5.10-windowsservercore-ltsc2022
-swift:5.10.0
-swift:5.10.0-amazonlinux2
-swift:5.10.0-amazonlinux2-slim
-swift:5.10.0-centos7
-swift:5.10.0-centos7-slim
-swift:5.10.0-focal
-swift:5.10.0-focal-slim
-swift:5.10.0-jammy
-swift:5.10.0-jammy-slim
-swift:5.10.0-rhel-ubi9
-swift:5.10.0-rhel-ubi9-slim
-swift:5.10.0-slim
-swift:5.10.0-windowsservercore-ltsc2022
+swift:5.10.1
+swift:5.10.1-amazonlinux2
+swift:5.10.1-amazonlinux2-slim
+swift:5.10.1-bookworm
+swift:5.10.1-centos7
+swift:5.10.1-centos7-slim
+swift:5.10.1-fedora39
+swift:5.10.1-focal
+swift:5.10.1-focal-slim
+swift:5.10.1-jammy
+swift:5.10.1-jammy-slim
+swift:5.10.1-mantic
+swift:5.10.1-noble
+swift:5.10.1-rhel-ubi9
+swift:5.10.1-rhel-ubi9-slim
+swift:5.10.1-slim
+swift:5.10.1-windowsservercore-ltsc2022
 swift:amazonlinux2
 swift:amazonlinux2-slim
+swift:bookworm
 swift:centos7
 swift:centos7-slim
+swift:fedora39
 swift:focal
 swift:focal-slim
 swift:jammy
 swift:jammy-slim
 swift:latest
+swift:mantic
+swift:noble
 swift:rhel-ubi9
 swift:rhel-ubi9-slim
 swift:slim
diff --git a/swift_5.2-amazonlinux2-slim/Dockerfile b/swift_5.2-amazonlinux2-slim/Dockerfile
deleted file mode 100644
index e817611..0000000
diff --git a/swift_5.2-amazonlinux2/Dockerfile b/swift_5.2-amazonlinux2/Dockerfile
deleted file mode 100644
index 3ab6008..0000000
diff --git a/swift_5.2-centos7-slim/Dockerfile b/swift_5.2-centos7-slim/Dockerfile
deleted file mode 100644
index f2e97cd..0000000
diff --git a/swift_5.2-centos7/Dockerfile b/swift_5.2-centos7/Dockerfile
deleted file mode 100644
index 24d571f..0000000
diff --git a/swift_5.2-focal-slim/Dockerfile b/swift_5.2-focal-slim/Dockerfile
deleted file mode 100644
index b7c5220..0000000
diff --git a/swift_5.2-focal/Dockerfile b/swift_5.2-focal/Dockerfile
deleted file mode 100644
index f8d3990..0000000
diff --git a/swift_5.3-amazonlinux2-slim/Dockerfile b/swift_5.3-amazonlinux2-slim/Dockerfile
deleted file mode 100644
index 5bfac4c..0000000
diff --git a/swift_5.3-amazonlinux2/Dockerfile b/swift_5.3-amazonlinux2/Dockerfile
deleted file mode 100644
index e1f3998..0000000
diff --git a/swift_5.3-centos7-slim/Dockerfile b/swift_5.3-centos7-slim/Dockerfile
deleted file mode 100644
index efa912d..0000000
diff --git a/swift_5.3-centos7/Dockerfile b/swift_5.3-centos7/Dockerfile
deleted file mode 100644
index d36ff19..0000000
diff --git a/swift_5.3-focal-slim/Dockerfile b/swift_5.3-focal-slim/Dockerfile
deleted file mode 100644
index 970dd16..0000000
diff --git a/swift_5.3-focal/Dockerfile b/swift_5.3-focal/Dockerfile
deleted file mode 100644
index 6190178..0000000
diff --git a/swift_5.4-amazonlinux2-slim/Dockerfile b/swift_5.4-amazonlinux2-slim/Dockerfile
deleted file mode 100644
index cb97fe7..0000000
diff --git a/swift_5.4-amazonlinux2/Dockerfile b/swift_5.4-amazonlinux2/Dockerfile
deleted file mode 100644
index 037b551..0000000
diff --git a/swift_5.4-centos7-slim/Dockerfile b/swift_5.4-centos7-slim/Dockerfile
deleted file mode 100644
index ac56ab2..0000000
diff --git a/swift_5.4-centos7/Dockerfile b/swift_5.4-centos7/Dockerfile
deleted file mode 100644
index b21b9ca..0000000
diff --git a/swift_5.4-focal-slim/Dockerfile b/swift_5.4-focal-slim/Dockerfile
deleted file mode 100644
index 7db4a26..0000000
diff --git a/swift_5.4-focal/Dockerfile b/swift_5.4-focal/Dockerfile
deleted file mode 100644
index 55ac77b..0000000
diff --git a/swift_amazonlinux2-slim/Dockerfile b/swift_amazonlinux2-slim/Dockerfile
index 734e711..70c5671 100644
--- a/swift_amazonlinux2-slim/Dockerfile
+++ b/swift_amazonlinux2-slim/Dockerfile
@@ -9,8 +9,8 @@ LABEL description="Docker Container for the Swift programming language"
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=amazonlinux2
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_amazonlinux2/Dockerfile b/swift_amazonlinux2/Dockerfile
index dd2850f..08ba280 100644
--- a/swift_amazonlinux2/Dockerfile
+++ b/swift_amazonlinux2/Dockerfile
@@ -17,6 +17,7 @@ RUN yum -y install \
   libstdc++-static \
   libuuid \
   libxml2-devel \
+  openssl-devel \
   tar \
   tzdata \
   zlib-devel
@@ -28,8 +29,8 @@ RUN yum -y install \
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=amazonlinux2
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_focal/Dockerfile b/swift_bookworm/Dockerfile
similarity index 82%
copy from swift_focal/Dockerfile
copy to swift_bookworm/Dockerfile
index 971c5e6..9dab342 100644
--- a/swift_focal/Dockerfile
+++ b/swift_bookworm/Dockerfile
@@ -1,25 +1,23 @@
-FROM ubuntu:20.04
+FROM debian:12
+
 LABEL maintainer="Swift Infrastructure <[email protected]>"
 LABEL description="Docker Container for the Swift programming language"
 
 RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && apt-get -q update && \
     apt-get -q install -y \
-    binutils \
-    git \
-    unzip \
-    gnupg2 \
-    libc6-dev \
+    binutils-gold \
+    libicu-dev \
     libcurl4-openssl-dev \
-    libedit2 \
-    libgcc-9-dev \
-    libpython3.8 \
-    libsqlite3-0 \
-    libstdc++-9-dev \
+    libedit-dev \
+    libsqlite3-dev \
+    libncurses-dev \
+    libpython3-dev \
     libxml2-dev \
-    libz3-dev \
     pkg-config \
+    uuid-dev \
     tzdata \
-    zlib1g-dev \
+    git \
+    gcc \
     && rm -r /var/lib/apt/lists/*
 
 # Everything up to here should cache nicely between Swift versions, assuming dev dependencies change little
@@ -28,9 +26,9 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 #       Key fingerprint = A62A E125 BBBF BB96 A6E0  42EC 925C C1CC ED3D 1561
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
-ARG SWIFT_PLATFORM=ubuntu20.04
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_PLATFORM=debian12
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
@@ -54,9 +52,9 @@ RUN set -e; \
     SWIFT_WEBDIR="$SWIFT_WEBROOT/$SWIFT_BRANCH/$(echo $SWIFT_PLATFORM | tr -d .)$OS_ARCH_SUFFIX" \
     && SWIFT_BIN_URL="$SWIFT_WEBDIR/$SWIFT_VERSION/$SWIFT_VERSION-$SWIFT_PLATFORM$OS_ARCH_SUFFIX.tar.gz" \
     && SWIFT_SIG_URL="$SWIFT_BIN_URL.sig" \
-    # - Grab curl here so we cache better up above
+    # - Grab curl and gpg here so we cache better up above
     && export DEBIAN_FRONTEND=noninteractive \
-    && apt-get -q update && apt-get -q install -y curl && rm -rf /var/lib/apt/lists/* \
+    && apt-get -q update && apt-get -q install -y curl gpg && rm -rf /var/lib/apt/lists/* \
     # - Download the GPG keys, Swift toolchain, and toolchain signature, and verify.
     && export GNUPGHOME="$(mktemp -d)" \
     && curl -fsSL "$SWIFT_BIN_URL" -o swift.tar.gz "$SWIFT_SIG_URL" -o swift.tar.gz.sig \
@@ -66,7 +64,7 @@ RUN set -e; \
     && tar -xzf swift.tar.gz --directory / --strip-components=1 \
     && chmod -R o+r /usr/lib/swift \
     && rm -rf "$GNUPGHOME" swift.tar.gz.sig swift.tar.gz \
-    && apt-get purge --auto-remove -y curl
+    && apt-get purge --auto-remove -y curl gpg
 
 # Print Installed Swift Version
 RUN swift --version
diff --git a/swift_centos7-slim/Dockerfile b/swift_centos7-slim/Dockerfile
index df28860..9ec1c34 100644
--- a/swift_centos7-slim/Dockerfile
+++ b/swift_centos7-slim/Dockerfile
@@ -9,8 +9,8 @@ LABEL description="Docker Container for the Swift programming language"
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=centos7
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_centos7/Dockerfile b/swift_centos7/Dockerfile
index 591db62..2e9021e 100644
--- a/swift_centos7/Dockerfile
+++ b/swift_centos7/Dockerfile
@@ -29,8 +29,8 @@ RUN sed -i -e 's/\*__block/\*__libc_block/g' /usr/include/unistd.h
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=centos7
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_amazonlinux2/Dockerfile b/swift_fedora39/Dockerfile
similarity index 89%
copy from swift_amazonlinux2/Dockerfile
copy to swift_fedora39/Dockerfile
index dd2850f..90a5e19 100644
--- a/swift_amazonlinux2/Dockerfile
+++ b/swift_fedora39/Dockerfile
@@ -1,4 +1,5 @@
-FROM amazonlinux:2
+FROM fedora:39
+
 LABEL maintainer="Swift Infrastructure <[email protected]>"
 LABEL description="Docker Container for the Swift programming language"
 
@@ -7,19 +8,13 @@ RUN yum -y install \
   gcc \
   git \
   unzip \
-  glibc-static \
-  gzip \
-  libbsd \
   libcurl-devel \
-  libedit \
-  libicu \
-  libsqlite \
-  libstdc++-static \
-  libuuid \
+  libedit-devel \
+  libicu-devel \
+  sqlite-devel \
+  libuuid-devel \
   libxml2-devel \
-  tar \
-  tzdata \
-  zlib-devel
+  python3-devel
 
 # Everything up to here should cache nicely between Swift versions, assuming dev dependencies change little
 
@@ -27,9 +22,9 @@ RUN yum -y install \
 #       Key fingerprint = A62A E125 BBBF BB96 A6E0  42EC 925C C1CC ED3D 1561
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
-ARG SWIFT_PLATFORM=amazonlinux2
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_PLATFORM=fedora39
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_focal-slim/Dockerfile b/swift_focal-slim/Dockerfile
index b9f8e43..dafccd5 100644
--- a/swift_focal-slim/Dockerfile
+++ b/swift_focal-slim/Dockerfile
@@ -16,8 +16,8 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=ubuntu20.04
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_focal/Dockerfile b/swift_focal/Dockerfile
index 971c5e6..4eb9ea2 100644
--- a/swift_focal/Dockerfile
+++ b/swift_focal/Dockerfile
@@ -29,8 +29,8 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=ubuntu20.04
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_latest/Dockerfile b/swift_latest/Dockerfile
index 59253cf..5470e3c 100644
--- a/swift_latest/Dockerfile
+++ b/swift_latest/Dockerfile
@@ -30,8 +30,8 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=ubuntu22.04
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_5.8-jammy/Dockerfile b/swift_mantic/Dockerfile
similarity index 95%
copy from swift_5.8-jammy/Dockerfile
copy to swift_mantic/Dockerfile
index 60ce5f2..b25f161 100644
--- a/swift_5.8-jammy/Dockerfile
+++ b/swift_mantic/Dockerfile
@@ -1,4 +1,4 @@
-FROM ubuntu:22.04
+FROM ubuntu:23.10
 LABEL maintainer="Swift Infrastructure <[email protected]>"
 LABEL description="Docker Container for the Swift programming language"
 
@@ -29,9 +29,9 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 #       Key fingerprint = A62A E125 BBBF BB96 A6E0  42EC 925C C1CC ED3D 1561
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
-ARG SWIFT_PLATFORM=ubuntu22.04
-ARG SWIFT_BRANCH=swift-5.8.1-release
-ARG SWIFT_VERSION=swift-5.8.1-RELEASE
+ARG SWIFT_PLATFORM=ubuntu23.10
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_5.8-jammy/Dockerfile b/swift_noble/Dockerfile
similarity index 93%
copy from swift_5.8-jammy/Dockerfile
copy to swift_noble/Dockerfile
index 60ce5f2..bc5c38c 100644
--- a/swift_5.8-jammy/Dockerfile
+++ b/swift_noble/Dockerfile
@@ -1,4 +1,4 @@
-FROM ubuntu:22.04
+FROM ubuntu:24.04
 LABEL maintainer="Swift Infrastructure <[email protected]>"
 LABEL description="Docker Container for the Swift programming language"
 
@@ -11,14 +11,14 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
     libc6-dev \
     libcurl4-openssl-dev \
     libedit2 \
-    libgcc-11-dev \
+    libgcc-13-dev \
     libpython3-dev \
     libsqlite3-0 \
-    libstdc++-11-dev \
+    libstdc++-13-dev \
     libxml2-dev \
+    libncurses-dev \
     libz3-dev \
     pkg-config \
-    python3-lldb-13 \
     tzdata \
     zlib1g-dev \
     && rm -r /var/lib/apt/lists/*
@@ -29,9 +29,9 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 #       Key fingerprint = A62A E125 BBBF BB96 A6E0  42EC 925C C1CC ED3D 1561
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
-ARG SWIFT_PLATFORM=ubuntu22.04
-ARG SWIFT_BRANCH=swift-5.8.1-release
-ARG SWIFT_VERSION=swift-5.8.1-RELEASE
+ARG SWIFT_PLATFORM=ubuntu24.04
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_rhel-ubi9-slim/Dockerfile b/swift_rhel-ubi9-slim/Dockerfile
index 4468f58..1465844 100644
--- a/swift_rhel-ubi9-slim/Dockerfile
+++ b/swift_rhel-ubi9-slim/Dockerfile
@@ -9,8 +9,8 @@ LABEL description="Docker Container for the Swift programming language"
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=ubi9
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_rhel-ubi9/Dockerfile b/swift_rhel-ubi9/Dockerfile
index 243e10a..7d532c3 100644
--- a/swift_rhel-ubi9/Dockerfile
+++ b/swift_rhel-ubi9/Dockerfile
@@ -23,8 +23,8 @@ RUN yum -y install \
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=ubi9
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_slim/Dockerfile b/swift_slim/Dockerfile
index aef2fcf..385a762 100644
--- a/swift_slim/Dockerfile
+++ b/swift_slim/Dockerfile
@@ -16,8 +16,8 @@ RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && ap
 # uid                  Swift 5.x Release Signing Key <[email protected]
 ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
 ARG SWIFT_PLATFORM=ubuntu22.04
-ARG SWIFT_BRANCH=swift-5.10-release
-ARG SWIFT_VERSION=swift-5.10-RELEASE
+ARG SWIFT_BRANCH=swift-5.10.1-release
+ARG SWIFT_VERSION=swift-5.10.1-RELEASE
 ARG SWIFT_WEBROOT=https://download.swift.org
 
 ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
diff --git a/swift_windowsservercore-ltsc2022/Dockerfile b/swift_windowsservercore-ltsc2022/Dockerfile
index 2f583f1..ba19947 100644
--- a/swift_windowsservercore-ltsc2022/Dockerfile
+++ b/swift_windowsservercore-ltsc2022/Dockerfile
@@ -121,8 +121,8 @@ RUN Write-Host -NoNewLine ('Downloading {0} ... ' -f ${env:VSB});
     Remove-Item -ErrorAction SilentlyContinue -Force -Recurse ${env:TEMP}\*
 
 # Install Swift toolchain.
-ARG SWIFT=https://download.swift.org/swift-5.10-release/windows10/swift-5.10-RELEASE/swift-5.10-RELEASE-windows10.exe
-ARG SWIFT_SHA256=A0E2B32DFB56FCB83D4FEC1D1FF4B43B4B0986EDE4C065FF52F336EA9AA49322
+ARG SWIFT=https://download.swift.org/swift-5.10.1-release/windows10/swift-5.10.1-RELEASE/swift-5.10.1-RELEASE-windows10.exe
+ARG SWIFT_SHA256=3027762138ACFA1BBE3050FF6613BBE754332E84C9EFA5C23984646009297286
 RUN Write-Host -NoNewLine ('Downloading {0} ... ' -f ${env:SWIFT});             \
     Invoke-WebRequest -Uri ${env:SWIFT} -OutFile installer.exe;                 \
     Write-Host '✓';                                                             \

Relevant Maintainers:

@shahmishal
Copy link
Contributor Author

@yosifkit If possible, we would like to get this merged soon.

@yosifkit
Copy link
Member

yosifkit commented Jun 6, 2024

In general, I would suggest skipping all non-LTS releases of Ubuntu unless there is a really compelling use case for doing otherwise (for example, perhaps the latest LTS does not have a version of OpenSSL or similar that is required by Swift, and thus a newer release is required), especially because their support windows are dramatically shorter.

@tianon
Copy link
Member

tianon commented Jun 6, 2024

Also, it seems worth giving a heads up that while CentOS 7 is not technically officially EOL yet, the Docker image of it has not been updated in so long (November 16, 2020) that it might as well be EOL for years now.

@shahmishal
Copy link
Contributor Author

Most likely this will be the last release of CentOS 7, as EOL is end of the month.

@shahmishal
Copy link
Contributor Author

In general, I would suggest skipping all non-LTS releases of Ubuntu unless there is a really compelling use case for doing otherwise (for example, perhaps the latest LTS does not have a version of OpenSSL or similar that is required by Swift, and thus a newer release is required), especially because their support windows are dramatically shorter.

Would you prefer I drop Ubuntu 23.10 from the list?

@yosifkit
Copy link
Member

yosifkit commented Jun 6, 2024

Would you prefer I drop Ubuntu 23.10 from the list?

That is up to you and what your users might expect. It is end of life in July (https://ubuntu.com/about/release-cycle), so it is a short window.

@shahmishal
Copy link
Contributor Author

Let's keep it for now, and we can remove it in the future.

@yosifkit yosifkit merged commit 5017bb3 into docker-library:master Jun 7, 2024
61 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants