Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-nilearn for openSUSE:Factory 
checked in at 2024-10-16 23:48:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-nilearn (Old)
 and      /work/SRC/openSUSE:Factory/.python-nilearn.new.19354 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-nilearn"

Wed Oct 16 23:48:02 2024 rev:5 rq:1208244 version:0.10.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-nilearn/python-nilearn.changes    
2024-02-22 21:00:41.595939478 +0100
+++ /work/SRC/openSUSE:Factory/.python-nilearn.new.19354/python-nilearn.changes 
2024-10-16 23:49:21.287493374 +0200
@@ -1,0 +2,33 @@
+Wed Oct 16 02:30:41 UTC 2024 - Steve Kowalik <[email protected]>
+
+- Update to 0.10.4:
+  ## Highlights
+  * Use the appropriate HTML templates for nilearn.maskers.MultiNiftiMapsMasker
+    and nilearn.maskers.MultiNiftiLabelsMasker reports that would lead to
+    empty reports for MultiNiftiMapsMasker.
+  * Fix color bar handling with color map with only 1 level.
+  * Improve colorbar size and labels in mosaic display.
+  ## Fixes
+  * Fix plotting of carpet plot due to a change in the coming version of
+    matplolib (3.9.0).
+  * Fix errant warning when using stat_type in nilearn.glm.compute_contrast.
+  * Fix when thresholding is applied to images by GLM reports.
+  * Make masker report tables horizontally scrollable.
+  * Masker reports tables do not overlap with report image.
+  * Ensure that region_names_ can be generated by
+    nilearn.maskers.NiftiSpheresMasker.transform_single_imgs for deterministic
+    atlases that use floats or non-consecutive values as region_ids whether
+    they include background in their labels or not.
+  * Ensure that nilearn.interfaces.bids.save_glm_to_bids serializes numpy
+    arrays to list used as GLM parameters before saving them to JSON.
+  * Check that the view parameter in surface plotting functions is a pair of
+    int or float when it is not a string.
+  * Fix positions of the markers on the images on the sphere masker reports.
+  * Fix cut position in nifti maps maskers to match displayed map maximum.
+  * Make sure that nilearn.maskers.NiftiSpheresMasker reports displays
+    properly when it contains only 1 sphere.
+  ## Enhancements
+  * Add an avg_method parameter to nilearn.plotting.plot_surf_stat_map.
+- Add patch support-new-scipy.patch, support new scipy changes.
+
+-------------------------------------------------------------------

Old:
----
  nilearn-0.10.3.tar.gz

New:
----
  nilearn-0.10.4.tar.gz
  support-new-scipy.patch

BETA DEBUG BEGIN:
  New:  * Add an avg_method parameter to nilearn.plotting.plot_surf_stat_map.
- Add patch support-new-scipy.patch, support new scipy changes.
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-nilearn.spec ++++++
--- /var/tmp/diff_new_pack.lZxBGN/_old  2024-10-16 23:49:22.791556101 +0200
+++ /var/tmp/diff_new_pack.lZxBGN/_new  2024-10-16 23:49:22.795556268 +0200
@@ -19,13 +19,14 @@
 # Run tests in parallel with pytest-xdist. On by default.
 %bcond_without pytest_xdist
 Name:           python-nilearn
-Version:        0.10.3
+Version:        0.10.4
 Release:        0
 Summary:        Statistical learning tool for neuroimaging
 License:        BSD-3-Clause
-Group:          Development/Languages/Python
 URL:            https://github.com/nilearn/nilearn
 Source:         
https://files.pythonhosted.org/packages/source/n/nilearn/nilearn-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM gh#nilearn/nilearn#4394
+Patch0:         support-new-scipy.patch
 BuildRequires:  %{python_module base >= 3.8}
 BuildRequires:  %{python_module hatch_vcs}
 BuildRequires:  %{python_module hatchling}
@@ -52,6 +53,7 @@
 BuildRequires:  %{python_module packaging}
 BuildRequires:  %{python_module pandas >= 1.1.5}
 %{?with_pytest_xdist:BuildRequires:  %{python_module pytest-xdist}}
