Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] https://github.com/tornaria/void-packages/pull/new/scipy
@ 2024-01-22  3:49 tornaria
  2024-01-22 12:49 ` python3-scipy: update to 1.12.0 tornaria
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: tornaria @ 2024-01-22  3:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 2221 bytes --]

There is a new pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages scipy
https://github.com/void-linux/void-packages/pull/48317

https://github.com/tornaria/void-packages/pull/new/scipy
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

I enabled tests for scipy let's see if CI can manage or we have to disable in CI (we only run "not slow" tests for -Q).

Updated sagemath since it needs a patch for scipy 1.12 (https://github.com/sagemath/sage/pull/37123). Took the chance to apply a few minor fixes that didn't justify an update on their own.

@ahesford I'll be done with testing in a couple days at most, in principle everything looks good.

BTW: I run scipy tests with `export SCIPY_XSLOW=1` and `-m xslow` which gave me one failure:
```
FAILED scipy/sparse/linalg/tests/test_onenormest.py::TestOnenormest::test_onenormest_table_6_t_1
====== 1 failed, 321 passed, 40 skipped, 15 xfailed in 9042.78s (2:30:42) ======
```

Running check normally gave me:
```
== 45224 passed, 2467 skipped, 149 xfailed, 12 xpassed in 3836.63s (1:03:56) ===
```
(with `-m "not slow"`) and
```
== 59100 passed, 2501 skipped, 259 xfailed, 14 xpassed in 5444.99s (1:30:44) ===
```

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/48317.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-scipy-48317.patch --]
[-- Type: text/x-diff, Size: 12629 bytes --]

From 33657b9465a62615ae6b389c7d39d8270f41cbd7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Mon, 22 Jan 2024 00:30:44 -0300
Subject: [PATCH 1/2] python3-scipy: update to 1.12.0.

---
 srcpkgs/python3-scipy/patches/19909.patch     | 40 +++++++++++++++++++
 .../python3-scipy/patches/dep-versions.patch  | 23 -----------
 srcpkgs/python3-scipy/template                | 13 ++++--
 3 files changed, 50 insertions(+), 26 deletions(-)
 create mode 100644 srcpkgs/python3-scipy/patches/19909.patch
 delete mode 100644 srcpkgs/python3-scipy/patches/dep-versions.patch

diff --git a/srcpkgs/python3-scipy/patches/19909.patch b/srcpkgs/python3-scipy/patches/19909.patch
new file mode 100644
index 0000000000000..b861d2b96c33c
--- /dev/null
+++ b/srcpkgs/python3-scipy/patches/19909.patch
@@ -0,0 +1,40 @@
+See: https://github.com/scipy/scipy/pull/19909
+
+From 8c96a1f742335bca283aae418763aaba62c03378 Mon Sep 17 00:00:00 2001
+From: Ilhan Polat <ilhanpolat@gmail.com>
+Date: Thu, 18 Jan 2024 14:47:42 +0100
+Subject: [PATCH] MAINT:linalg:Adjust lwork/liwork changes OpenBLAS 0.3.26
+
+See https://github.com/Reference-LAPACK/lapack/pull/942
+---
+ scipy/linalg/flapack_sym_herm.pyf.src | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/scipy/linalg/flapack_sym_herm.pyf.src b/scipy/linalg/flapack_sym_herm.pyf.src
+index f07dbaecbc72..af04e0d8d8d8 100644
+--- a/scipy/linalg/flapack_sym_herm.pyf.src
++++ b/scipy/linalg/flapack_sym_herm.pyf.src
+@@ -762,8 +762,8 @@ subroutine <prefix2>syevr(compute_v,range,lower,n,a,lda,vl,vu,il,iu,abstol,w,z,m
+     <ftype2> optional,intent(in) :: vl=0.0
+     <ftype2> optional,intent(in),check(vu>=vl),depend(vl) :: vu=1.0
+     <ftype2> intent(in) :: abstol=0.0
+-    integer optional,intent(in),depend(n),check(lwork>=max(1,26*n)||lwork==-1) :: lwork=max(26*n,1)
+-    integer optional,intent(in),depend(n),check(liwork>=max(1,10*n)||liwork==-1):: liwork= max(1,10*n)
++    integer optional,intent(in),depend(n),check(lwork>=(n <= 1 ? 1 : max(1,26*n))||lwork==-1) :: lwork=max(26*n,1)
++    integer optional,intent(in),depend(n),check(liwork>=(n <= 1 ? 1 : max(1,10*n))||liwork==-1):: liwork= max(1,10*n)
+ 
+     integer intent(hide),depend(a) :: n=shape(a,0)
+     integer intent(hide),depend(n) :: lda=max(1,n)
+@@ -832,9 +832,9 @@ subroutine <prefix2c>heevr(compute_v,range,lower,n,a,lda,vl,vu,il,iu,abstol,w,z,
+     <ftype2> optional,intent(in) :: vl=0.0
+     <ftype2> optional,intent(in),check(vu>vl),depend(vl) :: vu=1.0
+     <ftype2> intent(in) :: abstol=0.0
+-    integer optional,intent(in),depend(n),check(lwork>=max(2*n,1)||lwork==-1) :: lwork=max(2*n,1)
+-    integer optional,intent(in),depend(n),check(lrwork>=max(24*n,1)||lrwork==-1) :: lrwork=max(24*n,1)
+-    integer optional,intent(in),depend(n),check(liwork>=max(1,10*n)||liwork==-1):: liwork= max(1,10*n)
++    integer optional,intent(in),depend(n),check(lwork>=(n <= 1 ? 1 : max(1,2*n))||lwork==-1) :: lwork=max(2*n,1)
++    integer optional,intent(in),depend(n),check(lrwork>=(n <= 1 ? 1 : max(1,24*n))||lrwork==-1) :: lrwork=max(24*n,1)
++    integer optional,intent(in),depend(n),check(liwork>=(n <= 1 ? 1 : max(1,10*n))||liwork==-1):: liwork= max(1,10*n)
+ 
+     integer intent(hide),depend(a) :: n=shape(a,0)
+     integer intent(hide),depend(n) :: lda=max(1,n)
diff --git a/srcpkgs/python3-scipy/patches/dep-versions.patch b/srcpkgs/python3-scipy/patches/dep-versions.patch
deleted file mode 100644
index ac62f0b7fb069..0000000000000
--- a/srcpkgs/python3-scipy/patches/dep-versions.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Several dependencies have needlessly restrictive version requirements, which
-causes build failures against more up-to-date Void packages.
-
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -11,13 +11,13 @@
- build-backend = 'mesonpy'
- requires = [
-     # Reason for `<`: future-proofing (0.14.0 released and known to work)
--    "meson-python>=0.12.1,<0.15.0",
-+    "meson-python>=0.12.1",
-     # Reason for `<`: we want to build the 1.11.x releases with 0.29.x (too many changes in 3.0)
--    "Cython>=0.29.35,<3.0",   # when updating version, also update check in meson.build
-+    "Cython>=0.29.35",
-     # Reason for `<`: future-proofing (2.11.1 is the most recent version)
--    "pybind11>=2.10.4,<2.11.1",
-+    "pybind11>=2.10.4",
-     # Reason for `<`: future-proofing (0.14.0 released and known to work)
--    "pythran>=0.12.0,<0.15.0",
-+    "pythran>=0.12.0",
- 
-     # NumPy dependencies - to update these, sync from
-     # https://github.com/scipy/oldest-supported-numpy/, and then
diff --git a/srcpkgs/python3-scipy/template b/srcpkgs/python3-scipy/template
index 88128aaa3a3bb..3915ca79f5f0e 100644
--- a/srcpkgs/python3-scipy/template
+++ b/srcpkgs/python3-scipy/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-scipy'
 pkgname=python3-scipy
-version=1.11.4
+version=1.12.0
 revision=1
 build_style=python3-pep517
 build_helper="meson numpy"
@@ -12,13 +12,16 @@ hostmakedepends="python3-meson-python python3-Cython python3-pybind11
 makedepends="python3-devel python3-pybind11 python3-numpy pythran
  $(vopt_if openblas openblas-devel "lapack-devel cblas-devel")"
 depends="python3-numpy"
+checkdepends="python3-pytest python3-pytest-xdist python3-hypothesis python3-pooch
+ python3-matplotlib python3-mpmath python3-psutil python3-sympy"
 short_desc="Scientific library for Python3"
 maintainer="Andrew J. Hesford <ajh@sideband.org>"
 license="BSD-3-Clause"
 homepage="https://scipy.org/"
 distfiles="${PYPI_SITE}/s/scipy/scipy-${version}.tar.gz"
-checksum=90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa
-make_check="no" # Tests need an installed copy to run and meson makes this tough
+checksum=4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3
+# must be tested from site dir of installed version (see dev.py:739)
+make_check_pre='eval env -C "${testdir}/${py3_sitelib}"'
 
 build_options="openblas"
 
@@ -37,6 +40,10 @@ if [ "$build_option_openblas" ]; then
 	esac
 fi
 
+if [ "$XBPS_CHECK_PKGS" != full ]; then
+	make_check_args="-m 'not slow'"
+fi
+
 post_install() {
 	vlicense LICENSE.txt
 }

From cd2f090ba8b51d57a80bd5287ce535d93c1d7ef1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Mon, 22 Jan 2024 00:34:32 -0300
Subject: [PATCH 2/2] sagemath: patch for scipy 1.12.

See: https://github.com/sagemath/sage/pull/37123

Also apply a few minor fixes.
---
 srcpkgs/sagemath/files/sage_conf.py           |  1 +
 .../patches/36862-giac_1.9.0-73.patch         | 15 +++++++++++
 .../sagemath/patches/37123-scipy_1.12.patch   | 26 +++++++++++++++++++
 srcpkgs/sagemath/patches/get_patches          |  7 ++++-
 srcpkgs/sagemath/template                     |  8 +++---
 5 files changed, 52 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch
 create mode 100644 srcpkgs/sagemath/patches/37123-scipy_1.12.patch

diff --git a/srcpkgs/sagemath/files/sage_conf.py b/srcpkgs/sagemath/files/sage_conf.py
index bc5388de8956d..b5b2360311844 100644
--- a/srcpkgs/sagemath/files/sage_conf.py
+++ b/srcpkgs/sagemath/files/sage_conf.py
@@ -1,3 +1,4 @@
 # configuration for sage on void linux
 SAGE_SHARE = "/usr/share/sagemath"
 GAP_SHARE_DIR = "/usr/share/gap"
+JMOL_DIR = "/usr/share/jmol"
diff --git a/srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch b/srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch
new file mode 100644
index 0000000000000..8eb2c20a34c52
--- /dev/null
+++ b/srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch
@@ -0,0 +1,15 @@
+diff --git a/src/sage/calculus/calculus.py b/src/sage/calculus/calculus.py
+index dfaafb4353f..8d62ade24c8 100644
+--- a/src/sage/calculus/calculus.py
++++ b/src/sage/calculus/calculus.py
+@@ -568,8 +568,8 @@ def symbolic_sum(expression, v, a, b, algorithm='maxima', hold=False):
+ 
+     An example of this summation with Giac::
+ 
+-        sage: symbolic_sum(1/(1+k^2), k, -oo, oo, algorithm='giac')
+-        (pi*e^(2*pi) - pi*e^(-2*pi))/(e^(2*pi) + e^(-2*pi) - 2)
++        sage: symbolic_sum(1/(1+k^2), k, -oo, oo, algorithm='giac').factor()
++        pi*(e^(2*pi) + 1)/((e^pi + 1)*(e^pi - 1))
+ 
+     The same summation is solved by SymPy::
+ 
diff --git a/srcpkgs/sagemath/patches/37123-scipy_1.12.patch b/srcpkgs/sagemath/patches/37123-scipy_1.12.patch
new file mode 100644
index 0000000000000..3973b55cdbd51
--- /dev/null
+++ b/srcpkgs/sagemath/patches/37123-scipy_1.12.patch
@@ -0,0 +1,26 @@
+diff --git a/src/sage/matrix/matrix_double_dense.pyx b/src/sage/matrix/matrix_double_dense.pyx
+index 5d19067f2ed..97e50fb2616 100644
+--- a/src/sage/matrix/matrix_double_dense.pyx
++++ b/src/sage/matrix/matrix_double_dense.pyx
+@@ -867,7 +867,7 @@ cdef class Matrix_double_dense(Matrix_numpy_dense):
+         # set cutoff as RDF element
+         if eps == 'auto':
+             if scipy is None: import scipy
+-            eps = 2*max(self._nrows, self._ncols)*scipy.finfo(float).eps*sv[0]
++            eps = 2*max(self._nrows, self._ncols)*numpy.finfo(float).eps*sv[0]
+         eps = RDF(eps)
+         # locate non-zero entries
+         rank = 0
+diff --git a/src/sage/numerical/optimize.py b/src/sage/numerical/optimize.py
+index 708d440a205..9f973c6bd69 100644
+--- a/src/sage/numerical/optimize.py
++++ b/src/sage/numerical/optimize.py
+@@ -426,7 +426,7 @@ def minimize(func, x0, gradient=None, hessian=None, algorithm="default",
+                 hess = func.hessian()
+                 hess_fast = [ [fast_callable(a, vars=var_names, domain=float) for a in row] for row in hess]
+                 hessian = lambda p: [[a(*p) for a in row] for row in hess_fast]
+-                from scipy import dot
++                from numpy import dot
+                 hessian_p = lambda p,v: dot(numpy.array(hessian(p)),v)
+                 min = optimize.fmin_ncg(f, [float(_) for _ in x0], fprime=gradient,
+                       fhess=hessian, fhess_p=hessian_p, disp=verbose, **args)
diff --git a/srcpkgs/sagemath/patches/get_patches b/srcpkgs/sagemath/patches/get_patches
index a552b402727d3..b7836e27910d5 100755
--- a/srcpkgs/sagemath/patches/get_patches
+++ b/srcpkgs/sagemath/patches/get_patches
@@ -20,6 +20,11 @@ get_pr() {
 # run from patches dir
 cd $(dirname "$0")
 
-# needs review
+# all merged in 10.3.beta6 or before
 get_pr  35848   "flintlib 3.0"
 get_pr  36769   "fix jmol detect"
+get_pr  36862   "giac 1.9.0-73"
+get_pr  37004   "fix save_session when cython changes"
+
+# positive review
+get_pr  37123   "scipy 1.12"
diff --git a/srcpkgs/sagemath/template b/srcpkgs/sagemath/template
index 5d5bdccd70a25..7bc92e7c10735 100644
--- a/srcpkgs/sagemath/template
+++ b/srcpkgs/sagemath/template
@@ -1,7 +1,7 @@
 # Template file for 'sagemath'
 pkgname=sagemath
 version=10.2
-revision=1
+revision=2
 build_wrksrc=pkgs/sagemath-standard
 build_style=python3-module
 _bindir=/usr/lib/sagemath/$version/bin
@@ -15,7 +15,7 @@ makedepends="boost-devel brial-devel cliquer-devel ecl eclib-devel
  mpfr-devel ntl-devel openblas-devel pari-devel planarity-devel python3-cypari2
  python3-cysignals python3-devel python3-gmpy2 python3-memory_allocator
  python3-numpy rankwidth-devel singular symmetrica-devel"
-depends="eclib-devel fflas-ffpack flintlib-devel gcc-fortran gd-devel
+depends="eclib-devel fflas-ffpack flintlib-devel gcc-fortran meson gd-devel
  gfan giac gsl-devel gzip libpng-devel linbox-devel m4ri-devel maxima-ecl
  mpfr-devel nauty ntl-devel palp pari-devel pari-elldata-small pari-galdata
  pari-galpol-small pari-seadata-small pkg-config python3-Cython python3-cypari2
@@ -26,7 +26,7 @@ depends="eclib-devel fflas-ffpack flintlib-devel gcc-fortran gd-devel
  python3-sympy python3-traitlets sage-data-combinatorial_designs
  sage-data-conway_polynomials sage-data-elliptic_curves sage-data-graphs
  sage-data-polytopes_db sympow tachyon threejs-sage"
-checkdepends="$depends pythran python3-Sphinx meson"
+checkdepends="$depends pythran python3-Sphinx"
 short_desc="Open source mathematics software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="GPL-2.0-or-later"
@@ -34,7 +34,7 @@ homepage="https://www.sagemath.org/"
 changelog="https://github.com/sagemath/sage/releases"
 distfiles="https://github.com/sagemath/sage/archive/refs/tags/$version.tar.gz"
 checksum=e7125f13495e1068edab73735aca7f9b2c655688096e9d109e628c023e76411f
-nocross="due to ntl (eclib), fflas-ffpack, givaro, linbox, sympow, maxima"
+nocross="due to ntl (eclib, singular), fflas-ffpack, givaro, linbox, sympow, maxima"
 
 post_patch() {
 	# git tree needs bootstrapping

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: python3-scipy: update to 1.12.0.
  2024-01-22  3:49 [PR PATCH] https://github.com/tornaria/void-packages/pull/new/scipy tornaria
@ 2024-01-22 12:49 ` tornaria
  2024-01-22 13:10 ` [PR PATCH] [Updated] " tornaria
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: tornaria @ 2024-01-22 12:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1254 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/48317#issuecomment-1903939556

Comment:
Seems ok, scipy passed check in all arches.

Failure in i686 is one sagemath test, seems transient and completely unrelated to scipy, a timeout in:
```
...
sage: R.<x> = PolynomialRing(GF(65537), implementation="FLINT") ## line 701 ##
sage: f = R.random_element(9973) * R.random_element(10007) ## line 702 ##
sage: alarm(0.5); f.factor() ## line 703 ##
```
Most probably the signal got lost, I've seen this in the past. The test looks stupid but I think it's there to make sure `f.factor()` can be interrupted (say, by hitting ctrl-C, if that signal gets lots one can hit ctrl-C again ofc).

Running the scipy testsuite in CI seems ok, in our three arches with check:
```
== 45225 passed, 2466 skipped, 147 xfailed, 14 xpassed in 1619.82s (0:26:59) ===
== 44982 passed, 2334 skipped, 550 xfailed, 14 xpassed in 1765.55s (0:29:25) ===
== 45224 passed, 2467 skipped, 147 xfailed, 14 xpassed in 1395.96s (0:23:15) ===
```
It's weird it takes 26 minutes in CI, 36 minutes in my 8 core desktop, and 1 hour (walltime!) in my 36 core workstation, it seems some tests are scaled by the number of cores.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PR PATCH] [Updated] python3-scipy: update to 1.12.0.
  2024-01-22  3:49 [PR PATCH] https://github.com/tornaria/void-packages/pull/new/scipy tornaria
  2024-01-22 12:49 ` python3-scipy: update to 1.12.0 tornaria
@ 2024-01-22 13:10 ` tornaria
  2024-01-22 13:16 ` tornaria
  2024-01-23 19:48 ` [PR PATCH] [Closed]: " ahesford
  3 siblings, 0 replies; 5+ messages in thread
From: tornaria @ 2024-01-22 13:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 2202 bytes --]

There is an updated pull request by tornaria against master on the void-packages repository

https://github.com/tornaria/void-packages scipy
https://github.com/void-linux/void-packages/pull/48317

python3-scipy: update to 1.12.0.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

I enabled tests for scipy let's see if CI can manage or we have to disable in CI (we only run "not slow" tests for -Q).

Updated sagemath since it needs a patch for scipy 1.12 (https://github.com/sagemath/sage/pull/37123). Took the chance to apply a few minor fixes that didn't justify an update on their own.

@ahesford I'll be done with testing in a couple days at most, in principle everything looks good.

BTW: I run scipy tests with `export SCIPY_XSLOW=1` and `-m xslow` which gave me one failure:
```
FAILED scipy/sparse/linalg/tests/test_onenormest.py::TestOnenormest::test_onenormest_table_6_t_1
====== 1 failed, 321 passed, 40 skipped, 15 xfailed in 9042.78s (2:30:42) ======
```

Running check normally gave me:
```
== 45224 passed, 2467 skipped, 149 xfailed, 12 xpassed in 3836.63s (1:03:56) ===
```
(with `-m "not slow"`) and
```
== 59100 passed, 2501 skipped, 259 xfailed, 14 xpassed in 5444.99s (1:30:44) ===
```

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/48317.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-scipy-48317.patch --]
[-- Type: text/x-diff, Size: 20358 bytes --]

From 33657b9465a62615ae6b389c7d39d8270f41cbd7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Mon, 22 Jan 2024 00:30:44 -0300
Subject: [PATCH 1/2] python3-scipy: update to 1.12.0.

---
 srcpkgs/python3-scipy/patches/19909.patch     | 40 +++++++++++++++++++
 .../python3-scipy/patches/dep-versions.patch  | 23 -----------
 srcpkgs/python3-scipy/template                | 13 ++++--
 3 files changed, 50 insertions(+), 26 deletions(-)
 create mode 100644 srcpkgs/python3-scipy/patches/19909.patch
 delete mode 100644 srcpkgs/python3-scipy/patches/dep-versions.patch

diff --git a/srcpkgs/python3-scipy/patches/19909.patch b/srcpkgs/python3-scipy/patches/19909.patch
new file mode 100644
index 0000000000000..b861d2b96c33c
--- /dev/null
+++ b/srcpkgs/python3-scipy/patches/19909.patch
@@ -0,0 +1,40 @@
+See: https://github.com/scipy/scipy/pull/19909
+
+From 8c96a1f742335bca283aae418763aaba62c03378 Mon Sep 17 00:00:00 2001
+From: Ilhan Polat <ilhanpolat@gmail.com>
+Date: Thu, 18 Jan 2024 14:47:42 +0100
+Subject: [PATCH] MAINT:linalg:Adjust lwork/liwork changes OpenBLAS 0.3.26
+
+See https://github.com/Reference-LAPACK/lapack/pull/942
+---
+ scipy/linalg/flapack_sym_herm.pyf.src | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/scipy/linalg/flapack_sym_herm.pyf.src b/scipy/linalg/flapack_sym_herm.pyf.src
+index f07dbaecbc72..af04e0d8d8d8 100644
+--- a/scipy/linalg/flapack_sym_herm.pyf.src
++++ b/scipy/linalg/flapack_sym_herm.pyf.src
+@@ -762,8 +762,8 @@ subroutine <prefix2>syevr(compute_v,range,lower,n,a,lda,vl,vu,il,iu,abstol,w,z,m
+     <ftype2> optional,intent(in) :: vl=0.0
+     <ftype2> optional,intent(in),check(vu>=vl),depend(vl) :: vu=1.0
+     <ftype2> intent(in) :: abstol=0.0
+-    integer optional,intent(in),depend(n),check(lwork>=max(1,26*n)||lwork==-1) :: lwork=max(26*n,1)
+-    integer optional,intent(in),depend(n),check(liwork>=max(1,10*n)||liwork==-1):: liwork= max(1,10*n)
++    integer optional,intent(in),depend(n),check(lwork>=(n <= 1 ? 1 : max(1,26*n))||lwork==-1) :: lwork=max(26*n,1)
++    integer optional,intent(in),depend(n),check(liwork>=(n <= 1 ? 1 : max(1,10*n))||liwork==-1):: liwork= max(1,10*n)
+ 
+     integer intent(hide),depend(a) :: n=shape(a,0)
+     integer intent(hide),depend(n) :: lda=max(1,n)
+@@ -832,9 +832,9 @@ subroutine <prefix2c>heevr(compute_v,range,lower,n,a,lda,vl,vu,il,iu,abstol,w,z,
+     <ftype2> optional,intent(in) :: vl=0.0
+     <ftype2> optional,intent(in),check(vu>vl),depend(vl) :: vu=1.0
+     <ftype2> intent(in) :: abstol=0.0
+-    integer optional,intent(in),depend(n),check(lwork>=max(2*n,1)||lwork==-1) :: lwork=max(2*n,1)
+-    integer optional,intent(in),depend(n),check(lrwork>=max(24*n,1)||lrwork==-1) :: lrwork=max(24*n,1)
+-    integer optional,intent(in),depend(n),check(liwork>=max(1,10*n)||liwork==-1):: liwork= max(1,10*n)
++    integer optional,intent(in),depend(n),check(lwork>=(n <= 1 ? 1 : max(1,2*n))||lwork==-1) :: lwork=max(2*n,1)
++    integer optional,intent(in),depend(n),check(lrwork>=(n <= 1 ? 1 : max(1,24*n))||lrwork==-1) :: lrwork=max(24*n,1)
++    integer optional,intent(in),depend(n),check(liwork>=(n <= 1 ? 1 : max(1,10*n))||liwork==-1):: liwork= max(1,10*n)
+ 
+     integer intent(hide),depend(a) :: n=shape(a,0)
+     integer intent(hide),depend(n) :: lda=max(1,n)
diff --git a/srcpkgs/python3-scipy/patches/dep-versions.patch b/srcpkgs/python3-scipy/patches/dep-versions.patch
deleted file mode 100644
index ac62f0b7fb069..0000000000000
--- a/srcpkgs/python3-scipy/patches/dep-versions.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Several dependencies have needlessly restrictive version requirements, which
-causes build failures against more up-to-date Void packages.
-
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -11,13 +11,13 @@
- build-backend = 'mesonpy'
- requires = [
-     # Reason for `<`: future-proofing (0.14.0 released and known to work)
--    "meson-python>=0.12.1,<0.15.0",
-+    "meson-python>=0.12.1",
-     # Reason for `<`: we want to build the 1.11.x releases with 0.29.x (too many changes in 3.0)
--    "Cython>=0.29.35,<3.0",   # when updating version, also update check in meson.build
-+    "Cython>=0.29.35",
-     # Reason for `<`: future-proofing (2.11.1 is the most recent version)
--    "pybind11>=2.10.4,<2.11.1",
-+    "pybind11>=2.10.4",
-     # Reason for `<`: future-proofing (0.14.0 released and known to work)
--    "pythran>=0.12.0,<0.15.0",
-+    "pythran>=0.12.0",
- 
-     # NumPy dependencies - to update these, sync from
-     # https://github.com/scipy/oldest-supported-numpy/, and then
diff --git a/srcpkgs/python3-scipy/template b/srcpkgs/python3-scipy/template
index 88128aaa3a3bb..3915ca79f5f0e 100644
--- a/srcpkgs/python3-scipy/template
+++ b/srcpkgs/python3-scipy/template
@@ -1,6 +1,6 @@
 # Template file for 'python3-scipy'
 pkgname=python3-scipy
-version=1.11.4
+version=1.12.0
 revision=1
 build_style=python3-pep517
 build_helper="meson numpy"
@@ -12,13 +12,16 @@ hostmakedepends="python3-meson-python python3-Cython python3-pybind11
 makedepends="python3-devel python3-pybind11 python3-numpy pythran
  $(vopt_if openblas openblas-devel "lapack-devel cblas-devel")"
 depends="python3-numpy"
+checkdepends="python3-pytest python3-pytest-xdist python3-hypothesis python3-pooch
+ python3-matplotlib python3-mpmath python3-psutil python3-sympy"
 short_desc="Scientific library for Python3"
 maintainer="Andrew J. Hesford <ajh@sideband.org>"
 license="BSD-3-Clause"
 homepage="https://scipy.org/"
 distfiles="${PYPI_SITE}/s/scipy/scipy-${version}.tar.gz"
-checksum=90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa
-make_check="no" # Tests need an installed copy to run and meson makes this tough
+checksum=4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3
+# must be tested from site dir of installed version (see dev.py:739)
+make_check_pre='eval env -C "${testdir}/${py3_sitelib}"'
 
 build_options="openblas"
 
@@ -37,6 +40,10 @@ if [ "$build_option_openblas" ]; then
 	esac
 fi
 
+if [ "$XBPS_CHECK_PKGS" != full ]; then
+	make_check_args="-m 'not slow'"
+fi
+
 post_install() {
 	vlicense LICENSE.txt
 }

From 9636e16498b909625f23fe93b9e02c9613dba8b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gonzalo=20Tornar=C3=ADa?= <tornaria@cmat.edu.uy>
Date: Mon, 22 Jan 2024 00:34:32 -0300
Subject: [PATCH 2/2] sagemath: patch for scipy 1.12.

See: https://github.com/sagemath/sage/pull/37123

Also apply a few minor fixes.
---
 srcpkgs/sagemath/files/sage_conf.py           |   1 +
 .../patches/36862-giac_1.9.0-73.patch         |  15 ++
 ...fix_save_session_when_cython_changes.patch | 182 ++++++++++++++++++
 .../sagemath/patches/37123-scipy_1.12.patch   |  26 +++
 srcpkgs/sagemath/patches/get_patches          |   7 +-
 srcpkgs/sagemath/template                     |   8 +-
 6 files changed, 234 insertions(+), 5 deletions(-)
 create mode 100644 srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch
 create mode 100644 srcpkgs/sagemath/patches/37004-fix_save_session_when_cython_changes.patch
 create mode 100644 srcpkgs/sagemath/patches/37123-scipy_1.12.patch

diff --git a/srcpkgs/sagemath/files/sage_conf.py b/srcpkgs/sagemath/files/sage_conf.py
index bc5388de8956d..b5b2360311844 100644
--- a/srcpkgs/sagemath/files/sage_conf.py
+++ b/srcpkgs/sagemath/files/sage_conf.py
@@ -1,3 +1,4 @@
 # configuration for sage on void linux
 SAGE_SHARE = "/usr/share/sagemath"
 GAP_SHARE_DIR = "/usr/share/gap"
+JMOL_DIR = "/usr/share/jmol"
diff --git a/srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch b/srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch
new file mode 100644
index 0000000000000..8eb2c20a34c52
--- /dev/null
+++ b/srcpkgs/sagemath/patches/36862-giac_1.9.0-73.patch
@@ -0,0 +1,15 @@
+diff --git a/src/sage/calculus/calculus.py b/src/sage/calculus/calculus.py
+index dfaafb4353f..8d62ade24c8 100644
+--- a/src/sage/calculus/calculus.py
++++ b/src/sage/calculus/calculus.py
+@@ -568,8 +568,8 @@ def symbolic_sum(expression, v, a, b, algorithm='maxima', hold=False):
+ 
+     An example of this summation with Giac::
+ 
+-        sage: symbolic_sum(1/(1+k^2), k, -oo, oo, algorithm='giac')
+-        (pi*e^(2*pi) - pi*e^(-2*pi))/(e^(2*pi) + e^(-2*pi) - 2)
++        sage: symbolic_sum(1/(1+k^2), k, -oo, oo, algorithm='giac').factor()
++        pi*(e^(2*pi) + 1)/((e^pi + 1)*(e^pi - 1))
+ 
+     The same summation is solved by SymPy::
+ 
diff --git a/srcpkgs/sagemath/patches/37004-fix_save_session_when_cython_changes.patch b/srcpkgs/sagemath/patches/37004-fix_save_session_when_cython_changes.patch
new file mode 100644
index 0000000000000..c3e6c05502621
--- /dev/null
+++ b/srcpkgs/sagemath/patches/37004-fix_save_session_when_cython_changes.patch
@@ -0,0 +1,182 @@
+diff --git a/src/sage/doctest/forker.py b/src/sage/doctest/forker.py
+index efd28d10abe..56a9fe5e8f6 100644
+--- a/src/sage/doctest/forker.py
++++ b/src/sage/doctest/forker.py
+@@ -2477,19 +2477,6 @@ class DocTestTask():
+         ['cputime', 'err', 'failures', 'optionals', 'tests', 'walltime', 'walltime_skips']
+     """
+ 
+-    extra_globals = {}
+-    """
+-    Extra objects to place in the global namespace in which tests are run.
+-    Normally this should be empty but there are special cases where it may
+-    be useful.
+-
+-    For example, in Sage versions 9.1 and earlier, on Python 3 add
+-    ``long`` as an alias for ``int`` so that tests that use the
+-    ``long`` built-in (of which there are many) still pass.  We did
+-    this so that the test suite could run on Python 3 while Python 2
+-    was still the default.
+-    """
+-
+     def __init__(self, source):
+         """
+         Initialization.
+@@ -2614,10 +2601,6 @@ def _run(self, runner, options, results):
+         # Remove '__package__' item from the globals since it is not
+         # always in the globals in an actual Sage session.
+         dict_all.pop('__package__', None)
+-
+-        # Add any other special globals for testing purposes only
+-        dict_all.update(self.extra_globals)
+-
+         sage_namespace = RecordingDict(dict_all)
+         sage_namespace['__name__'] = '__main__'
+         doctests, extras = self.source.create_doctests(sage_namespace)
+diff --git a/src/sage/misc/session.pyx b/src/sage/misc/session.pyx
+index 31454dac993..53b732309da 100644
+--- a/src/sage/misc/session.pyx
++++ b/src/sage/misc/session.pyx
+@@ -27,7 +27,7 @@ This saves a dictionary with ``w`` as one of the keys::
+ 
+     sage: z = load(os.path.join(d.name, 'session'))
+     sage: list(z)
+-    ['d', 'w']
++    ['w', 'd']
+     sage: z['w']
+     2/3
+ 
+@@ -68,11 +68,12 @@ AUTHOR:
+ import builtins
+ import types
+ 
+-# We want the caller's locals, but locals() is emulated in Cython
+-cdef caller_locals = builtins.locals
+-
+ # Sage imports
+ from sage.misc.persist import load, save, loads, dumps
++from sage.misc.lazy_import import LazyImport
++
++# We want the caller's locals, but locals() is emulated in Cython
++cdef caller_locals = builtins.locals
+ 
+ # This module-scope variables is used to save the
+ # global state of the sage environment at the moment
+@@ -80,7 +81,6 @@ from sage.misc.persist import load, save, loads, dumps
+ 
+ state_at_init = None
+ 
+-CythonFunctionType = type(lambda: None)
+ 
+ def init(state=None):
+     """
+@@ -163,9 +163,13 @@ def _is_new_var(x, v, hidden):
+     # definitely new.
+     if x not in state_at_init:
+         return True
++    # A lazy import that was there at init time is not new
++    if isinstance(v, LazyImport):
++        return False
+     # A variable could also be new even if it was there at init, say if
+     # its value changed.
+-    return x not in state_at_init or state_at_init[x] is not v
++    return state_at_init[x] is not v
++
+ 
+ def show_identifiers(hidden=False):
+     r"""
+@@ -196,7 +200,7 @@ def show_identifiers(hidden=False):
+         sage: a = 10
+         sage: factor = 20
+         sage: show_identifiers()
+-        ['a', 'factor']
++        ['factor', 'a']
+ 
+     To get the actual value of a variable from the list, use the
+     :func:`globals()` function.::
+@@ -210,7 +214,7 @@ def show_identifiers(hidden=False):
+ 
+         sage: _hello = 10
+         sage: show_identifiers()
+-        ['a', 'factor']
++        ['factor', 'a']
+         sage: '_hello' in show_identifiers(hidden=True)
+         True
+ 
+@@ -218,19 +222,13 @@ def show_identifiers(hidden=False):
+     least in command line mode.::
+ 
+         sage: show_identifiers(hidden=True)        # random output
+-        ['__', '_i', '_6', '_4', '_3', '_1', '_ii', '__doc__', '__builtins__', '___', '_9', '__name__', '_', 'a', '_i12', '_i14', 'factor', '__file__', '_hello', '_i13', '_i11', '_i10', '_i15', '_i5', '_13', '_10', '_iii', '_i9', '_i8', '_i7', '_i6', '_i4', '_i3', '_i2', '_i1', '_init_cmdline', '_14']
++        ['__builtin__', '_ih', '_oh', '_dh', 'exit', 'quit', '_', '__', '___',
++        '_i', '_ii', '_iii', '_i1', 'factor', '_i2', '_2', '_i3', 'a', '_i4',
++        '_i5', '_5', '_i6', '_6', '_i7', '_hello', '_i8', '_8', '_i9', '_9',
++        '_i10']
+     """
+-    from sage.doctest.forker import DocTestTask
+     state = caller_locals()
+-    # Ignore extra variables injected into the global namespace by the doctest
+-    # runner
+-    _none = object()
+-
+-    def _in_extra_globals(name, val):
+-        return val == DocTestTask.extra_globals.get(name, _none)
+-
+-    return sorted([x for x, v in state.items() if _is_new_var(x, v, hidden)
+-                   and not _in_extra_globals(x, v)])
++    return [x for x, v in state.items() if _is_new_var(x, v, hidden)]
+ 
+ 
+ def save_session(name='sage_session', verbose=False):
+@@ -293,28 +291,44 @@ def save_session(name='sage_session', verbose=False):
+         sage: f = lambda x : x^2
+         sage: save_session(tmp_f)
+         sage: save_session(tmp_f, verbose=True)
+-        Saving...
+-        Not saving f: f is a function, method, class or type
+         ...
++        Not saving f: f is a function or method
+ 
+     Something similar happens for cython-defined functions::
+ 
+         sage: g = cython_lambda('double x', 'x*x + 1.5')
+         sage: save_session(tmp_f, verbose=True)
+-        Saving...
+-        Not saving g: g is a function, method, class or type
+         ...
++        Not saving g: g is a cython function or method
++
++    And the same for a lazy import::
++
++        sage: from sage.misc.lazy_import import LazyImport
++        sage: lazy_ZZ = LazyImport('sage.rings.integer_ring', 'ZZ')
++        sage: save_session(tmp_f, verbose=True)
++        ...
++        Not saving lazy_ZZ: lazy_ZZ is a lazy import
+     """
+     state = caller_locals()
+     # This dict D will contain the session -- as a dict -- that we will save to disk.
+     D = {}
+     # We iterate only over the new variables that were defined in this
+     # session, since those are the only ones we will save.
+-    for k in show_identifiers(hidden = True):
++    for k in show_identifiers(hidden=True):
+         try:
+             x = state[k]
+-            if isinstance(x, (types.FunctionType, types.BuiltinFunctionType, types.BuiltinMethodType, CythonFunctionType, type)):
+-                raise TypeError('{} is a function, method, class or type'.format(k))
++
++            if isinstance(x, type):
++                raise TypeError('{} is a class or type'.format(k))
++
++            if isinstance(x, (types.FunctionType, types.BuiltinFunctionType, types.BuiltinMethodType)):
++                raise TypeError('{} is a function or method'.format(k))
++
++            if getattr(type(x), '__name__', None) == 'cython_function_or_method':
++                raise TypeError('{} is a cython function or method'.format(k))
++
++            if isinstance(x, LazyImport):
++                raise TypeError('{} is a lazy import'.format(k))
+ 
+             # We attempt to pickle *and* unpickle every variable to
+             # make *certain* that we can pickled D at the end below.
diff --git a/srcpkgs/sagemath/patches/37123-scipy_1.12.patch b/srcpkgs/sagemath/patches/37123-scipy_1.12.patch
new file mode 100644
index 0000000000000..3973b55cdbd51
--- /dev/null
+++ b/srcpkgs/sagemath/patches/37123-scipy_1.12.patch
@@ -0,0 +1,26 @@
+diff --git a/src/sage/matrix/matrix_double_dense.pyx b/src/sage/matrix/matrix_double_dense.pyx
+index 5d19067f2ed..97e50fb2616 100644
+--- a/src/sage/matrix/matrix_double_dense.pyx
++++ b/src/sage/matrix/matrix_double_dense.pyx
+@@ -867,7 +867,7 @@ cdef class Matrix_double_dense(Matrix_numpy_dense):
+         # set cutoff as RDF element
+         if eps == 'auto':
+             if scipy is None: import scipy
+-            eps = 2*max(self._nrows, self._ncols)*scipy.finfo(float).eps*sv[0]
++            eps = 2*max(self._nrows, self._ncols)*numpy.finfo(float).eps*sv[0]
+         eps = RDF(eps)
+         # locate non-zero entries
+         rank = 0
+diff --git a/src/sage/numerical/optimize.py b/src/sage/numerical/optimize.py
+index 708d440a205..9f973c6bd69 100644
+--- a/src/sage/numerical/optimize.py
++++ b/src/sage/numerical/optimize.py
+@@ -426,7 +426,7 @@ def minimize(func, x0, gradient=None, hessian=None, algorithm="default",
+                 hess = func.hessian()
+                 hess_fast = [ [fast_callable(a, vars=var_names, domain=float) for a in row] for row in hess]
+                 hessian = lambda p: [[a(*p) for a in row] for row in hess_fast]
+-                from scipy import dot
++                from numpy import dot
+                 hessian_p = lambda p,v: dot(numpy.array(hessian(p)),v)
+                 min = optimize.fmin_ncg(f, [float(_) for _ in x0], fprime=gradient,
+                       fhess=hessian, fhess_p=hessian_p, disp=verbose, **args)
diff --git a/srcpkgs/sagemath/patches/get_patches b/srcpkgs/sagemath/patches/get_patches
index a552b402727d3..b7836e27910d5 100755
--- a/srcpkgs/sagemath/patches/get_patches
+++ b/srcpkgs/sagemath/patches/get_patches
@@ -20,6 +20,11 @@ get_pr() {
 # run from patches dir
 cd $(dirname "$0")
 
-# needs review
+# all merged in 10.3.beta6 or before
 get_pr  35848   "flintlib 3.0"
 get_pr  36769   "fix jmol detect"
+get_pr  36862   "giac 1.9.0-73"
+get_pr  37004   "fix save_session when cython changes"
+
+# positive review
+get_pr  37123   "scipy 1.12"
diff --git a/srcpkgs/sagemath/template b/srcpkgs/sagemath/template
index 5d5bdccd70a25..7bc92e7c10735 100644
--- a/srcpkgs/sagemath/template
+++ b/srcpkgs/sagemath/template
@@ -1,7 +1,7 @@
 # Template file for 'sagemath'
 pkgname=sagemath
 version=10.2
-revision=1
+revision=2
 build_wrksrc=pkgs/sagemath-standard
 build_style=python3-module
 _bindir=/usr/lib/sagemath/$version/bin
@@ -15,7 +15,7 @@ makedepends="boost-devel brial-devel cliquer-devel ecl eclib-devel
  mpfr-devel ntl-devel openblas-devel pari-devel planarity-devel python3-cypari2
  python3-cysignals python3-devel python3-gmpy2 python3-memory_allocator
  python3-numpy rankwidth-devel singular symmetrica-devel"
-depends="eclib-devel fflas-ffpack flintlib-devel gcc-fortran gd-devel
+depends="eclib-devel fflas-ffpack flintlib-devel gcc-fortran meson gd-devel
  gfan giac gsl-devel gzip libpng-devel linbox-devel m4ri-devel maxima-ecl
  mpfr-devel nauty ntl-devel palp pari-devel pari-elldata-small pari-galdata
  pari-galpol-small pari-seadata-small pkg-config python3-Cython python3-cypari2
@@ -26,7 +26,7 @@ depends="eclib-devel fflas-ffpack flintlib-devel gcc-fortran gd-devel
  python3-sympy python3-traitlets sage-data-combinatorial_designs
  sage-data-conway_polynomials sage-data-elliptic_curves sage-data-graphs
  sage-data-polytopes_db sympow tachyon threejs-sage"
-checkdepends="$depends pythran python3-Sphinx meson"
+checkdepends="$depends pythran python3-Sphinx"
 short_desc="Open source mathematics software"
 maintainer="Gonzalo Tornaría <tornaria@cmat.edu.uy>"
 license="GPL-2.0-or-later"
@@ -34,7 +34,7 @@ homepage="https://www.sagemath.org/"
 changelog="https://github.com/sagemath/sage/releases"
 distfiles="https://github.com/sagemath/sage/archive/refs/tags/$version.tar.gz"
 checksum=e7125f13495e1068edab73735aca7f9b2c655688096e9d109e628c023e76411f
-nocross="due to ntl (eclib), fflas-ffpack, givaro, linbox, sympow, maxima"
+nocross="due to ntl (eclib, singular), fflas-ffpack, givaro, linbox, sympow, maxima"
 
 post_patch() {
 	# git tree needs bootstrapping

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: python3-scipy: update to 1.12.0.
  2024-01-22  3:49 [PR PATCH] https://github.com/tornaria/void-packages/pull/new/scipy tornaria
  2024-01-22 12:49 ` python3-scipy: update to 1.12.0 tornaria
  2024-01-22 13:10 ` [PR PATCH] [Updated] " tornaria
@ 2024-01-22 13:16 ` tornaria
  2024-01-23 19:48 ` [PR PATCH] [Closed]: " ahesford
  3 siblings, 0 replies; 5+ messages in thread
From: tornaria @ 2024-01-22 13:16 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 517 bytes --]

New comment by tornaria on void-packages repository

https://github.com/void-linux/void-packages/pull/48317#issuecomment-1903986954

Comment:
I re-pushed because I forgot to `git add` one patch in sagemath (minor issue that only triggers when sagemath is built with one version of cython and then cython changes version so CI will never see it).

We'll get a chance to see if the i686 failure is indeed transient as I think.

If CI passes this is ok to merge on my side (take your time, no hurry here @ahesford).

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PR PATCH] [Closed]: python3-scipy: update to 1.12.0.
  2024-01-22  3:49 [PR PATCH] https://github.com/tornaria/void-packages/pull/new/scipy tornaria
                   ` (2 preceding siblings ...)
  2024-01-22 13:16 ` tornaria
@ 2024-01-23 19:48 ` ahesford
  3 siblings, 0 replies; 5+ messages in thread
From: ahesford @ 2024-01-23 19:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 2046 bytes --]

There's a closed pull request on the void-packages repository

python3-scipy: update to 1.12.0.
https://github.com/void-linux/void-packages/pull/48317

Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

I enabled tests for scipy let's see if CI can manage or we have to disable in CI (we only run "not slow" tests for -Q).

Updated sagemath since it needs a patch for scipy 1.12 (https://github.com/sagemath/sage/pull/37123). Took the chance to apply a few minor fixes that didn't justify an update on their own.

@ahesford I'll be done with testing in a couple days at most, in principle everything looks good.

BTW: I run scipy tests with `export SCIPY_XSLOW=1` and `-m xslow` which gave me one failure:
```
FAILED scipy/sparse/linalg/tests/test_onenormest.py::TestOnenormest::test_onenormest_table_6_t_1
====== 1 failed, 321 passed, 40 skipped, 15 xfailed in 9042.78s (2:30:42) ======
```

Running check normally gave me:
```
== 45224 passed, 2467 skipped, 149 xfailed, 12 xpassed in 3836.63s (1:03:56) ===
```
(with `-m "not slow"`) and
```
== 59100 passed, 2501 skipped, 259 xfailed, 14 xpassed in 5444.99s (1:30:44) ===
```

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-01-23 19:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-22  3:49 [PR PATCH] https://github.com/tornaria/void-packages/pull/new/scipy tornaria
2024-01-22 12:49 ` python3-scipy: update to 1.12.0 tornaria
2024-01-22 13:10 ` [PR PATCH] [Updated] " tornaria
2024-01-22 13:16 ` tornaria
2024-01-23 19:48 ` [PR PATCH] [Closed]: " ahesford

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).