dev-python/atomicwrites: Enable py3.8, modernize
authorMichał Górny <mgorny@gentoo.org>
Fri, 15 Nov 2019 15:52:35 +0000 (16:52 +0100)
committerMichał Górny <mgorny@gentoo.org>
Sat, 16 Nov 2019 11:00:45 +0000 (12:00 +0100)
Enable python3.8.  Use any-r1 API to provide for building docs without
sphinx being py3.8 enabled.

Signed-off-by: Michał Górny <mgorny@gentoo.org>
dev-python/atomicwrites/atomicwrites-1.2.1.ebuild

index 9c11548028a0cbf668610ccad74237e86a7acfe4..85e9f5b5d666e9791b16cd2535d44678c8e19c3c 100644 (file)
@@ -2,7 +2,7 @@
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
-PYTHON_COMPAT=( pypy{,3} python{2_7,3_{5,6,7}} )
+PYTHON_COMPAT=( pypy{,3} python{2_7,3_{5,6,7,8}} )
 
 inherit distutils-r1
 
@@ -13,17 +13,27 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
 LICENSE="MIT"
 SLOT="0"
 KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~x86 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc test"
+IUSE="doc"
 
-DEPEND="
+# TODO: remove impl limiters when sphinx is py38
+BDEPEND="
        dev-python/setuptools[${PYTHON_USEDEP}]
        doc? (
-               dev-python/sphinx[${PYTHON_USEDEP}]
-               dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+               $(python_gen_any_dep '
+                       dev-python/sphinx[${PYTHON_USEDEP}]
+                       dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+               ' -2 python3_{5,6,7} pypy3)
        )
-       test? ( dev-python/pytest[${PYTHON_USEDEP}] )
 "
 
+distutils_enable_tests pytest
+
+python_check_deps() {
+       use doc || return 0
+       has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+               has_version "dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]"
+}
+
 python_prepare_all() {
        sed -i "/'sphinx.ext.intersphinx'/d" docs/conf.py || die
        distutils-r1_python_prepare_all
@@ -35,7 +45,3 @@ python_compile_all() {
                HTML_DOCS=( docs/_build/html/. )
        fi
 }
-
-python_test() {
-       py.test -v || die "Tests fail with ${EPYTHON}"
-}