Date: Sunday, February 12, 2023 @ 10:50:09
  Author: arojas
Revision: 1400023

archrelease: copy trunk to community-testing-any

Added:
  sagemath-doc/repos/community-testing-any/
  sagemath-doc/repos/community-testing-any/PKGBUILD
    (from rev 1400022, sagemath-doc/trunk/PKGBUILD)
  sagemath-doc/repos/community-testing-any/sagemath-gap-4.12.patch
    (from rev 1400022, sagemath-doc/trunk/sagemath-gap-4.12.patch)
  sagemath-doc/repos/community-testing-any/sagemath-sphinx-6.patch
    (from rev 1400022, sagemath-doc/trunk/sagemath-sphinx-6.patch)

-------------------------+
 PKGBUILD                |   65 +++++++
 sagemath-gap-4.12.patch |  415 ++++++++++++++++++++++++++++++++++++++++++++++
 sagemath-sphinx-6.patch |   30 +++
 3 files changed, 510 insertions(+)

Copied: sagemath-doc/repos/community-testing-any/PKGBUILD (from rev 1400022, 
sagemath-doc/trunk/PKGBUILD)
===================================================================
--- community-testing-any/PKGBUILD                              (rev 0)
+++ community-testing-any/PKGBUILD      2023-02-12 10:50:09 UTC (rev 1400023)
@@ -0,0 +1,65 @@
+# Maintainer: Antonio Rojas <[email protected]>
+
+pkgname=sagemath-doc
+pkgver=9.8
+pkgrel=1
+pkgdesc='HTML documentation for SageMath'
+arch=(any)
+url='http://www.sagemath.org'
+license=(GPL)
+depends=(python-pplpy)
+makedepends=(sagemath python-pyzmq python-docutils python-jupyter_client 
python-pkgconfig cython
+             python-jupyter-sphinx mathjax python-sphinx-furo)
+source=(https://github.com/sagemath/sage/archive/$pkgver/sagemath-$pkgver.tar.gz
+        sagemath-gap-4.12.patch
+        sagemath-sphinx-6.patch)
+sha256sums=('2aff28bd1d18c2d526581f5298acb8336f5b92db5675a7403dec8eaf9a86bc4c'
+            '43dda8c7a8f9331155bdb831cdeb419953ddcb9b72d71d7c1f84f22530e753da'
+            'f2dc6b43a36822412ea77eed193d182602418e0ba4669f6a5fa21985a217f4dc')
+options=(!strip) # nothing to strip, save packaging time
+
+prepare() {
+  cd sage-$pkgver
+
+# Fix tests with GAP 4.12
+  patch -p1 < ../sagemath-gap-4.12.patch
+# Fix build with Sphinx 6
+  patch -p1 < ../sagemath-sphinx-6.patch
+
+# https://trac.sagemath.org/ticket/25833#comment:98
+  mkdir mathjax-tmp
+  cp -r /usr/share/mathjax mathjax-tmp
+
+  SAGE_ROOT="$PWD" PATH="$PWD/build/bin:$PATH" src/doc/bootstrap
+  make -C src/doc doc-src
+
+  rm -r src/sage # Use the installed sage, not the one from the source tree
+}
+
+build() {
+  cd sage-$pkgver/src
+
+  export SAGE_SRC="$PWD" \
+         SAGE_DOC="$PWD"/doc \
+         MATHJAX_DIR="$srcdir"/sage-$pkgver/mathjax-tmp \
+         SAGE_NUM_THREADS=10 \
+         LANGUAGE=C
+  python -m sage_docbuild --no-pdf-links --mathjax all html
+}
+
+package() {
+  cd sage-$pkgver/src/doc
+ 
+  mkdir -p "$pkgdir"/usr/share/doc/sage
+  cp -r common "$pkgdir"/usr/share/doc/sage
+  cp -r html "$pkgdir"/usr/share/doc/sage
+
+# Replace duplicated files by symlinks (Gentoo)
+  cd "$pkgdir"/usr/share/doc/sage
+  mv html/en/_static{,.tmp}
+  for _dir in `find -name _static` ; do
+    rm -r $_dir
+    ln -s /usr/share/doc/sage/html/en/_static $_dir
+  done
+  mv html/en/_static{.tmp,}
+}

