commit:     56ce1e6d788afb6177f722eede892330b3e00dcc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 28 04:48:50 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Dec 28 04:50:56 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56ce1e6d

dev-python/gevent: add 21.12.0

- Re-enabled some hanging/failing tests
- Add dnspython tests again
- Excluded more network-related tests
- Avoid deprecated method for disabling "embedded" libs (bundled)

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-python/gevent/Manifest              |   1 +
 dev-python/gevent/gevent-21.12.0.ebuild | 100 ++++++++++++++++++++++++++++++++
 2 files changed, 101 insertions(+)

diff --git a/dev-python/gevent/Manifest b/dev-python/gevent/Manifest
index 0d019073722c..9dece1ecb9a5 100644
--- a/dev-python/gevent/Manifest
+++ b/dev-python/gevent/Manifest
@@ -1 +1,2 @@
+DIST gevent-21.12.0.tar.gz 6201851 BLAKE2B 
8c02f42d6024e912e51754df876d4f4895acdf466f2400e9fdca69ad5c7c77df7ee05f3e4c2c1e1d5731c282b62d5c940d9ca6396c27d6fe6e8a0ec13013591c
 SHA512 
805ddb475281b6c4c46cdf5a714915b6612512745121e7b153f3d33f3460135efa4994e0ff1601402d4f7b80d285cbfdc0d5d93799fbeb8ddbf2a52888cd91ad
 DIST gevent-21.8.0.tar.gz 6162938 BLAKE2B 
f24770cdbf229d4a4ebe7e6c102c43ab0c89a52389ada40c8abaf032eada323333ca9ac965c65d335d96d69c97cdc239e193dd5a38076c81a2f3c80daa13b339
 SHA512 
dae95f986530e79b07a0006f6fb4cbd3911ac0bf2e58c4896ee5fa6d2e2a9ed5785c346958ee23cd57c2dcafb0a34c585b1f6375a29fd653e061a382482fc9fb

diff --git a/dev-python/gevent/gevent-21.12.0.ebuild 
b/dev-python/gevent/gevent-21.12.0.ebuild
new file mode 100644
index 000000000000..0c7cee33a7e9
--- /dev/null
+++ b/dev-python/gevent/gevent-21.12.0.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( pypy3 python3_{8..10} )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="Coroutine-based network library"
+HOMEPAGE="https://www.gevent.org/ https://pypi.org/project/gevent/";
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 
~amd64-linux ~x86-linux ~x64-macos"
+IUSE="doc examples test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       >=dev-libs/libev-4.31:=
+       dev-libs/libuv:=
+       >=net-dns/c-ares-1.12:=
+"
+RDEPEND="${DEPEND}
+       virtual/python-greenlet[${PYTHON_USEDEP}]
+       dev-python/zope-event[${PYTHON_USEDEP}]
+       dev-python/zope-interface[${PYTHON_USEDEP}]
+"
+BDEPEND="
+       test? (
+               dev-python/dnspython[${PYTHON_USEDEP}]
+               dev-python/psutil[${PYTHON_USEDEP}]
+               dev-python/requests[${PYTHON_USEDEP}]
+       )"
+
+distutils_enable_sphinx doc
+
+# Tests take long and fail terribly a few times.
+# It also seems that they require network access.
+#RESTRICT="test"
+
+python_prepare_all() {
+       export GEVENTSETUP_EMBED="false"
+
+       distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+       append-flags -fno-strict-aliasing
+}
+
+python_test() {
+       # Just in case.
+       export GEVENTTEST_USE_RESOURCES=-network
+
+       cd src/gevent/tests || die
+
+       # Tests which need network but aren't marked as such
+       echo "test__getaddrinfo_import.py" >> tests_that_dont_use_resolver.txt 
|| die
+       echo "test_socketqcqqrwns.py" >> tests_that_dont_use_resolver.txt || die
+
+       # Test hangs (testPeek)
+       echo "test_socket.py" >> tests_that_dont_use_resolver.txt || die
+
+       # TODO: figure out how to make them work and not hang
+       #GEVENT_RESOLVER=ares \
+       #       "${EPYTHON}" -m gevent.tests \
+       #       --verbose \
+       #       -uall,-network \
+       #       --config known_failures.py \
+       #       --ignore tests_that_dont_use_resolver.txt || die
+       GEVENT_RESOLVER=dnspython \
+               "${EPYTHON}" -m gevent.tests \
+               --verbose \
+               -uall,-network \
+               --config known_failures.py \
+               --ignore tests_that_dont_use_resolver.txt || die
+       GEVENT_RESOLVER=thread \
+               "${EPYTHON}" -m gevent.tests \
+               --verbose \
+               -uall,-network \
+               --config known_failures.py \
+               --ignore tests_that_dont_use_resolver.txt || die
+       GEVENT_FILE=thread \
+               "${EPYTHON}" -m gevent.tests \
+               --verbose \
+               -uall,-network \
+               --config known_failures.py \
+               test__*subprocess*.py || die
+}
+
+python_install_all() {
+       local DOCS=( AUTHORS README.rst )
+       use examples && dodoc -r examples
+
+       distutils-r1_python_install_all
+}

Reply via email to