summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2021-11-01 12:31:09 +0100
committerMichał Górny <mgorny@gentoo.org>2021-11-01 12:40:39 +0100
commit320b8fba60f8469b023f3291ce56f3491982f1ef (patch)
tree1ebdd81e06c523ef702de80e338862b230bb85f8
parentdev-python/aiosignal: New pkg, new dep of dev-python/aiohttp (diff)
downloadgentoo-320b8fba.tar.gz
gentoo-320b8fba.tar.bz2
gentoo-320b8fba.zip
dev-python/aiohttp: Bump to 3.8.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
-rw-r--r--dev-python/aiohttp/Manifest1
-rw-r--r--dev-python/aiohttp/aiohttp-3.8.0.ebuild94
-rw-r--r--dev-python/aiohttp/files/aiohttp-3.8.0-examples.patch27
3 files changed, 122 insertions, 0 deletions
diff --git a/dev-python/aiohttp/Manifest b/dev-python/aiohttp/Manifest
index c5a16a92aa4d..8ee6cae8ddef 100644
--- a/dev-python/aiohttp/Manifest
+++ b/dev-python/aiohttp/Manifest
@@ -1 +1,2 @@
DIST aiohttp-3.7.4.tar.gz 1114533 BLAKE2B dcae3e66e13df8264d731a3ca65b4718feca8d0e6e1baeb6608dcb9bfb4bd4baaed6bd34297ed5ece78d01189bf9a0b9860845cae4e2b93cc2ba463cc35cfb77 SHA512 66fcc837b388020dc998cbaa2db31e48ecec75bcfaa8af9108e2ea265588dafa5684ca96a8fe3ad6759b22e09a4ae6d4efd8653fb76126eccdc826c15cbbe2e6
+DIST aiohttp-3.8.0.tar.gz 7323268 BLAKE2B e3d8f6ec7c4b2de685a261171bc8e29db82b5b4677d0d4d0b103898c71184deda700f4859fff49746ace3079f09714c39d06c7d837cdc7fb26c8ebc4b29da915 SHA512 beb711812ccaab6d820c39e663e4aaba9106e270ab28ccdb8f35b74bc68509876dc30061f3df390e514e6ff8d24ede2e77e3355986ca2c5ee860eba940d72f5b
diff --git a/dev-python/aiohttp/aiohttp-3.8.0.ebuild b/dev-python/aiohttp/aiohttp-3.8.0.ebuild
new file mode 100644
index 000000000000..a5d3ec99226e
--- /dev/null
+++ b/dev-python/aiohttp/aiohttp-3.8.0.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="http client/server for asyncio"
+HOMEPAGE="
+ https://pypi.org/project/aiohttp/
+ https://github.com/aio-libs/aiohttp/"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ app-arch/brotli[python,${PYTHON_USEDEP}]
+ >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}]
+ >=dev-python/async_timeout-4.0.0_alpha3[${PYTHON_USEDEP}]
+ >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
+ >=dev-python/charset_normalizer-2.0[${PYTHON_USEDEP}]
+ >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}]
+ >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/yarl-1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/pypy3-7.3.6
+ ' pypy3)
+"
+BDEPEND="
+ test? (
+ app-arch/brotli[python,${PYTHON_USEDEP}]
+ dev-python/async_generator[${PYTHON_USEDEP}]
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ '>=dev-python/alabaster-0.6.2' \
+ 'dev-python/sphinxcontrib-asyncio' \
+ 'dev-python/sphinxcontrib-blockdiag' \
+ 'dev-python/sphinxcontrib-newsfeed' \
+ 'dev-python/sphinxcontrib-spelling' \
+ 'dev-python/sphinx' \
+ 'dev-python/sphinx-aiohttp-theme'
+
+# TODO: re-cythonize modules?
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}"/${P}-examples.patch
+ )
+
+ # xfail_strict fails on py3.10
+ sed -i -e '/--cov/d' -e '/xfail_strict/d' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # proxy is not packaged
+ tests/test_proxy_functional.py
+ )
+
+ local EPYTEST_DESELECT=(
+ # runtime warnings
+ 'tests/test_client_functional.py::test_aiohttp_request_coroutine[pyloop]'
+ # Internet
+ tests/test_client_session.py::test_client_session_timeout_zero
+ )
+
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ # C extensions are not used on PyPy3
+ tests/test_http_parser.py::test_c_parser_loaded
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin,pytest_forked
+ mv aiohttp aiohttp.hidden || die
+ epytest -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" --forked
+ mv aiohttp.hidden aiohttp || die
+}
diff --git a/dev-python/aiohttp/files/aiohttp-3.8.0-examples.patch b/dev-python/aiohttp/files/aiohttp-3.8.0-examples.patch
new file mode 100644
index 000000000000..ed3f38f68fe4
--- /dev/null
+++ b/dev-python/aiohttp/files/aiohttp-3.8.0-examples.patch
@@ -0,0 +1,27 @@
+From bc142f906b3e7c63f0b1492fe3eacb7f00e9fb89 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Mon, 1 Nov 2021 12:37:40 +0100
+Subject: [PATCH] Fix setup.cfg not to install "examples" top-level package
+
+---
+ setup.cfg | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/setup.cfg b/setup.cfg
+index 491df546..fa82b6b4 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -62,6 +62,10 @@ speedups =
+ Brotli
+ cchardet
+
++[options.packages.find]
++exclude =
++ examples
++
+ [options.package_data]
+ # Ref:
+ # https://setuptools.readthedocs.io/en/latest/setuptools.html#options
+--
+2.33.1
+