[Debian-med-packaging] Bug#997503: python-easydev: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.9 returned exit code 13
Lucas Nussbaum
lucas at debian.org
Sat Oct 23 21:40:31 BST 2021
Source: python-easydev
Version: 0.10.1+dfsg-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20211023 ftbfs-bookworm
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> dpkg-buildpackage
> -----------------
>
> Command: dpkg-buildpackage -us -uc -sa -rfakeroot
> dpkg-buildpackage: info: source package python-easydev
> dpkg-buildpackage: info: source version 0.10.1+dfsg-1
> dpkg-buildpackage: info: source distribution unstable
> dpkg-buildpackage: info: source changed by Andreas Tille <tille at debian.org>
> dpkg-source --before-build .
> dpkg-buildpackage: info: host architecture amd64
> dpkg-source: info: using options from python-easydev-0.10.1+dfsg/debian/source/options: --extend-diff-ignore=^[^/]*[.]egg-info/
> debian/rules clean
> dh clean --with python3 --buildsystem=pybuild
> dh_auto_clean -O--buildsystem=pybuild
> I: pybuild base:232: python3.9 setup.py clean
> running clean
> removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build' (and everything under it)
> 'build/bdist.linux-x86_64' does not exist -- can't clean it
> 'build/scripts-3.9' does not exist -- can't clean it
> dh_autoreconf_clean -O--buildsystem=pybuild
> dh_clean -O--buildsystem=pybuild
> dpkg-source -b .
> dpkg-source: info: using options from python-easydev-0.10.1+dfsg/debian/source/options: --extend-diff-ignore=^[^/]*[.]egg-info/
> dpkg-source: info: using source format '3.0 (quilt)'
> dpkg-source: info: building python-easydev using existing ./python-easydev_0.10.1+dfsg.orig.tar.xz
> dpkg-source: info: using patch list from debian/patches/series
> dpkg-source: info: building python-easydev in python-easydev_0.10.1+dfsg-1.debian.tar.xz
> dpkg-source: info: building python-easydev in python-easydev_0.10.1+dfsg-1.dsc
> debian/rules binary
> dh binary --with python3 --buildsystem=pybuild
> dh_update_autotools_config -O--buildsystem=pybuild
> dh_autoreconf -O--buildsystem=pybuild
> dh_auto_configure -O--buildsystem=pybuild
> I: pybuild base:232: python3.9 setup.py config
> running config
> dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:232: /usr/bin/python3 setup.py build
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/chunks.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/dependencies.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/md5tools.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/decorators.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/options.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/copybutton.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/config_tools.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/easytest.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/codecs.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/logging_tools.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/misc.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/profiler.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/package.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/url.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/platform.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/progressbar.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/multicore.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/doc.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/console.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/timer.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/browser.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/paths.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/sphinx_themes.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> copying easydev/tools.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share
> copying easydev/share/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share
> running egg_info
> creating easydev.egg-info
> writing easydev.egg-info/PKG-INFO
> writing dependency_links to easydev.egg-info/dependency_links.txt
> writing entry points to easydev.egg-info/entry_points.txt
> writing requirements to easydev.egg-info/requires.txt
> writing top-level names to easydev.egg-info/top_level.txt
> writing manifest file 'easydev.egg-info/SOURCES.txt'
> reading manifest file 'easydev.egg-info/SOURCES.txt'
> reading manifest template 'MANIFEST.in'
> adding license file 'COPYING'
> writing manifest file 'easydev.egg-info/SOURCES.txt'
> copying easydev/share/copybutton.js -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno
> copying easydev/share/themes/cno/index.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno
> copying easydev/share/themes/cno/indexsidebar.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno
> copying easydev/share/themes/cno/layout.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno
> copying easydev/share/themes/cno/theme.conf -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno/static
> copying easydev/share/themes/cno/static/bgfooter.png -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno/static
> copying easydev/share/themes/cno/static/bgtop.png -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno/static
> copying easydev/share/themes/cno/static/software.css_t -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno/static
> copying easydev/share/themes/cno/static/warning.jpg -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/cno/static
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard
> copying easydev/share/themes/standard/index.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard
> copying easydev/share/themes/standard/indexsidebar.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard
> copying easydev/share/themes/standard/layout.html -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard
> copying easydev/share/themes/standard/theme.conf -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard/static
> copying easydev/share/themes/standard/static/bgfooter.png -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard/static
> copying easydev/share/themes/standard/static/bgtop.png -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard/static
> copying easydev/share/themes/standard/static/software.css_t -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard/static
> copying easydev/share/themes/standard/static/warning.jpg -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev/share/themes/standard/static
> dh_auto_test -O--buildsystem=pybuild
> I: pybuild pybuild:285: python3.9 /<<PKGBUILDDIR>>/setup.py egg_info -e /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build
> running egg_info
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info
> writing /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/PKG-INFO
> writing dependency_links to /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/dependency_links.txt
> writing entry points to /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/entry_points.txt
> writing requirements to /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/requires.txt
> writing top-level names to /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/top_level.txt
> writing manifest file '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/SOURCES.txt'
> reading manifest file '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/SOURCES.txt'
> reading manifest template 'MANIFEST.in'
> adding license file 'COPYING'
> writing manifest file '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build/easydev.egg-info/SOURCES.txt'
> I: pybuild base:232: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build; python3.9 -m pytest -k-test_url
> ============================= test session starts ==============================
> platform linux -- Python 3.9.7, pytest-6.2.5, py-1.10.0, pluggy-0.13.0 -- /usr/bin/python3.9
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>, configfile: setup.cfg
> plugins: mock-3.6.1, cov-3.0.0
> collecting ... collected 59 items / 1 deselected / 58 selected
>
> test/test_appdirs.py::test_app PASSED [ 1%]
> test/test_browse.py::test_browse PASSED [ 3%]
> test/test_browse.py::test_browse_module PASSED [ 5%]
> test/test_chunks.py::test_chunks PASSED [ 6%]
> test/test_cnolab_sphinx.py::test_path PASSED [ 8%]
> test/test_cnolab_sphinx.py::test_sphinx_themes PASSED [ 10%]
> test/test_codecs.py::test_tolist PASSED [ 12%]
> test/test_codecs.py::test_tostring PASSED [ 13%]
> test/test_config.py::test_config_custom PASSED [ 15%]
> test/test_config.py::test_configExample PASSED [ 17%]
> test/test_config.py::test_ordered_dict_attribute PASSED [ 18%]
> test/test_config.py::test_DynamicConfig PASSED [ 20%]
> test/test_config.py::test_DynamicConfigDelete PASSED [ 22%]
> test/test_config.py::test_DynamicConfig_setter PASSED [ 24%]
> test/test_config.py::test_section2dict PASSED [ 25%]
> test/test_config.py::test_compare PASSED [ 27%]
> test/test_console.py::test_get_terminal_width PASSED [ 29%]
> test/test_console.py::test_term_width_line PASSED [ 31%]
> test/test_console.py::test_color_terminal PASSED [ 32%]
> test/test_console.py::test_print_color PASSED [ 34%]
> test/test_copybutton.py::test_copybutton PASSED [ 36%]
> test/test_copybutton.py::test_copy_javascript_into_static_path PASSED [ 37%]
> test/test_decorators.py::test_deco_pandas PASSED [ 39%]
> test/test_decorators.py::test_deco_pylab PASSED [ 41%]
> test/test_decorators.py::test PASSED [ 43%]
> test/test_dependencies.py::test PASSED [ 44%]
> test/test_doc.py::test_underline PASSED [ 46%]
> test/test_easytest.py::test_trysetattr PASSED [ 48%]
> test/test_easytest.py::test_tempfile PASSED [ 50%]
> test/test_easytest.py::test_list_almost_equal PASSED [ 51%]
> test/test_logging_tools.py::test_logging FAILED [ 53%]
> test/test_md5.py::test_md5 PASSED [ 55%]
> test/test_misc.py::test_get_home PASSED [ 56%]
> test/test_misc.py::test_cmd_exists PASSED [ 58%]
> test/test_misc.py::test_in_ipynb PASSED [ 60%]
> test/test_multicore.py::test_func PASSED [ 62%]
> test/test_options.py::test PASSED [ 63%]
> test/test_package.py::test_package PASSED [ 65%]
> test/test_package.py::test_options PASSED [ 67%]
> test/test_paths.py::test_get_share_directory_path PASSED [ 68%]
> test/test_paths.py::test_get_share_directories PASSED [ 70%]
> test/test_paths.py::test_get_share_file PASSED [ 72%]
> test/test_paths.py::test_gsf PASSED [ 74%]
> test/test_platform.py::test_platform PASSED [ 75%]
> test/test_profiler.py::test_profile PASSED [ 77%]
> test/test_progressbar.py::test_progressbar PASSED [ 79%]
> test/test_timer.py::test_timer PASSED [ 81%]
> test/test_tools.py::test_check_range PASSED [ 82%]
> test/test_tools.py::test_swapdict PASSED [ 84%]
> test/test_tools.py::test_tools PASSED [ 86%]
> test/test_tools.py::test_tools2 PASSED [ 87%]
> test/test_tools.py::test_checkParams PASSED [ 89%]
> test/test_tools.py::test_check_param_in_list PASSED [ 91%]
> test/test_tools.py::test_precision PASSED [ 93%]
> test/test_tools.py::test_attrdict PASSED [ 94%]
> test/test_tools.py::test_devtools PASSED [ 96%]
> test/test_tools.py::test_mkdirs PASSED [ 98%]
> test/test_tools.py::test_touch PASSED [100%]
>
> =================================== FAILURES ===================================
> _________________________________ test_logging _________________________________
>
> def test_logging():
>
> > l = Logging("INFO")
>
> test/test_logging_tools.py:6:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> easydev/logging_tools.py:54: in __init__
> self._set_name(name)
> easydev/logging_tools.py:65: in _set_name
> self.level = "WARNING"
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> self = <easydev.logging_tools.Logging object at 0x7ff48a542f40>
> level = 'WARNING'
>
> def _set_level(self, level):
> if isinstance(level, bool):
> if level is True:
> level = "INFO"
> if level is False:
> level = "ERROR"
> assert level in ["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"],\
> "you provided {}".format(level)
> > logging_level = getattr(colorlog.logging.logging, level)
> E AttributeError: module 'colorlog' has no attribute 'logging'
>
> easydev/logging_tools.py:80: AttributeError
> =============================== warnings summary ===============================
> ../../../../../../usr/lib/python3/dist-packages/_pytest/mark/__init__.py:264
> /usr/lib/python3/dist-packages/_pytest/mark/__init__.py:264: PytestDeprecationWarning: The `-k '-expr'` syntax to -k is deprecated.
> Use `-k 'not expr'` instead.
> deselect_by_keyword(items, config)
>
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
>
> ----------- coverage: platform linux, python 3.9.7-final-0 -----------
> Name Stmts Miss Cover Missing
> ---------------------------------------------------------
> easydev/__init__.py 41 0 100%
> easydev/browser.py 10 1 90% 84
> easydev/chunks.py 10 0 100%
> easydev/codecs.py 26 1 96% 60
> easydev/config_tools.py 144 13 91% 55, 333, 336-341, 344-345, 435-439
> easydev/console.py 47 8 83% 44-45, 63, 72, 77-80
> easydev/copybutton.py 22 0 100%
> easydev/decorators.py 52 11 79% 46, 52, 70-74, 126, 150, 154, 168, 172
> easydev/dependencies.py 10 0 100%
> easydev/doc.py 5 0 100%
> easydev/easytest.py 36 0 100%
> easydev/logging_tools.py 56 14 75% 67, 74-77, 81, 86, 88, 90, 92, 94, 100, 106, 108
> easydev/md5tools.py 8 0 100%
> easydev/misc.py 15 0 100%
> easydev/multicore.py 47 0 100%
> easydev/options.py 7 0 100%
> easydev/package.py 113 14 88% 242-243, 255, 262, 294, 358, 367, 398-409
> easydev/paths.py 47 4 91% 94, 114, 140, 146
> easydev/platform.py 16 0 100%
> easydev/profiler.py 17 13 24% 42-55
> easydev/progressbar.py 67 3 96% 101, 150, 201
> easydev/share/__init__.py 0 0 100%
> easydev/sphinx_themes.py 15 0 100%
> easydev/timer.py 2 0 100%
> easydev/tools.py 141 11 92% 156-157, 208-212, 276-277, 351-352, 356
> easydev/url.py 6 0 100%
> ---------------------------------------------------------
> TOTAL 960 93 90%
>
> =========================== short test summary info ============================
> FAILED test/test_logging_tools.py::test_logging - AttributeError: module 'col...
> ============ 1 failed, 57 passed, 1 deselected, 1 warning in 3.47s =============
> E: pybuild pybuild:354: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_easydev/build; python3.9 -m pytest -k-test_url
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.9 returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2021/10/23/python-easydev_0.10.1+dfsg-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!
If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
More information about the Debian-med-packaging
mailing list