theHarvester: python3.9 is back, uvloop fork

This commit is contained in:
blshkv 2020-12-23 08:40:42 +08:00
parent 86752b86b4
commit a19d1bda59
No known key found for this signature in database
GPG key ID: 32BDCED870788F04
5 changed files with 114 additions and 1 deletions

View file

@ -0,0 +1 @@
DIST uvloop-0.14.0.tar.gz 2009041 BLAKE2B 4d984f5023e0974ee68795e6cf29585cee32345e8a682611a72dbc36efefdfeeecb3c22aecb581ff7e5ae826345e1de3b0e6c7a6e8319829b0b3cbe5a180ed11 SHA512 8a9a64c91fd34c65a1c40d8d76ad7dbd7e959d45188ef81cdc06995312f52106b2c648a504d51b64b470e54dfc4854dcf9a05cafa3d4a42f1bc1e31766114d61

View file

@ -0,0 +1,33 @@
From 1549514de9c344ac978472097e750b1caf6a36b9 Mon Sep 17 00:00:00 2001
From: Fantix King <fantix.king@gmail.com>
Date: Mon, 25 May 2020 14:10:07 -0500
Subject: [PATCH] Skip for bpo-30064 until 3.8.2
[mgorny: extended to all py3.8 versions]
---
tests/test_sockets.py | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/tests/test_sockets.py b/tests/test_sockets.py
index 6a8a63f..d9f258e 100644
--- a/tests/test_sockets.py
+++ b/tests/test_sockets.py
@@ -194,10 +194,11 @@ class _TestSockets:
self.loop.run_until_complete(asyncio.sleep(0.01))
def test_sock_cancel_add_reader_race(self):
- if self.is_asyncio_loop() and sys.version_info[:3] == (3, 8, 0):
- # asyncio 3.8.0 seems to have a regression;
- # tracked in https://bugs.python.org/issue30064
- raise unittest.SkipTest()
+ if self.is_asyncio_loop():
+ if (3, 9) > sys.version_info[:3] >= (3, 8, 0):
+ # asyncio 3.8.0 seems to have a regression;
+ # tracked in https://bugs.python.org/issue30064
+ raise unittest.SkipTest()
srv_sock_conn = None
--
2.27.0

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
</maintainer>
<longdescription>
uvloop is a fast, drop-in replacement of the built-in asyncio
event loop. uvloop is implemented in Cython and uses libuv under
the hood.
</longdescription>
<upstream>
<remote-id type="pypi">uvloop</remote-id>
<remote-id type="github">magicstack/uvloop</remote-id>
</upstream>
</pkgmetadata>

View file

@ -0,0 +1,63 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Ultra-fast implementation of asyncio event loop on top of libuv"
HOMEPAGE="https://github.com/magicstack/uvloop"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="amd64 x86"
LICENSE="MIT"
SLOT="0"
IUSE="doc examples test"
RESTRICT="!test? ( test )"
RDEPEND=">=dev-libs/libuv-1.11.0:="
DEPEND="
${RDEPEND}
doc? (
>=dev-python/alabaster-0.6.2[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
)
test? (
dev-python/pyopenssl[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
)
"
PATCHES=(
"${FILESDIR}"/${P}-asyncio-test-hang.patch
)
python_prepare_all() {
cat <<EOF >> setup.cfg || die
[build_ext]
use-system-libuv=1
EOF
# flake8 only
rm tests/test_sourcecode.py || die
sed -i -e 's:test_write_to_closed_transport:_&:' \
tests/test_tcp.py || die
distutils-r1_python_prepare_all
}
python_compile_all() {
use doc && esetup.py build_ext --inplace build_sphinx
}
python_test() {
esetup.py test
}
python_install_all() {
use examples && dodoc -r examples
use doc && local HTML_DOCS=( "${BUILD_DIR}/sphinx/html/." )
distutils-r1_python_install_all
}

View file

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{7..8} )
PYTHON_COMPAT=( python3_{7..9} )
inherit distutils-r1