#1136924 python-dicompylercore: FTBFS: ModuleNotFoundError: No module named 'dicom'

#1136924#5
Date:
2026-05-17 10:48:31 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202605/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:python-dicompylercore, so that this is still
visible in the BTS web page for this package.

Thanks.
--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --with python3 --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
I: pybuild base:385: python3.13 setup.py clean
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite'
  warnings.warn(msg)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
/usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!

        ********************************************************************************
        Please consider removing the following classifiers in favor of a SPDX license expression:

        License :: OSI Approved :: BSD License

        See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
        ********************************************************************************

!!
  self._finalize_license_expression()
running clean
removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build' (and everything under it)
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.13' does not exist -- can't clean it
   dh_autoreconf_clean -O--buildsystem=pybuild
   dh_clean -O--buildsystem=pybuild
 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:385: python3.13 setup.py config
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite'
  warnings.warn(msg)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
/usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!

        ********************************************************************************
        Please consider removing the following classifiers in favor of a SPDX license expression:

        License :: OSI Approved :: BSD License

        See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
        ********************************************************************************

!!
  self._finalize_license_expression()
running config
   dh_auto_build -O--buildsystem=pybuild
I: pybuild base:385: /usr/bin/python3 setup.py build
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite'
  warnings.warn(msg)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
/usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
!!

        ********************************************************************************
        Please consider removing the following classifiers in favor of a SPDX license expression:

        License :: OSI Approved :: BSD License

        See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
        ********************************************************************************

!!
  self._finalize_license_expression()
running build
running build_py
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/dvh.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/dvhcalc.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/util.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/config.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/dicomparser.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
copying dicompylercore/dose.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore
running egg_info
creating dicompyler_core.egg-info
writing dicompyler_core.egg-info/PKG-INFO
writing dependency_links to dicompyler_core.egg-info/dependency_links.txt
writing requirements to dicompyler_core.egg-info/requires.txt
writing top-level names to dicompyler_core.egg-info/top_level.txt
writing manifest file 'dicompyler_core.egg-info/SOURCES.txt'
reading manifest file 'dicompyler_core.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '__pycache__' found under directory '*'
warning: no previously-included files matching '*.py[co]' found under directory '*'
warning: no previously-included files matching '*.DS_Store' found under directory '*'
adding license file 'LICENSE'
adding license file 'AUTHORS.rst'
writing manifest file 'dicompyler_core.egg-info/SOURCES.txt'
   dh_auto_test -O--buildsystem=pybuild
W: pybuild base:328: No test runner selected, defaulting to unittest, ignoring test discovery problems.
Use --test-unittest to explicitly select the unittest runner.
I: pybuild base:385: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; python3.13 -m unittest discover -v
tests.test_dicomparser (unittest.loader._FailedTest.tests.test_dicomparser) ... ERROR
tests.test_dose (unittest.loader._FailedTest.tests.test_dose) ... ERROR
tests.test_dvh (unittest.loader._FailedTest.tests.test_dvh) ... ERROR
tests.test_dvhcalc (unittest.loader._FailedTest.tests.test_dvhcalc) ... ERROR

======================================================================
ERROR: tests.test_dicomparser (unittest.loader._FailedTest.tests.test_dicomparser)
----------------------------------------------------------------------
ImportError: Failed to import test module: tests.test_dicomparser
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 15, in <module>
    from pydicom.dicomio import read_file
