diff options
-rw-r--r-- | app-admin/awscli/Manifest | 1 | ||||
-rw-r--r-- | app-admin/awscli/awscli-1.19.85.ebuild | 58 | ||||
-rw-r--r-- | app-emulation/fs-uae/fs-uae-3.0.5.ebuild | 6 | ||||
-rw-r--r-- | dev-lang/rust/rust-1.52.1.ebuild | 6 | ||||
-rw-r--r-- | dev-python/awxkit/Manifest | 1 | ||||
-rw-r--r-- | dev-python/awxkit/awxkit-19.2.0.ebuild | 29 | ||||
-rw-r--r-- | dev-python/blosc/Manifest | 1 | ||||
-rw-r--r-- | dev-python/blosc/blosc-1.10.4.ebuild | 46 | ||||
-rw-r--r-- | dev-python/boto3/Manifest | 1 | ||||
-rw-r--r-- | dev-python/boto3/boto3-1.17.85.ebuild | 56 | ||||
-rw-r--r-- | dev-python/botocore/Manifest | 1 | ||||
-rw-r--r-- | dev-python/botocore/botocore-1.20.85.ebuild | 59 | ||||
-rw-r--r-- | dev-python/prometheus_client/Manifest | 1 | ||||
-rw-r--r-- | dev-python/prometheus_client/prometheus_client-0.11.0.ebuild | 21 | ||||
-rw-r--r-- | dev-python/python-magic/Manifest | 1 | ||||
-rw-r--r-- | dev-python/python-magic/python-magic-0.4.23.ebuild | 30 | ||||
-rw-r--r-- | dev-python/tox/tox-3.23.1.ebuild | 7 | ||||
-rw-r--r-- | dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild | 12 | ||||
-rw-r--r-- | eclass/distutils-r1.eclass | 96 |
19 files changed, 380 insertions, 53 deletions
diff --git a/app-admin/awscli/Manifest b/app-admin/awscli/Manifest index 8df275dba1fa..ff695809be06 100644 --- a/app-admin/awscli/Manifest +++ b/app-admin/awscli/Manifest @@ -5,3 +5,4 @@ DIST awscli-1.19.80.tar.gz 2006767 BLAKE2B 9840d8068d10048ff043b43cb3e2dc49ee55f DIST awscli-1.19.82.tar.gz 2007776 BLAKE2B aaa065a555c481733a3bece914cc84d97845be52a6d254b74494b8f3fc554dbaf33a5cddedd45fdd1f5811e9fad2ce9172939dfa352ba693576dc8554e0d7283 SHA512 87e4b4449d05dd01480c74b992c25163761dc4b495f0414c46631bc547d6b7d2b3b0805205c6d0b641b33f1a8ec98ccb821fdcb18bd2f672695b431505792e18 DIST awscli-1.19.83.tar.gz 2008544 BLAKE2B e970d95e9caad606e66f1985dcf2500670ded3da657926e9ec7f37201a45f480318a6081aa2cdd0e27d46a498085c6fa8e9a13e0c8a091f9aa6a12af885d90e9 SHA512 03e10001115e201c6db3f7bb45eaf47816a95813678502e8b97b1216c9748385df2832f55328780b6e070d57e13a7a680a8b429fcbae351be100add84bb16d45 DIST awscli-1.19.84.tar.gz 2011045 BLAKE2B 581a7d1c22f7f92c434b6726cae34cdfde1f6da73c9b4470c73386389b1969872825850623685ddfc5958e99bc1d065b9f7afad8f88185329f0752dcb79c0b82 SHA512 4408bae1564346c873693e82124d33c17563a0a35fa41c8e2896a8ab4df23c5c41d17c87b522e7c2222335146dab0b9b32aa671f6c0e9f769bdeccf36948ae72 +DIST awscli-1.19.85.tar.gz 2014586 BLAKE2B 7d7ec1d8ece349875403258988ac1732e48a70293471b76b0b3e5278877d606b9390cf3a01166914b3db78696f31598d30c4de1a0f1e5dcc2cc3582bbcf9a493 SHA512 738d433997f7d9a21db2d9d236cf5c1cc0a61ebf601cc2a96f292e22f9fdd4bbb6e6377fb55d161814275b653f61974c13b399d450ecea888b26543c6e3cf955 diff --git a/app-admin/awscli/awscli-1.19.85.ebuild b/app-admin/awscli/awscli-1.19.85.ebuild new file mode 100644 index 000000000000..d57c79858b9f --- /dev/null +++ b/app-admin/awscli/awscli-1.19.85.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +PYTHON_COMPAT=( python3_{7..9} ) + +inherit bash-completion-r1 distutils-r1 + +DESCRIPTION="Universal Command Line Environment for AWS" +HOMEPAGE="https://pypi.org/project/awscli/" +#SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz" +SRC_URI="https://github.com/aws/aws-cli/archive/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/aws-cli-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +# botocore is x.(y+1).z +BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1)).$(ver_cut 3-)" +RDEPEND=" + >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}] + dev-python/colorama[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/rsa[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.4.0[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests --install nose + +PATCHES=( + "${FILESDIR}"/awscli-1.19.47-py39.patch +) + +python_test() { + distutils_install_for_testing + # integration tests require AWS credentials and Internet access + nosetests -v tests/{functional,unit} || + die "Tests failed for ${EPYTHON}" +} + +python_install_all() { + newbashcomp bin/aws_bash_completer aws + + insinto /usr/share/zsh/site-functions + newins bin/aws_zsh_completer.sh _aws + + distutils-r1_python_install_all + + rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die +} diff --git a/app-emulation/fs-uae/fs-uae-3.0.5.ebuild b/app-emulation/fs-uae/fs-uae-3.0.5.ebuild index 3cf31cf10ce0..dab8a94a18e3 100644 --- a/app-emulation/fs-uae/fs-uae-3.0.5.ebuild +++ b/app-emulation/fs-uae/fs-uae-3.0.5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -50,6 +50,10 @@ src_prepare() { # used? Lua is bundled but differs from upstream. We keep the # default of disabling the Lua feature anyway as it is unfinished. rm -r libmpeg2/ libudis86/ || die + + # Fix building with GCC 11 / C++-17. This code was removed from master so + # this change has not been sent upstream. + sed -i "s/ throw([^)]*)//g" src/dosbox/setup.h || die } src_configure() { diff --git a/dev-lang/rust/rust-1.52.1.ebuild b/dev-lang/rust/rust-1.52.1.ebuild index 42d6f2b17da0..efa716a08b92 100644 --- a/dev-lang/rust/rust-1.52.1.ebuild +++ b/dev-lang/rust/rust-1.52.1.ebuild @@ -279,10 +279,14 @@ src_configure() { local rust_stage0_root if use system-bootstrap; then - rust_stage0_root="$(rustc --print sysroot)" + local printsysroot + printsysroot="$(rustc --print sysroot || die "Can't determine rust's sysroot")" + rust_stage0_root="${printsysroot}" else rust_stage0_root="${WORKDIR}"/rust-stage0 fi + # in case of prefix it will be already prefixed, as --print sysroot returns full path + [[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory" rust_target="$(rust_abi)" diff --git a/dev-python/awxkit/Manifest b/dev-python/awxkit/Manifest index 02d5ebec89e2..e1e603ec39b8 100644 --- a/dev-python/awxkit/Manifest +++ b/dev-python/awxkit/Manifest @@ -1,2 +1,3 @@ DIST awxkit-19.0.0.tar.gz 95820 BLAKE2B eadb3ffbfd5a1bf2835e4a7df788e06676cd7c8132c8527c04c4876e87039b72ed00775ddc342e0b31bb0c4a7036b3ecb0456761b9a6a1a5f40e60656fd06521 SHA512 169531549fd668e9917db55f2d61d8959645659496f249d9bb94432b9d7449aa549a751aa3c0255c38334e24684e4039e581d26aa2c291ede88b623824b78ff9 DIST awxkit-19.1.0.tar.gz 94839 BLAKE2B 751084164581dd772c4f99b14d3e3526effd758bffda0820be56f0d963903314458c0037df33606bf0329009186ef86df1fa0c41f9ecd377b8c2d2de15bcd9e0 SHA512 a4be398f81f370e62b60605c0add70775eebf78bbd21080a65caa64c5b9f9daf33315516cd3771d434ff86d2bb9ec089545adbc174bd19ef5e52ae69e6cb79db +DIST awxkit-19.2.0.tar.gz 94870 BLAKE2B becd8819e5d7f495d73a16302389af802db9fc3d9e24e09f93f0e5a730552e676a2f6514a07ea6d90436837c78a32e6a7be9ba541942aae6e8437c30aa4fb2c5 SHA512 3bcae70da26170a8b9cfc49c3ea3391f4fc03c868286499b5d3303da3559927c1fd2c0aeae282831412825e34fb83d8324fe2e58ba11d60598bbbbb26ff661a3 diff --git a/dev-python/awxkit/awxkit-19.2.0.ebuild b/dev-python/awxkit/awxkit-19.2.0.ebuild new file mode 100644 index 000000000000..8045b8749b2a --- /dev/null +++ b/dev-python/awxkit/awxkit-19.2.0.ebuild @@ -0,0 +1,29 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..10} ) +inherit distutils-r1 + +DESCRIPTION="Command line interface for Ansible AWX" +HOMEPAGE="https://github.com/ansible/awx" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND="dev-python/cryptography[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/urllib3[${PYTHON_USEDEP}] + dev-python/websocket-client[${PYTHON_USEDEP}]" + +distutils_enable_tests pytest + +python_prepare_all() { + sed -e 's|websocket-client==[[:digit:]\.]*|websocket-client|' \ + -i setup.py || die + distutils-r1_python_prepare_all +} diff --git a/dev-python/blosc/Manifest b/dev-python/blosc/Manifest index 424283edb88b..c35afc208d92 100644 --- a/dev-python/blosc/Manifest +++ b/dev-python/blosc/Manifest @@ -1 +1,2 @@ DIST blosc-1.10.2.tar.gz 858096 BLAKE2B ff314011e1afc2d972c2445df9ad25c245494479201ddd0944ddf5f14aa0aa772c9da1e117eb5395f5488e7238aefe1236d9a5579b4d03be2b041790de9575e8 SHA512 82dab50a49ddd45d8276fd43999233f41b507e35af5897ed4945565fde8f56be0855b0dd926d254bd77904ec7a13ad3f024007159510b677769d97599b731222 +DIST blosc-1.10.4.tar.gz 858123 BLAKE2B 01c9bd9486a27944caae1bc92b591c8b6f821bb5a6a0b44bc19f6c1778f2a2573a25783631c2140daa4d701569e584c93f8d5da76a92b73fb35ae5880ad2ea34 SHA512 bb41b83ff5198603e3721150976f95ffcbfe7b91bd5b11e1aa5e440dee1af7a9a6f5033e5aa4858117432e1522052ec074e9f14b5be52545e3752bc818637703 diff --git a/dev-python/blosc/blosc-1.10.4.ebuild b/dev-python/blosc/blosc-1.10.4.ebuild new file mode 100644 index 000000000000..43923c61a128 --- /dev/null +++ b/dev-python/blosc/blosc-1.10.4.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) + +inherit distutils-r1 + +DESCRIPTION="High performance compressor optimized for binary data" +HOMEPAGE="http://python-blosc.blosc.org" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +SLOT="0" +LICENSE="MIT" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=">=dev-libs/c-blosc-1.19.0:=" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-python/scikit-build[${PYTHON_USEDEP}] + test? ( + dev-python/numpy[${PYTHON_USEDEP}] + ) +" + +DOCS=( ANNOUNCE.rst README.rst RELEASE_NOTES.rst ) +PATCHES=( + "${FILESDIR}"/blosc-1.10.0-unbundle.patch +) + +python_prepare_all() { + export BLOSC_DIR="${EPREFIX}/usr" + distutils-r1_python_prepare_all +} + +python_test() { + "${EPYTHON}" -m blosc.test -v || die +} + +python_install() { + distutils-r1_python_install + python_optimize +} diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index e31b9ecdf1a6..8989654efeaf 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -6,3 +6,4 @@ DIST boto3-1.17.80.tar.gz 375564 BLAKE2B dd10855ff88a0f24789cb389b0e10c3a6d4f984 DIST boto3-1.17.82.tar.gz 376284 BLAKE2B 33520a1a80566a17b3a0665ce2520e73bab69b48db02b1ac25b6ff438a2dd68a75c08026abce6a2274e1fa40aaa7fe4f0e56ecc663672d9a6eef205df5d0baea SHA512 0ab14df312032a64746624b67dc721c45ed6cb7c3be21cceba77eb4c20a76d85bd2db22eca41f598431f6579473becc78e84075a57ab43b16561d4b58e3648a5 DIST boto3-1.17.83.tar.gz 376963 BLAKE2B 0bdcae1097a8ee4250c08fe639419ea99b83e33ea77433698ee9bafd928252e6b836c93bb83d383ff4aeacc583d2309236e80d2ebd5425e320aa2a80da295964 SHA512 c1dad3d17b0bf628ae31edda3a6eaf01fa1b820031d541f0dd4f4d56e98a1da9f868ed1c6e63ff0b6bd83cda027c540c08b41a066d3b35959294779c2113cb37 DIST boto3-1.17.84.tar.gz 377284 BLAKE2B dbbc6b8643b720a8a5409c334e268b6de465e7db05684ff5a70d95c91e7e2feff3c3db94ad85f400ac7451e8f37537732ed416602c35bf37955d840701bf5bb4 SHA512 19d224c9bd7135d1de4da807b51f72a3366d5774dba970896388bffb1308b348b001453c0632de5eee8f03bdf0c2b8cf3e9da894e73cb16e10551e060beef5fe +DIST boto3-1.17.85.tar.gz 377940 BLAKE2B 7fdfa25b7fd6467f484dc988bac280b0e4e7044f2a064625efdc5e6f9725b038f08b88f63442452b151541ae4f0ff26ae395816f6422b49474d2e8d93df3a7da SHA512 126e78056b8ac52cba3db5965563c4b6c1451f5aeba2d7d775f358e75f810229102328230e0f5dd1ef3767468106f1d7f3af5575e51422c6b63ef6b509318e70 diff --git a/dev-python/boto3/boto3-1.17.85.ebuild b/dev-python/boto3/boto3-1.17.85.ebuild new file mode 100644 index 000000000000..5577742efeb7 --- /dev/null +++ b/dev-python/boto3/boto3-1.17.85.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{7..9} ) +DISTUTILS_USE_SETUPTOOLS=bdepend +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE="https://github.com/boto/boto3" +LICENSE="Apache-2.0" +SLOT="0" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/boto/boto3" + inherit git-r3 + BOTOCORE_PV=${PV} +else + SRC_URI="https://github.com/boto/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" + + # botocore is x.(y+3).z + BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)" +fi + +RDEPEND=" + >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.3.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx docs/source \ + 'dev-python/guzzle_sphinx_theme' +distutils_enable_tests nose + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # prevent an infinite loop + rm tests/functional/docs/test_smoke.py || die + + distutils-r1_python_prepare_all +} + +python_test() { + nosetests -v tests/unit/ tests/functional/ || die "test failed under ${EPYTHON}" +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index b0bd13423abf..f74f63db14d5 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -6,3 +6,4 @@ DIST botocore-1.20.80.tar.gz 7767475 BLAKE2B de8f7f6575e9e5a7f7e8ad0adeb886be776 DIST botocore-1.20.82.tar.gz 7772021 BLAKE2B 09fc32ba42275afde8332287825e954bd5bb8b7f5bea00666f73baf60297bd972b2ec6525f1d6e16e22bb23e233b619fecbb666dcdededcc07a016c9763ab774 SHA512 227b7160ef9d945d00efdcdfaa60ed85d50b183fbeded816e6185b8125b32c2fa0eee9dc473f83f977c0de2139eb042f3338eea37081b37d480edd7c300b641f DIST botocore-1.20.83.tar.gz 7786168 BLAKE2B 1bd8864da814ed502c4e0860d8c7a82c6c15d778f2aafc333ffe6e64f45398c173ad7700f9fc90a9fbf4b91f8f77b5494619bdc6e4bda1dcec6cef8d496327c2 SHA512 7ff1c73d85e02cc1f2de1de915d337369681e28ac44aba5cfb29df6bc4377f664170844ed8caeb7e50c97d127d1e9caac08fac18724046a7f1450cc7ea212b4a DIST botocore-1.20.84.tar.gz 7792555 BLAKE2B e9459fad976bb81541ce933666edccdbfe9910674cde9f23b264388845cb3e98cae77639a3333cb3fec00c33602af8fea82681fbd387775ff9ed47245e4d0e4f SHA512 da19ffb81c24c2e7a10c5e0647179f36ebf89c097f795cb16d723a3e0311a81e9c835b7b3795d02047d084a098507f4b6e0cc502129877e4258691a6a6ee1cee +DIST botocore-1.20.85.tar.gz 7795550 BLAKE2B 483b6fef456de9a37b00dbaf0f2af766079447f70fb992c96f0ab8208c3ce0e39a459d89a29e07b7e9fed9e1b39ddfeac28c3de5bfac1ddde1aac2cbecfe4056 SHA512 1a3e07da2c1b60680c858e4b732fe340563b18ec10aad7a9250bff7e7a11a97ccd3e952245187b90fe84b2fddd8f48568d70d69a03612782da5d90a8e2d06de3 diff --git a/dev-python/botocore/botocore-1.20.85.ebuild b/dev-python/botocore/botocore-1.20.85.ebuild new file mode 100644 index 000000000000..afca295f8bed --- /dev/null +++ b/dev-python/botocore/botocore-1.20.85.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{7..9} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE="https://github.com/boto/botocore" +LICENSE="Apache-2.0" +SLOT="0" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/boto/botocore" + inherit git-r3 +else + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +RDEPEND=" + dev-python/six[${PYTHON_USEDEP}] + dev-python/jmespath[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +PATCHES=( + "${FILESDIR}/1.8.6-tests-pass-all-env-vars-to-cmd-runner.patch" +) + +distutils_enable_sphinx docs/source \ + 'dev-python/guzzle_sphinx_theme' +distutils_enable_tests nose + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + # very unstable + sed -i -e 's:test_stress_test_token_bucket:_&:' \ + tests/functional/retries/test_bucket.py || die + distutils-r1_src_prepare +} + +python_test() { + # note: suites need to be run separately as one of the unit tests + # seems to be leaking mocks and breaking a few functional tests + nosetests -v tests/unit || + die "unit tests failed under ${EPYTHON}" + nosetests -v tests/functional || + die "functional tests failed under ${EPYTHON}" +} diff --git a/dev-python/prometheus_client/Manifest b/dev-python/prometheus_client/Manifest index 8317e54b7930..6f6c15159bd1 100644 --- a/dev-python/prometheus_client/Manifest +++ b/dev-python/prometheus_client/Manifest @@ -1 +1,2 @@ DIST prometheus_client-0.10.1.tar.gz 71676 BLAKE2B 63a597eca0f7684013ca2de8cda9d9ca7ab64d3ff923e3d328c1e54e794ea9e34771795117a8cd8254063028ceedd9c50d15c89bba48d3994e79629ebae6df14 SHA512 231c86bfeb2a35fbaf172005ead5b790b107c55f3657d94ad417c0036cc72ad6b48ebef7d52d2fdd1bca9b98032d1057250a880b002a29e98efa803886f26766 +DIST prometheus_client-0.11.0.tar.gz 72272 BLAKE2B 2526a65acf928ce5f492c6a43276ecb951d8b600eeb5050b92db091919862eb0ec4f41ca41347b4dd70a612f70e8f4a49796572de80b197d21c3a8cf8e303201 SHA512 5e644d781b7fcc3e0e386a2244f524ccaf978f1eab87b1d6d8009ac3f10fe2ca4adf2c76c2a2ffa47b4b54237cd906807d55bd99530a92d82cd3825de93280dc diff --git a/dev-python/prometheus_client/prometheus_client-0.11.0.ebuild b/dev-python/prometheus_client/prometheus_client-0.11.0.ebuild new file mode 100644 index 000000000000..dfe3fc49a70a --- /dev/null +++ b/dev-python/prometheus_client/prometheus_client-0.11.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..10} ) +inherit distutils-r1 + +DESCRIPTION="Python client for the Prometheus monitoring system" +HOMEPAGE="https://pypi.org/project/prometheus-client/ + https://github.com/prometheus/client_python/" +SRC_URI="https://github.com/prometheus/client_python/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/client_python-${PV}" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND="dev-python/twisted[${PYTHON_USEDEP}]" + +distutils_enable_tests pytest diff --git a/dev-python/python-magic/Manifest b/dev-python/python-magic/Manifest index 3d84bdf143a1..fc4007252a89 100644 --- a/dev-python/python-magic/Manifest +++ b/dev-python/python-magic/Manifest @@ -1 +1,2 @@ DIST python-magic-0.4.22.gh.tar.gz 863567 BLAKE2B 6994869e4cc5ba5ff7ae1a6ac6117f5b1553a11079fb5faaa23b48ee241b2615e2514270f66c55b417b4051d6a5aedd7c289f139c23842979e4af0cdb7a34e3a SHA512 7f16c090a713be4ecc25727f0195bddfadfa9f54507899e35f48bd268ea1d78637ca024ecf02e331a8988a931e430f7346bb5f4b46e58ddc1ff03ec678640e6d +DIST python-magic-0.4.23.gh.tar.gz 863739 BLAKE2B 7adcf4f8662cb5c6dab1d680a48f80db03f78d6f2f67a81f9d1464a79b820d8ed28a69ca5aa1c8eaa1b016556217dcab0878725a370318db0905985d332561f4 SHA512 8f6093ba6e1138e8c81e7afc596946c3657ddea55554edcf555f6490e2d19c936f41367cd27a04554a344b3116d033ab760c2c954ac6ffd017b9c319abe44b00 diff --git a/dev-python/python-magic/python-magic-0.4.23.ebuild b/dev-python/python-magic/python-magic-0.4.23.ebuild new file mode 100644 index 000000000000..8cbe1ca0fe8c --- /dev/null +++ b/dev-python/python-magic/python-magic-0.4.23.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( pypy3 python3_{7..10} ) + +inherit distutils-r1 + +DESCRIPTION="Access the libmagic file type identification library" +HOMEPAGE="https://github.com/ahupp/python-magic" +SRC_URI=" + https://github.com/ahupp/python-magic/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz" + +LICENSE="BSD-2 MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND="sys-apps/file[-python]" +BDEPEND=" + test? ( sys-apps/file ) +" + +python_test() { + local -x LC_ALL=en_US.UTF-8 + "${EPYTHON}" test/test.py -v || die "Tests fail with ${EPYTHON}" +} diff --git a/dev-python/tox/tox-3.23.1.ebuild b/dev-python/tox/tox-3.23.1.ebuild index 195d37f7ec9d..44a1cb28a248 100644 --- a/dev-python/tox/tox-3.23.1.ebuild +++ b/dev-python/tox/tox-3.23.1.ebuild @@ -53,11 +53,6 @@ python_test() { # expects python2 to exist tests/unit/interpreters/test_interpreters.py::test_tox_get_python_executable - - # broken without tox installed first - # TODO: figure out how to make importlib_metadata work - tests/unit/test_z_cmdline.py::test_tox_console_script - tests/unit/test_z_cmdline.py::test_tox_quickstart_script ) [[ ${EPYTHON} != pypy3 ]] && deselect+=( @@ -69,6 +64,6 @@ python_test() { tests/integration/test_parallel_interrupt.py::test_parallel_interrupt ) - distutils_install_for_testing --via-root + distutils_install_for_testing --via-venv epytest --no-network ${deselect[@]/#/--deselect } } diff --git a/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild b/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild index 154eb8d2deda..bac6311782f1 100644 --- a/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild +++ b/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild @@ -39,18 +39,8 @@ PATCHES=( "${FILESDIR}"/${P}-py310.patch ) -src_prepare() { - distutils-r1_src_prepare - # prevent esetup.py install from zipping the egg - sed -i -e '/\[options\]/azip_safe = False' setup.cfg || die -} - python_test() { - "${EPYTHON}" -m venv --system-site-packages --without-pip \ - "${BUILD_DIR}"/venv || die - local -x PATH=${BUILD_DIR}/venv/bin:${PATH} - unset PYTHONPATH - esetup.py install + distutils_install_for_testing --via-venv # the default portage tempdir is too long for AF_UNIX sockets local -x TMPDIR=/tmp diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass index a02b6d059bd1..53eee173a262 100644 --- a/eclass/distutils-r1.eclass +++ b/eclass/distutils-r1.eclass @@ -481,7 +481,7 @@ esetup.py() { } # @FUNCTION: distutils_install_for_testing -# @USAGE: [--via-root|--via-home] [<args>...] +# @USAGE: [--via-root|--via-home|--via-venv] [<args>...] # @DESCRIPTION: # Install the package into a temporary location for running tests. # Update PYTHONPATH appropriately and set TEST_DIR to the test @@ -493,32 +493,36 @@ esetup.py() { # PYTHONPATH) or tests rely on the results of install command. # For most of the packages, tests built in BUILD_DIR are good enough. # -# The function supports two install modes. The current default is -# --via-root mode. Previously, the function defaulted to --via-home -# mode but it has been broken by new versions of setuptools (50.3.0+). -# If you find that --via-root does not work but --via-home does, please -# file a bug to let us know. Please note that proper testing sometimes -# requires unmerging the package first. +# The function supports three install modes. These are: +# +# --via-root (the default) that uses 'setup.py install --root=...' +# combined with PYTHONPATH and is recommended for the majority +# of packages. +# +# --via-venv that creates a (non-isolated) venv and installs the package +# into it via 'setup.py install'. This mode does not use PYTHONPATH +# but requires python to be called via PATH. It may solve a few corner +# cases that --via-root do not support. +# +# --via-home that uses 'setup.py install --home=...'. This is +# a historical mode that was mostly broken by setuptools 50.3.0+. +# If your package does not work with the other two modes but works with +# this one, please report a bug. +# +# Please note that in order to test the solution properly you need +# to unmerge the package first. distutils_install_for_testing() { debug-print-function ${FUNCNAME} "${@}" - # A few notes: - # 1) because of namespaces, we can't use 'install --root' - # (NB: this is probably no longer true with py3), - # 2) 'install --home' is terribly broken on pypy, so we need + # A few notes about --via-home mode: + # 1) 'install --home' is terribly broken on pypy, so we need # to override --install-lib and --install-scripts, - # 3) non-root 'install' complains about PYTHONPATH and missing dirs, + # 2) non-root 'install' complains about PYTHONPATH and missing dirs, # so we need to set it properly and mkdir them, - # 4) it runs a bunch of commands which write random files to cwd, + # 3) it runs a bunch of commands which write random files to cwd, # in order to avoid that, we add the necessary path overrides # in _distutils-r1_create_setup_cfg. - TEST_DIR=${BUILD_DIR}/test - local bindir=${TEST_DIR}/scripts - local libdir=${TEST_DIR}/lib - PATH=${bindir}:${PATH} - PYTHONPATH=${libdir}:${PYTHONPATH} - local install_method=root case ${1} in --via-home) @@ -529,30 +533,50 @@ distutils_install_for_testing() { install_method=root shift ;; + --via-venv) + install_method=venv + shift + ;; esac - local -a add_args - case ${install_method} in - home) - add_args=( - install + TEST_DIR=${BUILD_DIR}/test + local add_args=() + + if [[ ${install_method} == venv ]]; then + "${EPYTHON}" -m venv --system-site-packages --without-pip \ + "${TEST_DIR}" || die + + # we only do the minimal necessary subset of activate script + PATH=${TEST_DIR}/bin:${PATH} + # unset PYTHONPATH in order to prevent BUILD_DIR from overriding + # venv packages + unset PYTHONPATH + else + local bindir=${TEST_DIR}/scripts + local libdir=${TEST_DIR}/lib + PATH=${bindir}:${PATH} + PYTHONPATH=${libdir}:${PYTHONPATH} + + case ${install_method} in + home) + add_args=( --home="${TEST_DIR}" --install-lib="${libdir}" --install-scripts="${bindir}" - ) - mkdir -p "${libdir}" || die - ;; - root) - add_args=( - install + ) + mkdir -p "${libdir}" || die + ;; + root) + add_args=( --root="${TEST_DIR}" --install-lib=lib --install-scripts=scripts - ) - ;; - esac + ) + ;; + esac + fi - esetup.py "${add_args[@]}" "${@}" + esetup.py install "${add_args[@]}" "${@}" } # @FUNCTION: _distutils-r1_disable_ez_setup @@ -646,6 +670,10 @@ _distutils-r1_create_setup_cfg() { # setuptools like to create .egg files for install --home. [bdist_egg] dist_dir = ${BUILD_DIR}/dist + + # avoid packing up eggs in a zip as it often breaks test suites + [options] + zip_safe = False _EOF_ # we can't refer to ${D} before src_install() |