[med-svn] [Git][med-team/nipy][master] 3 commits: cme fix dpkg-control
Andreas Tille (@tille)
gitlab at salsa.debian.org
Fri May 15 20:01:25 BST 2026
Andreas Tille pushed to branch master at Debian Med / nipy
Commits:
75a8e117 by Andreas Tille at 2026-05-15T08:06:55+02:00
cme fix dpkg-control
- - - - -
206e9759 by Andreas Tille at 2026-05-15T21:00:07+02:00
Fix test failures caused by NumPy 2.x stricter scalar conversion rules Closes: #1131063
- - - - -
e79556fd by Andreas Tille at 2026-05-15T20:00:59+01:00
Set upstream metadata fields: Documentation.
Changes-By: lintian-brush
- - - - -
5 changed files:
- debian/changelog
- debian/control
- + debian/patches/numpy2.4.patch
- debian/patches/series
- debian/upstream/metadata
Changes:
=====================================
debian/changelog
=====================================
@@ -1,3 +1,13 @@
+nipy (0.6.1-5) UNRELEASED; urgency=medium
+
+ * Team upload.
+ * cme fix dpkg-control
+ * Fix test failures caused by NumPy 2.x stricter scalar conversion rules
+ Closes: #1131063
+ * Set upstream metadata fields: Documentation.
+
+ -- Andreas Tille <tille at debian.org> Fri, 15 May 2026 08:06:31 +0200
+
nipy (0.6.1-4) unstable; urgency=medium
* d/rules: adjust pybuild invocation for the documentation.
=====================================
debian/control
=====================================
@@ -1,50 +1,55 @@
Source: nipy
+Standards-Version: 4.7.4
Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
-Uploaders: Étienne Mollier <emollier at debian.org>
+Uploaders:
+ Étienne Mollier <emollier at debian.org>,
Section: python
Testsuite: autopkgtest-pkg-pybuild
-Build-Depends: debhelper-compat (= 13),
- dh-sequence-python3,
- pybuild-plugin-pyproject,
- python3-all-dev,
- python3-setuptools,
- python3-scipy,
- python3-numpy,
- python3-matplotlib,
- python3-mesonpy,
- python3-sphinx,
- python3-ipython,
- python3-texext,
- python3-transforms3d <!nocheck>,
- python3-numpydoc,
- python3-nibabel,
- python3-pytest,
- python3-sympy,
- liblapack-dev | liblapack.so,
- libblas-dev | libblas.so,
- cython3,
- graphviz,
- dvipng,
- help2man,
- python3-numpy-dev
-Standards-Version: 4.7.3
+Build-Depends:
+ debhelper-compat (= 13),
+ dh-sequence-python3,
+ pybuild-plugin-pyproject,
+ python3-all-dev,
+ python3-setuptools,
+ python3-scipy,
+ python3-numpy,
+ python3-matplotlib,
+ python3-mesonpy,
+ python3-sphinx,
+ python3-ipython,
+ python3-texext,
+ python3-transforms3d <!nocheck>,
+ python3-numpydoc,
+ python3-nibabel,
+ python3-pytest,
+ python3-sympy,
+ liblapack-dev | liblapack.so,
+ libblas-dev | libblas.so,
+ cython3,
+ graphviz,
+ dvipng,
+ help2man,
+ python3-numpy-dev,
Vcs-Browser: https://salsa.debian.org/med-team/nipy
Vcs-Git: https://salsa.debian.org/med-team/nipy.git
Homepage: https://nipy.org/nipy/
Package: python3-nipy
Architecture: all
-Depends: ${shlibs:Depends},
- ${misc:Depends},
- ${python3:Depends},
- python3-scipy,
- python3-numpy,
- python3-nibabel,
- python3-nipy-lib (>= ${source:Version})
-Recommends: python3-matplotlib,
- mayavi2,
- python3-sympy
-Suggests: python3-mvpa
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends},
+ ${python3:Depends},
+ python3-scipy,
+ python3-numpy,
+ python3-nibabel,
+ python3-nipy-lib (>= ${source:Version}),
+Recommends:
+ python3-matplotlib,
+ mayavi2,
+ python3-sympy,
+Suggests:
+ python3-mvpa,
Description: Analysis of structural and functional neuroimaging data
NiPy is a Python-based framework for the analysis of structural and
functional neuroimaging data. It provides functionality for
@@ -61,9 +66,10 @@ Description: Analysis of structural and functional neuroimaging data
Package: python3-nipy-lib
Architecture: any
Multi-Arch: same
-Depends: ${shlibs:Depends},
- ${misc:Depends},
- ${python3:Depends}
+Depends:
+ ${shlibs:Depends},
+ ${misc:Depends},
+ ${python3:Depends},
Description: Analysis of structural and functional neuroimaging data (compiled modules)
NiPy is a Python-based framework for the analysis of structural and
functional neuroimaging data.
@@ -74,11 +80,14 @@ Package: python-nipy-doc
Architecture: all
Multi-Arch: foreign
Section: doc
-Depends: libjs-mathjax,
- ${misc:Depends},
- ${sphinxdoc:Depends}
-Recommends: python3-nipy
-Built-Using: ${sphinxdoc:Built-Using}
+Depends:
+ libjs-mathjax,
+ ${misc:Depends},
+ ${sphinxdoc:Depends},
+Recommends:
+ python3-nipy,
+Built-Using:
+ ${sphinxdoc:Built-Using},
Description: documentation and examples for NiPy
This package contains NiPy documentation in various formats (HTML,
TXT) including
=====================================
debian/patches/numpy2.4.patch
=====================================
@@ -0,0 +1,149 @@
+Description: Fix test failures caused by NumPy 2.x stricter scalar conversion rules
+Author: Andreas Tille <tille at debian.org>
+Bug-Debian: https://bugs.debian.org/1131063
+Last-Update: 2026-05-15
+
+--- a/nipy/algorithms/clustering/hierarchical_clustering.py
++++ b/nipy/algorithms/clustering/hierarchical_clustering.py
+@@ -692,7 +692,7 @@ def ward_quick(G, feature, verbose=False
+
+ ml = linc[j]
+ if np.sum(K.edges[ml, 1] == i) > 0:
+- m = ml[int(np.flatnonzero(K.edges[ml, 1] == i))]
++ m = ml[int(np.flatnonzero(K.edges[ml, 1] == i)[0])]
+ K.edges[m] = -1
+ K.weights[m] = np.inf
+ linc[j].remove(m)
+@@ -954,7 +954,7 @@ def ward(G, feature, verbose=False):
+
+ ml = linc[j]
+ if np.sum(K.edges[ml, 1] == i) > 0:
+- m = ml[int(np.flatnonzero(K.edges[ml, 1] == i))]
++ m = ml[int(np.flatnonzero(K.edges[ml, 1] == i)[0])]
+ K.edges[m] = -1
+ K.weights[m] = np.inf
+ linc[j].remove(m)
+--- a/nipy/algorithms/graph/forest.py
++++ b/nipy/algorithms/graph/forest.py
+@@ -450,5 +450,5 @@ class Forest(WeightedGraph):
+ for i in range(self.V):
+ if depth[i] == j:
+ if np.size(np.unique(label[ch[i]])) == 1:
+- label[i] = np.unique(label[ch[i]])
++ label[i] = np.unique(label[ch[i]])[0]
+ return label
+--- a/nipy/algorithms/registration/groupwise_registration.py
++++ b/nipy/algorithms/registration/groupwise_registration.py
+@@ -69,7 +69,7 @@ def make_grid(dims, subsampling=(1, 1, 1
+ def guess_slice_axis_and_direction(slice_info, affine):
+ if slice_info is None:
+ orient = io_orientation(affine)
+- slice_axis = int(np.where(orient[:, 0] == 2)[0])
++ slice_axis = int(np.where(orient[:, 0] == 2)[0].flat[0])
+ slice_direction = int(orient[slice_axis, 1])
+ else:
+ slice_axis = int(slice_info[0])
+--- a/nipy/algorithms/group/parcel_analysis.py
++++ b/nipy/algorithms/group/parcel_analysis.py
+@@ -356,7 +356,7 @@ class ParcelAnalysis:
+ dof[i])
+ except:
+ prob[i] = 0
+- idx = int(np.where(self._parcel_values == values[i])[0])
++ idx = int(np.where(self._parcel_values == values[i])[0].flat[0])
+ labels += [self._parcel_labels[idx]]
+
+ # Sort labels by ascending order of mean values
+--- a/nipy/labs/spatial_models/mroi.py
++++ b/nipy/labs/spatial_models/mroi.py
+@@ -142,7 +142,7 @@ class SubDomains:
+ if id not in self.get_id():
+ raise ValueError("Unexisting `id` provided")
+ if roi:
+- index = int(np.where(self.get_id() == id)[0])
++ index = int(np.where(self.get_id() == id)[0].flat[0])
+ else:
+ index = np.where(self.label == np.where(self.get_id() == id)[0])[0]
+ return index
+@@ -335,7 +335,7 @@ class SubDomains:
+ % (id, roi_size))
+ # update feature
+ the_feature = self.get_feature(fid, id)
+- the_feature[self.select_id(id)] = data
++ the_feature[self.select_id(id)] = np.squeeze(data)
+ # modify all regions
+ else:
+ # check data size
+--- a/nipy/labs/bindings/tests/test_blas3.py
++++ b/nipy/labs/bindings/tests/test_blas3.py
+@@ -19,8 +19,8 @@ def test_dgemm():
+ B = np.random.rand(n2,n1)
+ C = np.random.rand(n1,n1)
+ C2 = np.random.rand(n2,n2)
+- alpha = np.double(np.random.rand(1))
+- beta = np.double(np.random.rand(1))
++ alpha = float(np.random.rand())
++ beta = float(np.random.rand())
+ # Test: A*B
+ Dgold = alpha*np.dot(A,B) + beta*C
+ D = blas_dgemm(0, 0, alpha, A, B, beta, C)
+@@ -37,8 +37,8 @@ def test_dsymm():
+ C = np.random.rand(n1,n2)
+ B2 = np.random.rand(n2,n1)
+ C2 = np.random.rand(n2,n1)
+- alpha = np.double(np.random.rand(1))
+- beta = np.double(np.random.rand(1))
++ alpha = float(np.random.rand())
++ beta = float(np.random.rand())
+ # Test: A*B
+ Dgold = alpha*np.dot(A,B) + beta*C
+ D = blas_dsymm(0, 0, alpha, A, B, beta, C)
+@@ -123,7 +123,7 @@ def test_dtrmm():
+ U = np.triu(A)
+ L = np.tril(A)
+ B = np.random.rand(n1,n1)
+- alpha = np.double(np.random.rand(1))
++ alpha = float(np.random.rand())
+ _test_dtrXm(A, U, L, B, alpha, blas_dtrmm)
+
+ def test_dtrsm():
+@@ -131,14 +131,14 @@ def test_dtrsm():
+ U = np.linalg.inv(np.triu(A))
+ L = np.linalg.inv(np.tril(A))
+ B = np.random.rand(n1,n1)
+- alpha = np.double(np.random.rand(1))
++ alpha = float(np.random.rand())
+ _test_dtrXm(A, U, L, B, alpha, blas_dtrsm)
+
+ def test_dsyrk():
+ A = np.random.rand(n1,n1)
+ C = np.random.rand(n1,n1)
+- alpha = np.double(np.random.rand(1))
+- beta = np.double(np.random.rand(1))
++ alpha = float(np.random.rand())
++ beta = float(np.random.rand())
+ # Test A*A'
+ U = np.triu(blas_dsyrk(0, 0, alpha, A, beta, C))
+ L = np.tril(blas_dsyrk(1, 0, alpha, A, beta, C))
+@@ -160,8 +160,8 @@ def test_dsyr2k():
+ A = np.random.rand(n1,n1)
+ B = np.random.rand(n1,n1)
+ C = np.random.rand(n1,n1)
+- alpha = np.double(np.random.rand(1))
+- beta = np.double(np.random.rand(1))
++ alpha = float(np.random.rand())
++ beta = float(np.random.rand())
+ # Test A*B' + B*A'
+ U = np.triu(blas_dsyr2k(0, 0, alpha, A, B, beta, C))
+ L = np.tril(blas_dsyr2k(1, 0, alpha, A, B, beta, C))
+--- a/nipy/algorithms/registration/tests/test_fmri_realign4d.py
++++ b/nipy/algorithms/registration/tests/test_fmri_realign4d.py
+@@ -135,7 +135,7 @@ def test_realign4d():
+ """
+ runs = [IM, IM]
+ orient = io_orientation(IM.affine)
+- slice_axis = int(np.where(orient[:, 0] == 2)[0])
++ slice_axis = int(np.where(orient[:, 0] == 2)[0].flat[0])
+ R1 = SpaceTimeRealign(runs, tr=2., slice_times='ascending',
+ slice_info=slice_axis)
+ R1.estimate(refscan=None, loops=1, between_loops=1, optimizer='steepest')
=====================================
debian/patches/series
=====================================
@@ -1,3 +1,4 @@
local-mathjax.patch
0002-FIX-Remove-deprecated-Numpy-C-API-macros.patch
bool-type-error.patch
+numpy2.4.patch
=====================================
debian/upstream/metadata
=====================================
@@ -1,5 +1,6 @@
Bug-Database: https://github.com/nipy/nipy/issues
Bug-Submit: https://github.com/nipy/nipy/issues/new
+Documentation: http://nipy.org/nipy/documentation.html
Reference:
- Author: K. Jarrod Millman and Matthew Brett
Title: Analysis of functional magnetic resonance imaging in Python
View it on GitLab: https://salsa.debian.org/med-team/nipy/-/compare/a2760f0d5ccbbb1cad5563521a045fad1f0de037...e79556fd853ed814818c2ac56cbc9e50a5e80d9c
--
View it on GitLab: https://salsa.debian.org/med-team/nipy/-/compare/a2760f0d5ccbbb1cad5563521a045fad1f0de037...e79556fd853ed814818c2ac56cbc9e50a5e80d9c
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20260515/e159e99d/attachment-0001.htm>
More information about the debian-med-commit
mailing list