summarylogtreecommitdiffstats
path: root/sagemath-python-3.8.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sagemath-python-3.8.patch')
-rw-r--r--sagemath-python-3.8.patch80
1 files changed, 80 insertions, 0 deletions
diff --git a/sagemath-python-3.8.patch b/sagemath-python-3.8.patch
index 93253065bade..8671f81c3b4f 100644
--- a/sagemath-python-3.8.patch
+++ b/sagemath-python-3.8.patch
@@ -736,6 +736,24 @@ index cc49fd19b7..6cd094b438 100644
-1659481946 # 32-bit
"""
return hash(self._coeffs) ^ hash(self._const)
+diff --git a/src/sage/geometry/polyhedron/combinatorial_polyhedron/base.pyx b/src/sage/geometry/polyhedron/combinatorial_polyhedron/base.pyx
+index d7d27efc5f..bf5c2c342f 100644
+--- a/src/sage/geometry/polyhedron/combinatorial_polyhedron/base.pyx
++++ b/src/sage/geometry/polyhedron/combinatorial_polyhedron/base.pyx
+@@ -1431,10 +1431,10 @@ cdef class CombinatorialPolyhedron(SageObject):
+ A vertex at (0, 1, 1),
+ A vertex at (1, 0, 0))
+ sage: G.neighbors_out(C.Vrepresentation()[4])
+- [An inequality (-1, 0, -1) x + 1 >= 0,
+- An inequality (-1, 0, 1) x + 1 >= 0,
++ [An inequality (-1, 0, 1) x + 1 >= 0,
+ An inequality (-1, -1, 0) x + 1 >= 0,
+- An inequality (-1, 1, 0) x + 1 >= 0]
++ An inequality (-1, 1, 0) x + 1 >= 0,
++ An inequality (-1, 0, -1) x + 1 >= 0]
+
+ If ``names`` is ``True`` (the default) but the combinatorial polyhedron
+ has been initialized without specifying names to
diff --git a/src/sage/geometry/polyhedron/library.py b/src/sage/geometry/polyhedron/library.py
index d66997fc95..57a039d4d6 100644
--- a/src/sage/geometry/polyhedron/library.py
@@ -908,6 +926,68 @@ index cab8faa833..9f00d87eb4 100644
Unknown algorithm::
+diff --git a/src/sage/graphs/graph_latex.py b/src/sage/graphs/graph_latex.py
+index da39caab2c..446526d1fc 100644
+--- a/src/sage/graphs/graph_latex.py
++++ b/src/sage/graphs/graph_latex.py
+@@ -1156,7 +1156,7 @@ class GraphLatex(SageObject):
+ #
+ elif name in color_dicts:
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, c in value.items():
+ try:
+@@ -1165,42 +1165,42 @@ class GraphLatex(SageObject):
+ raise ValueError('%s option for %s needs to be a matplotlib color (always as a string), not %s' % (name, key, c))
+ elif name in positive_scalar_dicts:
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, x in value.items():
+ if not type(x) in [int, Integer, float, RealLiteral] or not x >= 0.0:
+ raise ValueError('%s option for %s needs to be a positive number, not %s' % (name, key, x))
+ elif name in boolean_dicts:
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, b in value.items():
+ if not isinstance(b, bool):
+ raise ValueError('%s option for %s needs to be True or False, not %s' % (name, key, b))
+ elif name == 'vertex_shapes':
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, s in value.items():
+ if s not in shape_names:
+ raise ValueError('%s option for %s needs to be a vertex shape, not %s' % (name, key, s))
+ elif name == 'vertex_label_placements':
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, p in value.items():
+ if not(p == 'center') and not(isinstance(p, tuple) and len(p) == 2 and type(p[0]) in number_types and p[0] >= 0 and type(p[1]) in number_types and p[1] >= 0):
+ raise ValueError('%s option for %s needs to be None or a pair of positive numbers, not %s' % (name, key, p))
+ elif name == 'edge_label_placements':
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, p in value.items():
+ if not(type(p) in [float, RealLiteral] and (0 <= p) and (p <= 1)) and not(p in label_places):
+ raise ValueError('%s option for %s needs to be a number between 0.0 and 1.0 or a place (like "above"), not %s' % (name, key, p))
+ elif name == 'loop_placements':
+ if not isinstance(value, dict):
+- raise TypeError('%s option must be a dictionary, not %s' (name, value))
++ raise TypeError('%s option must be a dictionary, not %s' % (name, value))
+ else:
+ for key, p in value.items():
+ if not((isinstance(p, tuple)) and (len(p) == 2) and (p[0] >= 0) and (p[1] in compass_points)):
diff --git a/src/sage/graphs/schnyder.py b/src/sage/graphs/schnyder.py
index dc11b61e4d..24090589d4 100644
--- a/src/sage/graphs/schnyder.py