Your message dated Fri, 08 May 2026 12:34:40 +0000
with message-id <[email protected]>
and subject line Bug#1135407: fixed in heudiconv 1.4.0-1
has caused the Debian Bug report #1135407,
regarding heudiconv: FTBFS: E ModuleNotFoundError: No module named 'ci'
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
1135407: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1135407
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: src:heudiconv
Version: 1.3.2-1
Severity: serious
Tags: ftbfs forky sid
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:heudiconv, so that this is still
visible in the BTS web page for this package.
Thanks.
--------------------------------------------------------------------------------
[...]
debian/rules clean
dh clean --buildsystem=pybuild
dh_auto_clean -O--buildsystem=pybuild
pybuild --clean -i python{version} -p "3.14 3.13" --parallel=2
I: pybuild base:385: python3.14 setup.py clean
/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 :: Apache Software License
See
https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license
for details.
********************************************************************************
[... snipped ...]
except ImportError:
import warnings
warnings.warn(
"Deprecated version of ci-info found, upgrade to remove this
warning", DeprecationWarning
)
> import ci as ci_info
E ModuleNotFoundError: No module named 'ci'
/usr/lib/python3/dist-packages/etelemetry/client.py:11: ModuleNotFoundError
------------------------------ Captured log call -------------------------------
WARNING heudiconv.main:main.py:362 Could not check for version updates: No
module named 'ci'
WARNING heudiconv.dicoms:dicoms.py:190 Ignoring
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_heudiconv/build/heudiconv/tests/data/sample_nifti.json
since not quite a "normal" DICOM: 'FileDataset' object has no attribute
'SeriesNumber'
WARNING heudiconv.dicoms:dicoms.py:190 Ignoring
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_heudiconv/build/heudiconv/tests/data/sample_nifti.nii.gz
since not quite a "normal" DICOM: 'FileDataset' object has no attribute
'SeriesNumber'
WARNING heudiconv.dicoms:dicoms.py:190 Ignoring
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_heudiconv/build/heudiconv/tests/data/sample_nifti_params.txt
since not quite a "normal" DICOM: 'FileDataset' object has no attribute
'SeriesNumber'
WARNING heudiconv.bids:bids.py:1028 We cannot add the IntendedFor field: no
fmap/ in /tmp/pytest-of-sbuild/pytest-1/test_notop_bidsoptions1_0/head/advanced
applications libraries/sub-dbictest1
WARNING heudiconv:reproin.py:458 Could not determine the series name by
looking at protocol_name, series_description fields
WARNING heudiconv:reproin.py:667 Could not figure out where to stick 1
sequences: ['99-Phoenix Document']
WARNING heudiconv.bids:bids.py:1028 We cannot add the IntendedFor field: no
fmap/ in
/tmp/pytest-of-sbuild/pytest-1/test_notop_bidsoptions1_0/Development/Functional/sub-o6jgilro
_________________________ test_phoenix_doc_conversion __________________________
import os
from packaging.version import Version
try:
> import ci_info
E ModuleNotFoundError: No module named 'ci_info'
/usr/lib/python3/dist-packages/etelemetry/client.py:5: ModuleNotFoundError
During handling of the above exception, another exception occurred:
tmp_path =
PosixPath('/tmp/pytest-of-sbuild/pytest-1/test_phoenix_doc_conversion0')
def test_phoenix_doc_conversion(tmp_path: Path) -> None:
subID = "Phoenix"
args = [
"-c",
"dcm2niix",
"-o",
str(tmp_path),
"-b",
"-f",
"bids_PhoenixReport",
"--files",
pjoin(TESTS_DATA_PATH, "Phoenix"),
"-s",
subID,
]
> runner(args)
heudiconv/tests/test_heuristics.py:236:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
heudiconv/cli/run.py:30: in main
workflow(**kwargs)
heudiconv/main.py:479: in workflow
prep_conversion(
heudiconv/convert.py:259: in prep_conversion
convert(
heudiconv/convert.py:629: in convert
res, prov_file = nipype_convert(
heudiconv/convert.py:825: in nipype_convert
convertnode = Node(Dcm2niix(from_file=fromfile), name="convert")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/nipype/interfaces/base/core.py:633: in __init__
super().__init__(**inputs)
/usr/lib/python3/dist-packages/nipype/interfaces/base/core.py:191: in __init__
BaseInterface._etelemetry_version_data = check_latest_version() or "n/a"
^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/nipype/__init__.py:84: in check_latest_version
import etelemetry
/usr/lib/python3/dist-packages/etelemetry/__init__.py:1: in <module>
from .client import get_project, check_available_version, BadVersionError
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
import os
from packaging.version import Version
try:
import ci_info
except ImportError:
import warnings
warnings.warn(
"Deprecated version of ci-info found, upgrade to remove this
warning", DeprecationWarning
)
> import ci as ci_info
E ModuleNotFoundError: No module named 'ci'
/usr/lib/python3/dist-packages/etelemetry/client.py:11: ModuleNotFoundError
------------------------------ Captured log call -------------------------------
WARNING heudiconv.main:main.py:362 Could not check for version updates: No
module named 'ci'
__________________________________ test_cache __________________________________
import os
from packaging.version import Version
try:
> import ci_info
E ModuleNotFoundError: No module named 'ci_info'
/usr/lib/python3/dist-packages/etelemetry/client.py:5: ModuleNotFoundError
During handling of the above exception, another exception occurred:
tmp_path = PosixPath('/tmp/pytest-of-sbuild/pytest-1/test_cache0')
def test_cache(tmp_path: Path) -> None:
args = [
"-f",
"convertall",
"--files",
f"{TESTS_DATA_PATH}/axasc35.dcm",
"-s",
"S01",
"-o",
str(tmp_path),
]
> runner(args)
heudiconv/tests/test_main.py:304:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
heudiconv/cli/run.py:30: in main
workflow(**kwargs)
heudiconv/main.py:479: in workflow
prep_conversion(
heudiconv/convert.py:259: in prep_conversion
convert(
heudiconv/convert.py:629: in convert
res, prov_file = nipype_convert(
heudiconv/convert.py:825: in nipype_convert
convertnode = Node(Dcm2niix(from_file=fromfile), name="convert")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/nipype/interfaces/base/core.py:633: in __init__
super().__init__(**inputs)
/usr/lib/python3/dist-packages/nipype/interfaces/base/core.py:191: in __init__
BaseInterface._etelemetry_version_data = check_latest_version() or "n/a"
^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/nipype/__init__.py:84: in check_latest_version
import etelemetry
/usr/lib/python3/dist-packages/etelemetry/__init__.py:1: in <module>
from .client import get_project, check_available_version, BadVersionError
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
import os
from packaging.version import Version
try:
import ci_info
except ImportError:
import warnings
warnings.warn(
"Deprecated version of ci-info found, upgrade to remove this
warning", DeprecationWarning
)
> import ci as ci_info
E ModuleNotFoundError: No module named 'ci'
/usr/lib/python3/dist-packages/etelemetry/client.py:11: ModuleNotFoundError
------------------------------ Captured log call -------------------------------
WARNING heudiconv.main:main.py:362 Could not check for version updates: No
module named 'ci'
____________________________ test_grouping[merged] _____________________________
import os
from packaging.version import Version
try:
> import ci_info
E ModuleNotFoundError: No module named 'ci_info'
/usr/lib/python3/dist-packages/etelemetry/client.py:5: ModuleNotFoundError
During handling of the above exception, another exception occurred:
tmp_path = PosixPath('/tmp/pytest-of-sbuild/pytest-1/test_grouping_merged_0')
subject = 'merged'
@pytest.mark.parametrize("subject", ["merged"])
def test_grouping(tmp_path: Path, subject: str) -> None:
dicoms = [op.join(TESTS_DATA_PATH, fl) for fl in ["axasc35.dcm",
"phantom.dcm"]]
# ensure DICOMs are different studies
studyuids = {
dcm.dcmread(fl, stop_before_pixels=True).StudyInstanceUID for fl in
dicoms
}
assert len(studyuids) == len(dicoms)
# symlink to common location
outdir = tmp_path / "out"
outdir.mkdir()
datadir = tmp_path / subject
datadir.mkdir()
for fl in dicoms:
os.symlink(fl, datadir / op.basename(fl))
template = op.join("{subject}/*.dcm")
hargs = gen_heudiconv_args(
str(tmp_path), str(outdir), subject, "convertall.py",
template=template
)
with pytest.raises(AssertionError):
runner(hargs)
# group all found DICOMs under subject, despite conflicts
hargs += ["-g", "all"]
> runner(hargs)
heudiconv/tests/test_regression.py:176:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
heudiconv/cli/run.py:30: in main
workflow(**kwargs)
heudiconv/main.py:479: in workflow
prep_conversion(
heudiconv/convert.py:259: in prep_conversion
convert(
heudiconv/convert.py:629: in convert
res, prov_file = nipype_convert(
heudiconv/convert.py:825: in nipype_convert
convertnode = Node(Dcm2niix(from_file=fromfile), name="convert")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/nipype/interfaces/base/core.py:633: in __init__
super().__init__(**inputs)
/usr/lib/python3/dist-packages/nipype/interfaces/base/core.py:191: in __init__
BaseInterface._etelemetry_version_data = check_latest_version() or "n/a"
^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3/dist-packages/nipype/__init__.py:84: in check_latest_version
import etelemetry
/usr/lib/python3/dist-packages/etelemetry/__init__.py:1: in <module>
from .client import get_project, check_available_version, BadVersionError
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
import os
from packaging.version import Version
try:
import ci_info
except ImportError:
import warnings
warnings.warn(
"Deprecated version of ci-info found, upgrade to remove this
warning", DeprecationWarning
)
> import ci as ci_info
E ModuleNotFoundError: No module named 'ci'
/usr/lib/python3/dist-packages/etelemetry/client.py:11: ModuleNotFoundError
------------------------------ Captured log call -------------------------------
WARNING heudiconv.main:main.py:362 Could not check for version updates: No
module named 'ci'
WARNING heudiconv.main:main.py:362 Could not check for version updates: No
module named 'ci'
=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/traits/observation/_generated_parser.py:258
/usr/lib/python3/dist-packages/traits/observation/_generated_parser.py:258:
DeprecationWarning: module 'sre_parse' is deprecated
import sre_parse
../../../../../../usr/lib/python3/dist-packages/traits/observation/_generated_parser.py:259
/usr/lib/python3/dist-packages/traits/observation/_generated_parser.py:259:
DeprecationWarning: module 'sre_constants' is deprecated
import sre_constants
heudiconv/tests/test_convert.py: 2 warnings
heudiconv/tests/test_dicoms.py: 2 warnings
heudiconv/tests/test_heuristics.py: 13 warnings
heudiconv/tests/test_main.py: 4 warnings
heudiconv/tests/test_queue.py: 2 warnings
heudiconv/tests/test_regression.py: 3 warnings
/usr/lib/python3/dist-packages/etelemetry/client.py:8: DeprecationWarning:
Deprecated version of ci-info found, upgrade to remove this warning
warnings.warn(
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
FAILED heudiconv/tests/test_convert.py::test_b0dwi_for_fmap - ModuleNotFoundE...
FAILED heudiconv/tests/test_dicoms.py::test_embed_dicom_and_nifti_metadata - ...
FAILED heudiconv/tests/test_heuristics.py::test_scans_keys_reproin[invocation0]
FAILED heudiconv/tests/test_heuristics.py::test_scout_conversion - ModuleNotF...
FAILED heudiconv/tests/test_heuristics.py::test_notop[bidsoptions0] - ModuleN...
FAILED heudiconv/tests/test_heuristics.py::test_notop[bidsoptions1] - ModuleN...
FAILED heudiconv/tests/test_heuristics.py::test_phoenix_doc_conversion - Modu...
FAILED heudiconv/tests/test_main.py::test_cache - ModuleNotFoundError: No mod...
FAILED heudiconv/tests/test_regression.py::test_grouping[merged] - ModuleNotF...
===== 9 failed, 151 passed, 10 skipped, 5 deselected, 28 warnings in 7.62s =====
E: pybuild pybuild:485: test: plugin distutils failed with: exit code=1: cd
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_heudiconv/build; python3.13 -m pytest
heudiconv/tests/test_* -k 'not test_bvals_are_zero and not
test_reproin_largely_smoke'
rm -fr -- /tmp/dh-xdg-rundir-71DyBsmI
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.14
3.13" --parallel=2 returned exit code 13
make: *** [debian/rules:20: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit
status 2
--------------------------------------------------------------------------------
--- End Message ---
--- Begin Message ---
Source: heudiconv
Source-Version: 1.4.0-1
Done: Andreas Tille <[email protected]>
We believe that the bug you reported is fixed in the latest version of
heudiconv, 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 [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Andreas Tille <[email protected]> (supplier of updated heudiconv 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 [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Fri, 08 May 2026 13:29:55 +0200
Source: heudiconv
Architecture: source
Version: 1.4.0-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team
<[email protected]>
Changed-By: Andreas Tille <[email protected]>
Closes: 1135407
Changes:
heudiconv (1.4.0-1) unstable; urgency=medium
.
* Team upload.
* New upstream version
Closes: #1135407
* d/watch: version=5
* Standards-Version: 4.7.4 (routine-update)
* Reflow Uploaders field (cme)
* Remove Priority field (cme)
* Drop default 'Rules-Requires-Root: no' from d/control (routine-
update)
* Add missing colon in closes line.
* Build-Depends: pybuild-plugin-pyproject, python3-ci-info
* Avoid versioningit
Checksums-Sha1:
503d37590215a172f4f5b117788578cdaf70457f 2286 heudiconv_1.4.0-1.dsc
454eec598381edd88d6946c65bdec48984613440 9739373 heudiconv_1.4.0.orig.tar.gz
f399d529678ef4c54e05778f1d621c18200dc88c 4912 heudiconv_1.4.0-1.debian.tar.xz
2207dc34f51912fb62b336a0422d00e9e21bdcb3 13189
heudiconv_1.4.0-1_amd64.buildinfo
Checksums-Sha256:
c266f3c166e17f138f0081144b6490caf6a111ce7be61630586868c7bec5d658 2286
heudiconv_1.4.0-1.dsc
604b6bf4443c99764f9b70846764ccd2e57ad75cdd85aea9f24eb6b23b912c2e 9739373
heudiconv_1.4.0.orig.tar.gz
52db003eb176667383ac6c00e227ea239dd5eef93855b3cb34671a60c76f9530 4912
heudiconv_1.4.0-1.debian.tar.xz
f362688ba4087b5bb8dd8be2e81fc0c45ac678f2c1c3bd5cd3534d17455a7cdb 13189
heudiconv_1.4.0-1_amd64.buildinfo
Files:
89c7521f06a823d0a8b06716046eafca 2286 science optional heudiconv_1.4.0-1.dsc
5f33731219077ea49f7a0db302df64cf 9739373 science optional
heudiconv_1.4.0.orig.tar.gz
a2a2f3bccb5756fa4d34dc7a218d7378 4912 science optional
heudiconv_1.4.0-1.debian.tar.xz
bbf9d0481137b17f41d333064c0acd1a 13189 science optional
heudiconv_1.4.0-1_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----
iQJFBAEBCgAvFiEE8fAHMgoDVUHwpmPKV4oElNHGRtEFAmn91HYRHHRpbGxlQGRl
Ymlhbi5vcmcACgkQV4oElNHGRtG45g//VFDKJr9dHvIIMvA5fma7zghrMGaYYpGa
xuPxs8xE+qg9GkXK8UwrlRUVEXgppeygZ9FfgfKuVg8uzkBPGC/aPL59jRLVoY09
z2CbpJmapMQUM957GgX0OBhV+CH++38ErxQuAKUFIDsWOxP+bTkm7wf/Xcvp30Wv
2Zr0Xp0UuJzPLGaADqEiS75XsE2cqyzxgkBz/QjZ+mLYhTnitf74VPqmWZevFgsO
7ug0laUdlBQj+ujYrxzZtcSCqhcl9YLh4LdC3R9briOQTjBvfAk9oR+3tfrNKM1v
jLvgmKUwQq5o7Cw24BENhpnF33d/286jO2CWZMHJ3M953Oq53tCESNJkxY2vsIjr
LKpmhhdHqRYyMhBkkTi4qUZRH4N9GzXYn38zmdZWAE/lx7mJhqyHDbqMh0htrkfI
wx8XvYL/c31ryWSfnYdMp3u/UlSQIqNkuweX/LEeofw8NYFjc5/xOZ3vpjIkMOzR
Ry9OwbaKeMHjdsTTzdQvt/E3zLrW/7RJchp0OuIxirWpoyrp3EFqGkCYmq06khH1
gFieWCzNVdTX05mib2jGdC4dphSlxhKfkc04kRJvDpJJcuWPwR8Eht2Az6WP5Y8f
gwDIxlxWkN4tq7KXOt6/uSkseTESw5P/v50EedcCgZooHugCQ5a8nbd65CmKHeHm
5kEmAWbDG5M=
=7woL
-----END PGP SIGNATURE-----
pgp7K1eseL2PM.pgp
Description: PGP signature
--- End Message ---