commit:     8c19db27656daaf85510e72cb69c845e6974c863
Author:     Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
AuthorDate: Fri Aug 13 23:42:57 2021 +0000
Commit:     Anna Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
CommitDate: Sat Aug 14 01:59:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=8c19db27

dev-python/hunter: enable py3.10

Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq.in>

 dev-python/hunter/hunter-3.3.8.ebuild | 46 ++++++++++++++++++++++++-----------
 1 file changed, 32 insertions(+), 14 deletions(-)

diff --git a/dev-python/hunter/hunter-3.3.8.ebuild 
b/dev-python/hunter/hunter-3.3.8.ebuild
index 99d13170b..c2252fc8c 100644
--- a/dev-python/hunter/hunter-3.3.8.ebuild
+++ b/dev-python/hunter/hunter-3.3.8.ebuild
@@ -3,9 +3,7 @@
 
 EAPI=8
 
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{8..9} )
-
+PYTHON_COMPAT=( python3_{8..10} )
 inherit distutils-r1
 
 DESCRIPTION="Hunter is a flexible code tracing toolkit"
@@ -20,8 +18,9 @@ SLOT="0"
 KEYWORDS="~amd64 ~x86"
 
 RDEPEND="dev-python/colorama[${PYTHON_USEDEP}]"
-DEPEND="
-       ${RDEPEND}
+DEPEND="dev-python/cython[${PYTHON_USEDEP}]"
+BDEPEND="
+       >=dev-python/setuptools_scm-3.3.1[${PYTHON_USEDEP}]
        test? (
                dev-python/aspectlib[${PYTHON_USEDEP}]
                dev-python/ipdb[${PYTHON_USEDEP}]
@@ -31,28 +30,47 @@ DEPEND="
                dev-python/six[${PYTHON_USEDEP}]
        )
 "
-BDEPEND="
-       dev-python/cython[${PYTHON_USEDEP}]
-       >=dev-python/setuptools_scm-3.3.1[${PYTHON_USEDEP}]
-"
 
+DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
 PATCHES=( "${FILESDIR}/remove-setuptools_scm-upper-constraint.patch" )
 
 distutils_enable_tests pytest
 distutils_enable_sphinx docs ">=dev-python/sphinx-py3doc-enhanced-theme-2.3.2"
 
 python_compile() {
-       distutils-r1_python_compile
+       # native extension build fails with python3.10
+       # https://github.com/ionelmc/python-hunter/issues/104
+       if [[ ${EPYTHON} == python3.10 ]]; then
+               SETUPPY_NOEXT="yes" distutils-r1_python_compile
+               return
+       fi
 
+       distutils-r1_python_compile
        if use test; then
                "${EPYTHON}" tests/setup.py build_ext --force --inplace || die
        fi
 }
 
 python_test() {
+       local PUREPYTHONHUNTER
        local -x PYTHONPATH="${S}/tests:${BUILD_DIR}/lib:${PYTHONPATH}"
-       epytest -vv \
-               --deselect tests/test_remote.py::test_manhole \
-               --deselect tests/test_remote.py::test_manhole_clean_exit \
-               || die
+       local epytest_args=(
+               --deselect tests/test_remote.py::test_gdb
+               --deselect tests/test_remote.py::test_gdb_clean_exit
+               --deselect tests/test_remote.py::test_manhole
+               --deselect tests/test_remote.py::test_manhole_clean_exit
+       )
+
+       if [[ ${EPYTHON} == python3.10 ]]; then
+               epytest_args+=(
+                       --deselect tests/test_cookbook.py::test_probe
+                       --deselect tests/test_tracer.py::test_perf_filter[pure]
+                       --deselect tests/test_tracer.py::test_perf_stdlib[pure]
+                       --deselect tests/test_tracer.py::test_perf_actions[pure]
+                       --deselect tests/test_tracer.py::test_proper_backend
+               )
+               PUREPYTHONHUNTER="yes"
+       fi
+
+       epytest "${epytest_args[@]}"
 }

Reply via email to