commit: 2c71178b51044909e21934f9da2515ca82cfa969 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Sun Aug 10 16:04:05 2025 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Sun Aug 10 16:04:05 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c71178b
dev-python/uv: Remove old Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> dev-python/uv/Manifest | 8 -- dev-python/uv/uv-0.7.19.ebuild | 183 ---------------------------------------- dev-python/uv/uv-0.7.22.ebuild | 184 ----------------------------------------- dev-python/uv/uv-0.8.4.ebuild | 184 ----------------------------------------- dev-python/uv/uv-0.8.5.ebuild | 184 ----------------------------------------- 5 files changed, 743 deletions(-) diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index ebc1c4b61e78..2ed36604571c 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -3,15 +3,7 @@ DIST reqwest-middleware-ad8b9d332d1773fde8b4cd008486de5973e0a3f8.gh.tar.gz 41975 DIST rs-async-zip-285e48742b74ab109887d62e1ae79e7c15fd4878.gh.tar.gz 37003 BLAKE2B c4aed18d82641ced2771ad8b8e800c45b1ded279e8ba1874ec9766907d042ae13b460beac739ced6e31c03a647e4238af96fb41e8c0dff4c5d4dd7f59c0ebbff SHA512 d6dd699f43ca6e23a4c8abb8673b37d3983081a8c78545492ea3c1d0b35e3a491277c341df6dd64fb7efaec3b23eb479dede99e9b41016b5504d1a6dc9fbc617 DIST rs-async-zip-c909fda63fcafe4af496a07bfda28a5aae97e58d.gh.tar.gz 51763 BLAKE2B 59d053bc6692014d884a9247dea1b57a8789469ba2abbcc92ec21bb0022cbd74874afc463082156ab697aa6c80635019857a5d7e2dc150274e8b04d720518c36 SHA512 3a309566f4925b02496fcf19bc2865968edf6fb65082ca4079d2cee79e6b0353a1910c079f2afe656da0d0f6ddde5102052a221ea35a7dabc6d690a11218b20a DIST tl-6e25b2ee2513d75385101a8ff9f591ef51f314ec.gh.tar.gz 37106 BLAKE2B c30d1c33f6f52e2bc83823eb6319f8a3e462b7c7408fb6a08f995747857ef234f81db4135a04f9d183095fe473a4087f8f0cb89d8f87ef4400285d2ce034ec22 SHA512 4abbc4240ed129c92da8d616e27a6df0f24cdc85a0803acfdae588ca91f9e5b8d482e3ac88b2e657ff68917b1b43cef1e7ef3c887f624659b231fa5a13fcae68 -DIST uv-0.7.19-crates.tar.xz 58207040 BLAKE2B 0e8761c020d5931f3ed134482fac5130b27e5e8f4a713faef225264f8f4d4a734fa6ce4a1ba97c771890ebf71549c7f6e1fe2353c6e763a60081393135091049 SHA512 1264bf6604f41902367e570615e5663850c3264753f100e3dee92be7bb83e3f9a4455727dbfdaa09ec736570d99ddf342bffed14e1ae65ddc4e362a9217d28c5 -DIST uv-0.7.19.gh.tar.gz 4120134 BLAKE2B 39fc4a5e9ac753f3bd328f715ca8e3e06177ffefda73eff41e565bd58e4d0c48e2f89d5e887f8efab4de73d1d51cd37c3de106d7b29e5bd2d496e993a05d078d SHA512 c86cd70422a4ac2eb549258c1ab763e12b8cc32afb30a4ca7ec926f7b40b352468c3bf9fddb14fcf4e3c043be088211c37ee43d384d5651ca39922de927a1372 -DIST uv-0.7.21-crates.tar.xz 58688248 BLAKE2B 83bbe7dd3ffe4b7ad439ba3ce56b1ce84bad15433a03e509412da67ac3f41725b0d9d5e8fc9d15860eafb60b0d0fa9061a92fa69f06080583e7e3b31bbbf17e7 SHA512 cf2925f6083439aac2a41dff4e863681c1cb88250693f870904e7b0ed7f11399539c444da1a9a257d5092b38800f63fbeda546dd9c9fa78f43d25fb1f5c905da -DIST uv-0.7.22.gh.tar.gz 4157975 BLAKE2B 8268476d92fb7241273e31ff4b7c996c22dea3c6bb3e688c4d9e69bf3cc1562dd8dcad3bd4167c97fb2df51e6291d9ba29b9ea99b73d11ec73f994fceab2b629 SHA512 e1c4f7ba7a2c679c87840cc4a1b56bb7c4d0ecdbe14347052f96af90a4ce869627a0659ab9266b433a39f4b600711d2c64f88bd38a7d477017fc9c596194354f DIST uv-0.8.2-crates.tar.xz 58707128 BLAKE2B 9579ad6877a960596fc49908e4f9451c8748c7f0ab41be15f310f43a19dcd61632fc7dd4fe4a2ad21cdc1478354c6b39e07272b8160296dc9dba9f70628a6f76 SHA512 442e7f2d550c00808f07297eda196ceec75aea3c9fbc1d86f288dc4c9d974f8197dac36f550ff903bb78f9c193eeab7447934f4f7bbb7799d246db28d9cf052a DIST uv-0.8.2.gh.tar.gz 4195351 BLAKE2B b50da561a66f4aac40c5fe6b55a1c10482155dc968bd6532927819ad0bb6f6b97de1b7707a32887b272ede682158b86d5f75bc10410a9fe7af8a7d2de204984a SHA512 9d10f182ab0fefb6028a0424a8cc1467f34e65de24a358a9038b8104f62808f479d004d3a45df7264b6aea81933353b78f1b3963c37ff66ec9da4a53cdca0e2c -DIST uv-0.8.4-crates.tar.xz 46195956 BLAKE2B c3b086c5a369a96dffbcb74f127f2a26f42e4437653dfb7d18dcee4afd202b90ff6518702516ad7dc6ffef2bf1762d0046c2e5176eaeac1bf2e1a0dd439621de SHA512 6e775ad6eab6cde2d738f15694e70eca67d7a312691137e25d28d722d1195da0195de6fc8973ac81b61aeae30a10b441ba26ae93a2017df35306a3b676fa4976 -DIST uv-0.8.4.gh.tar.gz 4223170 BLAKE2B 19875bf1def508c904f7ef73f59ef9ee1f9dc8cb927e0a312d5107035f7dd6bfd6bc1fc4ac0ae40719bc91541532783adedfaa5643dae7a17a17972a0e39479d SHA512 4a7fe390452f86f5ecbcc3270eb384c7a69c2db33a6993d1dbace8730be9a347fc71696c5d40d259e80f0f49f4661f90bbbe02cbed42d86421d2cfaf64de937e -DIST uv-0.8.5-crates.tar.xz 46204000 BLAKE2B caeb9358b1731fb9b06753541256e9d8c70a7e762388e9250ed3bfbedf7acbc77f1a173c323083a5d3a21afa5803d8c9c8476eb12eeee6ab72ed5853117e09fe SHA512 779efef1a0643e1779e4ae34e3f4a95fe73fd2322872f1c0cb97c41f5d5d0f559677c1d144159611dd8ca007aea9218524daa99a9c8ad1485b6e883fb16be793 -DIST uv-0.8.5.gh.tar.gz 4236752 BLAKE2B 53da673797d909722b352e13a38594f3f86cb306ea7eefdda2785c3cb4db60aa0d6ce94968cccba337a034f0bc51d9f50561379007755404bedc45d4e9b6bf7b SHA512 a9f383f8b1474450a295699688aeb1c97969b80750d53913312bc67a5f4e92072f29c9148b4c8217e11f62cf386b0c623cddea62f1681f049edbd4a66ae119fd DIST uv-0.8.6-crates.tar.xz 46208952 BLAKE2B f9557a45fbfaa9d6006f935629130960b5d414cd185d7fbdb1415e7f3875568d07ade946a0b606712e9e2e06e7964bb0fb8318e02e78609899a852ed073b87a6 SHA512 c79fa70a6a670dc2d80efbf0b51942806b2b16ab7b4c63983ab634453ab32142322302bd68ab80f5bcfee08138bca8d04a7d152c76ca5d94bfc40255cab8477b DIST uv-0.8.6.gh.tar.gz 4255911 BLAKE2B 198ed83cb487f25a35957959bca32f98b8f5343712a7a9bbf3f817f189f1ec9c7903fa2e64ec65c9b3e18a469506c942ebb0ca50b39a353dc7e82228386fb69c SHA512 d164488e967364d254bab989933a5faf27c52c91da1bdeb6f3419fce335dfac5d4ea6cd717cac6b05fee9f85605cf21930c3d37119c49a98cb13c53d51ea996d diff --git a/dev-python/uv/uv-0.7.19.ebuild b/dev-python/uv/uv-0.7.19.ebuild deleted file mode 100644 index 4f2959a9b534..000000000000 --- a/dev-python/uv/uv-0.7.19.ebuild +++ /dev/null @@ -1,183 +0,0 @@ -# Copyright 2024-2025 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;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-middleware' - [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-retry' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.0" - -inherit cargo check-reqs - -CRATE_PV=${PV} -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://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-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 Boost-1.0 - ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ppc ppc64 ~riscv x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - test? ( - dev-lang/python:3.9 - dev-lang/python:3.10 - dev-lang/python:3.11 - dev-lang/python:3.12 - dev-lang/python:3.13 - !!~dev-python/uv-0.5.0 - ) -" - -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 - rust_pkg_setup -} - -src_prepare() { - default - - # replace upstream crate substitution with our crate substitution, sigh - local pkg - for pkg in reqwest-middleware reqwest-retry; do - local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die) - sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die - done - - # force thin lto, makes build much faster and less memory hungry - # (i.e. makes it possible to actually build uv on 32-bit PPC) - sed -i -e '/lto/s:fat:thin:' Cargo.toml || die - - # enable system libraries where supported - export ZSTD_SYS_USE_PKG_CONFIG=1 - # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys? - - # remove unbundled sources, just in case - find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die - - # bzip2-sys requires a pkg-config file - # https://github.com/alexcrichton/bzip2-rs/issues/104 - mkdir "${T}/pkg-config" || die - export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} - cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die - Name: bzip2 - Version: 9999 - Description: - Libs: -lbz2 - EOF -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - insinto /etc/xdg/uv - newins - uv.toml <<-EOF || die - # These defaults match Fedora, see: - # https://src.fedoraproject.org/rpms/uv/pull-request/18 - - # By default ("automatic"), uv downloads missing Python versions - # automatically and keeps them in the user's home directory. - # Disable that to make downloading opt-in, and especially - # to avoid unnecessarily fetching custom Python when the distro - # package would be preferable. Python builds can still be - # downloaded manually via "uv python install". - # - # https://docs.astral.sh/uv/reference/settings/#python-downloads - python-downloads = "manual" - - # By default ("managed"), uv always prefers self-installed - # Python versions over the system Python, independently - # of versions. Since we generally expect users to use that - # to install old Python versions not in ::gentoo anymore, - # this effectively means that uv would end up preferring very - # old Python versions over the newer ones that are provided - # by the system. Default to using the system versions to avoid - # this counter-intuitive behavior. - # - # https://docs.astral.sh/uv/reference/settings/#python-preference - python-preference = "system" - EOF -} diff --git a/dev-python/uv/uv-0.7.22.ebuild b/dev-python/uv/uv-0.7.22.ebuild deleted file mode 100644 index 2af5510a88f4..000000000000 --- a/dev-python/uv/uv-0.7.22.ebuild +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2024-2025 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/astral-sh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-middleware' - [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-retry' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.0" - -inherit cargo check-reqs - -CRATE_PV=0.7.21 -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://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-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 Boost-1.0 - CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 - ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ppc ppc64 ~riscv ~x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - test? ( - dev-lang/python:3.9 - dev-lang/python:3.10 - dev-lang/python:3.11 - dev-lang/python:3.12 - dev-lang/python:3.13 - !!~dev-python/uv-0.5.0 - ) -" - -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 - rust_pkg_setup -} - -src_prepare() { - default - - # replace upstream crate substitution with our crate substitution, sigh - local pkg - for pkg in reqwest-middleware reqwest-retry; do - local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die) - sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die - done - - # force thin lto, makes build much faster and less memory hungry - # (i.e. makes it possible to actually build uv on 32-bit PPC) - sed -i -e '/lto/s:fat:thin:' Cargo.toml || die - - # enable system libraries where supported - export ZSTD_SYS_USE_PKG_CONFIG=1 - # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys? - - # remove unbundled sources, just in case - find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die - - # bzip2-sys requires a pkg-config file - # https://github.com/alexcrichton/bzip2-rs/issues/104 - mkdir "${T}/pkg-config" || die - export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} - cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die - Name: bzip2 - Version: 9999 - Description: - Libs: -lbz2 - EOF -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - insinto /etc/xdg/uv - newins - uv.toml <<-EOF || die - # These defaults match Fedora, see: - # https://src.fedoraproject.org/rpms/uv/pull-request/18 - - # By default ("automatic"), uv downloads missing Python versions - # automatically and keeps them in the user's home directory. - # Disable that to make downloading opt-in, and especially - # to avoid unnecessarily fetching custom Python when the distro - # package would be preferable. Python builds can still be - # downloaded manually via "uv python install". - # - # https://docs.astral.sh/uv/reference/settings/#python-downloads - python-downloads = "manual" - - # By default ("managed"), uv always prefers self-installed - # Python versions over the system Python, independently - # of versions. Since we generally expect users to use that - # to install old Python versions not in ::gentoo anymore, - # this effectively means that uv would end up preferring very - # old Python versions over the newer ones that are provided - # by the system. Default to using the system versions to avoid - # this counter-intuitive behavior. - # - # https://docs.astral.sh/uv/reference/settings/#python-preference - python-preference = "system" - EOF -} diff --git a/dev-python/uv/uv-0.8.4.ebuild b/dev-python/uv/uv-0.8.4.ebuild deleted file mode 100644 index 1e05483d5c9c..000000000000 --- a/dev-python/uv/uv-0.8.4.ebuild +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2024-2025 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/astral-sh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-middleware' - [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-retry' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.0" - -inherit cargo check-reqs - -CRATE_PV=${PV} -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://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-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 - CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 - ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - test? ( - dev-lang/python:3.9 - dev-lang/python:3.10 - dev-lang/python:3.11 - dev-lang/python:3.12 - dev-lang/python:3.13 - !!~dev-python/uv-0.5.0 - ) -" - -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 - rust_pkg_setup -} - -src_prepare() { - default - - # replace upstream crate substitution with our crate substitution, sigh - local pkg - for pkg in reqwest-middleware reqwest-retry; do - local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die) - sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die - done - - # force thin lto, makes build much faster and less memory hungry - # (i.e. makes it possible to actually build uv on 32-bit PPC) - sed -i -e '/lto/s:fat:thin:' Cargo.toml || die - - # enable system libraries where supported - export ZSTD_SYS_USE_PKG_CONFIG=1 - # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys? - - # remove unbundled sources, just in case - find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die - - # bzip2-sys requires a pkg-config file - # https://github.com/alexcrichton/bzip2-rs/issues/104 - mkdir "${T}/pkg-config" || die - export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} - cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die - Name: bzip2 - Version: 9999 - Description: - Libs: -lbz2 - EOF -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - insinto /etc/xdg/uv - newins - uv.toml <<-EOF || die - # These defaults match Fedora, see: - # https://src.fedoraproject.org/rpms/uv/pull-request/18 - - # By default ("automatic"), uv downloads missing Python versions - # automatically and keeps them in the user's home directory. - # Disable that to make downloading opt-in, and especially - # to avoid unnecessarily fetching custom Python when the distro - # package would be preferable. Python builds can still be - # downloaded manually via "uv python install". - # - # https://docs.astral.sh/uv/reference/settings/#python-downloads - python-downloads = "manual" - - # By default ("managed"), uv always prefers self-installed - # Python versions over the system Python, independently - # of versions. Since we generally expect users to use that - # to install old Python versions not in ::gentoo anymore, - # this effectively means that uv would end up preferring very - # old Python versions over the newer ones that are provided - # by the system. Default to using the system versions to avoid - # this counter-intuitive behavior. - # - # https://docs.astral.sh/uv/reference/settings/#python-preference - python-preference = "system" - EOF -} diff --git a/dev-python/uv/uv-0.8.5.ebuild b/dev-python/uv/uv-0.8.5.ebuild deleted file mode 100644 index 1e05483d5c9c..000000000000 --- a/dev-python/uv/uv-0.8.5.ebuild +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2024-2025 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/astral-sh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-middleware' - [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-retry' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.0" - -inherit cargo check-reqs - -CRATE_PV=${PV} -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://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-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 - CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 - ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - test? ( - dev-lang/python:3.9 - dev-lang/python:3.10 - dev-lang/python:3.11 - dev-lang/python:3.12 - dev-lang/python:3.13 - !!~dev-python/uv-0.5.0 - ) -" - -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 - rust_pkg_setup -} - -src_prepare() { - default - - # replace upstream crate substitution with our crate substitution, sigh - local pkg - for pkg in reqwest-middleware reqwest-retry; do - local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die) - sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die - done - - # force thin lto, makes build much faster and less memory hungry - # (i.e. makes it possible to actually build uv on 32-bit PPC) - sed -i -e '/lto/s:fat:thin:' Cargo.toml || die - - # enable system libraries where supported - export ZSTD_SYS_USE_PKG_CONFIG=1 - # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys? - - # remove unbundled sources, just in case - find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die - - # bzip2-sys requires a pkg-config file - # https://github.com/alexcrichton/bzip2-rs/issues/104 - mkdir "${T}/pkg-config" || die - export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} - cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die - Name: bzip2 - Version: 9999 - Description: - Libs: -lbz2 - EOF -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - insinto /etc/xdg/uv - newins - uv.toml <<-EOF || die - # These defaults match Fedora, see: - # https://src.fedoraproject.org/rpms/uv/pull-request/18 - - # By default ("automatic"), uv downloads missing Python versions - # automatically and keeps them in the user's home directory. - # Disable that to make downloading opt-in, and especially - # to avoid unnecessarily fetching custom Python when the distro - # package would be preferable. Python builds can still be - # downloaded manually via "uv python install". - # - # https://docs.astral.sh/uv/reference/settings/#python-downloads - python-downloads = "manual" - - # By default ("managed"), uv always prefers self-installed - # Python versions over the system Python, independently - # of versions. Since we generally expect users to use that - # to install old Python versions not in ::gentoo anymore, - # this effectively means that uv would end up preferring very - # old Python versions over the newer ones that are provided - # by the system. Default to using the system versions to avoid - # this counter-intuitive behavior. - # - # https://docs.astral.sh/uv/reference/settings/#python-preference - python-preference = "system" - EOF -}
