diff options
-rw-r--r-- | dev-python/uv/Manifest | 3 | ||||
-rw-r--r-- | dev-python/uv/uv-0.2.15.ebuild | 103 |
2 files changed, 106 insertions, 0 deletions
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index 533f1220f8cf..1979418ef5d3 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -1,4 +1,7 @@ DIST pubgrub-a68cbd1a26e43986a31563e1d127e83bafca3a0c.gh.tar.gz 86909 BLAKE2B f7e3cc92d813590f971786967996383fa20243cfff1962bdf2e67a5875597372927c67b4b7b2bc5a227da2b3baa8936387842c940da4123b13a049882f34b50c SHA512 4f6915693acee1ba51d37c6a77ac537010e165bfdc4b7840fc7600bfbc8d64f16ab97729e74b61a40e1382f839605e57c1694806c325a51f4d47f571ed21ee03 +DIST pubgrub-b4435e2f3af10dab2336a0345b35dcd622699d06.gh.tar.gz 86966 BLAKE2B 783191e6a6d6eaeb6d8b1f773d449de5aebd7864296758b8a0fa87df62fae855c0c0edcb4ddb11694d70a3cd8870d7b14b0c7b48a2788026d3a6104685bf46dd SHA512 2e58fad9633070adc8e7549475a8d01c2d8d56d0b6492ab3fa773cff94dc004ca1d841e3428a84dfb495e664850a184d4699d364a4d8e4298b6b8370282d110d DIST rs-async-zip-1dcb40cfe1bf5325a6fd4bfcf9894db40241f585.gh.tar.gz 96766 BLAKE2B f9efab73c65394e33e090a6292875ebf35e6669b15c356f102eb109784a4503606ae39106cd0ebe3d7d479cb0b30806d7baaaebf22d826836a24f7ed49100934 SHA512 3b845b05d97c5ab5cea286a7c11846838b40bb1fac98a51782600849a53231be8fa205094c6bdd00f6e193c807b10b28f947698696382be99cae0a8d681dabdc DIST uv-0.2.10-crates.tar.xz 49410344 BLAKE2B d1e921cac3e9ef07fc9055fa6ff463776e1f0fcf0c7e655d7774e5a422c8aaab4f892e3962d38e8500545f831f25d106628d11bddc98095b722156a913d824b4 SHA512 71ba87d1d7c9668086d62420318c6d9489446259d55ae17ee9bb63530e63c140533dfb575d838ff75f8fb053dc316924c7e699386a78ca043428b87a3e68d70f DIST uv-0.2.11.gh.tar.gz 1188556 BLAKE2B 9d22cf0bc202635c0631eb15dc955d19c4c65f1baff31391e62962837ff91611479bb9190cbcd15655dd92366ce58c8b13bfea369812c68fb6a56cb11883d745 SHA512 124f4d866307ff0ac522c5780995d6f4be3ae95a35ff4615937511b2d658eb4444005fa49905f1886fc22fe35e7882efbe5fbd87752d457e441c462639d8506a +DIST uv-0.2.15-crates.tar.xz 48793072 BLAKE2B 5988199d887f371f275a6ee40415743823c73a164a3dcf0c2d384e644d75625305e503543aa6027df0aefafcfc434c1a5da7ed9bea5760a3b83f4aef2f097545 SHA512 8ccf76686df81b0b704322e35e22ff95b8bf9aa4b417365e25ca77d50463095975de75959580cf2465404da7abcd88c6bc2aad5c9633110d55d5534ddeac97b2 +DIST uv-0.2.15.gh.tar.gz 1227841 BLAKE2B 712b0a2180631ce6c8e1d8e1bbd714efc9f97a31e92c295142826f53b1c740b922f80c05d1ab802eca684220252cad699cbece5679e7cc855e2ca34b45cac2d6 SHA512 c54e78c665f61dc649f11fc0a0d49d422c6f06115453512d98de593736b0789843d1c5431d93e5af1541f02031a4c650b7233d23016d70eab1e384672919068c diff --git a/dev-python/uv/uv-0.2.15.ebuild b/dev-python/uv/uv-0.2.15.ebuild new file mode 100644 index 000000000000..b0b964235e5d --- /dev/null +++ b/dev-python/uv/uv-0.2.15.ebuild @@ -0,0 +1,103 @@ +# 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;1dcb40cfe1bf5325a6fd4bfcf9894db40241f585;rs-async-zip-%commit%' + [pubgrub]='https://github.com/astral-sh/pubgrub;b4435e2f3af10dab2336a0345b35dcd622699d06;pubgrub-%commit%' +) + +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://dev.gentoo.org/~mgorny/dist/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 ISC MIT + MPL-2.0 Unicode-DFS-2016 +" +# ring crate +LICENSE+=" openssl" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="test" +PROPERTIES="test_network" + +BDEPEND=" + >=virtual/rust-1.77 + 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() { + default + + # https://github.com/vorot93/tokio-tar/pull/23 + # (fortunately uv already depends on portable-atomic, so we don't + # have to fight Cargo.lock) + cd "${WORKDIR}/cargo_home/gentoo/tokio-tar-0.3.1" || die + eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch" +} + +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} + + cd crates/uv || die + cargo_src_test --no-fail-fast +} + +src_install() { + cd crates/uv || die + cargo_src_install +} |