Copied: sagemath-doc/repos/community-testing-any/sagemath-gap-4.12.patch (from 
rev 1400022, sagemath-doc/trunk/sagemath-gap-4.12.patch)
===================================================================
--- community-testing-any/sagemath-gap-4.12.patch                               
(rev 0)
+++ community-testing-any/sagemath-gap-4.12.patch       2023-02-12 10:50:09 UTC 
(rev 1400023)
@@ -0,0 +1,415 @@
+diff --git a/src/doc/en/thematic_tutorials/lie/weyl_groups.rst 
b/src/doc/en/thematic_tutorials/lie/weyl_groups.rst
+index c917338e44..182e74aad2 100644
+--- a/src/doc/en/thematic_tutorials/lie/weyl_groups.rst
++++ b/src/doc/en/thematic_tutorials/lie/weyl_groups.rst
+@@ -139,12 +139,12 @@ string, which you can print::
+     X.1      1  1  1  1  1  1  1  1  1  1  1  1  1
+     X.2      1 -1  1  1 -1  1  1 -1 -1 -1  1  1  1
+     X.3      2  .  2 -1  .  2  2  .  .  . -1  2  2
+-    X.4      3 -1 -1  .  1 -1  3 -1  1 -1  . -1  3
+-    X.5      3 -1 -1  .  1  3 -1 -1 -1  1  . -1  3
+-    X.6      3  1 -1  . -1 -1  3  1 -1  1  . -1  3
+-    X.7      3  1 -1  . -1  3 -1  1  1 -1  . -1  3
+-    X.8      3 -1  3  . -1 -1 -1 -1  1  1  . -1  3
+-    X.9      3  1  3  .  1 -1 -1  1 -1 -1  . -1  3
++    X.4      3 -1 -1  .  1  3 -1 -1 -1  1  . -1  3
++    X.5      3  1 -1  . -1  3 -1  1  1 -1  . -1  3
++    X.6      3 -1  3  . -1 -1 -1 -1  1  1  . -1  3
++    X.7      3 -1 -1  .  1 -1  3 -1  1 -1  . -1  3
++    X.8      3  1  3  .  1 -1 -1  1 -1 -1  . -1  3
++    X.9      3  1 -1  . -1 -1  3  1 -1  1  . -1  3
+     X.10     4 -2  . -1  .  .  .  2  .  .  1  . -4
+     X.11     4  2  . -1  .  .  . -2  .  .  1  . -4
+     X.12     6  . -2  .  . -2 -2  .  .  .  .  2  6
+diff --git a/src/sage/coding/codecan/autgroup_can_label.pyx 
b/src/sage/coding/codecan/autgroup_can_label.pyx
+index de5db985e0..c83b9264e4 100644
+--- a/src/sage/coding/codecan/autgroup_can_label.pyx
++++ b/src/sage/coding/codecan/autgroup_can_label.pyx
+@@ -76,7 +76,7 @@ columns do share the same coloring::
+     ((1,),
+      (2,),
+      (3, 5, 4),
+-     (6, 19, 16, 9, 21, 10, 8, 15, 14, 11, 20, 13, 12, 7, 17, 18))
++     (6, 19, 16, 21, 9, 10, 15, 8, 20, 11, 14, 13, 7, 12, 18, 17))
+ 
+ We can also restrict the group action to linear isometries::
+ 
+diff --git a/src/sage/coding/linear_code.py b/src/sage/coding/linear_code.py
+index e8e32f82c9..9d45160f44 100644
+--- a/src/sage/coding/linear_code.py
++++ b/src/sage/coding/linear_code.py
+@@ -465,27 +465,27 @@ class AbstractLinearCode(AbstractLinearCodeNoMetric):
+             0
+             sage: C = codes.HammingCode(GF(4, 'z'), 3)
+             sage: C.automorphism_group_gens()
+-            ([((1, 1, 1, 1, 1, z + 1, z, z + 1, z, z, z, 1, 1, z + 1, z + 1, 
z, z + 1, z, z + 1, z + 1, z + 1); 
(1,14,6,7,4,10,11,19)(2,8,16,13,3,17,21,15)(9,12,18,20), Ring endomorphism of 
Finite Field in z of size 2^2
++            ([((1, 1, 1, z, z + 1, 1, 1, 1, 1, z + 1, z, z, z + 1, z + 1, z + 
1, 1, z + 1, z, z, 1, z); 
(1,13,14,20)(2,21,8,18,7,16,19,15)(3,10,5,12,17,9,6,4), Ring endomorphism of 
Finite Field in z of size 2^2
++                Defn: z |--> z + 1),
++              ((z, 1, z, z, z, z + 1, z, z, z, z, z, z, z + 1, z, z, z, z, z 
+ 1, z, z, z); (1,11,5,12,3,19)(2,8)(6,18,13)(7,17,15)(9,10,14,16,20,21), Ring 
endomorphism of Finite Field in z of size 2^2
+                 Defn: z |--> z + 1),
+-              ((z + 1, 1, 1, z, z + 1, z, z, z + 1, z + 1, z + 1, 1, z + 1, 
z, z, 1, z + 1, 1, z, z + 1, z + 1, z); 
(1,18,6,19,2,9,17,10,13,14,21,11,4,5,12)(3,20,7,16,8), Ring endomorphism of 
Finite Field in z of size 2^2
+-                Defn: z |--> z),
+               ((z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, 
z); (), Ring endomorphism of Finite Field in z of size 2^2
+                 Defn: z |--> z)],
+              362880)
+             sage: C.automorphism_group_gens(equivalence="linear")
+-            ([((z + 1, 1, z + 1, z + 1, z + 1, z, 1, z, 1, 1, 1, 1, z + 1, z 
+ 1, z + 1, z, z, 1, z, z, z); 
(1,15,2,8,16,18,3)(4,9,12,13,20,10,11)(5,21,14,6,7,19,17), Ring endomorphism of 
Finite Field in z of size 2^2
++            ([((z, 1, z + 1, z + 1, 1, z + 1, z, 1, z + 1, z + 1, 1, z, 1, z 
+ 1, z, 1, z, 1, z + 1, 1, 1); 
(1,12,11,10,6,8,9,20,13,21,5,14,3,16,17,19,7,4,2,15,18), Ring endomorphism of 
Finite Field in z of size 2^2
+                 Defn: z |--> z),
+-              ((z + 1, z + 1, z + 1, z + 1, z + 1, 1, z, 1, z, z, z, 1, z, 1, 
1, 1, z + 1, z + 1, z + 1, 1, z); 
(1,15,21,8,9)(2,18,5,3,11,16,7,10,19,13,12,4,17,6,20), Ring endomorphism of 
Finite Field in z of size 2^2
++              ((z + 1, z + 1, z + 1, z, 1, 1, z, z, 1, z + 1, z, 1, 1, z, 1, 
z + 1, z, z + 1, z + 1, 1, z); 
(1,3,18,2,17,6,19)(4,15,13,20,7,14,16)(5,11,8,21,12,9,10), Ring endomorphism of 
Finite Field in z of size 2^2
+                 Defn: z |--> z),
+               ((z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 
1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, z + 1, 
z + 1); (), Ring endomorphism of Finite Field in z of size 2^2
+                 Defn: z |--> z)],
+              181440)
+             sage: C.automorphism_group_gens(equivalence="permutational")
+-            ([((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (1,19)(3,17)(4,21)(5,20)(7,14)(9,12)(10,16)(11,15), Ring endomorphism of 
Finite Field in z of size 2^2
++            ([((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (1,11)(3,10)(4,9)(5,7)(12,21)(14,20)(15,19)(16,17), Ring endomorphism of 
Finite Field in z of size 2^2
+                 Defn: z |--> z),
+-              ((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (1,11)(3,10)(4,9)(5,7)(12,21)(14,20)(15,19)(16,17), Ring endomorphism of 
Finite Field in z of size 2^2
++              ((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (2,18)(3,19)(4,10)(5,16)(8,13)(9,14)(11,21)(15,20), Ring endomorphism of 
Finite Field in z of size 2^2
+                 Defn: z |--> z),
+-              ((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (1,17)(2,8)(3,14)(4,10)(7,12)(9,19)(13,18)(15,20), Ring endomorphism of 
Finite Field in z of size 2^2
++              ((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (1,19)(3,17)(4,21)(5,20)(7,14)(9,12)(10,16)(11,15), Ring endomorphism of 
Finite Field in z of size 2^2
+                 Defn: z |--> z),
+               ((1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
1); (2,13)(3,14)(4,20)(5,11)(8,18)(9,19)(10,15)(16,21), Ring endomorphism of 
Finite Field in z of size 2^2
+                 Defn: z |--> z)],
+@@ -691,10 +691,10 @@ class AbstractLinearCode(AbstractLinearCodeNoMetric):
+             sage: C_iso == aut_group_can_label.get_canonical_form()
+             True
+             sage: aut_group_can_label.get_autom_gens()
+-            [((1, 1, 1, 1, 1, z + 1, z, z + 1, z, z, z, 1, 1, z + 1, z + 1, 
z, z + 1, z, z + 1, z + 1, z + 1); 
(1,14,6,7,4,10,11,19)(2,8,16,13,3,17,21,15)(9,12,18,20), Ring endomorphism of 
Finite Field in z of size 2^2
++            [((1, 1, 1, z, z + 1, 1, 1, 1, 1, z + 1, z, z, z + 1, z + 1, z + 
1, 1, z + 1, z, z, 1, z); 
(1,13,14,20)(2,21,8,18,7,16,19,15)(3,10,5,12,17,9,6,4), Ring endomorphism of 
Finite Field in z of size 2^2
++               Defn: z |--> z + 1),
++             ((z, 1, z, z, z, z + 1, z, z, z, z, z, z, z + 1, z, z, z, z, z + 
1, z, z, z); (1,11,5,12,3,19)(2,8)(6,18,13)(7,17,15)(9,10,14,16,20,21), Ring 
endomorphism of Finite Field in z of size 2^2
+                Defn: z |--> z + 1),
+-             ((z + 1, 1, 1, z, z + 1, z, z, z + 1, z + 1, z + 1, 1, z + 1, z, 
z, 1, z + 1, 1, z, z + 1, z + 1, z); 
(1,18,6,19,2,9,17,10,13,14,21,11,4,5,12)(3,20,7,16,8), Ring endomorphism of 
Finite Field in z of size 2^2
+-               Defn: z |--> z),
+              ((z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, z, 
z); (), Ring endomorphism of Finite Field in z of size 2^2
+                Defn: z |--> z)]
+         """
+diff --git a/src/sage/combinat/root_system/hecke_algebra_representation.py 
b/src/sage/combinat/root_system/hecke_algebra_representation.py
+index bde2823421..bffcc85f6e 100644
+--- a/src/sage/combinat/root_system/hecke_algebra_representation.py
++++ b/src/sage/combinat/root_system/hecke_algebra_representation.py
+@@ -357,7 +357,7 @@ class HeckeAlgebraRepresentation(WithEqualityById, 
SageObject):
+             sage: q1, q2 = K.gens()
+             sage: KW = W.algebra(K)
+             sage: x = KW.an_element(); x
+-            123 + 3*32 + 2*3 + e
++            123 + 3*2312 + 2*31 + e
+ 
+             sage: T = KW.demazure_lusztig_operators(q1,q2)
+             sage: T12 = T.Tw( (1,2) )
+diff --git a/src/sage/combinat/symmetric_group_algebra.py 
b/src/sage/combinat/symmetric_group_algebra.py
+index c3d67555a6..da953d2b01 100644
+--- a/src/sage/combinat/symmetric_group_algebra.py
++++ b/src/sage/combinat/symmetric_group_algebra.py
+@@ -101,7 +101,7 @@ def SymmetricGroupAlgebra(R, W, category=None):
+         sage: SGA.group()
+         Weyl Group of type ['A', 3] (as a matrix group acting on the ambient 
space)
+         sage: SGA.an_element()
+-        s1*s2*s3 + 3*s3*s2 + 2*s3 + 1
++        s1*s2*s3 + 3*s2*s3*s1*s2 + 2*s3*s1 + 1
+ 
+     The preferred way to construct the symmetric group algebra is to
+     go through the usual ``algebra`` method::
+diff --git a/src/sage/groups/abelian_gps/abelian_group_gap.py 
b/src/sage/groups/abelian_gps/abelian_group_gap.py
+index a4b047113c..86090b4353 100644
+--- a/src/sage/groups/abelian_gps/abelian_group_gap.py
++++ b/src/sage/groups/abelian_gps/abelian_group_gap.py
+@@ -338,7 +338,7 @@ class AbelianGroup_gap(UniqueRepresentation, 
GroupMixinLibGAP, ParentLibGAP, Abe
+         if isinstance(x, AbelianGroupElement_gap):
+             try:
+                 if x in self._cover:
+-                    x = self.gap().NaturalHomomorphism().Image(x.gap())
++                    x = 
self._cover.gap().NaturalHomomorphismByNormalSubgroup(self._relations).Image(x.gap())
+                 else:
+                     x = x.gap()
+             except AttributeError:
+@@ -1043,7 +1043,7 @@ class AbelianGroupQuotient_gap(AbelianGroup_gap):
+             From: Abelian group with gap, generator orders (4,)
+             To:   Quotient abelian group with generator orders (2,)
+         """
+-        phi = self.gap().NaturalHomomorphism()
++        phi = 
self._cover.gap().NaturalHomomorphismByNormalSubgroup(self._relations)
+         Hom = self._cover.Hom(self)
+         return Hom(phi)
+ 
+diff --git a/src/sage/groups/finitely_presented.py 
b/src/sage/groups/finitely_presented.py
+index d953022d3d..ad339b8965 100644
+--- a/src/sage/groups/finitely_presented.py
++++ b/src/sage/groups/finitely_presented.py
+@@ -596,9 +596,9 @@ class RewritingSystem():
+             sage: k = G.rewriting_system()
+             sage: k.gap()
+             Knuth Bendix Rewriting System for Monoid( [ a, A, b, B ] ) with 
rules
+-            [ [ a^2, <identity ...> ], [ a*A, <identity ...> ],
+-              [ A*a, <identity ...> ], [ b^2, <identity ...> ],
+-              [ b*B, <identity ...> ], [ B*b, <identity ...> ] ]
++            [ [ a*A, <identity ...> ], [ A*a, <identity ...> ],
++              [ b*B, <identity ...> ], [ B*b, <identity ...> ],
++              [ a^2, <identity ...> ], [ b^2, <identity ...> ] ]
+         """
+         return self._gap
+ 
+diff --git a/src/sage/groups/fqf_orthogonal.py 
b/src/sage/groups/fqf_orthogonal.py
+index 75de408912..dd7d84d960 100644
+--- a/src/sage/groups/fqf_orthogonal.py
++++ b/src/sage/groups/fqf_orthogonal.py
+@@ -143,7 +143,7 @@ class 
FqfOrthogonalGroup(AbelianGroupAutomorphismGroup_subgroup):
+         [2/3   0   0]
+         [  0 2/3   0]
+         [  0   0 4/3]
+-        generated by 2 elements
++        generated by 3 elements
+         sage: q = matrix.diagonal(QQ, [3/2, 1/4, 1/4])
+         sage: T = TorsionQuadraticForm(q)
+         sage: T.orthogonal_group().order()
+diff --git a/src/sage/groups/libgap_wrapper.pyx 
b/src/sage/groups/libgap_wrapper.pyx
+index a76afc2ac9..9340c0d6c6 100644
+--- a/src/sage/groups/libgap_wrapper.pyx
++++ b/src/sage/groups/libgap_wrapper.pyx
+@@ -25,7 +25,7 @@ Note how we call the constructor of both superclasses to 
initialize
+ its output via LibGAP::
+ 
+     sage: FooGroup()
+-    <pc group of size 3 with 1 generators>
++    <pc group of size 3 with 1 generator>
+     sage: type(FooGroup().gap())
+     <class 'sage.libs.gap.element.GapElement'>
+ 
+@@ -106,7 +106,7 @@ class ParentLibGAP(SageObject):
+         ....:         ParentLibGAP.__init__(self, lg)
+         ....:         Group.__init__(self)
+         sage: FooGroup()
+-        <pc group of size 3 with 1 generators>
++        <pc group of size 3 with 1 generator>
+     """
+ 
+     def __init__(self, libgap_parent, ambient=None):
+@@ -461,7 +461,7 @@ cdef class ElementLibGAP(MultiplicativeGroupElement):
+         ....:         ParentLibGAP.__init__(self, lg)
+         ....:         Group.__init__(self)
+         sage: FooGroup()
+-        <pc group of size 3 with 1 generators>
++        <pc group of size 3 with 1 generator>
+         sage: FooGroup().gens()
+         (f1,)
+     """
+diff --git a/src/sage/groups/matrix_gps/finitely_generated.py 
b/src/sage/groups/matrix_gps/finitely_generated.py
+index a6d3dc0251..63956ad5f1 100644
+--- a/src/sage/groups/matrix_gps/finitely_generated.py
++++ b/src/sage/groups/matrix_gps/finitely_generated.py
+@@ -563,9 +563,6 @@ class FinitelyGeneratedMatrixGroup_gap(MatrixGroup_gap):
+             21499084800
+             sage: P = G.as_permutation_group()
+             sage: Psmaller = G.as_permutation_group(algorithm="smaller", 
seed=6)
+-            sage: P == Psmaller  # see the note below
+-            True
+-            sage: Psmaller = G.as_permutation_group(algorithm="smaller")
+             sage: P == Psmaller
+             False
+             sage: P.cardinality()
+diff --git a/src/sage/groups/perm_gps/partn_ref2/refinement_generic.pyx 
b/src/sage/groups/perm_gps/partn_ref2/refinement_generic.pyx
+index f2ccca042a..47d6862333 100644
+--- a/src/sage/groups/perm_gps/partn_ref2/refinement_generic.pyx
++++ b/src/sage/groups/perm_gps/partn_ref2/refinement_generic.pyx
+@@ -427,7 +427,7 @@ cdef class LabelledBranching:
+             sage: from sage.groups.perm_gps.partn_ref2.refinement_generic 
import LabelledBranching
+             sage: L = LabelledBranching(3)
+             sage: L.small_generating_set()
+-            []
++            [()]
+             sage: L.add_gen(libgap.eval('(1,2,3)'))
+             sage: L.small_generating_set()
+             [(1,2,3)]
+diff --git a/src/sage/groups/perm_gps/permgroup.py 
b/src/sage/groups/perm_gps/permgroup.py
+index 7723ec2526..aa60cc6874 100644
+--- a/src/sage/groups/perm_gps/permgroup.py
++++ b/src/sage/groups/perm_gps/permgroup.py
+@@ -926,7 +926,7 @@ class PermutationGroup_generic(FiniteGroup):
+            sage: f = PG._coerce_map_from_(MG)
+            sage: mg = MG.an_element()
+            sage: p = f(mg); p
+-           
(2,33,32,23,31,55)(3,49,38,44,40,28)(4,17,59,62,58,46)(5,21,47,20,43,8)(6,53,50)(7,37,12,57,14,29)(9,41,56,34,64,10)(11,25,19)(13,61,26,51,22,15)(16,45,36)(18,27,35,48,52,54)(24,63,42)(30,39,60)
++           
(1,2,6,19,35,33)(3,9,26,14,31,23)(4,13,5)(7,22,17)(8,24,12)(10,16,32,27,20,28)(11,30,18)(15,25,36,34,29,21)
+            sage: PG(p._gap_()) == p
+            True
+ 
+@@ -972,12 +972,12 @@ class PermutationGroup_generic(FiniteGroup):
+             sage: P = G.as_permutation_group(algorithm='smaller', seed=5)
+             sage: P1 = G.as_permutation_group()
+             sage: P == P1
+-            False
++            True
+             sage: g1, g2, g3 = G.gens()
+             sage: P(g1*g2)
+-            (1,3,7,12)(2,4,8,10)(5,11)(6,9)
++            (1,4,13,11)(2,5,14,18)(3,15,8,16)(6,7)(9,20,19,12)(10,17)
+             sage: P1(g1*g2)
+-            
(2,29,25,68)(3,57,13,54)(4,11,72,37)(5,39,60,23)(6,64,75,63)(7,21,50,73)(8,46,38,32)(9,74,35,18)(10,44,49,48)(12,16,34,71)(14,79,27,40)(15,26)(17,62,59,76)(19,78,70,65)(20,22,58,51)(24,33,36,43)(28,81,80,52)(30,53,56,69)(31,61)(41,42,67,55)(45,77)(47,66)
++            (1,4,13,11)(2,5,14,18)(3,15,8,16)(6,7)(9,20,19,12)(10,17)
+ 
+         Another check for :trac:`5583`::
+ 
+@@ -1302,7 +1302,7 @@ class PermutationGroup_generic(FiniteGroup):
+             sage: G.gens_small() # random
+             [('b','c'), ('a','c','b')] ## (on 64-bit Linux)
+             [('a','b'), ('a','c','b')] ## (on Solaris)
+-            sage: len(G.gens_small()) == 2
++            sage: len(G.gens_small()) == 2 # random
+             True
+         """
+         gens = self._libgap_().SmallGeneratingSet()
+@@ -4370,17 +4370,23 @@ class PermutationGroup_generic(FiniteGroup):
+ 
+         ::
+ 
+-            sage: G = PermutationGroup([[(1,2,3,4,5)],[(1,2)]]) #S_5 on [1..5]
+-            sage: G.is_transitive([1,4,5])
++            sage: G = PermutationGroup([[(1,2,3,4,5)],[(1,2)],[(6,7)]])
++            sage: G.is_transitive([1,2,3,4,5])
+             True
+-            sage: G.is_transitive([2..6])
++            sage: G.is_transitive([1..7])
+             False
+             sage: G.is_transitive(G.non_fixed_points())
+-            True
++            False
+             sage: H = PermutationGroup([[(1,2,3)],[(4,5,6)]])
+             sage: H.is_transitive(H.non_fixed_points())
+             False
+ 
++        If `G` does not act on the domain, it always returns ``False``::
++
++            sage: G = PermutationGroup([[(1,2,3,4,5)],[(1,2)]]) #S_5 on [1..5]
++            sage: G.is_transitive([1,4,5])
++            False
++
+         Note that this differs from the definition in GAP, where
+         ``IsTransitive`` returns whether the group is transitive on the
+         set of points moved by the group.
+@@ -4436,12 +4442,16 @@ class PermutationGroup_generic(FiniteGroup):
+             sage: G = PermutationGroup([[(1,2,3,4)],[(2,4)]])
+             sage: G.is_primitive([1..4])
+             False
+-            sage: G.is_primitive([1,2,3])
+-            True
+             sage: G = PermutationGroup([[(3,4,5,6)],[(3,4)]]) #S_4 on [3..6]
+             sage: G.is_primitive(G.non_fixed_points())
+             True
+ 
++        If `G` does not act on the domain, it always returns ``False``::
++
++            sage: G = PermutationGroup([[(1,2,3,4)],[(2,4)]])
++            sage: G.is_primitive([1,2,3])
++            False
++
+         """
+         #If the domain is not a subset of self.domain(), then the
+         #action isn't primitive.
+diff --git a/src/sage/interfaces/gap.py b/src/sage/interfaces/gap.py
+index ba175d4e34..d866cd3d60 100644
+--- a/src/sage/interfaces/gap.py
++++ b/src/sage/interfaces/gap.py
+@@ -1512,6 +1512,8 @@ def gap_reset_workspace(max_workspace_size=None, 
verbose=False):
+     """
+     # Create new workspace with filename WORKSPACE
+     g = Gap(use_workspace_cache=False, max_workspace_size=None)
++    g.eval('ColorPrompt(false)')
++    g.eval('SetUserPreference("UseColorPrompt", false)')
+     g.eval('SetUserPreference("HistoryMaxLines", 30)')
+     from sage.tests.gap_packages import all_installed_packages
+     for pkg in all_installed_packages(gap=g):
+diff --git a/src/sage/libs/gap/element.pyx b/src/sage/libs/gap/element.pyx
+index be43c4c3ee..e2681165a2 100644
+--- a/src/sage/libs/gap/element.pyx
++++ b/src/sage/libs/gap/element.pyx
+@@ -130,6 +130,7 @@ cdef char *capture_stdout(Obj func, Obj obj):
+     """
+     cdef Obj s, stream, output_text_string
+     cdef UInt res
++    cdef TypOutputFile output
+     # The only way to get a string representation of an object that is truly
+     # consistent with how it would be represented at the GAP REPL is to call
+     # ViewObj on it.  Unfortunately, ViewObj *prints* to the output stream,
+@@ -145,12 +146,12 @@ cdef char *capture_stdout(Obj func, Obj obj):
+         output_text_string = GAP_ValueGlobalVariable("OutputTextString")
+         stream = CALL_2ARGS(output_text_string, s, GAP_True)
+ 
+-        if not OpenOutputStream(stream):
++        if not OpenOutputStream(&output, stream):
+             raise GAPError("failed to open output capture stream for "
+                            "representing GAP object")
+ 
+         CALL_1ARGS(func, obj)
+-        CloseOutput()
++        CloseOutput(&output)
+         return CSTR_STRING(s)
+     finally:
+         GAP_Leave()
+diff --git a/src/sage/libs/gap/gap_includes.pxd 
b/src/sage/libs/gap/gap_includes.pxd
+index 5a9ab486f7..34035fe4e6 100644
+--- a/src/sage/libs/gap/gap_includes.pxd
++++ b/src/sage/libs/gap/gap_includes.pxd
+@@ -76,8 +76,10 @@ cdef extern from "gap/intobj.h" nogil:
+ 
+ 
+ cdef extern from "gap/io.h" nogil:
+-    UInt OpenOutputStream(Obj stream)
+-    UInt CloseOutput()
++    ctypedef struct TypOutputFile:
++        pass
++    UInt OpenOutputStream(TypOutputFile* output, Obj stream)
++    UInt CloseOutput(TypOutputFile* output)
+ 
+ 
+ cdef extern from "gap/libgap-api.h" nogil:
+diff --git a/src/sage/libs/gap/libgap.pyx b/src/sage/libs/gap/libgap.pyx
+index b1a64e5793..6a36613aa8 100644
+--- a/src/sage/libs/gap/libgap.pyx
++++ b/src/sage/libs/gap/libgap.pyx
+@@ -695,7 +695,7 @@ class Gap(Parent):
+             sage: libgap.List
+             <Gap function "List">
+             sage: libgap.GlobalRandomSource
+-            <RandomSource in IsGlobalRandomSource>
++            <RandomSource in IsGAPRandomSource>
+         """
+         if name in dir(self.__class__):
+             return getattr(self.__class__, name)
+diff --git a/src/sage/libs/gap/util.pyx b/src/sage/libs/gap/util.pyx
+index 344ab88c42..635098767d 100644
+--- a/src/sage/libs/gap/util.pyx
++++ b/src/sage/libs/gap/util.pyx
+@@ -362,15 +362,9 @@ cdef Obj gap_eval(str gap_string) except? NULL:
+         GAPError: Error, Variable: 'Complex' must have a value
+         Syntax error: ; expected in stream:1
+         Complex Field with 53 bits of precision;;
+-         ^^^^^^^^^^^^
++                ^^^^^
+         Error, Variable: 'with' must have a value
+-        Syntax error: ; expected in stream:1
+-        Complex Field with 53 bits of precision;;
+-         ^^^^^^^^^^^^^^^^^^^^
+         Error, Variable: 'bits' must have a value
+-        Syntax error: ; expected in stream:1
+-        Complex Field with 53 bits of precision;;
+-         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+         Error, Variable: 'precision' must have a value
+ 
+     Test that on a subsequent attempt we get the same message (no garbage was
+diff --git a/src/sage/tests/gap_packages.py b/src/sage/tests/gap_packages.py
+index 2e4518ca22..c302b169b8 100644
+--- a/src/sage/tests/gap_packages.py
++++ b/src/sage/tests/gap_packages.py
+@@ -103,7 +103,7 @@ def all_installed_packages(ignore_dot_gap=False, gap=None):
+ 
+         sage: from sage.tests.gap_packages import all_installed_packages
+         sage: all_installed_packages()
+-        (...'GAPDoc'...)
++        (...'gapdoc'...)
+         sage: all_installed_packages(ignore_dot_gap=True) == 
all_installed_packages(gap=gap, ignore_dot_gap=True)
+         True
+     """

Copied: sagemath-doc/repos/community-testing-any/sagemath-sphinx-6.patch (from 
rev 1400022, sagemath-doc/trunk/sagemath-sphinx-6.patch)
===================================================================
--- community-testing-any/sagemath-sphinx-6.patch                               
(rev 0)
+++ community-testing-any/sagemath-sphinx-6.patch       2023-02-12 10:50:09 UTC 
(rev 1400023)
@@ -0,0 +1,30 @@
+diff --git a/src/sage_docbuild/ext/sage_autodoc.py 
b/src/sage_docbuild/ext/sage_autodoc.py
+index b14c0e04fe..e1af672894 100644
+--- a/src/sage_docbuild/ext/sage_autodoc.py
++++ b/src/sage_docbuild/ext/sage_autodoc.py
+@@ -44,7 +44,6 @@ from docutils.statemachine import StringList
+ import sphinx
+ from sphinx.application import Sphinx
+ from sphinx.config import ENUM, Config
+-from sphinx.deprecation import RemovedInSphinx60Warning
+ from sphinx.environment import BuildEnvironment
+ from sphinx.ext.autodoc.importer import (get_class_members, 
get_object_members, import_module,
+                                          import_object)
+@@ -652,8 +651,6 @@ class Documenter:
+         If *want_all* is True, return all members.  Else, only return those
+         members given by *self.options.members* (which may also be None).
+         """
+-        warnings.warn('The implementation of Documenter.get_object_members() 
will be '
+-                      'removed from Sphinx-6.0.', RemovedInSphinx60Warning)
+         members = get_object_members(self.object, self.objpath, 
self.get_attr, self.analyzer)
+         if not want_all:
+             if not self.options.members:
+@@ -2496,8 +2493,6 @@ class SlotsMixin(DataDocumenterMixinBase):
+ 
+     @property
+     def _datadescriptor(self) -> bool:
+-        warnings.warn('AttributeDocumenter._datadescriptor() is deprecated.',
+-                      RemovedInSphinx60Warning)
+         if self.object is SLOTSATTR:
+             return True
+         else:

Reply via email to