Match --bounds formatting for uv_build bounds in uv init (#14731)

Closes #14724 

https://chatgpt.com/codex/tasks/task_e_687a53ba646c8331baa4140c5b2bec70

---------

Co-authored-by: konstin <konstin@mailbox.org>
This commit is contained in:
Zanie Blue
2025-07-21 04:48:38 -05:00
committed by GitHub
parent a049ba78fc
commit 7c2819d1f6
4 changed files with 29 additions and 22 deletions
+14 -14
View File
@@ -680,7 +680,7 @@ mod tests {
license = { file = "license.txt" }
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
},
@@ -748,7 +748,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
},
@@ -812,7 +812,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
[tool.uv.build-backend]
@@ -854,7 +854,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
[tool.uv.build-backend]
@@ -879,7 +879,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
[tool.uv.build-backend]
@@ -928,7 +928,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
[tool.uv.build-backend]
@@ -959,7 +959,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
@@ -1010,7 +1010,7 @@ mod tests {
version = "1.0.0"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
[tool.uv.build-backend]
@@ -1036,7 +1036,7 @@ mod tests {
module-name = "simple_namespace.part"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
@@ -1104,7 +1104,7 @@ mod tests {
namespace = true
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
@@ -1127,7 +1127,7 @@ mod tests {
namespace = true
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
@@ -1188,7 +1188,7 @@ mod tests {
namespace = true
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
@@ -1211,7 +1211,7 @@ mod tests {
module-name = "cloud-stubs.db.schema"
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
@@ -1261,7 +1261,7 @@ mod tests {
module-name = ["foo", "simple_namespace.part_a", "simple_namespace.part_b"]
[build-system]
requires = ["uv_build>=0.5.15,<0.6"]
requires = ["uv_build>=0.5.15,<0.6.0"]
build-backend = "uv_build"
"#
};
+6 -6
View File
@@ -171,7 +171,7 @@ impl PyProjectToml {
///
/// ```toml
/// [build-system]
/// requires = ["uv_build>=0.4.15,<0.5"]
/// requires = ["uv_build>=0.4.15,<0.5.0"]
/// build-backend = "uv_build"
/// ```
pub fn check_build_system(&self, uv_version: &str) -> Vec<String> {
@@ -826,7 +826,7 @@ mod tests {
{payload}
[build-system]
requires = ["uv_build>=0.4.15,<0.5"]
requires = ["uv_build>=0.4.15,<0.5.0"]
build-backend = "uv_build"
"#
}
@@ -909,7 +909,7 @@ mod tests {
foo-bar = "foo:bar"
[build-system]
requires = ["uv_build>=0.4.15,<0.5"]
requires = ["uv_build>=0.4.15,<0.5.0"]
build-backend = "uv_build"
"#
};
@@ -1095,7 +1095,7 @@ mod tests {
foo-bar = "foo:bar"
[build-system]
requires = ["uv_build>=0.4.15,<0.5"]
requires = ["uv_build>=0.4.15,<0.5.0"]
build-backend = "uv_build"
"#
};
@@ -1194,7 +1194,7 @@ mod tests {
version = "0.1.0"
[build-system]
requires = ["uv_build>=0.4.15,<0.5", "wheel"]
requires = ["uv_build>=0.4.15,<0.5.0", "wheel"]
build-backend = "uv_build"
"#};
let pyproject_toml = PyProjectToml::parse(contents).unwrap();
@@ -1230,7 +1230,7 @@ mod tests {
version = "0.1.0"
[build-system]
requires = ["uv_build>=0.4.15,<0.5"]
requires = ["uv_build>=0.4.15,<0.5.0"]
build-backend = "setuptools"
"#};
let pyproject_toml = PyProjectToml::parse(contents).unwrap();
+8 -1
View File
@@ -1,6 +1,7 @@
use anyhow::{Context, Result, anyhow};
use owo_colors::OwoColorize;
use std::fmt::Write;
use std::iter;
use std::path::{Path, PathBuf};
use std::process::{Command, Stdio};
use std::str::FromStr;
@@ -944,7 +945,13 @@ fn pyproject_build_system(package: &PackageName, build_backend: ProjectBuildBack
min_version.release()[0] == 0,
"migrate to major version bumps"
);
let max_version = Version::new([0, min_version.release()[1] + 1]);
let max_version = Version::new(
[0, min_version.release()[1] + 1]
.into_iter()
// Add trailing zeroes to match the version length, to use the same style
// as `--bounds`.
.chain(iter::repeat_n(0, min_version.release().len() - 2)),
);
indoc::formatdoc! {r#"
[build-system]
requires = ["uv_build>={min_version},<{max_version}"]
+1 -1
View File
@@ -24,5 +24,5 @@ data = "assets"
headers = "header"
[build-system]
requires = ["uv_build>=0.8,<0.9"]
requires = ["uv_build>=0.8.0,<0.9.0"]
build-backend = "uv_build"