You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-python/aiohttp/aiohttp-3.5.4.ebuild

81 lines
2.1 KiB

# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{5,6,7} )
inherit distutils-r1
DESCRIPTION="http client/server for asyncio"
HOMEPAGE="https://pypi.org/project/aiohttp/"
SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
IUSE="doc test"
RESTRICT="!test? ( test )"
CDEPEND="
>=dev-python/async_timeout-3.0.0[${PYTHON_USEDEP}]
>=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
dev-python/chardet[${PYTHON_USEDEP}]
>=dev-python/multidict-4.0.0[${PYTHON_USEDEP}]
>=dev-python/yarl-1.0[${PYTHON_USEDEP}]
dev-python/idna-ssl[${PYTHON_USEDEP}]
$(python_gen_cond_dep 'dev-python/typing-extensions[${PYTHON_USEDEP}]' \
python3_{5,6})
"
DEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/cython[${PYTHON_USEDEP}]
doc? (
>=dev-python/alabaster-0.6.2[${PYTHON_USEDEP}]
dev-python/sphinxcontrib-asyncio[${PYTHON_USEDEP}]
dev-python/sphinxcontrib-blockdiag[${PYTHON_USEDEP}]
dev-python/sphinxcontrib-newsfeed[${PYTHON_USEDEP}]
dev-python/sphinxcontrib-spelling[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-aiohttp-theme[${PYTHON_USEDEP}]
)
test? (
${CDEPEND}
dev-python/async_generator[${PYTHON_USEDEP}]
dev-python/brotlipy[${PYTHON_USEDEP}]
>=dev-python/pytest-3.4.0[${PYTHON_USEDEP}]
dev-python/pytest-mock[${PYTHON_USEDEP}]
dev-python/pytest-timeout[${PYTHON_USEDEP}]
dev-python/trustme[${PYTHON_USEDEP}]
www-servers/gunicorn[${PYTHON_USEDEP}]
)
"
RDEPEND="${CDEPEND}"
DOCS=( CHANGES.rst CONTRIBUTING.rst CONTRIBUTORS.txt HISTORY.rst README.rst )
python_prepare_all() {
# FIXME
rm tests/test_pytest_plugin.py || die
sed -i -e 's:test_testcase_no_app:_&:' tests/test_test_utils.py || die
# remove pointless dep on pytest-cov
sed -i -e '/addopts/s/--cov=aiohttp//' pytest.ini || die
distutils-r1_python_prepare_all
}
python_compile_all() {
use doc && emake -C docs html
}
python_test() {
pytest -vv || die "Tests fail with ${EPYTHON}"
}
python_install_all() {
use doc && local HTML_DOCS=( docs/_build/html/. )
distutils-r1_python_install_all
}