1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
6 PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8}} )
11 DESCRIPTION="Additional functions used by other projects by developer jaraco"
12 HOMEPAGE="https://github.com/jaraco/jaraco.functools"
13 SRC_URI="mirror://pypi/${PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz"
14 S="${WORKDIR}/${MY_PN}-${PV}"
18 KEYWORDS="amd64 ~arm arm64 ~hppa ~ia64 ~ppc64 ~sparc ~x86"
20 RESTRICT="!test? ( test )"
23 >=dev-python/namespace-jaraco-2[${PYTHON_USEDEP}]
24 dev-python/more-itertools[${PYTHON_USEDEP}]
25 $(python_gen_cond_dep 'dev-python/backports-functools-lru-cache[${PYTHON_USEDEP}]' python2_7)
27 DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
30 >=dev-python/pytest-2.8[${PYTHON_USEDEP}]
31 dev-python/backports-unittest-mock[${PYTHON_USEDEP}]
32 dev-python/jaraco-classes[${PYTHON_USEDEP}]
33 dev-python/six[${PYTHON_USEDEP}]
37 PATCHES=( "${FILESDIR}/${P}-fix-py37-tests.patch" )
39 distutils_enable_sphinx docs \
40 ">=dev-python/jaraco-packaging-3.2" \
41 ">=dev-python/rst-linker-1.9"
43 python_prepare_all() {
44 # avoid a setuptools_scm dependency
45 sed -i "s:use_scm_version=True:version='${PV}',name='${PN//-/.}':" setup.py || die
46 sed -r -i "s:setuptools_scm[[:space:]]*([><=]{1,2}[[:space:]]*[0-9.a-zA-Z]+)[[:space:]]*::" \
49 distutils-r1_python_prepare_all
53 # Override pytest options to skip flake8
54 PYTHONPATH=. pytest -vv --override-ini="addopts=--doctest-modules" \
55 || die "tests failed with ${EPYTHON}"
58 # https://wiki.gentoo.org/wiki/Project:Python/Namespace_packages#File_collisions_between_pkgutil-style_packages
60 rm "${BUILD_DIR}"/lib/jaraco/__init__.py || die
61 # note: eclass may default to --skip-build in the future
62 distutils-r1_python_install --skip-build