From 9d401e463f1b4d5c9f181b04778f403a5a70abe7 Mon Sep 17 00:00:00 2001 From: Sandro Date: Tue, 23 Jul 2024 18:40:21 +0200 Subject: [PATCH] Replace deprecated imghdr The module will be removed from Python 3.13: https://docs.python.org/3.13/whatsnew/3.13.html#pep-594-dead-batteries-and-other-module-removals --- nipype/info.py | 1 + nipype/interfaces/dcmstack.py | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/nipype/info.py b/nipype/info.py index d856e25988..284fe4101b 100644 --- a/nipype/info.py +++ b/nipype/info.py @@ -148,6 +148,7 @@ def get_nipype_gitversion(): "filelock>=3.0.0", "etelemetry>=0.2.0", "looseversion!=1.2", + "puremagic", ] TESTS_REQUIRES = [ diff --git a/nipype/interfaces/dcmstack.py b/nipype/interfaces/dcmstack.py index b76255ab84..7ed773626c 100644 --- a/nipype/interfaces/dcmstack.py +++ b/nipype/interfaces/dcmstack.py @@ -7,7 +7,7 @@ from glob import glob import nibabel as nb -import imghdr +import puremagic from .base import ( TraitedSpec, @@ -152,7 +152,7 @@ def _run_interface(self, runtime): meta_filter = dcmstack.make_key_regex_filter(exclude_regexes, include_regexes) stack = dcmstack.DicomStack(meta_filter=meta_filter) for src_path in src_paths: - if not imghdr.what(src_path) == "gif": + if not puremagic.what(src_path) == "gif": src_dcm = pydicom.dcmread(src_path, force=self.inputs.force_read) stack.add_dcm(src_dcm) nii = stack.to_nifti(embed_meta=True)