[Python-modules-team] Bug#973076: natsort: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.9 3.8" returned exit code 13
Lucas Nussbaum
lucas at debian.org
Tue Oct 27 17:07:08 GMT 2020
Source: natsort
Version: 7.0.1-1
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20201027 ftbfs-bullseye
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> debian/rules build
> dh build --with python3,sphinxdoc --buildsystem=pybuild
> dh_update_autotools_config -O--buildsystem=pybuild
> dh_autoreconf -O--buildsystem=pybuild
> dh_auto_configure -O--buildsystem=pybuild
> I: pybuild base:217: python3.9 setup.py config
> running config
> I: pybuild base:217: python3.8 setup.py config
> running config
> dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:217: /usr/bin/python3.9 setup.py build
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/ns_enum.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/unicode_numbers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/unicode_numeric_hex.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/natsort.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> copying natsort/utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort/compat
> copying natsort/compat/fake_fastnumbers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort/compat
> copying natsort/compat/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort/compat
> copying natsort/compat/locale.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort/compat
> copying natsort/compat/fastnumbers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build/natsort/compat
> I: pybuild base:217: /usr/bin/python3 setup.py build
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/ns_enum.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/unicode_numbers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/unicode_numeric_hex.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/natsort.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> copying natsort/utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort/compat
> copying natsort/compat/fake_fastnumbers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort/compat
> copying natsort/compat/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort/compat
> copying natsort/compat/locale.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort/compat
> copying natsort/compat/fastnumbers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_natsort/build/natsort/compat
> dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:217: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build; python3.9 -m pytest tests
> ============================= test session starts ==============================
> platform linux -- Python 3.9.0+, pytest-4.6.11, py-1.9.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>
> plugins: hypothesis-5.32.1, mock-1.10.4
> collected 274 items
>
> tests/test_fake_fastnumbers.py ............... [ 5%]
> tests/test_final_data_transform_factory.py ........ [ 8%]
> tests/test_input_string_transform_factory.py ................. [ 14%]
> tests/test_main.py ...................... [ 22%]
> tests/test_natsort_key.py ..... [ 24%]
> tests/test_natsort_keygen.py ..................... [ 32%]
> tests/test_natsorted.py ............................................... [ 49%]
> tests/test_natsorted_convenience.py ............ [ 53%]
> tests/test_ns_enum.py . [ 54%]
> tests/test_parse_bytes_function.py .... [ 55%]
> tests/test_parse_number_function.py ....... [ 58%]
> tests/test_parse_string_function.py .... [ 59%]
> tests/test_regex.py .................................................... [ 78%]
> [ 78%]
> tests/test_string_component_transform_factory.py ......... [ 81%]
> tests/test_unicode_numbers.py ...F. [ 83%]
> tests/test_utils.py ............................................. [100%]
>
> =================================== FAILURES ===================================
> __ test_numeric_chars_contains_all_valid_unicode_numeric_and_digit_characters __
>
> def test_numeric_chars_contains_all_valid_unicode_numeric_and_digit_characters():
> set_numeric_hex = set(numeric_hex)
> set_numeric_chars = set(numeric_chars)
> set_digit_chars = set(digit_chars)
> set_decimal_chars = set(decimal_chars)
> for i in range(0X110000):
> try:
> a = chr(i)
> except ValueError:
> break
> if a in "0123456789":
> continue
> if unicodedata.numeric(a, None) is not None:
> > assert i in set_numeric_hex
> E assert 69573 in {178, 179, 185, 188, 189, 190, ...}
>
> tests/test_unicode_numbers.py:49: AssertionError
> =============================== warnings summary ===============================
> .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_raises_type_error_if_given_number[0]
> /usr/lib/python3/dist-packages/hypothesis/extra/pytestplugin.py:172: HypothesisDeprecationWarning: .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_raises_type_error_if_given_number[0] uses the 'parse_string_func' fixture, which is reset between function calls but not between test cases generated by `@given(...)`. You can change it to a module- or session-scoped fixture if it is safe to reuse; if not we recommend using a context manager inside your test function. See https://docs.pytest.org/en/latest/fixture.html#sharing-test-data for details on fixture scope.
> note_deprecation(
>
> .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_invariance[0-<lambda>]
> /usr/lib/python3/dist-packages/hypothesis/extra/pytestplugin.py:172: HypothesisDeprecationWarning: .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_invariance[0-<lambda>] uses the 'parse_string_func' fixture, which is reset between function calls but not between test cases generated by `@given(...)`. You can change it to a module- or session-scoped fixture if it is safe to reuse; if not we recommend using a context manager inside your test function. See https://docs.pytest.org/en/latest/fixture.html#sharing-test-data for details on fixture scope.
> note_deprecation(
>
> .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_invariance[48-<lambda>]
> /usr/lib/python3/dist-packages/hypothesis/extra/pytestplugin.py:172: HypothesisDeprecationWarning: .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_invariance[48-<lambda>] uses the 'parse_string_func' fixture, which is reset between function calls but not between test cases generated by `@given(...)`. You can change it to a module- or session-scoped fixture if it is safe to reuse; if not we recommend using a context manager inside your test function. See https://docs.pytest.org/en/latest/fixture.html#sharing-test-data for details on fixture scope.
> note_deprecation(
>
> .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_invariance[2147483696-<lambda>]
> /usr/lib/python3/dist-packages/hypothesis/extra/pytestplugin.py:172: HypothesisDeprecationWarning: .pybuild/cpython3_3.9_natsort/build/tests/test_parse_string_function.py::test_parse_string_factory_invariance[2147483696-<lambda>] uses the 'parse_string_func' fixture, which is reset between function calls but not between test cases generated by `@given(...)`. You can change it to a module- or session-scoped fixture if it is safe to reuse; if not we recommend using a context manager inside your test function. See https://docs.pytest.org/en/latest/fixture.html#sharing-test-data for details on fixture scope.
> note_deprecation(
>
> -- Docs: https://docs.pytest.org/en/latest/warnings.html
> ============== 1 failed, 273 passed, 4 warnings in 11.22 seconds ===============
> E: pybuild pybuild:352: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_natsort/build; python3.9 -m pytest tests
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.9 3.8" returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2020/10/27/natsort_7.0.1-1_unstable.log
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.
More information about the Python-modules-team
mailing list