• Bug#1066800: duecredit: FTBFS: ValueError: I/O operation on closed file

    From Lucas Nussbaum@21:1/5 to All on Wed Mar 13 16:20:08 2024
    Source: duecredit
    Version: 0.9.1-1.1
    Severity: serious
    Justification: FTBFS
    Tags: trixie sid ftbfs
    User: lucas@debian.org
    Usertags: ftbfs-20240313 ftbfs-trixie

    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 --buildsystem=pybuild
    dh: warning: Compatibility levels before 10 are deprecated (level 9 in use)
    dh_update_autotools_config -O--buildsystem=pybuild
    dh_auto_configure -O--buildsystem=pybuild
    dh_auto_configure: warning: Compatibility levels before 10 are deprecated (level 9 in use)
    pybuild --configure -i python{version} -p "3.12 3.11"
    I: pybuild base:305: python3.12 setup.py config
    /<<PKGBUILDDIR>>/setup.py:50: SyntaxWarning: invalid escape sequence '\s'
    __release_date__ = re.sub('^ -- .*>\s*(.*)', r'\1',
    Generating version.py out of debian/copyright information
    Version: 0.9.1+debian.1.1
    running config
    I: pybuild base:305: python3.11 setup.py config
    Generating version.py out of debian/copyright information
    Version: 0.9.1+debian.1.1
    running config
    dh_auto_build -O--buildsystem=pybuild
    dh_auto_build: warning: Compatibility levels before 10 are deprecated (level 9 in use)
    pybuild --build -i python{version} -p "3.12 3.11"
    I: pybuild base:305: /usr/bin/python3.12 setup.py build /<<PKGBUILDDIR>>/setup.py:50: SyntaxWarning: invalid escape sequence '\s'
    __release_date__ = re.sub('^ -- .*>\s*(.*)', r'\1',
    Generating version.py out of debian/copyright information
    Version: 0.9.1+debian.1.1
    running build
    running build_py
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit copying duecredit/utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/version.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/log.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/parsers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/io.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/entries.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/config.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/collector.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/dueswitch.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/stub.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    copying duecredit/versions.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_injections.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_cmdline.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_versions.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_entries.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_io.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_api.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_collector.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    copying duecredit/tests/test_dueswitch.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/common_args.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/cmd_summary.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/main.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/cmd_test.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/helpers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/cmdline
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/injector.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_pandas.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_scipy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_nibabel.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_nipype.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_nipy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_mdp.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_dipy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_mne.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_skimage.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_psychopy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_biosig.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_matplotlib.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_numpy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_sklearn.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/injections
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/mod
    copying duecredit/tests/mod/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/mod
    copying duecredit/tests/mod/imported.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/mod
    copying duecredit/tests/mod/submod.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/mod
    running egg_info
    creating duecredit.egg-info
    writing duecredit.egg-info/PKG-INFO
    writing dependency_links to duecredit.egg-info/dependency_links.txt
    writing entry points to duecredit.egg-info/entry_points.txt
    writing requirements to duecredit.egg-info/requires.txt
    writing top-level names to duecredit.egg-info/top_level.txt
    writing manifest file 'duecredit.egg-info/SOURCES.txt'
    reading manifest file 'duecredit.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files matching '*.py[cod]' found anywhere in distribution
    adding license file 'LICENSE'
    writing manifest file 'duecredit.egg-info/SOURCES.txt' /usr/lib/python3/dist-packages/setuptools/command/build_py.py:204: _Warning: Package 'duecredit.tests.envs.nolxml' is absent from the `packages` configuration.
    !!

    ********************************************************************************
    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'duecredit.tests.envs.nolxml' as an importable package[^1],
    but it is absent from setuptools' `packages` configuration.

    This leads to an ambiguous overall configuration. If you want to distribute this
    package, please make sure that 'duecredit.tests.envs.nolxml' is explicitly added
    to the `packages` configuration field.

    Alternatively, you can also rely on setuptools' discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" on setuptools documentation page:

    - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

    If you don't want 'duecredit.tests.envs.nolxml' to be distributed and are
    already explicitly excluding 'duecredit.tests.envs.nolxml' via
    `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
    you can try to use `exclude_package_data`, or `include-package-data=False` in
    combination with a more fine grained `package-data` configuration.

    You can read more about "package data files" on setuptools documentation page:

    - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


    [^1]: For Python, any directory (with suitable naming) can be imported,
    even if it does not contain any `.py` files.
    On the other hand, currently there is no concept of package data
    directory, all directories are treated like packages.
    ********************************************************************************

    !!
    check.warn(importable)
    copying duecredit/tests/test_import_doi -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/envs
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/envs/nolxml
    copying duecredit/tests/envs/nolxml/lxml.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build/duecredit/tests/envs/nolxml
    I: pybuild base:305: /usr/bin/python3 setup.py build
    Generating version.py out of debian/copyright information
    Version: 0.9.1+debian.1.1
    running build
    running build_py
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit copying duecredit/utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/version.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/log.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/parsers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/io.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/entries.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/config.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/collector.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/dueswitch.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/stub.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    copying duecredit/versions.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_injections.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_cmdline.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_versions.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_entries.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_io.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_api.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_utils.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_collector.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    copying duecredit/tests/test_dueswitch.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/common_args.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/cmd_summary.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/main.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/cmd_test.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    copying duecredit/cmdline/helpers.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/cmdline
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/injector.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_pandas.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_scipy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_nibabel.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_nipype.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_nipy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_mdp.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_dipy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_mne.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_skimage.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_psychopy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_biosig.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_matplotlib.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_numpy.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    copying duecredit/injections/mod_sklearn.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/injections
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/mod
    copying duecredit/tests/mod/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/mod
    copying duecredit/tests/mod/imported.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/mod
    copying duecredit/tests/mod/submod.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/mod
    running egg_info
    writing duecredit.egg-info/PKG-INFO
    writing dependency_links to duecredit.egg-info/dependency_links.txt
    writing entry points to duecredit.egg-info/entry_points.txt
    writing requirements to duecredit.egg-info/requires.txt
    writing top-level names to duecredit.egg-info/top_level.txt
    reading manifest file 'duecredit.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files matching '*.py[cod]' found anywhere in distribution
    adding license file 'LICENSE'
    writing manifest file 'duecredit.egg-info/SOURCES.txt' /usr/lib/python3/dist-packages/setuptools/command/build_py.py:204: _Warning: Package 'duecredit.tests.envs.nolxml' is absent from the `packages` configuration.
    !!

    ********************************************************************************
    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'duecredit.tests.envs.nolxml' as an importable package[^1],
    but it is absent from setuptools' `packages` configuration.

    This leads to an ambiguous overall configuration. If you want to distribute this
    package, please make sure that 'duecredit.tests.envs.nolxml' is explicitly added
    to the `packages` configuration field.

    Alternatively, you can also rely on setuptools' discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" on setuptools documentation page:

    - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

    If you don't want 'duecredit.tests.envs.nolxml' to be distributed and are
    already explicitly excluding 'duecredit.tests.envs.nolxml' via
    `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
    you can try to use `exclude_package_data`, or `include-package-data=False` in
    combination with a more fine grained `package-data` configuration.

    You can read more about "package data files" on setuptools documentation page:

    - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


    [^1]: For Python, any directory (with suitable naming) can be imported,
    even if it does not contain any `.py` files.
    On the other hand, currently there is no concept of package data
    directory, all directories are treated like packages.
    ********************************************************************************

    !!
    check.warn(importable)
    copying duecredit/tests/test_import_doi -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/envs
    creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/envs/nolxml
    copying duecredit/tests/envs/nolxml/lxml.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_duecredit/build/duecredit/tests/envs/nolxml
    dh_auto_test -O--buildsystem=pybuild
    dh_auto_test: warning: Compatibility levels before 10 are deprecated (level 9 in use)
    pybuild --test --test-pytest -i python{version} -p "3.12 3.11"
    I: pybuild base:305: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_duecredit/build; python3.12 -m pytest
    ============================= test session starts ==============================
    platform linux -- Python 3.12.2, pytest-8.0.2, pluggy-1.4.0
    rootdir: /<<PKGBUILDDIR>>
    collected 75 items

    duecredit/tests/test__main__.py ... [ 4%]
    duecredit/tests/test_api.py ...ssssssss [ 18%]
    duecredit/tests/test_cmdline.py ..... [ 25%]
    duecredit/tests/test_collector.py ......... [ 37%]
    duecredit/tests/test_dueswitch.py .. [ 40%]
    duecredit/tests/test_entries.py .. [ 42%]
    duecredit/tests/test_injections.py EEEEEEEEEEEE.F...x. [ 68%]
    duecredit/tests/test_io.py ...........X. [ 85%]
    duecredit/tests/test_utils.py . [ 86%]
    duecredit/tests/test_versions.py ..ssssssss [100%]

    ==================================== ERRORS ====================================
    _ ERROR at setup of TestActiveInjector.test_simple_injection[testfunc1-from duecredit.tests.mod import testfunc1-None] _

    cls = <class '_pytest.runner.CallInfo'>
    func = <function call_runtest_hook.<locals>.<lambda> at 0x7ff1de957380>
    when = 'setup'
    reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
    cls,
    func: Callable[[], TResult],
    when: Literal["collect", "setup", "call", "teardown"],
    reraise: Optional[
    Union[Type[BaseException], Tuple[Type[BaseException], ...]]
    ] = None,
    ) -> "CallInfo[TResult]":
    """Call func, wrapping the result in a CallInfo.

    :param func:
    The function to call. Called without arguments.
    :param when:
    The phase in which the function is called.
    :param reraise:
    Exception or exceptions that shall propagate if raised by the
    function, instead of being wrapped in the CallInfo.
    """
    excinfo = None
    start = timing.time()
    precise_start = timing.perf_counter()
    try:
    result: Optional[TResult] = func()

    /usr/lib/python3/dist-packages/_pytest/runner.py:342:
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
    /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
    /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult) /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:85: in pytest_runtest_setup
    yield from unraisable_exception_runtest_hook() /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
    yield
    /usr/lib/python3/dist-packages/_pytest/logging.py:833: in pytest_runtest_setup
    yield from self._runtest_for(item, "setup") /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
    yield
    /usr/lib/python3/dist-packages/_pytest/capture.py:877: in pytest_runtest_setup
    return (yield) /usr/lib/python3/dist-packages/_pytest/threadexception.py:82: in pytest_runtest_setup
    yield from thread_exception_runtest_hook() /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
    yield
    /usr/lib/python3/dist-packages/_pytest/runner.py:158: in pytest_runtest_setup
    item.session._setupstate.setup(item) /usr/lib/python3/dist-packages/_pytest/runner.py:514: in setup
    raise exc
    /usr/lib/python3/dist-packages/_pytest/runner.py:511: in setup
    col.setup()
    /usr/lib/python3/dist-packages/_pytest/python.py:1834: in setup
    self._request._fillfixtures() /usr/lib/python3/dist-packages/_pytest/fixtures.py:689: in _fillfixtures
    item.funcargs[argname] = self.getfixturevalue(argname) /usr/lib/python3/dist-packages/_pytest/fixtures.py:547: in getfixturevalue
    fixturedef = self._get_active_fixturedef(argname) /usr/lib/python3/dist-packages/_pytest/fixtures.py:566: in _get_active_fixturedef
    self._compute_fixture_value(fixturedef) /usr/lib/python3/dist-packages/_pytest/fixtures.py:648: in _compute_fixture_value
    fixturedef.execute(request=subrequest) /usr/lib/python3/dist-packages/_pytest/fixtures.py:1087: in execute
    result = ihook.pytest_fixture_setup(fixturedef=self, request=request) /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
    /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult) /usr/lib/python3/dist-packages/_pytest/setuponly.py:36: in pytest_fixture_setup
    return (yield)
    /usr/lib/python3/dist-packages/_pytest/fixtures.py:1140: in pytest_fixture_setup
    result = call_fixture_func(fixturefunc, request, kwargs) /usr/lib/python3/dist-packages/_pytest/fixtures.py:910: in call_fixture_func
    fixture_result = next(generator)
    _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

    self = <duecredit.tests.test_injections.TestActiveInjector object at 0x7ff1deaaa7b0>
    request = <SubRequest '_xunit_setup_method_fixture_TestActiveInjector' for <Function test_simple_injection[testfunc1-from duecredit.tests.mod import testfunc1-None]>>

    @fixtures.fixture(
    autouse=True,
    scope="function",
    # Use a unique name to speed up lookup.
    name=f"_xunit_setup_method_fixture_{self.obj.__qualname__}",
    )
    def xunit_setup_method_fixture(self, request) -> Generator[None, None, None]:
    method = request.function
    if setup_method is not None:
    func = getattr(self, setup_name)
    _call_with_optional_argument(func, method)
    if emit_nose_setup_warning:
    warnings.warn(
    NOSE_SUPPORT_METHOD.format(
    nodeid=request.node.nodeid, method="setup"
    ),
    stacklevel=2,
    )
    E pytest.PytestRemovedIn8Warning: Support for nose tests is deprecated and will be removed in a future release.
    E .pybuild/cpython3_3.12_duecredit/build/duecredit/tests/test_injections.py::TestActiveInjector::test_simple_injection[testfunc1-from duecredit.tests.mod import testfunc1-None] is using nose-specific method: `setup(self)`
    E To remove this warning, rename it to `setup_method(self)`
    E See docs: https://docs.pytest.org/en/stable/deprecations.html#support-for-tests-written-for-nose

    /usr/lib/python3/dist-packages/_pytest/python.py:888: PytestRemovedIn8Warning ---------------------------- Captured stdout setup -----------------------------
    2024-03-12 20:37:46,773 [DEBUG] Created injector <duecredit.injections.injector.DueCreditInjector object at 0x7ff1de9b4620> (injector.py:106)
    2024-03-12 20:37:46,773 [DEBUG] Adding delayed injection for ('biosig',) (injector.py:113)
    2024-03-12 20:37:46,773 [DEBUG] Adding delayed injection for ('dipy',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('matplotlib',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('mdp',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('mne',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('nibabel',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('nipy',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('nipype',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('numpy',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('pandas',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('psychopy',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('scipy',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('skimage',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Adding delayed injection for ('sklearn',) (injector.py:113)
    2024-03-12 20:37:46,774 [DEBUG] Assigning our importer (injector.py:305) ------------------------------ Captured log setup ------------------------------
    DEBUG duecredit:injector.py:106 Created injector <duecredit.injections.injector.DueCreditInjector object at 0x7ff1de9b4620>
    DEBUG duecredit:injector.py:113 Adding delayed injection for ('biosig',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('dipy',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('matplotlib',)
    DEBUG duecredit:injector.py:113 Adding delayed injection for ('mdp',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('mne',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('nibabel',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('nipy',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('nipype',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('numpy',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('pandas',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('psychopy',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('scipy',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('skimage',) DEBUG duecredit:injector.py:113 Adding delayed injection for ('sklearn',) DEBUG duecredit:injector.py:305 Assigning our importer
    _ ERROR at setup of TestActiveInjector.test_simple_injection[TestClass1.testmeth1-from duecredit.tests.mod import TestClass1; c = TestClass1()-c.testmeth1] _

    cls = <class '_pytest.runner.CallInfo'>
    func = <function call_runtest_hook.<locals>.<lambda> at 0x7ff1de917e20>
    when = 'setup'
    reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)

    @classmethod
    def from_call(
    cls,
    func: Callable[[], TResult],
    when: Literal["collect", "setup", "call", "teardown"],
    reraise: Optional[
    Union[Type[BaseException], Tuple[Type[BaseException], ...]]
    ] = None,
    ) -> "CallInfo[TResult]":
    """Call func, wrapping the result in a CallInfo.

    :param func:
    The function to call. Called without arguments.
    :param when:
    The phase in which the function is called.
    :param reraise:
    Exception or exceptions that shall propagate if raised by the
    function, instead of being wrapped in the CallInfo.
    """
    excinfo = None
    start = timing.time()
    precise_start = timing.perf_counter()
    try:

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)