#1084277 imexam: FTBFS: failing tests

Package:
src:imexam
Source:
src:imexam
Submitter:
Santiago Vila
Date:
2026-10-23 09:13:02 UTC
Severity:
normal
Tags:
#1084277#5
Date:
2024-10-07 08:32:03 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:
--------------------------------------------------------------------------------
[...]
  debian/rules binary
dh binary --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:311: python3.12 setup.py config
/<<PKGBUILDDIR>>/setup.py:11: SetuptoolsDeprecationWarning: The test command is disabled and references to it are deprecated.
!!

         ********************************************************************************
         Please remove any references to `setuptools.command.test` in all supported versions of the affected package.

         By 2024-Nov-15, you need to update your project and remove deprecated calls
         or your builds will no longer be supported.
         ********************************************************************************

!!
   from setuptools.command.test import test as TestCommand
Sphinx is not installed, can't build documents!!

Cython found
Compiling wrappers/xpa.pyx because it changed.
[1/1] Cythonizing wrappers/xpa.pyx
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'description-file' will not be supported in future
         versions. Please use the underscore name 'description_file' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'upload-dir' will not be supported in future
         versions. Please use the underscore name 'upload_dir' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'show-response' will not be supported in future
         versions. Please use the underscore name 'show_response' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

         ********************************************************************************
         Requirements should be satisfied by a PEP 517 installer.
         If you are using pip, you can try `pip install --use-pep517`.
         ********************************************************************************

!!
   dist.fetch_build_eggs(dist.setup_requires)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
   File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
     section = defn.get("tool", {})[tool_name]
               ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
/usr/lib/python3/dist-packages/setuptools/dist.py:655: DistDeprecationWarning: use_2to3 is ignored.
   ep.load()(self, ep.name, value)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'description-file' will not be supported in future
         versions. Please use the underscore name 'description_file' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'upload-dir' will not be supported in future
         versions. Please use the underscore name 'upload_dir' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'show-response' will not be supported in future
         versions. Please use the underscore name 'show_response' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
running config
    dh_auto_build -O--buildsystem=pybuild
I: pybuild base:311: /usr/bin/python3 setup.py build
/<<PKGBUILDDIR>>/setup.py:11: SetuptoolsDeprecationWarning: The test command is disabled and references to it are deprecated.
!!

         ********************************************************************************
         Please remove any references to `setuptools.command.test` in all supported versions of the affected package.

         By 2024-Nov-15, you need to update your project and remove deprecated calls
         or your builds will no longer be supported.
         ********************************************************************************

!!
   from setuptools.command.test import test as TestCommand
Sphinx is not installed, can't build documents!!

Cython found
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'description-file' will not be supported in future
         versions. Please use the underscore name 'description_file' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'upload-dir' will not be supported in future
         versions. Please use the underscore name 'upload_dir' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'show-response' will not be supported in future
         versions. Please use the underscore name 'show_response' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

         ********************************************************************************
         Requirements should be satisfied by a PEP 517 installer.
         If you are using pip, you can try `pip install --use-pep517`.
         ********************************************************************************

!!
   dist.fetch_build_eggs(dist.setup_requires)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
   File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
     section = defn.get("tool", {})[tool_name]
               ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
/usr/lib/python3/dist-packages/setuptools/dist.py:655: DistDeprecationWarning: use_2to3 is ignored.
   ep.load()(self, ep.name, value)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'description-file' will not be supported in future
         versions. Please use the underscore name 'description_file' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'upload-dir' will not be supported in future
         versions. Please use the underscore name 'upload_dir' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
/usr/lib/python3/dist-packages/setuptools/dist.py:452: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

         ********************************************************************************
         Usage of dash-separated 'show-response' will not be supported in future
         versions. Please use the underscore name 'show_response' instead.

         This deprecation is overdue, please update your project and remove deprecated
         calls to avoid build errors in the future.

         See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
         ********************************************************************************

!!
   opt = self.warn_dash_deprecation(opt, section)
