Hi Andreas, Here is the patch to make the package build. I didn't fully understand what the test is doing, but the feature that breaks the test is newly introduced by python3.7 hence I see there is no harm to patch it like this.
I lost my write permission to DPMT during the DM->DD account transition. Please help me push the attached commit. On Mon, Dec 03, 2018 at 02:03:09PM +0100, Andreas Tille wrote: > Hi again, > > I noticed that this issue is reportet upstream at > > https://github.com/pytoolz/cytoolz/issues/122 > > I'd be happy if somebody familiar with Python 3.7 would find some solution. > > Thanks for any help > > Andreas. > > On Fri, Nov 30, 2018 at 02:28:32PM +0100, Andreas Tille wrote: > > Hi, > > > > Lumin (in CC - thanks a lot for your preparation) has prepared some > > Python packages that are needed to package some NLP tools which I would > > like to maintain. Unfortunately I get a test suite error in > > python-cytoolz[1]: > > > > ... > > ============================= test session starts > > ============================== > > platform linux -- Python 3.7.1, pytest-3.10.1, py-1.7.0, pluggy-0.8.0 > > rootdir: /build/python-cytoolz-0.9.0.1, inifile: > > collected 190 items > > > > cytoolz/tests/test_compatibility.py .. [ > > 1%] > > cytoolz/tests/test_curried.py .......... [ > > 6%] > > cytoolz/tests/test_curried_toolzlike.py ... [ > > 7%] > > cytoolz/tests/test_dev_skip_test.py .. [ > > 8%] > > cytoolz/tests/test_dicttoolz.py ........................................ [ > > 30%] > > ..... [ > > 32%] > > cytoolz/tests/test_docstrings.py .. [ > > 33%] > > cytoolz/tests/test_doctests.py . [ > > 34%] > > cytoolz/tests/test_embedded_sigs.py .. [ > > 35%] > > cytoolz/tests/test_functoolz.py .................................... [ > > 54%] > > cytoolz/tests/test_inspect_args.py ..............F.. [ > > 63%] > > cytoolz/tests/test_itertoolz.py ........................................ [ > > 84%] > > ......... [ > > 88%] > > cytoolz/tests/test_none_safe.py .... [ > > 91%] > > cytoolz/tests/test_recipes.py .. [ > > 92%] > > cytoolz/tests/test_serialization.py ......... [ > > 96%] > > cytoolz/tests/test_signatures.py ... [ > > 98%] > > cytoolz/tests/test_tlz.py . [ > > 98%] > > cytoolz/tests/test_utils.py .. > > [100%] > > > > =================================== FAILURES > > =================================== > > _______________________ test_introspect_builtin_modules > > ________________________ > > ... > > > raise AssertionError(message + '\n\n'.join(messages)) > > E AssertionError: Missing introspection for the following > > callables: > > E > > E builtins: > > E breakpoint > > > > cytoolz/tests/test_inspect_args.py:442: AssertionError > > =============================== warnings summary > > =============================== > > .pybuild/cpython3_3.7_cymem/build/cytoolz/tests/test_embedded_sigs.py::test_class_sigs > > > > /build/python-cytoolz-0.9.0.1/.pybuild/cpython3_3.7_cymem/build/cytoolz/tests/test_embedded_sigs.py:39: > > DeprecationWarning: inspect.getargspec() is deprecated, use > > inspect.signature() or inspect.getfullargspec() > > toolz_spec = inspect.getargspec(toolz_func) > > > > /build/python-cytoolz-0.9.0.1/.pybuild/cpython3_3.7_cymem/build/cytoolz/tests/test_embedded_sigs.py:49: > > DeprecationWarning: `formatargspec` is deprecated since Python 3.5. Use > > `signature` and the `Signature` object directly > > ... > > toolz_spec = inspect.getargspec(toolz_func) > > > > /build/python-cytoolz-0.9.0.1/.pybuild/cpython3_3.7_cymem/build/cytoolz/tests/test_embedded_sigs.py:49: > > DeprecationWarning: `formatargspec` is deprecated since Python 3.5. Use > > `signature` and the `Signature` object directly > > toolz_sig = toolz_func.__name__ + inspect.formatargspec(*toolz_spec) > > > > /build/python-cytoolz-0.9.0.1/.pybuild/cpython3_3.7_cymem/build/cytoolz/tests/test_embedded_sigs.py:54: > > DeprecationWarning: `formatargspec` is deprecated since Python 3.5. Use > > `signature` and the `Signature` object directly > > **{'formatvalue': lambda x: '=' + getattr(x, '__name__', repr(x))} > > > > -- Docs: https://docs.pytest.org/en/latest/warnings.html > > ============== 1 failed, 189 passed, 177 warnings in 2.00 seconds > > ============== > > E: pybuild pybuild:338: test: plugin distutils failed with: exit code=1: cd > > /build/python-cytoolz-0.9.0.1/.pybuild/cpython3_3.7_cymem/build; python3.7 > > -m pytest > > dh_auto_test: pybuild --test --test-pytest -i python{version} -p "3.6 3.7" > > returned exit code 13 > > > > > > Any idea how to fix this (which is better than just skipping the test which > > would be my only clue)? > > > > Kind regards > > > > Andreas. > > > > > > [1] https://salsa.debian.org/python-team/modules/python-cytoolz > > > > -- > > http://fam-tille.de > > -- > http://fam-tille.de >
>From 78a6eb1bb9a0bebc400dfbdc258a77311168f572 Mon Sep 17 00:00:00 2001 From: Mo Zhou <cdlumin...@gmail.com> Date: Thu, 6 Dec 2018 04:12:15 +0000 Subject: [PATCH] Fix python3.7 compatibility. --- debian/patches/py37.patch | 12 ++++++++++++ debian/patches/series | 1 + 2 files changed, 13 insertions(+) create mode 100644 debian/patches/py37.patch create mode 100644 debian/patches/series diff --git a/debian/patches/py37.patch b/debian/patches/py37.patch new file mode 100644 index 0000000..9784cef --- /dev/null +++ b/debian/patches/py37.patch @@ -0,0 +1,12 @@ +Index: python-cytoolz/cytoolz/tests/test_inspect_args.py +=================================================================== +--- python-cytoolz.orig/cytoolz/tests/test_inspect_args.py ++++ python-cytoolz/cytoolz/tests/test_inspect_args.py +@@ -405,6 +405,7 @@ def test_introspect_builtin_modules(): + add_blacklist(builtins, 'NoneType') + add_blacklist(builtins, '__metaclass__') + add_blacklist(builtins, 'sequenceiterator') ++ add_blacklist(builtins, 'breakpoint') + + def is_missing(modname, name, func): + if name.startswith('_') and not name.startswith('__'): diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..1e8b3e9 --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +py37.patch -- 2.20.0.rc2