Skip to content

Add Debian 12 (Bookworm) support #139

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

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

cmcgee1024
Copy link
Member

No description provided.

@cmcgee1024 cmcgee1024 requested a review from iCharlesHu as a code owner August 12, 2025 14:24
@iCharlesHu
Copy link
Contributor

The test failure looks relevant but infrastructure?

@jakepetroules
Copy link
Contributor

Bookworm actually doesn't work in GitHub Actions; that's the reason I didn't originally include it (and why Swift Build doesn't include it either). I think there was something weird where the image was actually called "debian12" for some reason, but that didn't work either, last I tried.

@cmcgee1024
Copy link
Member Author

I have Debian 12 working for swiftly, using swiftly itself in a custom workflow. I can do the same here to get the verification for that platform. It's one of the advantages of GitHub workflows in that we can do what's necessary.

@jakepetroules
Copy link
Contributor

Oh I see, that's because you're just using base Linux images, not the Swift-based images maintained by swift.org. I think that makes sense for swiftly because it's the installer of the toolchain itself, but probably not for other packages, because we'd have to replicate a bunch of logic in the GitHub workflow to set up and install the toolchain versus letting the shared one do it for us.

I think we should just fix whatever the problem is upstream that's causing bookworm to be unavailable. That may be a change in https://github.com/swiftlang/swift-docker. We should ask @shahmishal.

@@ -232,6 +232,7 @@ The table below describes the current level of support that Subprocess has for v
| **Ubuntu 22.04** | Supported |
| **Ubuntu 24.04** | Supported |
| **Red Hat Universal Base Image 9** | Supported |
| **Debian 12** | Supported |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there much point listing individual Linux distributions versus just saying "Linux"? It's implied to be "whatever Swift itself supports".

Besides, it's really "Glibc" and "Musl" that we support; there is nothing at the distribution level that swift-subprocess is aware of. Just the kernel and the libc.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wondered about this myself. Because subprocess is a package, I suppose that it must be built on host where a supported toolchain can exist, and therefore can probably claim that it supports every Linux that has a supported toolchain. This can be different than the supported deployment platforms, which might be based on Glibc/Musl versions?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants