sagemath: patch and rebuild for ecl-23.9.9
Also add a patch to support matplotlib 3.8.0
This commit is contained in:
parent
ace18ee7e5
commit
5d8e4da91f
5 changed files with 74 additions and 3 deletions
|
@ -24,7 +24,7 @@ index 1de6dedab82..b95130b19dd 100644
|
|||
AUTHORS:
|
||||
|
||||
diff --git a/src/sage/rings/integer.pyx b/src/sage/rings/integer.pyx
|
||||
index 2cd080ddafa..090ab59cb28 100644
|
||||
index d5e87626d31..37ed9364845 100644
|
||||
--- a/src/sage/rings/integer.pyx
|
||||
+++ b/src/sage/rings/integer.pyx
|
||||
@@ -6654,7 +6654,7 @@ cdef class Integer(sage.structure.element.EuclideanDomainElement):
|
||||
|
|
39
srcpkgs/sagemath/patches/36235-ecl_23.9.9.patch
Normal file
39
srcpkgs/sagemath/patches/36235-ecl_23.9.9.patch
Normal file
|
@ -0,0 +1,39 @@
|
|||
diff --git a/src/sage/libs/ecl.pyx b/src/sage/libs/ecl.pyx
|
||||
index 8f46570313d..a8e73e57b52 100644
|
||||
--- a/src/sage/libs/ecl.pyx
|
||||
+++ b/src/sage/libs/ecl.pyx
|
||||
@@ -563,15 +563,15 @@ cdef class EclObject:
|
||||
Floats in Python are IEEE double, which LISP has as well. However,
|
||||
the printing of floating point types in LISP depends on settings::
|
||||
|
||||
- sage: a = EclObject(float(10^40))
|
||||
+ sage: a = EclObject(float(1.234e40))
|
||||
sage: ecl_eval("(setf *read-default-float-format* 'single-float)")
|
||||
<ECL: SINGLE-FLOAT>
|
||||
sage: a
|
||||
- <ECL: 1.d40>
|
||||
+ <ECL: 1.234d40>
|
||||
sage: ecl_eval("(setf *read-default-float-format* 'double-float)")
|
||||
<ECL: DOUBLE-FLOAT>
|
||||
sage: a
|
||||
- <ECL: 1.e40>
|
||||
+ <ECL: 1.234e40>
|
||||
|
||||
Tuples are translated to dotted lists::
|
||||
|
||||
diff --git a/src/sage/libs/eclsig.h b/src/sage/libs/eclsig.h
|
||||
index e249ccf6874..005b2d99d0b 100644
|
||||
--- a/src/sage/libs/eclsig.h
|
||||
+++ b/src/sage/libs/eclsig.h
|
||||
@@ -45,7 +45,11 @@ static inline void ecl_sig_off(void)
|
||||
sig_off();
|
||||
}
|
||||
|
||||
+#if ECL_VERSION_NUMBER < 230909
|
||||
#define ecl_mpz_from_bignum(obj) ((obj)->big.big_num)
|
||||
+#else
|
||||
+#define ecl_mpz_from_bignum(obj) ecl_bignum(obj)
|
||||
+#endif
|
||||
|
||||
cl_object ecl_bignum_from_mpz(mpz_t num)
|
||||
{
|
24
srcpkgs/sagemath/patches/36279-matplotlib_3.8.0.patch
Normal file
24
srcpkgs/sagemath/patches/36279-matplotlib_3.8.0.patch
Normal file
|
@ -0,0 +1,24 @@
|
|||
diff --git a/src/sage/plot/graphics.py b/src/sage/plot/graphics.py
|
||||
index 59f10f6b13f..adcccff059b 100644
|
||||
--- a/src/sage/plot/graphics.py
|
||||
+++ b/src/sage/plot/graphics.py
|
||||
@@ -36,6 +36,7 @@
|
||||
# ****************************************************************************
|
||||
|
||||
import os
|
||||
+from numbers import Integral
|
||||
from collections.abc import Iterable
|
||||
from math import isnan
|
||||
import sage.misc.verbose
|
||||
@@ -2874,6 +2875,11 @@ def matplotlib(self, filename=None,
|
||||
weight=lopts.pop('font_weight', 'medium'),
|
||||
variant=lopts.pop('font_variant', 'normal'))
|
||||
color = lopts.pop('back_color', 'white')
|
||||
+ if 'loc' in lopts:
|
||||
+ loc = lopts['loc']
|
||||
+ if isinstance(loc, Integral):
|
||||
+ # matplotlib 3.8 doesn't support sage integers
|
||||
+ lopts['loc'] = int(loc)
|
||||
leg = subplot.legend(prop=prop, **lopts)
|
||||
if leg is None:
|
||||
from warnings import warn
|
|
@ -24,6 +24,14 @@ cd $(dirname "$0")
|
|||
#get_pr 36018 "singular 4.3.2p4" # included in #35934
|
||||
get_pr 36046 "fix memory leak"
|
||||
|
||||
# positive review
|
||||
# merged in 10.2.beta1
|
||||
get_pr 35934 "singular 4.3.2p7"
|
||||
|
||||
# merged in 10.2.beta2
|
||||
get_pr 36006 "gmp 6.3.0"
|
||||
|
||||
# merged in 10.2.beta3
|
||||
get_pr 36235 "ecl 23.9.9"
|
||||
|
||||
# positive review
|
||||
get_pr 36279 "matplotlib 3.8.0"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'sagemath'
|
||||
pkgname=sagemath
|
||||
version=10.1
|
||||
revision=2
|
||||
revision=3
|
||||
build_wrksrc=pkgs/sagemath-standard
|
||||
build_style=python3-module
|
||||
_bindir=/usr/lib/sagemath/$version/bin
|
||||
|
|
Loading…
Add table
Reference in a new issue