ImportError: cannot import name 'read_file' from 'pydicom.dicomio' (/usr/lib/python3/dist-packages/pydicom/dicomio.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/unittest/loader.py", line 396, in _find_test_path
    module = self._get_module_from_name(name)
  File "/usr/lib/python3.13/unittest/loader.py", line 339, in _get_module_from_name
    __import__(name)
    ~~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/tests/test_dicomparser.py", line 10, in <module>
    from dicompylercore import dicomparser
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 19, in <module>
    from dicom import read_file
ModuleNotFoundError: No module named 'dicom'


======================================================================
ERROR: tests.test_dose (unittest.loader._FailedTest.tests.test_dose)
----------------------------------------------------------------------
ImportError: Failed to import test module: tests.test_dose
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 15, in <module>
    from pydicom.dicomio import read_file
ImportError: cannot import name 'read_file' from 'pydicom.dicomio' (/usr/lib/python3/dist-packages/pydicom/dicomio.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/unittest/loader.py", line 396, in _find_test_path
    module = self._get_module_from_name(name)
  File "/usr/lib/python3.13/unittest/loader.py", line 339, in _get_module_from_name
    __import__(name)
    ~~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/tests/test_dose.py", line 12, in <module>
    from dicompylercore import dicomparser, dose
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 19, in <module>
    from dicom import read_file
ModuleNotFoundError: No module named 'dicom'


======================================================================
ERROR: tests.test_dvh (unittest.loader._FailedTest.tests.test_dvh)
----------------------------------------------------------------------
ImportError: Failed to import test module: tests.test_dvh
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 15, in <module>
    from pydicom.dicomio import read_file
ImportError: cannot import name 'read_file' from 'pydicom.dicomio' (/usr/lib/python3/dist-packages/pydicom/dicomio.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/unittest/loader.py", line 396, in _find_test_path
    module = self._get_module_from_name(name)
  File "/usr/lib/python3.13/unittest/loader.py", line 339, in _get_module_from_name
    __import__(name)
    ~~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/tests/test_dvh.py", line 10, in <module>
    from dicompylercore import dvh, dicomparser
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 19, in <module>
    from dicom import read_file
ModuleNotFoundError: No module named 'dicom'


======================================================================
ERROR: tests.test_dvhcalc (unittest.loader._FailedTest.tests.test_dvhcalc)
----------------------------------------------------------------------
ImportError: Failed to import test module: tests.test_dvhcalc
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 15, in <module>
    from pydicom.dicomio import read_file
ImportError: cannot import name 'read_file' from 'pydicom.dicomio' (/usr/lib/python3/dist-packages/pydicom/dicomio.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/unittest/loader.py", line 396, in _find_test_path
    module = self._get_module_from_name(name)
  File "/usr/lib/python3.13/unittest/loader.py", line 339, in _get_module_from_name
    __import__(name)
    ~~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/tests/test_dvhcalc.py", line 11, in <module>
    from dicompylercore import dicomparser, dvhcalc
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build/dicompylercore/dicomparser.py", line 19, in <module>
    from dicom import read_file
ModuleNotFoundError: No module named 'dicom'
---------------------------------------------------------------------- Ran 4 tests in 0.000s FAILED (errors=4) E: pybuild pybuild:485: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13/build; python3.13 -m unittest discover -v dh_auto_test: error: pybuild --test -i python{version} -p 3.13 --parallel=2 returned exit code 13 make: *** [debian/rules:6: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2 --------------------------------------------------------------------------------
#1136924#8
Date:
2026-06-02 17:29:34 UTC
From:
To:
Hello,

Bug #1136924 in python-dicompylercore reported by you has been fixed in the
Git repository and is awaiting an upload. You can see the commit
message below and you can check the diff of the fix at:

https://salsa.debian.org/med-team/python-dicompylercore/-/commit/8ff020d576984f018be1350de6f74c9a1a02c788

(this message was generated automatically)
-- 
Greetings

https://bugs.debian.org/1136924

#1136924#15
Date:
2026-06-02 17:48:35 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
python-dicompylercore, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1136924@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Andreas Tille <tille@debian.org> (supplier of updated python-dicompylercore package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Tue, 02 Jun 2026 19:10:11 +0200
Source: python-dicompylercore
Architecture: source
Version: 0.5.6-4
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team <debian-med-packaging@lists.alioth.debian.org>
Changed-By: Andreas Tille <tille@debian.org>
Closes: 1136924
Changes:
 python-dicompylercore (0.5.6-4) unstable; urgency=medium
 .
   * d/watch: version=5
   * Upstream patch to update pydicom Python 3.10+
     Closes: #1136924
   * Standards-Version: 4.7.4 (routine-update)
   * Reflow Uploaders field (cme)
   * Remove Priority field (cme)
   * Build-Depends: s/dh-python/dh-sequence-python3/ (routine-update)
   * Drop 'Rules-Requires-Root: no' from d/control (routine-update)
Checksums-Sha1:
 3dcbfe89eaad0e3dcdb1ffc97b82548cb6a4952c 2293 python-dicompylercore_0.5.6-4.dsc
 31ca0e66ebdc2412a378254f47535de2b4a9ef1f 9768 python-dicompylercore_0.5.6-4.debian.tar.xz
 1c14cc0410de37fbeca6226c53633c0e39edd264 9444 python-dicompylercore_0.5.6-4_amd64.buildinfo
Checksums-Sha256:
 6d1a993ca03939b6a339314ab81ec286a52c13aca50cb0d4ff74e54969e79972 2293 python-dicompylercore_0.5.6-4.dsc
 69ae5836a3e6e69f06205f160e272d21bfef3fdb7ebe5220303ef10f34fecb38 9768 python-dicompylercore_0.5.6-4.debian.tar.xz
 dd7369a34b7a93434b9bfb12930ead2a87dec7f3f096fb0b071deb88dc3a5fa6 9444 python-dicompylercore_0.5.6-4_amd64.buildinfo
Files:
 e6df8cf6f7952c6021cbfb91b04e9920 2293 python optional python-dicompylercore_0.5.6-4.dsc
 2ed797f5501855bc968829eca9b72999 9768 python optional python-dicompylercore_0.5.6-4.debian.tar.xz
 6ed13faed69763d1831b984d2cf8d136 9444 python optional python-dicompylercore_0.5.6-4_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQJFBAEBCgAvFiEE8fAHMgoDVUHwpmPKV4oElNHGRtEFAmofExoRHHRpbGxlQGRl
Ymlhbi5vcmcACgkQV4oElNHGRtFmIhAAmwZZYQ8r0bxd8Omse12N9D6WmzLLEQUK
+nsnCEl2lC1yciwgFvBCx0cJM7fmj++GvWbM1GttJ5W6o5BsBh4AIS1O1nxIC8ot
K2ub2Xcuj3Jrh8151UJhqR/fM9HPJhRCZpRn4LGqDy7/cttNT7K1v1rfpVozyaYa
fU06i96RAnWJGDdAssv7Gct86rBnutiYMiup1WeiugMM6izufnwnQeyPv7YhpDR5
nGD67K1h0fsNwdZFplwKpft+IsosOXlqkOXvNIFKekEM/AV90ye8mE3U+BDnZWLD
bMs/hKp7sFfP+5m8PEK+DF8PcrSZgjpVbCzWXe0yqzYeyeihZtNJHzLkgHqVwfZz
J6AodeS/QIUyWoz3GGbIWDDs9n1FMWm2rG9td7Srs13kxJZ7c00E+wQYkcPOMWmO
nHebZb7Co/0xXj9VnPHIVhu5y03CEyiqkeNc1hguJaqDKFr95VkGqojZrgRFD9wQ
F+9glxpvmjxWqoTpWEejdm41nlQYg5L0cKpuDY9Cz6h+5pNdnE9Sv5odYYSG9Dbh
3CIpGyQCX4TVzS4wrgno9UiSIrFMadI2QlyOd0lK75uTcYsJb7AUp+QMKTaPmLS0
rD+LaBXCxhVqWWsldnQiUUkMXmaZm6uwVlUjGXQR76QEPQINb+SzpcQTSSd1Sopi
TCKGRV+bT1A=
=iy0E
-----END PGP SIGNATURE-----