Version 9.7

Drop upstreamed patches: -infinite-recursion, -use-after-free, -sphinx
This commit is contained in:
Jerry James 2023-01-17 08:43:14 -07:00
parent fed038c815
commit bf7a318833
17 changed files with 532 additions and 1033 deletions

View file

@ -1,6 +1,6 @@
diff -up src/sage/cpython/debugimpl.c.orig src/sage/cpython/debugimpl.c
--- src/sage/cpython/debugimpl.c.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/cpython/debugimpl.c 2022-06-01 10:53:46.037463665 -0600
--- src/sage/cpython/debugimpl.c.orig 2022-09-19 16:38:18.000000000 -0600
+++ src/sage/cpython/debugimpl.c 2023-01-15 17:07:04.836843956 -0700
@@ -148,6 +148,7 @@ static void _type_debug(PyTypeObject* tp
printf(" tp_basicsize: %ld\n", (long)tp->tp_basicsize);
printf(" tp_itemsize: %ld\n", (long)tp->tp_itemsize);
@ -18,8 +18,8 @@ diff -up src/sage/cpython/debugimpl.c.orig src/sage/cpython/debugimpl.c
attr_pointer_meth(tp_call, "__call__");
attr_pointer_meth(tp_str, "__str__");
diff -up src/sage/cpython/debug.pyx.orig src/sage/cpython/debug.pyx
--- src/sage/cpython/debug.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/cpython/debug.pyx 2022-06-01 10:53:46.037463665 -0600
--- src/sage/cpython/debug.pyx.orig 2022-09-19 16:38:18.000000000 -0600
+++ src/sage/cpython/debug.pyx 2023-01-15 17:07:04.836843956 -0700
@@ -231,6 +231,7 @@ def type_debug(cls):
tp_basicsize: 16
tp_itemsize: 0
@ -37,9 +37,9 @@ diff -up src/sage/cpython/debug.pyx.orig src/sage/cpython/debug.pyx
tp_call (__call__): NULL
tp_str (__str__): 0x7fc57d757020
diff -up src/sage/geometry/triangulation/point_configuration.py.orig src/sage/geometry/triangulation/point_configuration.py
--- src/sage/geometry/triangulation/point_configuration.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/geometry/triangulation/point_configuration.py 2022-06-01 10:53:46.038463669 -0600
@@ -618,11 +618,11 @@ class PointConfiguration(UniqueRepresent
--- src/sage/geometry/triangulation/point_configuration.py.orig 2022-09-19 16:38:18.000000000 -0600
+++ src/sage/geometry/triangulation/point_configuration.py 2023-01-15 17:07:04.837843935 -0700
@@ -617,11 +617,11 @@ class PointConfiguration(UniqueRepresent
['{{0,1,2,4},{1,2,3,4}}']
"""
timeout = 600
@ -54,21 +54,21 @@ diff -up src/sage/geometry/triangulation/point_configuration.py.orig src/sage/ge
if verbose:
print("#### TOPCOM input ####")
diff -up src/sage/interfaces/frobby.py.orig src/sage/interfaces/frobby.py
--- src/sage/interfaces/frobby.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/interfaces/frobby.py 2022-06-01 10:53:46.038463669 -0600
--- src/sage/interfaces/frobby.py.orig 2023-01-15 17:07:04.837843935 -0700
+++ src/sage/interfaces/frobby.py 2023-01-15 17:07:49.392886328 -0700
@@ -78,7 +78,7 @@ class Frobby:
print("Frobby command: ", repr(command))
print("Frobby input:\n", input)
- process = Popen(command, stdin = PIPE, stdout = PIPE, stderr = PIPE)
+ process = Popen(command, stdin = PIPE, stdout = PIPE, stderr = PIPE, encoding='utf-8')
- process = Popen(command, stdin=PIPE, stdout=PIPE, stderr=PIPE)
+ process = Popen(command, stdin=PIPE, stdout=PIPE, stderr=PIPE, encoding='utf-8')
if input:
frinput = str_to_bytes(input)
else:
diff -up src/sage/interfaces/gfan.py.orig src/sage/interfaces/gfan.py
--- src/sage/interfaces/gfan.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/interfaces/gfan.py 2022-06-01 10:56:40.784198738 -0600
@@ -109,7 +109,7 @@ class Gfan(object):
--- src/sage/interfaces/gfan.py.orig 2022-09-19 16:38:18.000000000 -0600
+++ src/sage/interfaces/gfan.py 2023-01-15 17:07:04.837843935 -0700
@@ -109,7 +109,7 @@ class Gfan():
print("gfan input:\n%s" % input)
gfan_processes = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE,
@ -78,27 +78,27 @@ diff -up src/sage/interfaces/gfan.py.orig src/sage/interfaces/gfan.py
# sometimes, gfan outputs stuff to stderr even though everything is fine
diff -up src/sage/interfaces/latte.py.orig src/sage/interfaces/latte.py
--- src/sage/interfaces/latte.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/interfaces/latte.py 2022-06-01 10:53:46.039463674 -0600
@@ -159,6 +159,7 @@ def count(arg, ehrhart_polynomial=False,
--- src/sage/interfaces/latte.py.orig 2023-01-15 17:07:04.837843935 -0700
+++ src/sage/interfaces/latte.py 2023-01-15 17:09:27.127907740 -0700
@@ -161,6 +161,7 @@ def count(arg, ehrhart_polynomial=False,
latte_proc = Popen(args,
stdin=PIPE, stdout=PIPE,
stderr=(None if verbose else PIPE),
+ encoding='utf-8',
cwd=str(SAGE_TMP))
cwd=tempd.name)
ans, err = latte_proc.communicate(arg)
@@ -379,6 +380,7 @@ def integrate(arg, polynomial=None, algo
@@ -393,6 +394,7 @@ def integrate(arg, polynomial=None, algo
latte_proc = Popen(args,
stdin=PIPE, stdout=PIPE,
stderr=(None if verbose else PIPE),
+ encoding='utf-8',
cwd=str(SAGE_TMP))
cwd=tempd.name)
ans, err = latte_proc.communicate(arg)
diff -up src/sage/interfaces/sagespawn.pyx.orig src/sage/interfaces/sagespawn.pyx
--- src/sage/interfaces/sagespawn.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/interfaces/sagespawn.pyx 2022-06-01 10:53:46.039463674 -0600
--- src/sage/interfaces/sagespawn.pyx.orig 2022-09-19 16:38:18.000000000 -0600
+++ src/sage/interfaces/sagespawn.pyx 2023-01-15 17:07:04.838843913 -0700
@@ -1,6 +1,6 @@
"""
Sage wrapper around pexpect's ``spawn`` class and
@ -147,8 +147,8 @@ diff -up src/sage/interfaces/sagespawn.pyx.orig src/sage/interfaces/sagespawn.py
pass
self.fileobj.close()
diff -up src/sage/libs/coxeter3/coxeter.pyx.orig src/sage/libs/coxeter3/coxeter.pyx
--- src/sage/libs/coxeter3/coxeter.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/libs/coxeter3/coxeter.pyx 2022-06-01 10:53:46.039463674 -0600
--- src/sage/libs/coxeter3/coxeter.pyx.orig 2022-09-19 16:38:18.000000000 -0600
+++ src/sage/libs/coxeter3/coxeter.pyx 2023-01-15 17:07:04.838843913 -0700
@@ -37,7 +37,7 @@ cdef class String:
EXAMPLES::
@ -282,9 +282,9 @@ diff -up src/sage/libs/coxeter3/coxeter.pyx.orig src/sage/libs/coxeter3/coxeter.
if rank == 0:
raise NotImplementedError("Coxeter group of type ['A',0] using Coxeter 3 not yet implemented")
diff -up src/sage/misc/sageinspect.py.orig src/sage/misc/sageinspect.py
--- src/sage/misc/sageinspect.py.orig 2022-06-01 10:29:22.938310306 -0600
+++ src/sage/misc/sageinspect.py 2022-06-01 10:53:46.040463678 -0600
@@ -505,12 +505,9 @@ class SageArgSpecVisitor(ast.NodeVisitor
--- src/sage/misc/sageinspect.py.orig 2023-01-15 16:40:43.609846146 -0700
+++ src/sage/misc/sageinspect.py 2023-01-15 17:07:04.838843913 -0700
@@ -516,12 +516,9 @@ class SageArgSpecVisitor(ast.NodeVisitor
"""
return node.id
@ -300,7 +300,7 @@ diff -up src/sage/misc/sageinspect.py.orig src/sage/misc/sageinspect.py
INPUT:
@@ -524,7 +521,7 @@ class SageArgSpecVisitor(ast.NodeVisitor
@@ -535,7 +532,7 @@ class SageArgSpecVisitor(ast.NodeVisitor
sage: import ast, sage.misc.sageinspect as sms
sage: visitor = sms.SageArgSpecVisitor()
@ -310,8 +310,8 @@ diff -up src/sage/misc/sageinspect.py.orig src/sage/misc/sageinspect.py
[True, False, None]
sage: [type(vis(n)) for n in ['True', 'False', 'None']]
diff -up src/sage/plot/plot3d/plot3d.py.orig src/sage/plot/plot3d/plot3d.py
--- src/sage/plot/plot3d/plot3d.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/plot/plot3d/plot3d.py 2022-06-01 10:53:46.040463678 -0600
--- src/sage/plot/plot3d/plot3d.py.orig 2022-09-19 16:38:19.000000000 -0600
+++ src/sage/plot/plot3d/plot3d.py 2023-01-15 17:07:04.839843892 -0700
@@ -219,6 +219,7 @@ from .shapes import arrow3d
from .base import Graphics3dGroup
from sage.plot.colors import rainbow
@ -320,7 +320,7 @@ diff -up src/sage/plot/plot3d/plot3d.py.orig src/sage/plot/plot3d/plot3d.py
from sage.functions.trig import cos, sin
from sage.misc.sageinspect import sage_getargspec, is_function_or_cython_function
@@ -255,7 +256,7 @@ class _Coordinates(object):
@@ -255,7 +256,7 @@ class _Coordinates():
sage: arb((x+z,y*z,z), z, (x,y))
Arbitrary Coordinates coordinate transform (z in terms of x, y)
"""
@ -329,22 +329,10 @@ diff -up src/sage/plot/plot3d/plot3d.py.orig src/sage/plot/plot3d/plot3d.py
if set(all_vars) != set(indep_vars + [dep_var]):
raise ValueError('variables were specified incorrectly for this coordinate system; incorrect variables were %s'%list(set(all_vars).symmetric_difference(set(indep_vars+[dep_var]))))
self.dep_var = dep_var
diff -up src/sage/rings/integer.pyx.orig src/sage/rings/integer.pyx
--- src/sage/rings/integer.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/rings/integer.pyx 2022-06-01 10:53:46.041463682 -0600
@@ -7069,7 +7069,7 @@ cdef int mpz_set_str_python(mpz_ptr z, c
x += 1 # Strip spaces
# Disallow a sign here
- if x[0] == '-' or x[0] == '+':
+ if x[0] == c'-' or x[0] == c'+':
x = "" # Force an error below
assert base >= 2
diff -up src/sage/rings/polynomial/pbori/pbori.pyx.orig src/sage/rings/polynomial/pbori/pbori.pyx
--- src/sage/rings/polynomial/pbori/pbori.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/rings/polynomial/pbori/pbori.pyx 2022-06-01 10:53:46.042463686 -0600
@@ -4730,8 +4730,7 @@ cdef class PolynomialConstruct:
--- src/sage/rings/polynomial/pbori/pbori.pyx.orig 2022-09-19 16:38:19.000000000 -0600
+++ src/sage/rings/polynomial/pbori/pbori.pyx 2023-01-15 17:09:50.193474022 -0700
@@ -4729,8 +4729,7 @@ cdef class PolynomialConstruct:
# So, it is just a conversion. [Simon King]
return (<BooleanPolynomialRing>ring)._element_constructor_(x)
@ -354,49 +342,10 @@ diff -up src/sage/rings/polynomial/pbori/pbori.pyx.orig src/sage/rings/polynomia
cdef class MonomialConstruct:
diff -up src/sage/rings/real_mpfi.pyx.orig src/sage/rings/real_mpfi.pyx
--- src/sage/rings/real_mpfi.pyx.orig 2022-06-01 10:29:27.588329956 -0600
+++ src/sage/rings/real_mpfi.pyx 2022-06-01 10:53:46.043463690 -0600
@@ -1943,12 +1943,12 @@ cdef class RealIntervalFieldElement(Ring
cdef long digits
digits = strlen(lower_s)
- if lower_s[0] == '-':
+ if lower_s[0] == c'-':
digits -= 1
lower_expo -= digits
digits = strlen(upper_s)
- if upper_s[0] == '-':
+ if upper_s[0] == c'-':
digits -= 1
upper_expo -= digits
@@ -2117,7 +2117,7 @@ cdef class RealIntervalFieldElement(Ring
raise MemoryError("Unable to allocate memory for the mantissa of an interval")
mpz_get_str(tmp_cstr, base, lower_mpz)
digits = strlen(tmp_cstr)
- if tmp_cstr[0] == '-':
+ if tmp_cstr[0] == c'-':
digits -= 1
mant_string = bytes_to_str(tmp_cstr+1)
sign_string = bytes_to_str(b'-')
diff -up src/sage/rings/real_mpfr.pyx.orig src/sage/rings/real_mpfr.pyx
--- src/sage/rings/real_mpfr.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/rings/real_mpfr.pyx 2022-06-01 10:53:46.043463690 -0600
@@ -2092,7 +2092,7 @@ cdef class RealNumber(sage.structure.ele
if s is NULL:
raise RuntimeError("unable to convert an mpfr number to a string")
# t contains just digits (no sign, decimal point or exponent)
- if s[0] == '-':
+ if s[0] == c'-':
sgn = "-"
t = char_to_str(s + 1)
else:
diff -up src/sage/structure/sage_object.pyx.orig src/sage/structure/sage_object.pyx
--- src/sage/structure/sage_object.pyx.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/structure/sage_object.pyx 2022-06-01 10:53:46.044463695 -0600
@@ -691,7 +691,7 @@ cdef class SageObject:
--- src/sage/structure/sage_object.pyx.orig 2022-09-19 16:38:19.000000000 -0600
+++ src/sage/structure/sage_object.pyx 2023-01-15 17:09:50.195473985 -0700
@@ -694,7 +694,7 @@ cdef class SageObject:
try:
s = self._interface_init_(I)
except Exception:
@ -405,24 +354,3 @@ diff -up src/sage/structure/sage_object.pyx.orig src/sage/structure/sage_object.
X = I(s)
if c:
try:
diff -up src/sage/symbolic/expression.pyx.orig src/sage/symbolic/expression.pyx
--- src/sage/symbolic/expression.pyx.orig 2022-06-01 10:29:28.934335645 -0600
+++ src/sage/symbolic/expression.pyx 2022-06-01 10:53:46.045463699 -0600
@@ -14072,7 +14072,7 @@ cdef class hold_class:
sage: SR(2)^5
32
"""
- g_set_state('hold', True)
+ g_set_state(b'hold', True)
def __exit__(self, *args):
"""
@@ -14085,7 +14085,7 @@ cdef class hold_class:
sage: SR(2)^5
32
"""
- g_set_state('hold', False)
+ g_set_state(b'hold', False)
def start(self):
"""