-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Build musllinux wheels #2126
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
base: master
Are you sure you want to change the base?
Build musllinux wheels #2126
Conversation
cb1a001 to
267b6ea
Compare
4b9ccb7 to
29dde78
Compare
|
@giampaolo Rebased to show changes as part of Apparently |
|
@giampaolo BTW,
|
e5ad7a5 to
9ae8920
Compare
9ae8920 to
9d256d4
Compare
9d256d4 to
ecfe230
Compare
|
@giampaolo Adapted for pyproject.toml-based changes. Please consider merging those changes :) |
591faf0 to
5d31710
Compare
5d31710 to
64ee3c7
Compare
|
@giampaolo is there anything else needed for this to go through? This would speed up lots of CI runs and let us remove |
|
|
64ee3c7 to
56a58e9
Compare
|
For the record, the musllinux build skip comes from #2024, namely this commit made by @giampaolo. It then got moved into It looks like the patch was made in order to fix build failures. Since @ben9923 changes seem to result in @giampaolo are we missing something? Sorry for spamming, but this is a serious pain point for me and many others, since we cannot test |
|
@giampaolo kind nudge. This has little to no overhead and would greatly improve the usage of |
|
@giampaolo This change is essential for Alpine-based images. A small image size is a top priority for Alpine users, and these improvements will make psutil more compatible and efficient in Python-Alpine environments. Let's streamline this process and bring the benefits of psutil to a wider audience in Alpine containers. 🐧✨ |
56a58e9 to
93b5f18
Compare
|
I suppose the request would be more persuasive if we fixed the build failures. Green circles look better in the PR list. @ben9923 can you confirm with any degree of certainty that these do not stem from your changes? |
The same failing test fails on |
93b5f18 to
7972be8
Compare
|
#2326 contained the build tools installation instructions from this PR and was merged to |
7972be8 to
0c6e293
Compare
|
#2425, #2448 added test deps for glibc & musl, rebased (with a little fix for the @giampaolo Given the Python 2.7 drop, would musl wheels be easier to maintain now? BTW - noticed only 3.13 tests are being run, 3.8 aren't (seems like an oversight in fb75b28?) |
- Fix installing required apk packages for Alpine build/tests. Signed-off-by: Ben Raz <ben9923@gmail.com>
0c6e293 to
4702d65
Compare
Summary
Description
Added
musllinuxwheel support to CI. Installing fully-featured variants of common commands, compared to theirbusyboxvariants (namelyps,df) was the only thing necessary for tests to pass.Should be useful for Alpine Linux users, which probably make a not-too-little percentage of the Linux users (Was ~1% back in 2017, I expect it to be much higher now).
It's especially useful to have wheels for musl-based distributions, as they tend to have smaller footprint installs than their glibc-counterparts. Those musl distros usually have no build tools (among other utilities) available by default to be so llightweight, which is suitable for cloud workloads.
For example, the 48.7MB
python:alpinebase Docker image grows to 170MB (installing the minimalgcc musl-dev linux-headerspsutil build requirements), making it a much less atractive base image than it could be (compared to the glibc-based 126MBpython:slim).No link for an issue as apparently there is none for musl/Alpine wheels 😛
BTW - In case(EDIT: Done!)cibuildwheelconfiguration becomes toml-based, an 'override' for musllinux may be used instead of the hackycommand -vcheck here.