running build
running build_py
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/xpa_wrap.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/ginga_viewer.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/math_helper.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/_astropy_init.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/connect.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/util.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/ds9_viewer.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/imexam_defpars.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
copying imexam/imexamine.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam/tests
copying imexam/tests/test_util.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam/tests
copying imexam/tests/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam/tests
copying imexam/tests/setup_package.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam/tests
copying imexam/tests/test_imexamine.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam/tests
running build_ext
building 'imexam.imexamxpa' extension
creating build
creating build/temp.linux-x86_64-cpython-312
creating build/temp.linux-x86_64-cpython-312/wrappers
x86_64-linux-gnu-gcc -fno-strict-overflow -Wsign-compare -DNDEBUG -g -O2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.12 -c wrappers/xpa.c -o build/temp.linux-x86_64-cpython-312/wrappers/xpa.o
x86_64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-cpython-312/wrappers/xpa.o -L/usr/lib/x86_64-linux-gnu -lxpa -o /<<PKGBUILDDIR>>/imexam/imexamxpa.cpython-312-x86_64-linux-gnu.so
    dh_auto_test -O--buildsystem=pybuild
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build; python3.12 -m pytest
============================= test session starts ==============================
platform linux -- Python 3.12.7, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>
configfile: setup.cfg
plugins: remotedata-0.4.1, astropy-header-0.2.2, mock-3.14.0, hypothesis-6.112.1, typeguard-4.3.0, arraydiff-0.6.1, filter-subpackage-0.2.0, doctestplus-1.2.1, astropy-0.11.0, cov-5.0.0
collected 0 items / 2 errors

==================================== ERRORS ====================================
_ ERROR collecting .pybuild/cpython3_3.12_imexam/build/imexam/tests/test_imexamine.py _
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3052: in version
     return self._version
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3185: in __getattr__
     raise AttributeError(attr)
E   AttributeError: _version. Did you mean: 'version'?

The above exception was the direct cause of the following exception:
/usr/lib/python3.12/importlib/__init__.py:90: in import_module
     return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1387: in _gcd_import
     ???
<frozen importlib._bootstrap>:1360: in _find_and_load
     ???
<frozen importlib._bootstrap>:1310: in _find_and_load_unlocked
     ???
<frozen importlib._bootstrap>:488: in _call_with_frames_removed
     ???
<frozen importlib._bootstrap>:1387: in _gcd_import
     ???
<frozen importlib._bootstrap>:1360: in _find_and_load
     ???
<frozen importlib._bootstrap>:1310: in _find_and_load_unlocked
     ???
<frozen importlib._bootstrap>:488: in _call_with_frames_removed
     ???
<frozen importlib._bootstrap>:1387: in _gcd_import
     ???
<frozen importlib._bootstrap>:1360: in _find_and_load
     ???
<frozen importlib._bootstrap>:1331: in _find_and_load_unlocked
     ???
<frozen importlib._bootstrap>:935: in _load_unlocked
     ???
<frozen importlib._bootstrap_external>:995: in exec_module
     ???
<frozen importlib._bootstrap>:488: in _call_with_frames_removed
     ???
imexam/__init__.py:41: in <module>
     release = get_distribution('imexam').version
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:534: in get_distribution
     dist = get_provider(dist)
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:417: in get_provider
     return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:727: in find
     if dist is not None and dist not in req:
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3504: in __contains__
     version = item.version
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3060: in version
     raise ValueError(msg, self) from e
E   ValueError: ("Missing 'Version:' header and/or PKG-INFO file at path: /<<PKGBUILDDIR>>/imexam.egg-info/PKG-INFO", imexam [unknown version] (/<<PKGBUILDDIR>>))
------------------------------- Captured stdout --------------------------------
Ginga not installed, use other viewer, or no viewer
_ ERROR collecting .pybuild/cpython3_3.12_imexam/build/imexam/tests/test_util.py _
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3052: in version
     return self._version
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3185: in __getattr__
     raise AttributeError(attr)
E   AttributeError: _version. Did you mean: 'version'?

The above exception was the direct cause of the following exception:
/usr/lib/python3.12/importlib/__init__.py:90: in import_module
     return _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1387: in _gcd_import
     ???
