summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-03-28 17:46:11 +0100
committerMichał Górny <mgorny@gentoo.org>2024-03-28 17:46:35 +0100
commitdf5174badd34c5e0dfcf7a7efa6d36ba54d95410 (patch)
tree4766218bcc5a0949a2c7388b8f7ea07d278f0217
parentdev-python/dask-expr: Bump to 1.0.5 (diff)
downloadgentoo-df5174badd34c5e0dfcf7a7efa6d36ba54d95410.tar.gz
gentoo-df5174badd34c5e0dfcf7a7efa6d36ba54d95410.tar.bz2
gentoo-df5174badd34c5e0dfcf7a7efa6d36ba54d95410.zip
dev-python/uv: Bump to 0.1.24
Signed-off-by: Michał Górny <mgorny@gentoo.org>
-rw-r--r--dev-python/uv/Manifest3
-rw-r--r--dev-python/uv/files/uv-0.1.24-skip-tests.patch192
-rw-r--r--dev-python/uv/uv-0.1.24.ebuild107
3 files changed, 302 insertions, 0 deletions
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index 2a2ba9407d8e..fb0c308b83a3 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -1,4 +1,7 @@
DIST pubgrub-aab132a3d4d444dd8dd41d8c4e605abd69dacfe1.gh.tar.gz 73856 BLAKE2B 9e30babd5159de0f80a69de082e990cade3768a4f62c64ecec46253b1c8a3da56a61d096f0cd2e74da436cbabb444c5acbfe27cc55160a5c0c99205c0317612a SHA512 f49c63df7394fcd4ce6a616e3c8d7893274f4bbe4d451f3fb46eed80a3e03eb345818c5ff87e9d3ac23c80ea7ffee5de01237a5dfff40f740f88a6d61eab5f81
+DIST pubgrub-e981e4dfe315582e84e2fd724832fb0e0c50b7aa.gh.tar.gz 76914 BLAKE2B e7039f3b2fdc2a702f4824ff99acba9549e916c211290b79ec710060369b2c76e518c210c109103bf5ba50cbb373d0a4e3185df09935d7e47241ec25da259776 SHA512 94cfc88b6736ffd78bcbcc3f4cd9940d27c902bf2dfca38dddb470b8a6a0bb3a8e4a61dd1b2654e49327c9386c3ac2a7f090f9a6c2426b19ecf00d9f9716d400
DIST rs-async-zip-d76801da0943de985254fc6255c0e476b57c5836.gh.tar.gz 95906 BLAKE2B a5a0e4d20926d637cbfa25cb486580de6682365c588a9653c873622424ec28ac8c7380d1c99ec260cd342b214aacd5124b51fc5e5646f15f76db4148aada2f41 SHA512 dd5b61bfc913a94822d74f1dac3b30f7a3979a641c3b08ccb5fa84cfbb2bfd8c0f807a30cc4ae0abfe5df7079011c20e1f8a642fd439ce6ba2c404ddee06baf5
DIST uv-0.1.13-crates.tar.xz 47903460 BLAKE2B da7a2f023054197820cd1bcd13c6e4ff6d4c4bc4780fa109b2c5b796830333f21bc4c7f426052f7ed31a6c02f4e28694cfd94b1aa9d3044ebde49570e565c04b SHA512 cce73590c12a082fed36092bada42b878437cc44137f47c47b4e0e6fae214295867fbda90576d8ed47b025d873dc5655ab74c9914d6ccbaf6cea994b793800d5
DIST uv-0.1.13.gh.tar.gz 1860446 BLAKE2B e5c209e11ea10a0aa8a88d4d40b40fe84cdd764cab1e852b49a52d8ff8749aac59d62234626fa768e6b1c304ee7b7a54cf99f5af4ecf21b368a1b521a8f903df SHA512 dc00cc26bc3b8e30edcc619bd49ff44962180623be8d1e2d7dc7c2b1c29969c8b393eda31b1392d90f0d72c15f2cb19af489e1e44f857225e461393c4b4b96c1
+DIST uv-0.1.24-crates.tar.xz 64420840 BLAKE2B 7324461092a07c86aadaddf051aaa7454ec08085940f34d07d8a8dc7171abcbf94409df5cd8afd71f1022adb2e76c0aeb1eabe9190598cad4d06e390ccd612f4 SHA512 6701a768a8a1d48ac43038e5161b578b684abed1c2055cc4b7fb5656ec40118287893ee2674b7161292ce7c3e4c062c32ff0038f1548c8f79f4df473d8d26f30
+DIST uv-0.1.24.gh.tar.gz 899637 BLAKE2B fab26ba9934fc5f586505b5ac1fa386c11f07e51ca2bb2a79f46d5dec9475ba8d75ad8587223d5149df5f2a225146d020a49b7ff81ed26b949cff55892738c2d SHA512 520b47a096b50fce9e7b7af5bca203df9bf4c2d0aafbe28a3dcfe0592d8ddcaa7b58d52300c67454f6aeecfd196f1592be18e45c95b7c67257361917cdb0154d
diff --git a/dev-python/uv/files/uv-0.1.24-skip-tests.patch b/dev-python/uv/files/uv-0.1.24-skip-tests.patch
new file mode 100644
index 000000000000..e9efee5e8d89
--- /dev/null
+++ b/dev-python/uv/files/uv-0.1.24-skip-tests.patch
@@ -0,0 +1,192 @@
+diff --git a/crates/uv/tests/pip_compile.rs b/crates/uv/tests/pip_compile.rs
+index 1fc08d1b..60675de4 100644
+--- a/crates/uv/tests/pip_compile.rs
++++ b/crates/uv/tests/pip_compile.rs
+@@ -5140,7 +5140,6 @@ fn expand_env_var_requirements_txt() -> Result<()> {
+ }
+
+ /// Raise an error when an editable's `Requires-Python` constraint is not met.
+-#[test]
+ fn requires_python_editable() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+@@ -5392,7 +5391,6 @@ fn no_stream() -> Result<()> {
+ }
+
+ /// Raise an error when a direct URL dependency's `Requires-Python` constraint is not met.
+-#[test]
+ fn requires_python_direct_url() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+diff --git a/crates/uv/tests/pip_install.rs b/crates/uv/tests/pip_install.rs
+index 6dfbd764..ddc5f37b 100644
+--- a/crates/uv/tests/pip_install.rs
++++ b/crates/uv/tests/pip_install.rs
+@@ -912,7 +912,6 @@ fn install_no_index_version() {
+ /// package in.)
+ ///
+ /// Ref: <https://github.com/astral-sh/uv/issues/1600>
+-#[test]
+ fn install_extra_index_url_has_priority() {
+ let context = TestContext::new("3.12");
+
+@@ -2344,7 +2343,6 @@ requires-python = ">=3.11,<3.13"
+ }
+
+ /// Raise an error when an editable's `Requires-Python` constraint is not met.
+-#[test]
+ fn requires_python_editable() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+@@ -2792,7 +2790,6 @@ fn dry_run_install_then_upgrade() -> std::result::Result<(), Box<dyn std::error:
+ }
+
+ /// Raise an error when a direct URL's `Requires-Python` constraint is not met.
+-#[test]
+ fn requires_python_direct_url() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+diff --git a/crates/uv/tests/pip_install_scenarios.rs b/crates/uv/tests/pip_install_scenarios.rs
+index 29ec3483..a538291d 100644
+--- a/crates/uv/tests/pip_install_scenarios.rs
++++ b/crates/uv/tests/pip_install_scenarios.rs
+@@ -2244,7 +2244,6 @@ fn post_greater_than_or_equal_post() {
+ /// └── a
+ /// └── a-1.2.3.post1
+ /// ```
+-#[test]
+ fn post_less_than_or_equal() {
+ let context = TestContext::new("3.8");
+
+@@ -2283,7 +2282,6 @@ fn post_less_than_or_equal() {
+ /// └── a
+ /// └── a-1.2.3.post1
+ /// ```
+-#[test]
+ fn post_less_than() {
+ let context = TestContext::new("3.8");
+
+@@ -2320,7 +2318,6 @@ fn post_less_than() {
+ /// ├── a-1.2.3.post1
+ /// └── a-1.2.3.post1+local
+ /// ```
+-#[test]
+ fn post_local_greater_than() {
+ let context = TestContext::new("3.8");
+
+@@ -2361,7 +2358,6 @@ fn post_local_greater_than() {
+ /// ├── a-1.2.3.post1
+ /// └── a-1.2.3.post1+local
+ /// ```
+-#[test]
+ fn post_local_greater_than_post() {
+ let context = TestContext::new("3.8");
+
+@@ -2529,7 +2525,6 @@ fn post_greater_than_post_not_available() {
+ /// └── a
+ /// └── a-1.0.0a1
+ /// ```
+-#[test]
+ fn package_only_prereleases() {
+ let context = TestContext::new("3.8");
+
+@@ -3652,7 +3647,6 @@ fn package_prereleases_specifier_boundary() {
+ /// └── a-1.0.0
+ /// └── requires python>=3.30 (incompatible with environment)
+ /// ```
+-#[test]
+ fn python_version_does_not_exist() {
+ let context = TestContext::new("3.8");
+
+@@ -3694,7 +3688,6 @@ fn python_version_does_not_exist() {
+ /// └── a-1.0.0
+ /// └── requires python<=3.8 (incompatible with environment)
+ /// ```
+-#[test]
+ fn python_less_than_current() {
+ let context = TestContext::new("3.9");
+
+@@ -3736,7 +3729,6 @@ fn python_less_than_current() {
+ /// └── a-1.0.0
+ /// └── requires python>=3.10 (incompatible with environment)
+ /// ```
+-#[test]
+ fn python_greater_than_current() {
+ let context = TestContext::new("3.9");
+
+@@ -3778,7 +3770,6 @@ fn python_greater_than_current() {
+ /// └── a-1.0.0
+ /// └── requires python>=3.8.14 (incompatible with environment)
+ /// ```
+-#[test]
+ fn python_greater_than_current_patch() {
+ let context = TestContext::new("3.8.12");
+
+@@ -3942,7 +3933,6 @@ fn python_greater_than_current_backtrack() {
+ /// └── a-4.0.0
+ /// └── requires python>=3.12 (incompatible with environment)
+ /// ```
+-#[test]
+ fn python_greater_than_current_excluded() {
+ let context = TestContext::new("3.9");
+
+diff --git a/crates/uv/tests/pip_list.rs b/crates/uv/tests/pip_list.rs
+index 15d784c1..f15f14b1 100644
+--- a/crates/uv/tests/pip_list.rs
++++ b/crates/uv/tests/pip_list.rs
+@@ -100,7 +100,6 @@ fn list_single_no_editable() -> Result<()> {
+ Ok(())
+ }
+
+-#[test]
+ fn list_editable() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+@@ -197,7 +196,6 @@ fn list_editable() -> Result<()> {
+ Ok(())
+ }
+
+-#[test]
+ fn list_editable_only() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+@@ -323,7 +321,6 @@ fn list_editable_only() -> Result<()> {
+ Ok(())
+ }
+
+-#[test]
+ fn list_exclude() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+diff --git a/crates/uv/tests/pip_sync.rs b/crates/uv/tests/pip_sync.rs
+index af3f4946..0df9ed80 100644
+--- a/crates/uv/tests/pip_sync.rs
++++ b/crates/uv/tests/pip_sync.rs
+@@ -1447,7 +1447,6 @@ fn install_git_source_dist_cached() -> Result<()> {
+ }
+
+ /// Check that we show the right messages on cached, registry source distribution installs.
+-#[test]
+ fn install_registry_source_dist_cached() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+@@ -2955,7 +2954,6 @@ fn compile_invalid_pyc_invalidation_mode() -> Result<()> {
+ }
+
+ /// Raise an error when an editable's `Requires-Python` constraint is not met.
+-#[test]
+ fn requires_python_editable() -> Result<()> {
+ let context = TestContext::new("3.12");
+
+diff --git a/crates/uv/tests/venv.rs b/crates/uv/tests/venv.rs
+index 067c1414..1462f6a0 100644
+--- a/crates/uv/tests/venv.rs
++++ b/crates/uv/tests/venv.rs
+@@ -327,7 +327,6 @@ fn create_venv_unknown_python_patch() -> Result<()> {
+ Ok(())
+ }
+
+-#[test]
+ fn create_venv_python_patch() -> Result<()> {
+ let temp_dir = assert_fs::TempDir::new()?;
+ let cache_dir = assert_fs::TempDir::new()?;
diff --git a/dev-python/uv/uv-0.1.24.ebuild b/dev-python/uv/uv-0.1.24.ebuild
new file mode 100644
index 000000000000..89b2758091e2
--- /dev/null
+++ b/dev-python/uv/uv-0.1.24.ebuild
@@ -0,0 +1,107 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;d76801da0943de985254fc6255c0e476b57c5836;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;e981e4dfe315582e84e2fd724832fb0e0c50b7aa;pubgrub-%commit%'
+)
+
+inherit cargo check-reqs
+
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/${P}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-DFS-2016
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ dev-libs/libgit2:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+}
+
+src_prepare() {
+ local PATCHES=(
+ # skip broken tests:
+ # - requiring pinned CPython versions (3.8.12, 3.11.7, 3.12.1)
+ # - requiring specific terminal width (COLUMNS don't seem to work)
+ # - other (perhaps failing because of other skipped tests?)
+ "${FILESDIR}/uv-0.1.24-skip-tests.patch"
+ )
+
+ rm crates/uv/tests/pip_compile_scenarios.rs || die
+ default
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+}