Skip to content

Commit 421e2c7

Browse files
committed
Bump --python-platform linux to manylinux_2_28 (#14300)
Right now, `--python-platform linux` to defaults to `manylinux_2_17`. Defaulting to `manylinux_2_17` causes some problems for users, since it means we can't use (e.g.) `manylinux_2_28` wheels, and end up having to build from source. cibuildwheel made `manylinux_2_28` their default in pypa/cibuildwheel#1988, and there's a lot of discussion in pypa/cibuildwheel#1772 and pypa/cibuildwheel#2047. In short, the `manylinux_2014` image is EOL, and the vast majority of consumers now run at least glibc 2.28 (https://mayeut.github.io/manylinux-timeline/): ![Screenshot 2025-06-26 at 7 47 23 PM](https://github.com/user-attachments/assets/2672d91b-f9eb-4442-b680-7e4cd7cade91) Note that this only changes the _default_. Users can still compile against `manylinux_2_17` by specifying it.
1 parent ddea983 commit 421e2c7

File tree

4 files changed

+15
-15
lines changed

4 files changed

+15
-15
lines changed

crates/uv-configuration/src/target_triple.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ pub enum TargetTriple {
3333
#[serde(rename = "i686-pc-windows-msvc")]
3434
I686PcWindowsMsvc,
3535

36-
/// An x86 Linux target. Equivalent to `x86_64-manylinux_2_17`.
36+
/// An x86 Linux target. Equivalent to `x86_64-manylinux_2_28`.
3737
#[cfg_attr(feature = "clap", value(name = "x86_64-unknown-linux-gnu"))]
3838
#[serde(rename = "x86_64-unknown-linux-gnu")]
3939
#[serde(alias = "x8664-unknown-linux-gnu")]
@@ -56,7 +56,7 @@ pub enum TargetTriple {
5656
#[serde(alias = "x8664-apple-darwin")]
5757
X8664AppleDarwin,
5858

59-
/// An ARM64 Linux target. Equivalent to `aarch64-manylinux_2_17`.
59+
/// An ARM64 Linux target. Equivalent to `aarch64-manylinux_2_28`.
6060
#[cfg_attr(feature = "clap", value(name = "aarch64-unknown-linux-gnu"))]
6161
#[serde(rename = "aarch64-unknown-linux-gnu")]
6262
Aarch64UnknownLinuxGnu,
@@ -240,7 +240,7 @@ impl TargetTriple {
240240
Self::Linux | Self::X8664UnknownLinuxGnu => Platform::new(
241241
Os::Manylinux {
242242
major: 2,
243-
minor: 17,
243+
minor: 28,
244244
},
245245
Arch::X86_64,
246246
),
@@ -262,7 +262,7 @@ impl TargetTriple {
262262
Self::Aarch64UnknownLinuxGnu => Platform::new(
263263
Os::Manylinux {
264264
major: 2,
265-
minor: 17,
265+
minor: 28,
266266
},
267267
Arch::Aarch64,
268268
),

crates/uv/tests/it/pip_compile.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14728,7 +14728,7 @@ fn invalid_platform() -> Result<()> {
1472814728
uv_snapshot!(context
1472914729
.pip_compile()
1473014730
.arg("--python-platform")
14731-
.arg("linux")
14731+
.arg("x86_64-manylinux_2_17")
1473214732
.arg("requirements.in"), @r"
1473314733
success: false
1473414734
exit_code: 1

docs/reference/cli.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1731,10 +1731,10 @@ interpreter. Use <code>--universal</code> to display the tree for all platforms,
17311731
<li><code>macos</code>: An alias for <code>aarch64-apple-darwin</code>, the default target for macOS</li>
17321732
<li><code>x86_64-pc-windows-msvc</code>: A 64-bit x86 Windows target</li>
17331733
<li><code>i686-pc-windows-msvc</code>: A 32-bit x86 Windows target</li>
1734-
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_17</code></li>
1734+
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_28</code></li>
17351735
<li><code>aarch64-apple-darwin</code>: An ARM-based macOS target, as seen on Apple Silicon devices</li>
17361736
<li><code>x86_64-apple-darwin</code>: An x86 macOS target</li>
1737-
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_17</code></li>
1737+
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_28</code></li>
17381738
<li><code>aarch64-unknown-linux-musl</code>: An ARM64 Linux target</li>
17391739
<li><code>x86_64-unknown-linux-musl</code>: An <code>x86_64</code> Linux target</li>
17401740
<li><code>x86_64-manylinux2014</code>: An <code>x86_64</code> target for the <code>manylinux2014</code> platform. Equivalent to <code>x86_64-manylinux_2_17</code></li>
@@ -3416,10 +3416,10 @@ by <code>--python-version</code>.</p>
34163416
<li><code>macos</code>: An alias for <code>aarch64-apple-darwin</code>, the default target for macOS</li>
34173417
<li><code>x86_64-pc-windows-msvc</code>: A 64-bit x86 Windows target</li>
34183418
<li><code>i686-pc-windows-msvc</code>: A 32-bit x86 Windows target</li>
3419-
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_17</code></li>
3419+
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_28</code></li>
34203420
<li><code>aarch64-apple-darwin</code>: An ARM-based macOS target, as seen on Apple Silicon devices</li>
34213421
<li><code>x86_64-apple-darwin</code>: An x86 macOS target</li>
3422-
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_17</code></li>
3422+
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_28</code></li>
34233423
<li><code>aarch64-unknown-linux-musl</code>: An ARM64 Linux target</li>
34243424
<li><code>x86_64-unknown-linux-musl</code>: An <code>x86_64</code> Linux target</li>
34253425
<li><code>x86_64-manylinux2014</code>: An <code>x86_64</code> target for the <code>manylinux2014</code> platform. Equivalent to <code>x86_64-manylinux_2_17</code></li>
@@ -3673,10 +3673,10 @@ be used with caution, as it can modify the system Python installation.</p>
36733673
<li><code>macos</code>: An alias for <code>aarch64-apple-darwin</code>, the default target for macOS</li>
36743674
<li><code>x86_64-pc-windows-msvc</code>: A 64-bit x86 Windows target</li>
36753675
<li><code>i686-pc-windows-msvc</code>: A 32-bit x86 Windows target</li>
3676-
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_17</code></li>
3676+
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_28</code></li>
36773677
<li><code>aarch64-apple-darwin</code>: An ARM-based macOS target, as seen on Apple Silicon devices</li>
36783678
<li><code>x86_64-apple-darwin</code>: An x86 macOS target</li>
3679-
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_17</code></li>
3679+
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_28</code></li>
36803680
<li><code>aarch64-unknown-linux-musl</code>: An ARM64 Linux target</li>
36813681
<li><code>x86_64-unknown-linux-musl</code>: An <code>x86_64</code> Linux target</li>
36823682
<li><code>x86_64-manylinux2014</code>: An <code>x86_64</code> target for the <code>manylinux2014</code> platform. Equivalent to <code>x86_64-manylinux_2_17</code></li>
@@ -3955,10 +3955,10 @@ should be used with caution, as it can modify the system Python installation.</p
39553955
<li><code>macos</code>: An alias for <code>aarch64-apple-darwin</code>, the default target for macOS</li>
39563956
<li><code>x86_64-pc-windows-msvc</code>: A 64-bit x86 Windows target</li>
39573957
<li><code>i686-pc-windows-msvc</code>: A 32-bit x86 Windows target</li>
3958-
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_17</code></li>
3958+
<li><code>x86_64-unknown-linux-gnu</code>: An x86 Linux target. Equivalent to <code>x86_64-manylinux_2_28</code></li>
39593959
<li><code>aarch64-apple-darwin</code>: An ARM-based macOS target, as seen on Apple Silicon devices</li>
39603960
<li><code>x86_64-apple-darwin</code>: An x86 macOS target</li>
3961-
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_17</code></li>
3961+
<li><code>aarch64-unknown-linux-gnu</code>: An ARM64 Linux target. Equivalent to <code>aarch64-manylinux_2_28</code></li>
39623962
<li><code>aarch64-unknown-linux-musl</code>: An ARM64 Linux target</li>
39633963
<li><code>x86_64-unknown-linux-musl</code>: An <code>x86_64</code> Linux target</li>
39643964
<li><code>x86_64-manylinux2014</code>: An <code>x86_64</code> target for the <code>manylinux2014</code> platform. Equivalent to <code>x86_64-manylinux_2_17</code></li>

uv.schema.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)