<frozen importlib._bootstrap>:1360: in _find_and_load
     ???
<frozen importlib._bootstrap>:1310: in _find_and_load_unlocked
     ???
<frozen importlib._bootstrap>:488: in _call_with_frames_removed
     ???
<frozen importlib._bootstrap>:1387: in _gcd_import
     ???
<frozen importlib._bootstrap>:1360: in _find_and_load
     ???
<frozen importlib._bootstrap>:1310: in _find_and_load_unlocked
     ???
<frozen importlib._bootstrap>:488: in _call_with_frames_removed
     ???
<frozen importlib._bootstrap>:1387: in _gcd_import
     ???
<frozen importlib._bootstrap>:1360: in _find_and_load
     ???
<frozen importlib._bootstrap>:1331: in _find_and_load_unlocked
     ???
<frozen importlib._bootstrap>:935: in _load_unlocked
     ???
<frozen importlib._bootstrap_external>:995: in exec_module
     ???
<frozen importlib._bootstrap>:488: in _call_with_frames_removed
     ???
imexam/__init__.py:41: in <module>
     release = get_distribution('imexam').version
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:534: in get_distribution
     dist = get_provider(dist)
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:417: in get_provider
     return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:727: in find
     if dist is not None and dist not in req:
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3504: in __contains__
     version = item.version
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:3060: in version
     raise ValueError(msg, self) from e
E   ValueError: ("Missing 'Version:' header and/or PKG-INFO file at path: /<<PKGBUILDDIR>>/imexam.egg-info/PKG-INFO", imexam [unknown version] (/<<PKGBUILDDIR>>))
=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/_pytest/config/__init__.py:1441
   /usr/lib/python3/dist-packages/_pytest/config/__init__.py:1441: PytestConfigWarning: Unknown config option: pep8ignore

     self._warn_or_fail_if_strict(f"Unknown config option: {key}\n")

imexam/__init__.py:12
   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_imexam/build/imexam/__init__.py:12: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
     from pkg_resources import get_distribution, DistributionNotFound

#1084277#10
Date:
2024-10-16 19:37:55 UTC
From:
To:
imexam seems unmaintained since 2022.

I am not sure whether it is worth to put too much efforts into the
package, but I will ask for future plans there.

#1084277#15
Date:
2026-09-12 20:24:19 UTC
From:
To:
user debian-python@lists.debian.org
usertags 1084277 python3.15
tags 1084277 patch
thanks

Hi!

While rebuilding the python related packages against the Python 3.15rc2
version I ran into this FTBFS [1].

To get it back into a buildable state I needed to apply numerous fixes:
- Upstream patch 3f991f9 Update setup.py
- Upstream patch d7f82ac, 9a4e7a4, a4f3cbf Update setup.cfg
- Upstream patch 1ac361b Update __init__
- Upstream patch 60839f9 Update astropy_init
- Drop patch to remove astropy test runner
- Add patch to fix test failures with NumPy 2.x
- Add patch to support photutils >= 2.0 and handle optional import
   errors
- Replace patch Don-t-use-doctest-extension-in-sphinx.patch with
   backport of cee4c15 / 29b6511
- Add missing python3-pytest autopkgtest dependency

I've applied these fixes in the sandbox [2] to verify that it builds
successfully, these should be applied in Debian to get the package back
to a healthy state.

Happy hacking,

[1]: https://debusine.debian.net/debian/r-python-python3.15/artifact/4645860/
[2]: https://debusine.debian.net/debian/r-python-python3.15/

#1084277#22
Date:
2026-10-23 09:09:57 UTC
From:
To:
¡Hola!

Just a minor update, I sent the patches upstream [2] and added an issue [1]
about the upstream state of imexam.
The upstream response is that "this repository is not under active
development. I'm not sure of it's future support, that is under
discussion." ... "for now you are safe to remove it from debian packaging"

Happy hacking,

[1]: https://github.com/spacetelescope/imexam/issues/269
[2]: https://github.com/spacetelescope/imexam/pull/270