Bug#1144001: bitshuffle: FTBFS: ValueError: list.remove(x): x not in list

Gilles Filippini <[email protected]>
Newsgroups gmane.linux.debian.devel.bugs.rc
Message-ID <[email protected]>
Control: tags -1 + patch

Hi,

Sebastian Ramacher a écrit le 09/08/2026 à 17:27 :
> Source: bitshuffle
> Version: 0.5.2-1
> Severity: serious
> Tags: ftbfs
> Justification: fails to build from source (but built successfully in the past)
> X-Debbugs-Cc: [email protected]
> 
> Dear maintainer,
> 
> bitshuffle FTBFS:
> 
> make[1]: Entering directory '/build/reproducible-path/bitshuffle-0.5.2'
> CC=mpicc dh_auto_build
> 	pybuild --build -i python{version} -p "3.13 3.14" --parallel=6
> I: pybuild plugin_pyproject:142: Building wheel for python3.13 with "build" module
> I: pybuild base:385: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/bitshuffle-0.5.2/.pybuild/cpython3_3.13_bitshuffle
> * Building wheel...
> Traceback (most recent call last):
>    File "/usr/lib/python3/dist-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
>      main()
>      ~~~~^^
>    File "/usr/lib/python3/dist-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
>      json_out["return_val"] = hook(**hook_input["kwargs"])
>                               ~~~~^^^^^^^^^^^^^^^^^^^^^^^^
>    File "/usr/lib/python3/dist-packages/pyproject_hooks/_in_process/_in_process.py", line 280, in build_wheel
>      return _build_backend().build_wheel(
>             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
>          wheel_directory, config_settings, metadata_directory
>          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      )
>      ^
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 435, in build_wheel
>      return _build(['bdist_wheel'])
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 426, in _build
>      return self._build_with_temp_dir(
>             ~~~~~~~~~~~~~~~~~~~~~~~~~^
>          cmd,
>          ^^^^
>      ...<3 lines>...
>          self._arbitrary_args(config_settings),
>          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      )
>      ^
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 407, in _build_with_temp_dir
>      self.run_setup()
>      ~~~~~~~~~~~~~~^^
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 320, in run_setup
>      exec(code, locals())
>      ~~~~^^^^^^^^^^^^^^^^
>    File "<string>", line 169, in <module>
> ValueError: list.remove(x): x not in list
> 
> TIP pass --env-dir and --sdist-extract-dir to keep the build environment and sources, then see https://build.pypa.io/en/stable/how-to/troubleshooting.html#debug-a-failed-build for help debugging a failed build
> ERROR Backend subprocess exited when trying to invoke build_wheel
> E: pybuild pybuild:485: build: plugin pyproject failed with: exit code=1: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/bitshuffle-0.5.2/.pybuild/cpython3_3.13_bitshuffle
> I: pybuild plugin_pyproject:142: Building wheel for python3.14 with "build" module
> I: pybuild base:385: python3.14 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/bitshuffle-0.5.2/.pybuild/cpython3_3.14_bitshuffle
> * Building wheel...
> Traceback (most recent call last):
>    File "/usr/lib/python3/dist-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
>      main()
>      ~~~~^^
>    File "/usr/lib/python3/dist-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
>      json_out["return_val"] = hook(**hook_input["kwargs"])
>                               ~~~~^^^^^^^^^^^^^^^^^^^^^^^^
>    File "/usr/lib/python3/dist-packages/pyproject_hooks/_in_process/_in_process.py", line 280, in build_wheel
>      return _build_backend().build_wheel(
>             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
>          wheel_directory, config_settings, metadata_directory
>          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      )
>      ^
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 435, in build_wheel
>      return _build(['bdist_wheel'])
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 426, in _build
>      return self._build_with_temp_dir(
>             ~~~~~~~~~~~~~~~~~~~~~~~~~^
>          cmd,
>          ^^^^
>      ...<3 lines>...
>          self._arbitrary_args(config_settings),
>          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>      )
>      ^
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line 407, in _build_with_temp_dir
>      self.run_setup()
>      ~~~~~~~~~~~~~~^^
>    File "/usr/lib/python3/dist-packages/setuptools/build_meta.py", line
>    320, in run_setup
>      exec(code, locals())
>      ~~~~^^^^^^^^^^^^^^^^
>    File "<string>", line 169, in <module>
> ValueError: list.remove(x): x not in list
> 
> TIP pass --env-dir and --sdist-extract-dir to keep the build environment and sources, then see https://build.pypa.io/en/stable/how-to/troubleshooting.html#debug-a-failed-build for help debugging a failed build
> ERROR Backend subprocess exited when trying to invoke build_wheel
> E: pybuild pybuild:485: build: plugin pyproject failed with: exit code=1: python3.14 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/bitshuffle-0.5.2/.pybuild/cpython3_3.14_bitshuffle
> dh_auto_build: error: pybuild --build -i python{version} -p "3.13 3.14" --parallel=6 returned exit code 13
> make[1]: *** [debian/rules:34: override_dh_auto_build] Error 25
> 
> See
> https://buildd.debian.org/status/fetch.php?pkg=bitshuffle&arch=amd64&ver=0.5.2-1%2Bb5&stamp=1786283965&raw=0
> for details.