+BuildRequires:  %{python_module plotly}
 BuildRequires:  %{python_module pytest}
 BuildRequires:  %{python_module requests >= 2.25.0}
 BuildRequires:  %{python_module rich}
@@ -91,6 +93,8 @@
 
 # unresolvable documentation package requirement docstring_parser
 ignorefiles="--ignore maint_tools/check_glossary_term.py"
+# ignore cache files too
+ignorefiles+=" --ignore nilearn_cache"
 
 if [[ $(getconf LONG_BIT) -eq 64 ]]; then
 # this is a noarch rpm package but the pure python code is only intended for 
64-bit architectures

++++++ nilearn-0.10.3.tar.gz -> nilearn-0.10.4.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-nilearn/nilearn-0.10.3.tar.gz 
/work/SRC/openSUSE:Factory/.python-nilearn.new.19354/nilearn-0.10.4.tar.gz 
differ: char 17, line 1

++++++ support-new-scipy.patch ++++++
>From 5effd2789ed89042a41575fef4a6fc97922b0ac0 Mon Sep 17 00:00:00 2001
From: Remi Gau <[email protected]>
Date: Tue, 23 Apr 2024 13:58:35 +0200
Subject: [PATCH 1/2] changed cg parameters

---
 nilearn/_utils/segmentation.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nilearn/_utils/segmentation.py b/nilearn/_utils/segmentation.py
index 8c6367b847..3cc47d87f1 100644
--- a/nilearn/_utils/segmentation.py
+++ b/nilearn/_utils/segmentation.py
@@ -355,7 +355,7 @@ def _solve_cg(lap_sparse, B, tol):
     lap_sparse = lap_sparse.tocsc()
     X = []
     for i in range(len(B)):
-        x0 = cg(lap_sparse, -B[i].todense(), tol=tol, atol="legacy")[0]
+        x0 = cg(lap_sparse, -B[i].todense(), rtol=tol, atol=0)[0]
         X.append(x0)
 
     X = np.array(X)

>From 9075d6a15d17cfe9cb684f3a5ac8537af98c3af3 Mon Sep 17 00:00:00 2001
From: Remi Gau <[email protected]>
Date: Wed, 24 Apr 2024 08:38:48 +0200
Subject: [PATCH 2/2] fix compat support scipy < 1.12 [test nightly]

---
 nilearn/_utils/segmentation.py | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/nilearn/_utils/segmentation.py b/nilearn/_utils/segmentation.py
index 3cc47d87f1..844e018807 100644
--- a/nilearn/_utils/segmentation.py
+++ b/nilearn/_utils/segmentation.py
@@ -11,10 +11,12 @@
 import warnings
 
 import numpy as np
-from scipy import ndimage as ndi, sparse
+from scipy import __version__, ndimage as ndi, sparse
 from scipy.sparse.linalg import cg
 from sklearn.utils import as_float_array
 
+from nilearn._utils.helpers import compare_version
+
 
 def _make_graph_edges_3d(n_x, n_y, n_z):
     """Return a list of edges for a 3D image.
@@ -355,7 +357,14 @@ def _solve_cg(lap_sparse, B, tol):
     lap_sparse = lap_sparse.tocsc()
     X = []
     for i in range(len(B)):
-        x0 = cg(lap_sparse, -B[i].todense(), rtol=tol, atol=0)[0]
+        # TODO Python 3.8
+        # consider remove if/else block when dropping support for 3.8
+        # would require pinning scipy to >= 1.12
+        # See https://github.com/nilearn/nilearn/pull/4394
+        if compare_version(__version__, ">=", "1.12"):
+            x0 = cg(lap_sparse, -B[i].todense(), rtol=tol, atol=0)[0]
+        else:
+            x0 = cg(lap_sparse, -B[i].todense(), tol=tol, atol="legacy")[0]
         X.append(x0)
 
     X = np.array(X)

Reply via email to