Patch proposal attached.

Best,
_g.
bitshuffle.debdiff (text/plain, 1.7 KB)
diff -Nru bitshuffle-0.5.2/debian/changelog bitshuffle-0.5.2/debian/changelog
--- bitshuffle-0.5.2/debian/changelog	2024-11-19 12:15:44.000000000 +0100
+++ bitshuffle-0.5.2/debian/changelog	2026-05-28 21:46:46.000000000 +0200
@@ -1,3 +1,10 @@
+bitshuffle (0.5.2-1.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix FTBFS against HDF5 >= 2.1.0 (closes: #1144001)
+
+ -- Gilles Filippini <[email protected]>  Thu, 28 May 2026 21:46:46 +0200
+
 bitshuffle (0.5.2-1) unstable; urgency=medium
 
   * New upstream version 0.5.2
diff -Nru bitshuffle-0.5.2/debian/patches/hdf5-2.patch bitshuffle-0.5.2/debian/patches/hdf5-2.patch
--- bitshuffle-0.5.2/debian/patches/hdf5-2.patch	1970-01-01 01:00:00.000000000 +0100
+++ bitshuffle-0.5.2/debian/patches/hdf5-2.patch	2026-05-28 21:46:46.000000000 +0200
@@ -0,0 +1,14 @@
+Index: bitshuffle-0.5.2/setup.py
+===================================================================
+--- bitshuffle-0.5.2.orig/setup.py
++++ bitshuffle-0.5.2/setup.py
+@@ -166,7 +166,8 @@ h5filter = Extension(
+ 
+ if not sys.platform.startswith("win"):
+     h5filter.sources.append("src/hdf5_dl.c")
+-    h5filter.libraries.remove("hdf5")
++    if "hdf5" in h5filter.libraries:
++        h5filter.libraries.remove("hdf5")
+ 
+ filter_plugin = Extension(
+     "bitshuffle.plugin.libh5bshuf",
diff -Nru bitshuffle-0.5.2/debian/patches/series bitshuffle-0.5.2/debian/patches/series
--- bitshuffle-0.5.2/debian/patches/series	2024-11-19 12:15:44.000000000 +0100
+++ bitshuffle-0.5.2/debian/patches/series	2026-05-28 21:46:46.000000000 +0200
@@ -3,3 +3,4 @@
 0003-link-with-libzstd.patch
 0004-cython-and-setuptools-are-not-runtime-dependencies.patch
 0005-remove-march-and-mcpu-to-avoid-FTBFS.patch
+hdf5-2.patch
OpenPGP_signature.asc (application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEoJObzArDE05WtIyR7+hsbH/+z4MFAmqC6UAACgkQ7+hsbH/+
z4O7hQgAkRGxIUZaRVReQD6XfQ8HE5AhsssYUn4yhgfbHI3xCrbGTiRmN2bA92mk
6vWgrcaDv88wCiVSX4F5AolJF6/hQUFrrxahXA6TRDcYRXCdwKeMv46OcQo2A+Tg
d/RmBLHuBG8cD5io9D8RS5FSMYIlGoz3785TecVMpZBaB/sGmKIJ04ICXjHCjGfg
YHCZby4WqyPbwfp9lLE4afpNVgSYGLN5Bbpe8DF5k+PntCEEdaBNwb/X7iooeYDY
K5zRURDiBobSSLGi5WklFnGuwcG0kx5Cz2OrEKNMhNfjUrtCThvoHWeyuUKr35xk
MJfrxzdQNUKEo8XO5UE0ttAKzg/3Ng==
=GGIS
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.