From 9270281445e213f3759e0b697c15f842f6ac0866 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Tue, 14 Feb 2023 13:27:28 -0800 Subject: [PATCH 01/31] build/pkgs/gcc/spkg-configure.m4: Accept gcc 13 --- build/pkgs/gcc/spkg-configure.m4 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/pkgs/gcc/spkg-configure.m4 b/build/pkgs/gcc/spkg-configure.m4 index fe4d220a189..d0dee7dc130 100644 --- a/build/pkgs/gcc/spkg-configure.m4 +++ b/build/pkgs/gcc/spkg-configure.m4 @@ -165,8 +165,8 @@ SAGE_SPKG_CONFIGURE_BASE([gcc], [ # Install our own GCC if the system-provided one is older than gcc 8 SAGE_SHOULD_INSTALL_GCC([you have $CXX version $GXX_VERSION, which is quite old]) ], - [1[[3-9]].*], [ - # Install our own GCC if the system-provided one is newer than 12.x. + [1[[4-9]].*], [ + # Install our own GCC if the system-provided one is newer than 13.x. # See https://github.com/sagemath/sage/issues/29456 SAGE_SHOULD_INSTALL_GCC([$CXX is g++ version $GXX_VERSION, which is too recent for this version of Sage]) ]) From f2c1f831259e042495fbc1c2c05d64a6b04efe5e Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 1 Apr 2023 14:54:02 -0700 Subject: [PATCH 02/31] build/pkgs/zeromq/patches: Add patch for GCC 13 --- ...5d88392baffa6c2c5e0737d9de19d6686f0d.patch | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 build/pkgs/zeromq/patches/438d5d88392baffa6c2c5e0737d9de19d6686f0d.patch diff --git a/build/pkgs/zeromq/patches/438d5d88392baffa6c2c5e0737d9de19d6686f0d.patch b/build/pkgs/zeromq/patches/438d5d88392baffa6c2c5e0737d9de19d6686f0d.patch new file mode 100644 index 00000000000..75bfbd8744b --- /dev/null +++ b/build/pkgs/zeromq/patches/438d5d88392baffa6c2c5e0737d9de19d6686f0d.patch @@ -0,0 +1,58 @@ +From 438d5d88392baffa6c2c5e0737d9de19d6686f0d Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Tue, 20 Dec 2022 21:45:16 +0000 +Subject: [PATCH] src/secure_allocator.hpp: define missing 'rebind' type + +`gcc-13` added an assert to standard headers to make sure custom +allocators have intended implementation of rebind type instead +of inherited rebind. gcc change: + https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=64c986b49558a7 + +Without the fix build fails on this week's `gcc-13` as: + + [ 92%] Building CXX object tests/CMakeFiles/test_security_curve.dir/test_security_curve.cpp.o + In file included from /<>/gcc-13.0.0/include/c++/13.0.0/ext/alloc_traits.h:34, + from /<>/gcc-13.0.0/include/c++/13.0.0/bits/stl_uninitialized.h:64, + from /<>/gcc-13.0.0/include/c++/13.0.0/memory:69, + from tests/../src/secure_allocator.hpp:42, + from tests/../src/curve_client_tools.hpp:49, + from tests/test_security_curve.cpp:53: + /<>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h: In instantiation of 'struct std::__allocator_traits_base::__rebind, unsigned char, void>': + /<>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h:94:11: required by substitution of 'template using std::__alloc_rebind = typename std::__allocator_traits_base::__rebind<_Alloc, _Up>::type [with _Alloc = zmq::secure_allocator_t; _Up = unsigned char]' + /<>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h:228:8: required by substitution of 'template template using std::allocator_traits< >::rebind_alloc = std::__alloc_rebind<_Alloc, _Tp> [with _Tp = unsigned char; _Alloc = zmq::secure_allocator_t]' + /<>/gcc-13.0.0/include/c++/13.0.0/ext/alloc_traits.h:126:65: required from 'struct __gnu_cxx::__alloc_traits, unsigned char>::rebind' + /<>/gcc-13.0.0/include/c++/13.0.0/bits/stl_vector.h:88:21: required from 'struct std::_Vector_base >' + /<>/gcc-13.0.0/include/c++/13.0.0/bits/stl_vector.h:423:11: required from 'class std::vector >' + tests/../src/curve_client_tools.hpp:64:76: required from here + /<>/gcc-13.0.0/include/c++/13.0.0/bits/alloc_traits.h:70:31: error: static assertion failed: allocator_traits::rebind_alloc must be A + 70 | _Tp>::value, + | ^~~~~ + +The change adds trivial `rebind` definition with expected return type +and satisfies conversion requirements. +--- + src/secure_allocator.hpp | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/src/secure_allocator.hpp b/src/secure_allocator.hpp +index e0871dcc99..5e97368911 100644 +--- a/src/secure_allocator.hpp ++++ b/src/secure_allocator.hpp +@@ -99,6 +99,17 @@ bool operator!= (const secure_allocator_t &, const secure_allocator_t &) + #else + template struct secure_allocator_t : std::allocator + { ++ secure_allocator_t () ZMQ_DEFAULT; ++ ++ template ++ secure_allocator_t (const secure_allocator_t &) ZMQ_NOEXCEPT ++ { ++ } ++ ++ template struct rebind ++ { ++ typedef secure_allocator_t other; ++ }; + }; + #endif + } From 2e57b11f3c97756c25e783d662c5b7e7e4ea9e59 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 1 Apr 2023 15:15:00 -0700 Subject: [PATCH 03/31] build/pkgs/givaro: Add https://patch-diff.githubusercontent.com/raw/linbox-team/givaro/pull/218.patch --- build/pkgs/givaro/patches/218.patch | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 build/pkgs/givaro/patches/218.patch diff --git a/build/pkgs/givaro/patches/218.patch b/build/pkgs/givaro/patches/218.patch new file mode 100644 index 00000000000..15178289ca8 --- /dev/null +++ b/build/pkgs/givaro/patches/218.patch @@ -0,0 +1,23 @@ +From c7744bb133496cd7ac04688f345646d505e1bf52 Mon Sep 17 00:00:00 2001 +From: "Benjamin A. Beasley" +Date: Thu, 19 Jan 2023 09:12:22 -0500 +Subject: [PATCH] Add missing #include for (u)int64_t + +Fixes failure to compile on GCC 13. +--- + src/library/poly1/givdegree.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/library/poly1/givdegree.h b/src/library/poly1/givdegree.h +index 3753a425..eb85a0dd 100644 +--- a/src/library/poly1/givdegree.h ++++ b/src/library/poly1/givdegree.h +@@ -19,6 +19,8 @@ + #ifndef __GIVARO_poly1degree_H + #define __GIVARO_poly1degree_H + ++#include ++ + #include + + namespace Givaro { From 24721bdacf5542be5c3b5c7dbd316e3351ca902e Mon Sep 17 00:00:00 2001 From: John Cremona Date: Mon, 24 Apr 2023 11:06:06 +0100 Subject: [PATCH 04/31] update eclib to version 20230424 --- build/pkgs/eclib/checksums.ini | 6 +++--- build/pkgs/eclib/package-version.txt | 2 +- build/pkgs/eclib/spkg-configure.m4 | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/build/pkgs/eclib/checksums.ini b/build/pkgs/eclib/checksums.ini index ddf84c8173f..73b04816b7b 100644 --- a/build/pkgs/eclib/checksums.ini +++ b/build/pkgs/eclib/checksums.ini @@ -1,5 +1,5 @@ tarball=eclib-VERSION.tar.bz2 -sha1=7c8b64bd9a1b8f4f489690a53c1f329afc953f2c -md5=03a87ae2b490f11b81ec6b305cbc8087 -cksum=111064162 +sha1=bd49acf96c4e7246c8ca3e5d188ae1b03a3aeff3 +md5=42721f2f1343c49dc774763a57a85ca6 +cksum=3624641360 upstream_url=https://github.com/JohnCremona/eclib/releases/download/VERSION/eclib-VERSION.tar.bz2 diff --git a/build/pkgs/eclib/package-version.txt b/build/pkgs/eclib/package-version.txt index 6f50c16be9c..b5f339e560b 100644 --- a/build/pkgs/eclib/package-version.txt +++ b/build/pkgs/eclib/package-version.txt @@ -1 +1 @@ -20221012 +20230424 diff --git a/build/pkgs/eclib/spkg-configure.m4 b/build/pkgs/eclib/spkg-configure.m4 index 2d8d19a7e6e..c98781201cc 100644 --- a/build/pkgs/eclib/spkg-configure.m4 +++ b/build/pkgs/eclib/spkg-configure.m4 @@ -1,7 +1,7 @@ SAGE_SPKG_CONFIGURE([eclib], [ SAGE_SPKG_DEPCHECK([ntl pari flint], [ dnl Trac #31443, #34029: use existing eclib only if the version reported by pkg-config is correct - m4_pushdef([SAGE_ECLIB_VER],["20221012"]) + m4_pushdef([SAGE_ECLIB_VER],["20230424"]) PKG_CHECK_MODULES([ECLIB], [eclib = SAGE_ECLIB_VER], [ AC_CACHE_CHECK([for mwrank version == SAGE_ECLIB_VER], [ac_cv_path_MWRANK], [ AC_PATH_PROGS_FEATURE_CHECK([MWRANK], [mwrank], [ From 5afbb04ae5a586def16d45d014f1a9a283ae4601 Mon Sep 17 00:00:00 2001 From: John Cremona Date: Mon, 24 Apr 2023 11:15:05 +0100 Subject: [PATCH 05/31] fix 2 lint errors --- src/sage/rings/real_double.pyx | 2 +- src/sage/rings/real_mpfr.pyx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sage/rings/real_double.pyx b/src/sage/rings/real_double.pyx index 72bb242078d..21a2f293ee9 100644 --- a/src/sage/rings/real_double.pyx +++ b/src/sage/rings/real_double.pyx @@ -1522,7 +1522,7 @@ cdef class RealDoubleElement(FieldElement): def round(self): """ Round ``self`` to the nearest integer. - + This uses the convention of rounding half to even (i.e., if the fractional part of ``self`` is `0.5`, then it is rounded to the nearest even integer). diff --git a/src/sage/rings/real_mpfr.pyx b/src/sage/rings/real_mpfr.pyx index 0dd8adb3040..c90469b6549 100644 --- a/src/sage/rings/real_mpfr.pyx +++ b/src/sage/rings/real_mpfr.pyx @@ -2992,7 +2992,7 @@ cdef class RealNumber(sage.structure.element.RingElement): """ Round ``self`` to the nearest representable integer, rounding halfway cases away from zero. - + .. NOTE:: The rounding mode of the parent field does not affect the result. From fcf0b9a377fdadea88880262986ba1bddaeb8ffe Mon Sep 17 00:00:00 2001 From: John Cremona Date: Mon, 24 Apr 2023 12:15:30 +0100 Subject: [PATCH 06/31] fix checksums.ini to have the right upstream_url --- build/pkgs/eclib/checksums.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/pkgs/eclib/checksums.ini b/build/pkgs/eclib/checksums.ini index 73b04816b7b..266e6bfac1c 100644 --- a/build/pkgs/eclib/checksums.ini +++ b/build/pkgs/eclib/checksums.ini @@ -2,4 +2,4 @@ tarball=eclib-VERSION.tar.bz2 sha1=bd49acf96c4e7246c8ca3e5d188ae1b03a3aeff3 md5=42721f2f1343c49dc774763a57a85ca6 cksum=3624641360 -upstream_url=https://github.com/JohnCremona/eclib/releases/download/VERSION/eclib-VERSION.tar.bz2 +upstream_url=https://github.com/JohnCremona/eclib/releases/download/vVERSION/eclib-VERSION.tar.bz2 From f209f0fb8e6c5650e6f321d65e37ab34362fb82a Mon Sep 17 00:00:00 2001 From: Dima Pasechnik Date: Mon, 24 Apr 2023 16:44:28 +0100 Subject: [PATCH 07/31] bump max gfortran version --- build/pkgs/gfortran/spkg-configure.m4 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/pkgs/gfortran/spkg-configure.m4 b/build/pkgs/gfortran/spkg-configure.m4 index 1a2d6ba767c..d2841f740aa 100644 --- a/build/pkgs/gfortran/spkg-configure.m4 +++ b/build/pkgs/gfortran/spkg-configure.m4 @@ -86,8 +86,8 @@ SAGE_SPKG_CONFIGURE([gfortran], [ # Install our own gfortran if the system-provided one is older than gcc-4.8. SAGE_SHOULD_INSTALL_GFORTRAN([$FC is version $GFORTRAN_VERSION, which is quite old]) ], - [1[[3-9]].*], [ - # Install our own gfortran if the system-provided one is newer than 12.x. + [1[[4-9]].*], [ + # Install our own gfortran if the system-provided one is newer than 13.x. # See https://github.com/sagemath/sage/issues/29456, https://github.com/sagemath/sage/issues/31838 SAGE_MUST_INSTALL_GFORTRAN([$FC is version $GFORTRAN_VERSION, which is too recent for this version of Sage]) ]) From dcd1f18a61b79ad715668c40299a67753f7ba350 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 24 Apr 2023 11:35:36 -0700 Subject: [PATCH 08/31] sage.quadratic_forms: Fix use of staticmethod for Python < 3.10 --- src/sage/quadratic_forms/genera/genus.py | 3 ++- src/sage/quadratic_forms/quadratic_form.py | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/sage/quadratic_forms/genera/genus.py b/src/sage/quadratic_forms/genera/genus.py index f80c2ae7d40..e15a95e9dff 100644 --- a/src/sage/quadratic_forms/genera/genus.py +++ b/src/sage/quadratic_forms/genera/genus.py @@ -121,7 +121,8 @@ def genera(sig_pair, determinant, max_scale=None, even=False): return genera -genera = staticmethod(genera) +# #35557: In Python < 3.10, a staticmethod cannot be called directly +_genera_staticmethod = staticmethod(genera) def _local_genera(p, rank, det_val, max_scale, even): diff --git a/src/sage/quadratic_forms/quadratic_form.py b/src/sage/quadratic_forms/quadratic_form.py index 8d5bd96bc32..e2691795ba4 100644 --- a/src/sage/quadratic_forms/quadratic_form.py +++ b/src/sage/quadratic_forms/quadratic_form.py @@ -502,9 +502,8 @@ class QuadraticForm(SageObject): ]) # Genus - lazy_import("sage.quadratic_forms.genera.genus", [ - "genera" - ]) + lazy_import("sage.quadratic_forms.genera.genus", + "_genera_staticmethod", as_="genera") def __init__(self, R, n=None, entries=None, unsafe_initialization=False, number_of_automorphisms=None, determinant=None): """ From 5bd81deae142cca665e98720ee80f6f94c07987d Mon Sep 17 00:00:00 2001 From: Release Manager Date: Fri, 28 Apr 2023 23:11:22 +0200 Subject: [PATCH 09/31] Updated SageMath version to 10.0.rc1 --- .zenodo.json | 8 ++++---- VERSION.txt | 2 +- build/pkgs/configure/checksums.ini | 6 +++--- build/pkgs/configure/package-version.txt | 2 +- build/pkgs/sage_conf/install-requires.txt | 2 +- build/pkgs/sage_docbuild/install-requires.txt | 2 +- build/pkgs/sage_setup/install-requires.txt | 2 +- build/pkgs/sage_sws2rst/install-requires.txt | 2 +- build/pkgs/sagelib/install-requires.txt | 2 +- build/pkgs/sagemath_categories/install-requires.txt | 2 +- build/pkgs/sagemath_environment/install-requires.txt | 2 +- build/pkgs/sagemath_objects/install-requires.txt | 2 +- build/pkgs/sagemath_repl/install-requires.txt | 2 +- pkgs/sage-conf/VERSION.txt | 2 +- pkgs/sage-conf_pypi/VERSION.txt | 2 +- pkgs/sage-docbuild/VERSION.txt | 2 +- pkgs/sage-setup/VERSION.txt | 2 +- pkgs/sage-sws2rst/VERSION.txt | 2 +- pkgs/sagemath-categories/VERSION.txt | 2 +- pkgs/sagemath-environment/VERSION.txt | 2 +- pkgs/sagemath-objects/VERSION.txt | 2 +- pkgs/sagemath-repl/VERSION.txt | 2 +- src/VERSION.txt | 2 +- src/bin/sage-version.sh | 6 +++--- src/sage/version.py | 6 +++--- 25 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index a02e1127367..f5d5284a4be 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -1,10 +1,10 @@ { "description": "Mirror of the Sage https://sagemath.org/ source tree", "license": "other-open", - "title": "sagemath/sage: 10.0.rc0", - "version": "10.0.rc0", + "title": "sagemath/sage: 10.0.rc1", + "version": "10.0.rc1", "upload_type": "software", - "publication_date": "2023-04-23", + "publication_date": "2023-04-28", "creators": [ { "affiliation": "SageMath.org", @@ -15,7 +15,7 @@ "related_identifiers": [ { "scheme": "url", - "identifier": "https://github.com/sagemath/sage/tree/10.0.rc0", + "identifier": "https://github.com/sagemath/sage/tree/10.0.rc1", "relation": "isSupplementTo" }, { diff --git a/VERSION.txt b/VERSION.txt index 80302dc05a6..e3959484b54 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -SageMath version 10.0.rc0, Release Date: 2023-04-23 +SageMath version 10.0.rc1, Release Date: 2023-04-28 diff --git a/build/pkgs/configure/checksums.ini b/build/pkgs/configure/checksums.ini index c8055c3be95..4ca5fcaafab 100644 --- a/build/pkgs/configure/checksums.ini +++ b/build/pkgs/configure/checksums.ini @@ -1,4 +1,4 @@ tarball=configure-VERSION.tar.gz -sha1=f06ad875b0bf9ca2c22fd5bd3195ad0a0c62d064 -md5=6bf8b6f79f7341dc33f05e17a625d262 -cksum=351732165 +sha1=20689ddae5ff8ac5bd6bc78c153683542f7b182a +md5=921055919764dfaf581286c55acb1cba +cksum=1549141056 diff --git a/build/pkgs/configure/package-version.txt b/build/pkgs/configure/package-version.txt index 253f2b7feff..48df35dbee6 100644 --- a/build/pkgs/configure/package-version.txt +++ b/build/pkgs/configure/package-version.txt @@ -1 +1 @@ -4aadac6fe81c8d4bb8056f0ca70c30195b6fdc56 +9185befce0cf5e4c4cb83cce2034a55be95e03a7 diff --git a/build/pkgs/sage_conf/install-requires.txt b/build/pkgs/sage_conf/install-requires.txt index 12c50205204..8696e1ceda4 100644 --- a/build/pkgs/sage_conf/install-requires.txt +++ b/build/pkgs/sage_conf/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-conf ~= 10.0rc0 +sage-conf ~= 10.0rc1 diff --git a/build/pkgs/sage_docbuild/install-requires.txt b/build/pkgs/sage_docbuild/install-requires.txt index 9427ffa651a..f3834f14c83 100644 --- a/build/pkgs/sage_docbuild/install-requires.txt +++ b/build/pkgs/sage_docbuild/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-docbuild ~= 10.0rc0 +sage-docbuild ~= 10.0rc1 diff --git a/build/pkgs/sage_setup/install-requires.txt b/build/pkgs/sage_setup/install-requires.txt index 76e91a53891..1d97d576960 100644 --- a/build/pkgs/sage_setup/install-requires.txt +++ b/build/pkgs/sage_setup/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-setup ~= 10.0rc0 +sage-setup ~= 10.0rc1 diff --git a/build/pkgs/sage_sws2rst/install-requires.txt b/build/pkgs/sage_sws2rst/install-requires.txt index 8a6ea6942ca..cc892e7f196 100644 --- a/build/pkgs/sage_sws2rst/install-requires.txt +++ b/build/pkgs/sage_sws2rst/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-sws2rst ~= 10.0rc0 +sage-sws2rst ~= 10.0rc1 diff --git a/build/pkgs/sagelib/install-requires.txt b/build/pkgs/sagelib/install-requires.txt index a46f2946a3f..059a16b5dcc 100644 --- a/build/pkgs/sagelib/install-requires.txt +++ b/build/pkgs/sagelib/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagelib ~= 10.0rc0 +sagelib ~= 10.0rc1 diff --git a/build/pkgs/sagemath_categories/install-requires.txt b/build/pkgs/sagemath_categories/install-requires.txt index a82cc377fb3..7f69ea30fa4 100644 --- a/build/pkgs/sagemath_categories/install-requires.txt +++ b/build/pkgs/sagemath_categories/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-categories ~= 10.0rc0 +sagemath-categories ~= 10.0rc1 diff --git a/build/pkgs/sagemath_environment/install-requires.txt b/build/pkgs/sagemath_environment/install-requires.txt index 82784f39b75..df7d40d5639 100644 --- a/build/pkgs/sagemath_environment/install-requires.txt +++ b/build/pkgs/sagemath_environment/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-environment ~= 10.0rc0 +sagemath-environment ~= 10.0rc1 diff --git a/build/pkgs/sagemath_objects/install-requires.txt b/build/pkgs/sagemath_objects/install-requires.txt index 4b9159f4f50..305005b202e 100644 --- a/build/pkgs/sagemath_objects/install-requires.txt +++ b/build/pkgs/sagemath_objects/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-objects ~= 10.0rc0 +sagemath-objects ~= 10.0rc1 diff --git a/build/pkgs/sagemath_repl/install-requires.txt b/build/pkgs/sagemath_repl/install-requires.txt index 598794015dd..e210d2877e4 100644 --- a/build/pkgs/sagemath_repl/install-requires.txt +++ b/build/pkgs/sagemath_repl/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-repl ~= 10.0rc0 +sagemath-repl ~= 10.0rc1 diff --git a/pkgs/sage-conf/VERSION.txt b/pkgs/sage-conf/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sage-conf/VERSION.txt +++ b/pkgs/sage-conf/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sage-conf_pypi/VERSION.txt b/pkgs/sage-conf_pypi/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sage-conf_pypi/VERSION.txt +++ b/pkgs/sage-conf_pypi/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sage-docbuild/VERSION.txt b/pkgs/sage-docbuild/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sage-docbuild/VERSION.txt +++ b/pkgs/sage-docbuild/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sage-setup/VERSION.txt b/pkgs/sage-setup/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sage-setup/VERSION.txt +++ b/pkgs/sage-setup/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sage-sws2rst/VERSION.txt b/pkgs/sage-sws2rst/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sage-sws2rst/VERSION.txt +++ b/pkgs/sage-sws2rst/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sagemath-categories/VERSION.txt b/pkgs/sagemath-categories/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sagemath-categories/VERSION.txt +++ b/pkgs/sagemath-categories/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sagemath-environment/VERSION.txt b/pkgs/sagemath-environment/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sagemath-environment/VERSION.txt +++ b/pkgs/sagemath-environment/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sagemath-objects/VERSION.txt b/pkgs/sagemath-objects/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sagemath-objects/VERSION.txt +++ b/pkgs/sagemath-objects/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/pkgs/sagemath-repl/VERSION.txt b/pkgs/sagemath-repl/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/pkgs/sagemath-repl/VERSION.txt +++ b/pkgs/sagemath-repl/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/src/VERSION.txt b/src/VERSION.txt index ac3700a9a2a..3d48fb33e14 100644 --- a/src/VERSION.txt +++ b/src/VERSION.txt @@ -1 +1 @@ -10.0.rc0 +10.0.rc1 diff --git a/src/bin/sage-version.sh b/src/bin/sage-version.sh index 657bc30d205..054896671ba 100644 --- a/src/bin/sage-version.sh +++ b/src/bin/sage-version.sh @@ -4,6 +4,6 @@ # which stops "setup.py develop" from rewriting it as a Python file. : # This file is auto-generated by the sage-update-version script, do not edit! -SAGE_VERSION='10.0.rc0' -SAGE_RELEASE_DATE='2023-04-23' -SAGE_VERSION_BANNER='SageMath version 10.0.rc0, Release Date: 2023-04-23' +SAGE_VERSION='10.0.rc1' +SAGE_RELEASE_DATE='2023-04-28' +SAGE_VERSION_BANNER='SageMath version 10.0.rc1, Release Date: 2023-04-28' diff --git a/src/sage/version.py b/src/sage/version.py index cb3cc3ab01d..4577b8f1426 100644 --- a/src/sage/version.py +++ b/src/sage/version.py @@ -1,5 +1,5 @@ # Sage version information for Python scripts # This file is auto-generated by the sage-update-version script, do not edit! -version = '10.0.rc0' -date = '2023-04-23' -banner = 'SageMath version 10.0.rc0, Release Date: 2023-04-23' +version = '10.0.rc1' +date = '2023-04-28' +banner = 'SageMath version 10.0.rc1, Release Date: 2023-04-28' From a1404d999c1103bf090f399e3a8ca45e8d0ed35d Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 29 Apr 2023 22:33:57 -0700 Subject: [PATCH 10/31] build/pkgs/openblas/spkg-configure.m4: Allow 0.3.23 and newer --- build/pkgs/openblas/spkg-configure.m4 | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/build/pkgs/openblas/spkg-configure.m4 b/build/pkgs/openblas/spkg-configure.m4 index 3743839a51a..e98e84f794f 100644 --- a/build/pkgs/openblas/spkg-configure.m4 +++ b/build/pkgs/openblas/spkg-configure.m4 @@ -10,7 +10,7 @@ SAGE_SPKG_CONFIGURE([openblas], [ dnl Reject openblas 0.3.22 - https://github.com/sagemath/sage/pull/35371 m4_pushdef([SAGE_OPENBLAS_LT_VERSION_MAJOR], [0]) m4_pushdef([SAGE_OPENBLAS_LT_VERSION_MINOR], [3]) - m4_pushdef([SAGE_OPENBLAS_LT_VERSION_MICRO], [22]) + m4_pushdef([SAGE_OPENBLAS_LT_VERSION_MICRO], [99]) m4_pushdef([SAGE_OPENBLAS_LT_VERSION], [SAGE_OPENBLAS_LT_VERSION_MAJOR.SAGE_OPENBLAS_LT_VERSION_MINOR.SAGE_OPENBLAS_LT_VERSION_MICRO]) PKG_CHECK_MODULES([OPENBLAS], [openblas >= ]SAGE_OPENBLAS_MIN_VERSION [openblas < ]SAGE_OPENBLAS_LT_VERSION, [ LIBS="$OPENBLAS_LIBS $LIBS" @@ -40,6 +40,21 @@ SAGE_SPKG_CONFIGURE([openblas], [ AC_MSG_WARN([Unable to locate the directory of openblas.pc. This should not happen!]) sage_spkg_install_openblas=yes ]) + AS_IF([test x$sage_spkg_install_openblas != xyes], [ + AC_MSG_CHECKING([the OpenBLAS version using openblas_get_config]) + AC_LANG_PUSH([C]) + AC_RUN_IFELSE([ + dnl Reject 0.3.22 - see https://github.com/sagemath/sage/pull/35377 + AC_LANG_PROGRAM([[#include + char *openblas_get_config(void); ]], + [[if (!strncmp(openblas_get_config(), "OpenBLAS 0.3.22", 15)) return 1;]]) + ], [ + AC_MSG_RESULT([good]) + ], [ + AC_MSG_RESULT([known bad version]) + sage_spkg_install_openblas=yes]) + AC_LANG_POP([C]) + ]) AS_IF([test x$sage_spkg_install_openblas != xyes], [ AC_SUBST([SAGE_SYSTEM_FACADE_PC_FILES]) AC_SUBST([SAGE_OPENBLAS_PC_COMMAND], ["\$(LN) -sf \"$OPENBLASPCDIR/openblas.pc\" \"\$(@)\""]) From 3d0467fecbb73055053cb582435e0fb073db93ee Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sat, 29 Apr 2023 22:38:56 -0700 Subject: [PATCH 11/31] build/pkgs/openblas/spkg-configure.m4: Also check for the bad version in the non-pkgconfig branch --- build/pkgs/openblas/spkg-configure.m4 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/build/pkgs/openblas/spkg-configure.m4 b/build/pkgs/openblas/spkg-configure.m4 index e98e84f794f..06affdacff8 100644 --- a/build/pkgs/openblas/spkg-configure.m4 +++ b/build/pkgs/openblas/spkg-configure.m4 @@ -81,6 +81,7 @@ SAGE_SPKG_CONFIGURE([openblas], [ AC_LANG_PUSH([C]) AC_RUN_IFELSE([ AC_LANG_PROGRAM([[#include + #include char *openblas_get_config(void); int version[3]; ]], [[version[0] = version[1] = version[2] = 0; @@ -101,7 +102,8 @@ SAGE_SPKG_CONFIGURE([openblas], [ >=10000 * ]]SAGE_OPENBLAS_LT_VERSION_MAJOR[[ + 100 * ]]SAGE_OPENBLAS_LT_VERSION_MINOR[[ + ]]SAGE_OPENBLAS_LT_VERSION_MICRO[[) - return 1;]]) + return 1; + if (!strncmp(openblas_get_config(), "OpenBLAS 0.3.22", 15)) return 1;]]) ], [AS_VAR_SET([HAVE_OPENBLAS], [yes])], [AS_VAR_SET([HAVE_OPENBLAS], [no])], [AS_VAR_SET([HAVE_OPENBLAS], [yes])]) AC_LANG_POP([C]) From c046024bc9d960178f848674f2360f4167c27e27 Mon Sep 17 00:00:00 2001 From: Thierry Monteil Date: Mon, 24 Apr 2023 12:32:53 +0200 Subject: [PATCH 12/31] update openssl to 3.0.8 --- build/pkgs/openssl/checksums.ini | 6 +++--- build/pkgs/openssl/package-version.txt | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build/pkgs/openssl/checksums.ini b/build/pkgs/openssl/checksums.ini index 216fe96e725..a443f001e4a 100644 --- a/build/pkgs/openssl/checksums.ini +++ b/build/pkgs/openssl/checksums.ini @@ -1,5 +1,5 @@ tarball=openssl-VERSION.tar.gz -sha1=a5305213c681a5a4322dad7347a6e66b7b6ef3c7 -md5=163bb3e58c143793d1dc6a6ec7d185d5 -cksum=439183449 +sha1=580d8a7232327fe1fa6e7db54ac060d4321f40ab +md5=61e017cf4fea1b599048f621f1490fbd +cksum=1708357994 upstream_url=https://www.openssl.org/source/openssl-VERSION.tar.gz diff --git a/build/pkgs/openssl/package-version.txt b/build/pkgs/openssl/package-version.txt index eca690e737b..67786e246ef 100644 --- a/build/pkgs/openssl/package-version.txt +++ b/build/pkgs/openssl/package-version.txt @@ -1 +1 @@ -3.0.5 +3.0.8 From f6f4e40843a17e59f9880cf19fed929e9732b6e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Chapoton?= Date: Sun, 23 Apr 2023 17:26:32 +0200 Subject: [PATCH 13/31] fix the linter once more --- src/sage/rings/real_double.pyx | 2 +- src/sage/rings/real_mpfr.pyx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sage/rings/real_double.pyx b/src/sage/rings/real_double.pyx index 72bb242078d..21a2f293ee9 100644 --- a/src/sage/rings/real_double.pyx +++ b/src/sage/rings/real_double.pyx @@ -1522,7 +1522,7 @@ cdef class RealDoubleElement(FieldElement): def round(self): """ Round ``self`` to the nearest integer. - + This uses the convention of rounding half to even (i.e., if the fractional part of ``self`` is `0.5`, then it is rounded to the nearest even integer). diff --git a/src/sage/rings/real_mpfr.pyx b/src/sage/rings/real_mpfr.pyx index 0dd8adb3040..c90469b6549 100644 --- a/src/sage/rings/real_mpfr.pyx +++ b/src/sage/rings/real_mpfr.pyx @@ -2992,7 +2992,7 @@ cdef class RealNumber(sage.structure.element.RingElement): """ Round ``self`` to the nearest representable integer, rounding halfway cases away from zero. - + .. NOTE:: The rounding mode of the parent field does not affect the result. From b9e15754ffc8b09befcb68f23eabe13578b23435 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 19:48:00 -0700 Subject: [PATCH 14/31] Fix some imports from sage.symbolic --- src/sage/categories/classical_crystals.py | 2 +- src/sage/functions/error.py | 4 ++-- src/sage/misc/functional.py | 3 +-- src/sage/modules/vector_symbolic_dense.py | 2 +- src/sage/rings/polynomial/polynomial_element.pyx | 2 +- 5 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/sage/categories/classical_crystals.py b/src/sage/categories/classical_crystals.py index 9650dae15a2..581b094f6d8 100644 --- a/src/sage/categories/classical_crystals.py +++ b/src/sage/categories/classical_crystals.py @@ -180,7 +180,7 @@ def demazure_character(self, w, f=None): u = self.algebra(ZZ).sum_of_monomials(self.module_generators) u = self.demazure_operator(u, word) if f is None: - from sage.symbolic.all import SR as P + from sage.symbolic.ring import SR as P x = [P.var('x%s' % (i+1)) for i in range(n)] # TODO: use P.linear_combination when PolynomialRing will be a ModulesWithBasis return sum((coeff*prod((x[i]**(c.weight()[i]) for i in range(n)), P.one()) for c, coeff in u), P.zero()) diff --git a/src/sage/functions/error.py b/src/sage/functions/error.py index ca665622f20..bd12c2eb3a8 100644 --- a/src/sage/functions/error.py +++ b/src/sage/functions/error.py @@ -46,10 +46,10 @@ from sage.symbolic.expression import Expression from sage.functions.all import exp from sage.misc.functional import sqrt -from sage.symbolic.constants import pi +from sage.symbolic.constants import I, pi from sage.rings.rational import Rational from sage.rings.infinity import unsigned_infinity -from sage.symbolic.expression import I + class Function_erf(BuiltinFunction): r""" diff --git a/src/sage/misc/functional.py b/src/sage/misc/functional.py index 6e0e2abde37..aee5d035a66 100644 --- a/src/sage/misc/functional.py +++ b/src/sage/misc/functional.py @@ -1881,8 +1881,7 @@ def _do_sqrt(x, prec=None, extend=True, all=False): from sage.rings.complex_mpfr import ComplexField return ComplexField(prec)(x).sqrt(all=all) if x == -1: - from sage.symbolic.expression import I - z = I + from sage.symbolic.constants import I as z else: from sage.symbolic.ring import SR z = SR(x).sqrt() diff --git a/src/sage/modules/vector_symbolic_dense.py b/src/sage/modules/vector_symbolic_dense.py index 12152d97fcb..200d82ebf15 100644 --- a/src/sage/modules/vector_symbolic_dense.py +++ b/src/sage/modules/vector_symbolic_dense.py @@ -55,7 +55,7 @@ #***************************************************************************** from . import free_module_element -from sage.symbolic.all import Expression +from sage.symbolic.expression import Expression def apply_map(phi): diff --git a/src/sage/rings/polynomial/polynomial_element.pyx b/src/sage/rings/polynomial/polynomial_element.pyx index b8ecbb7a14b..9000c358b26 100644 --- a/src/sage/rings/polynomial/polynomial_element.pyx +++ b/src/sage/rings/polynomial/polynomial_element.pyx @@ -8234,7 +8234,7 @@ cdef class Polynomial(CommutativePolynomial): if isinstance(L, sage.rings.abc.SymbolicRing): if self.degree() == 2: from sage.misc.functional import sqrt - from sage.symbolic.expression import I + from sage.symbolic.constants import I coeffs = self.list() D = coeffs[1]*coeffs[1] - 4*coeffs[0]*coeffs[2] l = None From f2f073d075b9091b0b1a39622cb75419ef10c60b Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 19:52:47 -0700 Subject: [PATCH 15/31] src/sage/rings/infinity.py: Avoid cyclic import via integer --- src/sage/rings/infinity.py | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/sage/rings/infinity.py b/src/sage/rings/infinity.py index aabe2572f31..c1ac3aee408 100644 --- a/src/sage/rings/infinity.py +++ b/src/sage/rings/infinity.py @@ -216,15 +216,17 @@ #***************************************************************************** from sys import maxsize + +import sage.rings.abc + +from sage.misc.fast_methods import Singleton +from sage.misc.lazy_import import lazy_import from sage.rings.ring import Ring from sage.structure.element import RingElement, InfinityElement from sage.structure.richcmp import rich_to_bool, richcmp -from sage.misc.fast_methods import Singleton -import sage.rings.abc -import sage.rings.integer -import sage.rings.rational -import sage.rings.integer_ring +lazy_import('sage.rings.integer', 'Integer') + _obj = {} class _uniq(): @@ -327,12 +329,11 @@ def __pari__(self): sage: pari(oo) +oo """ - # For some reason, it seems problematic to import sage.libs.all.pari, - # so we call it directly. + from sage.libs.pari.all import pari if self._sign >= 0: - return sage.libs.all.pari('oo') + return pari('oo') else: - return sage.libs.all.pari('-oo') + return pari('-oo') def _latex_(self): r""" @@ -850,7 +851,7 @@ def _div_(self, other): 0 """ if isinstance(other, UnsignedInfinity): - return sage.rings.integer_ring.ZZ(0) + return Integer(0) raise ValueError("quotient of number < oo by number < oo not defined") def _richcmp_(self, other, op): @@ -1390,7 +1391,7 @@ def _mul_(self, other): if other.is_zero(): if isinstance(self, InfinityElement): raise SignError("cannot multiply infinity by zero") - return sage.rings.integer_ring.ZZ(0) + return Integer(0) if self.value < 0: if isinstance(other, InfinityElement): return -other @@ -1402,7 +1403,7 @@ def _mul_(self, other): if self.value == 0: if isinstance(other, InfinityElement): raise SignError("cannot multiply infinity by zero") - return sage.rings.integer_ring.ZZ(0) + return Integer(0) def _div_(self, other): """ From 7672d2a3907ff74752a9a625e19186b0192bf837 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 19:57:58 -0700 Subject: [PATCH 16/31] src/sage/symbolic/expression_conversions.py: Fix import of I --- src/sage/symbolic/expression_conversions.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/sage/symbolic/expression_conversions.py b/src/sage/symbolic/expression_conversions.py index a8236db2a0b..6efe80d3c2c 100644 --- a/src/sage/symbolic/expression_conversions.py +++ b/src/sage/symbolic/expression_conversions.py @@ -2226,8 +2226,7 @@ class Exponentialize(ExpressionTreeWalker): from sage.functions.hyperbolic import sinh, cosh, sech, csch, tanh, coth from sage.functions.log import exp from sage.functions.trig import sin, cos, sec, csc, tan, cot - from sage.rings.imaginary_unit import I - from sage.symbolic.constants import e + from sage.symbolic.constants import e, I from sage.rings.integer import Integer from sage.symbolic.ring import SR from sage.calculus.var import function From 65f66ac12fb963af7fd5f4a6a1b220178c0f53f7 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:03:43 -0700 Subject: [PATCH 17/31] sage.symbolic: Docstring cosmetics --- src/sage/rings/number_field/number_field.py | 3 ++- src/sage/symbolic/expression.pyx | 2 +- src/sage/symbolic/function_factory.py | 3 ++- src/sage/symbolic/pynac_impl.pxi | 7 +++++-- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/sage/rings/number_field/number_field.py b/src/sage/rings/number_field/number_field.py index 05342a39364..1627b841c30 100644 --- a/src/sage/rings/number_field/number_field.py +++ b/src/sage/rings/number_field/number_field.py @@ -8285,7 +8285,8 @@ def _coerce_map_from_(self, R): sage: K.coerce(sqrt(2)) Traceback (most recent call last): ... - TypeError: no canonical coercion from Symbolic Ring to Number Field in a with defining polynomial x^2 - 2 with a = 1.414213562373095? + TypeError: no canonical coercion from Symbolic Ring to Number Field in a + with defining polynomial x^2 - 2 with a = 1.414213562373095? TESTS:: diff --git a/src/sage/symbolic/expression.pyx b/src/sage/symbolic/expression.pyx index dd9a8c8c538..dc32fe8494f 100644 --- a/src/sage/symbolic/expression.pyx +++ b/src/sage/symbolic/expression.pyx @@ -2844,7 +2844,7 @@ cdef class Expression(Expression_abc): def _is_registered_constant_(self): """ - Return True if this symbolic expression is internally represented as + Return ``True`` if this symbolic expression is internally represented as a constant. This function is intended to provide an interface to query the internal diff --git a/src/sage/symbolic/function_factory.py b/src/sage/symbolic/function_factory.py index e32480bd99a..540f7b64743 100644 --- a/src/sage/symbolic/function_factory.py +++ b/src/sage/symbolic/function_factory.py @@ -218,7 +218,8 @@ def function(s, **kwds) -> Union[SymbolicFunction, list[SymbolicFunction]]: sage: 2*f Traceback (most recent call last): ... - TypeError: unsupported operand parent(s) for *: 'Integer Ring' and '' + TypeError: unsupported operand parent(s) for *: 'Integer Ring' and + '' You now need to evaluate the function in order to do the arithmetic:: diff --git a/src/sage/symbolic/pynac_impl.pxi b/src/sage/symbolic/pynac_impl.pxi index a610add5ef8..d570a2d29a7 100644 --- a/src/sage/symbolic/pynac_impl.pxi +++ b/src/sage/symbolic/pynac_impl.pxi @@ -2426,13 +2426,16 @@ def init_pynac_I(): EXAMPLES:: + Just for this doctest, we import ``I`` from :mod:`sage.symbolic.expression`. + Library and user code should instead import it from :mod:`sage.symbolic.constants`. + sage: from sage.symbolic.expression import I as symbolic_I sage: symbolic_I I sage: symbolic_I^2 -1 - Note that conversions to real fields will give TypeErrors:: + Note that conversions to real fields will give :class:`TypeError`:: sage: float(symbolic_I) Traceback (most recent call last): @@ -2495,7 +2498,7 @@ def init_pynac_I(): Check that :trac:`10064` is fixed:: - sage: y = symbolic_I*symbolic_I*x / x # so y is the expression -1 + sage: y = symbolic_I*symbolic_I*x / x # so y is the expression -1 sage: y.is_positive() False sage: z = -x / x From 6f2daaf2a57f85e0eba692ca13bb00bbd80c2d8b Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:05:46 -0700 Subject: [PATCH 18/31] src/sage/rings/real_mpfr.pyx: Move imports into methods --- src/sage/rings/real_mpfr.pyx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/sage/rings/real_mpfr.pyx b/src/sage/rings/real_mpfr.pyx index c90469b6549..18d1345ec81 100644 --- a/src/sage/rings/real_mpfr.pyx +++ b/src/sage/rings/real_mpfr.pyx @@ -153,10 +153,6 @@ from .rational cimport Rational from sage.categories.map cimport Map -cdef ZZ, QQ, RDF -from .integer_ring import ZZ -from .rational_field import QQ -from .real_double import RDF from .real_double cimport RealDoubleElement import sage.rings.rational_field @@ -729,6 +725,10 @@ cdef class RealField_class(sage.rings.abc.RealField): sage: R.get_action(ZZ) Right scalar multiplication by Integer Ring on Univariate Polynomial Ring in x over Real Field with 53 bits of precision """ + from .integer_ring import ZZ + from .rational_field import QQ + from .real_double import RDF + if S is ZZ: return ZZtoRR(ZZ, self) elif S is QQ: @@ -1872,6 +1872,8 @@ cdef class RealNumber(sage.structure.element.RingElement): sage: RealField(100)(2).imag() 0 """ + from .integer_ring import ZZ + return ZZ(0) def str(self, int base=10, size_t digits=0, *, no_sci=None, From 1a64d4f63b0986b12d1a0dd34fb5bbc07ce1cb1e Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:09:45 -0700 Subject: [PATCH 19/31] src/sage/symbolic/comparison_impl.pxi: Move import from SR into functions --- src/sage/symbolic/comparison_impl.pxi | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/sage/symbolic/comparison_impl.pxi b/src/sage/symbolic/comparison_impl.pxi index 90a921112ac..c07ed620de1 100644 --- a/src/sage/symbolic/comparison_impl.pxi +++ b/src/sage/symbolic/comparison_impl.pxi @@ -35,8 +35,6 @@ There is also a mixed version: from cpython cimport * -from sage.symbolic.ring import SR - cdef int print_order_c(Expression lhs, Expression rhs): """ @@ -80,8 +78,10 @@ cpdef int print_order(lhs, rhs) except -2: 1 """ if not isinstance(lhs, Expression): + from sage.symbolic.ring import SR lhs = SR(lhs) if not isinstance(rhs, Expression): + from sage.symbolic.ring import SR rhs = SR(rhs) return print_order_c(lhs, rhs) @@ -103,7 +103,10 @@ class _print_key(): sage: _print_key(1) """ - self.ex = ex if isinstance(ex, Expression) else SR(ex) + if not isinstance(ex, Expression): + from sage.symbolic.ring import SR + ex = SR(ex) + self.ex = ex def __lt__(self, other): """ @@ -171,7 +174,10 @@ class _math_key(): sage: _math_key(1) """ - self.ex = ex if isinstance(ex, Expression) else SR(ex) + if not isinstance(ex, Expression): + from sage.symbolic.ring import SR + ex = SR(ex) + self.ex = ex def __lt__(self, other): """ @@ -284,8 +290,10 @@ cpdef int mixed_order(lhs, rhs) except -2: if lhs is rhs: return 0 if not isinstance(lhs, Expression): + from sage.symbolic.ring import SR lhs = SR(lhs) if not isinstance(rhs, Expression): + from sage.symbolic.ring import SR rhs = SR(rhs) less_than = _mixed_key(lhs) < _mixed_key(rhs) if less_than: @@ -318,7 +326,10 @@ class _mixed_key(): sage: _mixed_key(1) """ - self.ex = ex if isinstance(ex, Expression) else SR(ex) + if not isinstance(ex, Expression): + from sage.symbolic.ring import SR + ex = SR(ex) + self.ex = ex def __lt__(self, other): """ From 5270495a259f487710210ed83bf5f77ea4c59ca5 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:12:47 -0700 Subject: [PATCH 20/31] src/sage/symbolic/comparison_impl.pxi: Move import from SR into functions --- src/sage/symbolic/constants_c_impl.pxi | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/sage/symbolic/constants_c_impl.pxi b/src/sage/symbolic/constants_c_impl.pxi index 14369e848ca..093f9b79037 100644 --- a/src/sage/symbolic/constants_c_impl.pxi +++ b/src/sage/symbolic/constants_c_impl.pxi @@ -17,7 +17,6 @@ The constant `e` #***************************************************************************** from sage.symbolic.expression cimport Expression -from sage.symbolic.ring import SR # keep exp(1) for fast access @@ -126,6 +125,8 @@ cdef class E(Expression): [e 0] [0 e] """ + from sage.symbolic.ring import SR + global exp_one exp_one = SR.one().exp() Expression.__init__(self, SR, exp_one) @@ -171,7 +172,8 @@ cdef class E(Expression): try: return right.exp() except AttributeError: + from sage.symbolic.ring import SR return SR(right).exp() else: + from sage.symbolic.ring import SR return SR(left)**exp_one - From e11ed325243441a0810342d132f788c66a8ebc1a Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:14:25 -0700 Subject: [PATCH 21/31] src/sage/symbolic/expression.pyx: Import SR in methods/functions that need it --- src/sage/symbolic/expression.pyx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/sage/symbolic/expression.pyx b/src/sage/symbolic/expression.pyx index dc32fe8494f..4e79e565165 100644 --- a/src/sage/symbolic/expression.pyx +++ b/src/sage/symbolic/expression.pyx @@ -7780,6 +7780,8 @@ cdef class Expression(Expression_abc): """ from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing from sage.rings.fraction_field import FractionField + from sage.symbolic.ring import SR + nu = SR(self.numerator()).polynomial(base_ring) de = SR(self.denominator()).polynomial(base_ring) vars = sorted(set(nu.variables() + de.variables()), key=repr) @@ -13235,6 +13237,7 @@ cdef class Expression(Expression_abc): integral, _normalize_integral_input R = self._parent if isinstance(R, sage.rings.abc.CallableSymbolicExpressionRing): + from sage.symbolic.ring import SR f = SR(self) f, v, a, b = _normalize_integral_input(f, *args) # Definite integral with respect to a positional variable. @@ -13779,6 +13782,8 @@ cpdef new_Expression(parent, x): exp = x elif isinstance(x, Factorization): from sage.misc.misc_c import prod + from sage.symbolic.ring import SR + return prod([SR(p)**e for p,e in x], SR(x.unit())) elif x in Sets(): from sage.rings.integer_ring import ZZ @@ -13854,6 +13859,7 @@ cpdef new_Expression_from_pyobject(parent, x, bint force=True, bint recursive=Tr # tuples can be packed into exprseq if isinstance(x, (tuple, list)): + from sage.symbolic.ring import SR for e in x: obj = SR._force_pyobject(e, force=(not recursive)) ex_v.push_back((obj)._gobj) From 45472795c1f7bdf76846d1063a7e2df06b149ea1 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:18:15 -0700 Subject: [PATCH 22/31] src/sage/symbolic/expression_conversions.py: Move import of QQ into method --- src/sage/symbolic/expression_conversions.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/sage/symbolic/expression_conversions.py b/src/sage/symbolic/expression_conversions.py index 6efe80d3c2c..6073110887a 100644 --- a/src/sage/symbolic/expression_conversions.py +++ b/src/sage/symbolic/expression_conversions.py @@ -18,7 +18,6 @@ from operator import eq, ne, gt, lt, ge, le, mul, pow, neg, add, truediv from functools import reduce -from sage.rings.rational_field import QQ from sage.symbolic.ring import SR from sage.structure.element import Expression from sage.functions.all import exp @@ -1224,6 +1223,8 @@ def arithmetic(self, ex, operator): if operator is pow: from sage.symbolic.constants import e, pi, I + from sage.rings.rational_field import QQ + base, expt = ex.operands() if base == e and expt / (pi * I) in QQ: return exp(expt)._algebraic_(self.field) @@ -1317,6 +1318,7 @@ def composition(self, ex, operator): if not (SR(-1).sqrt() * operand).is_real(): raise ValueError("unable to represent as an algebraic number") # Coerce (not convert, see #22571) arg to a rational + from sage.rings.rational_field import QQ arg = operand.imag()/(2*ex.parent().pi()) try: rat_arg = QQ.coerce(arg.pyobject()) From 12c5bb7bfd7fa8827e04f32e0dde200454bcc8e9 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:29:37 -0700 Subject: [PATCH 23/31] sage.symbolic: Docstring cosmetics --- src/sage/symbolic/expression.pyx | 4 ++-- src/sage/symbolic/function_factory.py | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/sage/symbolic/expression.pyx b/src/sage/symbolic/expression.pyx index 4e79e565165..7f3afff8bce 100644 --- a/src/sage/symbolic/expression.pyx +++ b/src/sage/symbolic/expression.pyx @@ -1053,9 +1053,9 @@ cdef class Expression(Expression_abc): Check if :trac:`7876` is fixed:: - sage: (1/2-1/2*I )*sqrt(2) + sage: (1/2-1/2*I)*sqrt(2) -(1/2*I - 1/2)*sqrt(2) - sage: latex((1/2-1/2*I )*sqrt(2)) + sage: latex((1/2-1/2*I)*sqrt(2)) -\left(\frac{1}{2} i - \frac{1}{2}\right) \, \sqrt{2} Check if :trac:`9632` is fixed:: diff --git a/src/sage/symbolic/function_factory.py b/src/sage/symbolic/function_factory.py index 540f7b64743..4c2542c77e3 100644 --- a/src/sage/symbolic/function_factory.py +++ b/src/sage/symbolic/function_factory.py @@ -193,8 +193,7 @@ def function(s, **kwds) -> Union[SymbolicFunction, list[SymbolicFunction]]: (a, b) sage: cr = function('cr') sage: f = cr(a) - sage: g = f.diff(a).integral(b) - sage: g + sage: g = f.diff(a).integral(b); g b*diff(cr(a), a) sage: foo = function("foo", nargs=2) sage: x,y,z = var("x y z") From 399c1f114488d9604e2e3804dcbf18036244d5a6 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 20:58:34 -0700 Subject: [PATCH 24/31] sage.symbolic.expression: Eliminate global I; it now belongs to .constants --- src/sage/symbolic/all.py | 4 ++-- src/sage/symbolic/constants.py | 5 ++++- src/sage/symbolic/function.pyx | 2 +- src/sage/symbolic/pynac_impl.pxi | 16 +++++++--------- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/sage/symbolic/all.py b/src/sage/symbolic/all.py index 63e6b0037a8..be7af7cb1ec 100644 --- a/src/sage/symbolic/all.py +++ b/src/sage/symbolic/all.py @@ -1,8 +1,8 @@ from sage.misc.lazy_import import lazy_import -lazy_import("sage.symbolic.expression", "I", deprecation=(18036, +lazy_import("sage.symbolic.constants", "I", deprecation=(18036, "import I from sage.symbolic.constants for the imaginary unit viewed as an element of SR, or from sage.rings.imaginary_unit for the element of ZZ[i]")) -lazy_import("sage.symbolic.expression", "I", as_="i", deprecation=(18036, +lazy_import("sage.symbolic.constants", "I", as_="i", deprecation=(18036, "import I from sage.symbolic.constants for the imaginary unit viewed as an element of SR, or from sage.rings.imaginary_unit for the element of ZZ[i]")) import sage.symbolic.expression # initialize pynac before .ring diff --git a/src/sage/symbolic/constants.py b/src/sage/symbolic/constants.py index 587b63e2dcb..fe99c7a6656 100644 --- a/src/sage/symbolic/constants.py +++ b/src/sage/symbolic/constants.py @@ -227,7 +227,10 @@ constants_name_table[repr(unsigned_infinity)] = unsigned_infinity constants_name_table[repr(minus_infinity)] = minus_infinity -from sage.symbolic.expression import register_symbol, I +from sage.symbolic.expression import register_symbol, init_pynac_I + +I = init_pynac_I() + register_symbol(infinity, {'maxima':'inf'}, 0) register_symbol(minus_infinity, {'maxima':'minf'}, 0) register_symbol(unsigned_infinity, {'maxima':'infinity'}, 0) diff --git a/src/sage/symbolic/function.pyx b/src/sage/symbolic/function.pyx index 4979188159a..0d347103756 100644 --- a/src/sage/symbolic/function.pyx +++ b/src/sage/symbolic/function.pyx @@ -918,7 +918,7 @@ cdef class BuiltinFunction(Function): return [arg] def __call__(self, *args, bint coerce=True, bint hold=False, - bint dont_call_method_on_arg=False): + bint dont_call_method_on_arg=False): r""" Evaluate this function on the given arguments and return the result. diff --git a/src/sage/symbolic/pynac_impl.pxi b/src/sage/symbolic/pynac_impl.pxi index d570a2d29a7..7c788c23c92 100644 --- a/src/sage/symbolic/pynac_impl.pxi +++ b/src/sage/symbolic/pynac_impl.pxi @@ -1873,7 +1873,7 @@ cdef py_atan2(x, y): sage: atan2(RDF(-3), RDF(-1)) -1.8925468811915387 """ - from sage.symbolic.constants import pi, NaN + from sage.symbolic.constants import I, pi, NaN P = coercion_model.common_parent(x, y) if P is ZZ: P = RR @@ -2417,7 +2417,6 @@ import sage.rings.real_double ginac_pyinit_Float(sage.rings.real_double.RDF) cdef Element pynac_I -I = None def init_pynac_I(): @@ -2429,7 +2428,7 @@ def init_pynac_I(): Just for this doctest, we import ``I`` from :mod:`sage.symbolic.expression`. Library and user code should instead import it from :mod:`sage.symbolic.constants`. - sage: from sage.symbolic.expression import I as symbolic_I + sage: from sage.symbolic.constants import I as symbolic_I sage: symbolic_I I sage: symbolic_I^2 @@ -2490,10 +2489,10 @@ def init_pynac_I(): sage: latex(symbolic_I) i - sage: sage.symbolic.expression.init_pynac_I() - sage: type(sage.symbolic.expression.I) + sage: I = sage.symbolic.expression.init_pynac_I() + sage: type(I) - sage: type(sage.symbolic.expression.I.pyobject()) + sage: type(I.pyobject()) Check that :trac:`10064` is fixed:: @@ -2512,12 +2511,12 @@ def init_pynac_I(): sage: x * ((3*I + 4)*x - 5) ((3*I + 4)*x - 5)*x """ - global pynac_I, I + global pynac_I from sage.rings.number_field.number_field import GaussianField pynac_I = GaussianField().gen() ginac_pyinit_I(pynac_I) from .ring import SR - I = new_Expression_from_GEx(SR, g_I) + return new_Expression_from_GEx(SR, g_I) def init_function_table(): @@ -2613,6 +2612,5 @@ def init_function_table(): init_function_table() -init_pynac_I() set_ginac_fn_serial() From fbf77168496230828b508a2e07f5647195574c49 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Mon, 1 May 2023 21:11:02 -0700 Subject: [PATCH 25/31] sage.symbolic.all: Remove workaround for cyclic import --- src/sage/symbolic/all.py | 1 - 1 file changed, 1 deletion(-) diff --git a/src/sage/symbolic/all.py b/src/sage/symbolic/all.py index be7af7cb1ec..399ab56e78c 100644 --- a/src/sage/symbolic/all.py +++ b/src/sage/symbolic/all.py @@ -5,7 +5,6 @@ lazy_import("sage.symbolic.constants", "I", as_="i", deprecation=(18036, "import I from sage.symbolic.constants for the imaginary unit viewed as an element of SR, or from sage.rings.imaginary_unit for the element of ZZ[i]")) -import sage.symbolic.expression # initialize pynac before .ring from .ring import SR from .constants import (pi, e, NaN, golden_ratio, log2, euler_gamma, catalan, khinchin, twinprime, mertens, glaisher) From 2fb5ca13992828c6618ed5987aa2e6ff8081036b Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Tue, 2 May 2023 13:15:47 -0700 Subject: [PATCH 26/31] src/sage/symbolic/pynac_impl.pxi: Fix up docstring --- src/sage/symbolic/pynac_impl.pxi | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/sage/symbolic/pynac_impl.pxi b/src/sage/symbolic/pynac_impl.pxi index 7c788c23c92..114257901a2 100644 --- a/src/sage/symbolic/pynac_impl.pxi +++ b/src/sage/symbolic/pynac_impl.pxi @@ -2421,13 +2421,10 @@ cdef Element pynac_I def init_pynac_I(): """ - Initialize the numeric I object in pynac. We use the generator of QQ(i). + Initialize the numeric ``I`` object in pynac. We use the generator of ``QQ(i)``. EXAMPLES:: - Just for this doctest, we import ``I`` from :mod:`sage.symbolic.expression`. - Library and user code should instead import it from :mod:`sage.symbolic.constants`. - sage: from sage.symbolic.constants import I as symbolic_I sage: symbolic_I I @@ -2482,7 +2479,7 @@ def init_pynac_I(): sage: maxima(2*symbolic_I) 2*%i - TESTS: + TESTS:: sage: repr(symbolic_I) 'I' From 69df1ef2bd9d50fe3ba2a7efbb70cb4e59e5d687 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Tue, 2 May 2023 14:16:07 -0700 Subject: [PATCH 27/31] Remove last import from 'sage.symbolic.all', activate relint rule for it --- src/.relint.yml | 2 +- src/sage/modular/modform_hecketriangle/element.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/.relint.yml b/src/.relint.yml index acf727359fa..7996583cb4f 100644 --- a/src/.relint.yml +++ b/src/.relint.yml @@ -49,7 +49,7 @@ namespace package. Type import_statements("SOME_IDENTIFIER") to find a more specific import, or use 'sage --fiximports' to fix automatically in the source file. # Keep in sync with SAGE_ROOT/src/sage/misc/replace_dot_all.py - pattern: 'from\s+sage(|[.](arith|categories|combinat|crypto|databases|data_structures|dynamics|ext|game_theory|games|graphs|groups|interfaces|manifolds|matrix|matroids|misc|modules|monoids|numerical|probability|quadratic_forms|quivers|rings|sat|schemes|sets|stats|tensor)[a-z0-9_.]*|[.]libs)[.]all\s+import' + pattern: 'from\s+sage(|[.](arith|categories|combinat|crypto|databases|data_structures|dynamics|ext|game_theory|games|graphs|groups|interfaces|manifolds|matrix|matroids|misc|modules|monoids|numerical|probability|quadratic_forms|quivers|rings|sat|schemes|sets|stats|symbolic|tensor)[a-z0-9_.]*|[.]libs)[.]all\s+import' # imports from .all are allowed in all.py; also allow in some modules that need sage.all filePattern: '(.*/|)(?!(all|benchmark|dev_tools|parsing|sage_eval))[^/.]*[.](py|pyx|pxi)$' diff --git a/src/sage/modular/modform_hecketriangle/element.py b/src/sage/modular/modform_hecketriangle/element.py index ae58a6ad08f..9cb02cb7cde 100644 --- a/src/sage/modular/modform_hecketriangle/element.py +++ b/src/sage/modular/modform_hecketriangle/element.py @@ -285,7 +285,7 @@ def lseries(self, num_prec=None, max_imaginary_part=0, max_asymp_coeffs=40): -23.9781792831... """ from sage.rings.integer_ring import ZZ - from sage.symbolic.all import pi + from sage.symbolic.constants import pi from sage.misc.functional import sqrt from sage.lfunctions.dokchitser import Dokchitser From 8aa721379a5fa8f7daff9fa8c636d10dbedb2fce Mon Sep 17 00:00:00 2001 From: Release Manager Date: Sun, 7 May 2023 12:57:46 +0200 Subject: [PATCH 28/31] Updated SageMath version to 10.0.rc2 --- .zenodo.json | 8 ++++---- VERSION.txt | 2 +- build/pkgs/configure/checksums.ini | 6 +++--- build/pkgs/configure/package-version.txt | 2 +- build/pkgs/sage_conf/install-requires.txt | 2 +- build/pkgs/sage_docbuild/install-requires.txt | 2 +- build/pkgs/sage_setup/install-requires.txt | 2 +- build/pkgs/sage_sws2rst/install-requires.txt | 2 +- build/pkgs/sagelib/install-requires.txt | 2 +- build/pkgs/sagemath_categories/install-requires.txt | 2 +- build/pkgs/sagemath_environment/install-requires.txt | 2 +- build/pkgs/sagemath_objects/install-requires.txt | 2 +- build/pkgs/sagemath_repl/install-requires.txt | 2 +- pkgs/sage-conf/VERSION.txt | 2 +- pkgs/sage-conf_pypi/VERSION.txt | 2 +- pkgs/sage-docbuild/VERSION.txt | 2 +- pkgs/sage-setup/VERSION.txt | 2 +- pkgs/sage-sws2rst/VERSION.txt | 2 +- pkgs/sagemath-categories/VERSION.txt | 2 +- pkgs/sagemath-environment/VERSION.txt | 2 +- pkgs/sagemath-objects/VERSION.txt | 2 +- pkgs/sagemath-repl/VERSION.txt | 2 +- src/VERSION.txt | 2 +- src/bin/sage-version.sh | 6 +++--- src/sage/version.py | 6 +++--- 25 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index f5d5284a4be..6054ad0b28c 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -1,10 +1,10 @@ { "description": "Mirror of the Sage https://sagemath.org/ source tree", "license": "other-open", - "title": "sagemath/sage: 10.0.rc1", - "version": "10.0.rc1", + "title": "sagemath/sage: 10.0.rc2", + "version": "10.0.rc2", "upload_type": "software", - "publication_date": "2023-04-28", + "publication_date": "2023-05-07", "creators": [ { "affiliation": "SageMath.org", @@ -15,7 +15,7 @@ "related_identifiers": [ { "scheme": "url", - "identifier": "https://github.com/sagemath/sage/tree/10.0.rc1", + "identifier": "https://github.com/sagemath/sage/tree/10.0.rc2", "relation": "isSupplementTo" }, { diff --git a/VERSION.txt b/VERSION.txt index e3959484b54..9a3b0d3578c 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -SageMath version 10.0.rc1, Release Date: 2023-04-28 +SageMath version 10.0.rc2, Release Date: 2023-05-07 diff --git a/build/pkgs/configure/checksums.ini b/build/pkgs/configure/checksums.ini index 36bd4fed63d..0239f8f055e 100644 --- a/build/pkgs/configure/checksums.ini +++ b/build/pkgs/configure/checksums.ini @@ -1,4 +1,4 @@ tarball=configure-VERSION.tar.gz -sha1=9928f0bb6206e17098db4853c183bc83c5744889 -md5=0e60f5f865d8880a5257b591e5cba337 -cksum=3700986812 +sha1=d18a37f4dd7bcf8645cb1d34ab5de2b0f74e14c8 +md5=70a288640882b840de76a1b883897094 +cksum=3571416681 diff --git a/build/pkgs/configure/package-version.txt b/build/pkgs/configure/package-version.txt index 7a489e1e999..5aebf88bb6e 100644 --- a/build/pkgs/configure/package-version.txt +++ b/build/pkgs/configure/package-version.txt @@ -1 +1 @@ -dd249822693fe36bcc6d2c4430a4d12cbf1f459d +c1aea0aa2bcd7ab2e2f98f2a27a458809da1ce7e diff --git a/build/pkgs/sage_conf/install-requires.txt b/build/pkgs/sage_conf/install-requires.txt index 8696e1ceda4..fd7500a8be7 100644 --- a/build/pkgs/sage_conf/install-requires.txt +++ b/build/pkgs/sage_conf/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-conf ~= 10.0rc1 +sage-conf ~= 10.0rc2 diff --git a/build/pkgs/sage_docbuild/install-requires.txt b/build/pkgs/sage_docbuild/install-requires.txt index f3834f14c83..650e1f42230 100644 --- a/build/pkgs/sage_docbuild/install-requires.txt +++ b/build/pkgs/sage_docbuild/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-docbuild ~= 10.0rc1 +sage-docbuild ~= 10.0rc2 diff --git a/build/pkgs/sage_setup/install-requires.txt b/build/pkgs/sage_setup/install-requires.txt index 1d97d576960..83e854ef8b6 100644 --- a/build/pkgs/sage_setup/install-requires.txt +++ b/build/pkgs/sage_setup/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-setup ~= 10.0rc1 +sage-setup ~= 10.0rc2 diff --git a/build/pkgs/sage_sws2rst/install-requires.txt b/build/pkgs/sage_sws2rst/install-requires.txt index cc892e7f196..f03bf8f5eda 100644 --- a/build/pkgs/sage_sws2rst/install-requires.txt +++ b/build/pkgs/sage_sws2rst/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-sws2rst ~= 10.0rc1 +sage-sws2rst ~= 10.0rc2 diff --git a/build/pkgs/sagelib/install-requires.txt b/build/pkgs/sagelib/install-requires.txt index 059a16b5dcc..df82c185f3f 100644 --- a/build/pkgs/sagelib/install-requires.txt +++ b/build/pkgs/sagelib/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagelib ~= 10.0rc1 +sagelib ~= 10.0rc2 diff --git a/build/pkgs/sagemath_categories/install-requires.txt b/build/pkgs/sagemath_categories/install-requires.txt index 7f69ea30fa4..c4b241f3cb2 100644 --- a/build/pkgs/sagemath_categories/install-requires.txt +++ b/build/pkgs/sagemath_categories/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-categories ~= 10.0rc1 +sagemath-categories ~= 10.0rc2 diff --git a/build/pkgs/sagemath_environment/install-requires.txt b/build/pkgs/sagemath_environment/install-requires.txt index df7d40d5639..ac491e6b0db 100644 --- a/build/pkgs/sagemath_environment/install-requires.txt +++ b/build/pkgs/sagemath_environment/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-environment ~= 10.0rc1 +sagemath-environment ~= 10.0rc2 diff --git a/build/pkgs/sagemath_objects/install-requires.txt b/build/pkgs/sagemath_objects/install-requires.txt index 305005b202e..b8124719794 100644 --- a/build/pkgs/sagemath_objects/install-requires.txt +++ b/build/pkgs/sagemath_objects/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-objects ~= 10.0rc1 +sagemath-objects ~= 10.0rc2 diff --git a/build/pkgs/sagemath_repl/install-requires.txt b/build/pkgs/sagemath_repl/install-requires.txt index e210d2877e4..978fa025f18 100644 --- a/build/pkgs/sagemath_repl/install-requires.txt +++ b/build/pkgs/sagemath_repl/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-repl ~= 10.0rc1 +sagemath-repl ~= 10.0rc2 diff --git a/pkgs/sage-conf/VERSION.txt b/pkgs/sage-conf/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sage-conf/VERSION.txt +++ b/pkgs/sage-conf/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sage-conf_pypi/VERSION.txt b/pkgs/sage-conf_pypi/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sage-conf_pypi/VERSION.txt +++ b/pkgs/sage-conf_pypi/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sage-docbuild/VERSION.txt b/pkgs/sage-docbuild/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sage-docbuild/VERSION.txt +++ b/pkgs/sage-docbuild/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sage-setup/VERSION.txt b/pkgs/sage-setup/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sage-setup/VERSION.txt +++ b/pkgs/sage-setup/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sage-sws2rst/VERSION.txt b/pkgs/sage-sws2rst/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sage-sws2rst/VERSION.txt +++ b/pkgs/sage-sws2rst/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sagemath-categories/VERSION.txt b/pkgs/sagemath-categories/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sagemath-categories/VERSION.txt +++ b/pkgs/sagemath-categories/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sagemath-environment/VERSION.txt b/pkgs/sagemath-environment/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sagemath-environment/VERSION.txt +++ b/pkgs/sagemath-environment/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sagemath-objects/VERSION.txt b/pkgs/sagemath-objects/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sagemath-objects/VERSION.txt +++ b/pkgs/sagemath-objects/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/pkgs/sagemath-repl/VERSION.txt b/pkgs/sagemath-repl/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/pkgs/sagemath-repl/VERSION.txt +++ b/pkgs/sagemath-repl/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/src/VERSION.txt b/src/VERSION.txt index 3d48fb33e14..dcae77b1fb0 100644 --- a/src/VERSION.txt +++ b/src/VERSION.txt @@ -1 +1 @@ -10.0.rc1 +10.0.rc2 diff --git a/src/bin/sage-version.sh b/src/bin/sage-version.sh index 054896671ba..a63b53e5116 100644 --- a/src/bin/sage-version.sh +++ b/src/bin/sage-version.sh @@ -4,6 +4,6 @@ # which stops "setup.py develop" from rewriting it as a Python file. : # This file is auto-generated by the sage-update-version script, do not edit! -SAGE_VERSION='10.0.rc1' -SAGE_RELEASE_DATE='2023-04-28' -SAGE_VERSION_BANNER='SageMath version 10.0.rc1, Release Date: 2023-04-28' +SAGE_VERSION='10.0.rc2' +SAGE_RELEASE_DATE='2023-05-07' +SAGE_VERSION_BANNER='SageMath version 10.0.rc2, Release Date: 2023-05-07' diff --git a/src/sage/version.py b/src/sage/version.py index 4577b8f1426..310feed8a6d 100644 --- a/src/sage/version.py +++ b/src/sage/version.py @@ -1,5 +1,5 @@ # Sage version information for Python scripts # This file is auto-generated by the sage-update-version script, do not edit! -version = '10.0.rc1' -date = '2023-04-28' -banner = 'SageMath version 10.0.rc1, Release Date: 2023-04-28' +version = '10.0.rc2' +date = '2023-05-07' +banner = 'SageMath version 10.0.rc2, Release Date: 2023-05-07' From 3514956dc80c038896c3dc5b448d45e1210dce9a Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sun, 7 May 2023 15:12:14 -0700 Subject: [PATCH 29/31] build/pkgs/zeromq/distros/arch.txt: New --- build/pkgs/zeromq/distros/arch.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 build/pkgs/zeromq/distros/arch.txt diff --git a/build/pkgs/zeromq/distros/arch.txt b/build/pkgs/zeromq/distros/arch.txt new file mode 100644 index 00000000000..bd4caa9e83d --- /dev/null +++ b/build/pkgs/zeromq/distros/arch.txt @@ -0,0 +1 @@ +zeromq From e952d68d1e45184744b5f4abb42b1467e4622876 Mon Sep 17 00:00:00 2001 From: Matthias Koeppe Date: Sun, 7 May 2023 17:06:08 -0700 Subject: [PATCH 30/31] build/pkgs/zeromq/distros/gentoo.txt: New --- build/pkgs/zeromq/distros/gentoo.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 build/pkgs/zeromq/distros/gentoo.txt diff --git a/build/pkgs/zeromq/distros/gentoo.txt b/build/pkgs/zeromq/distros/gentoo.txt new file mode 100644 index 00000000000..2e8ad6358d5 --- /dev/null +++ b/build/pkgs/zeromq/distros/gentoo.txt @@ -0,0 +1 @@ +net-libs/zeromq From f2f5863c08ac8286d8eca7f3c68d29fc5cb955b7 Mon Sep 17 00:00:00 2001 From: Release Manager Date: Fri, 12 May 2023 22:20:53 +0200 Subject: [PATCH 31/31] Updated SageMath version to 10.0.rc3 --- .zenodo.json | 8 ++++---- VERSION.txt | 2 +- build/pkgs/configure/checksums.ini | 6 +++--- build/pkgs/configure/package-version.txt | 2 +- build/pkgs/sage_conf/install-requires.txt | 2 +- build/pkgs/sage_docbuild/install-requires.txt | 2 +- build/pkgs/sage_setup/install-requires.txt | 2 +- build/pkgs/sage_sws2rst/install-requires.txt | 2 +- build/pkgs/sagelib/install-requires.txt | 2 +- build/pkgs/sagemath_categories/install-requires.txt | 2 +- build/pkgs/sagemath_environment/install-requires.txt | 2 +- build/pkgs/sagemath_objects/install-requires.txt | 2 +- build/pkgs/sagemath_repl/install-requires.txt | 2 +- pkgs/sage-conf/VERSION.txt | 2 +- pkgs/sage-conf_pypi/VERSION.txt | 2 +- pkgs/sage-docbuild/VERSION.txt | 2 +- pkgs/sage-setup/VERSION.txt | 2 +- pkgs/sage-sws2rst/VERSION.txt | 2 +- pkgs/sagemath-categories/VERSION.txt | 2 +- pkgs/sagemath-environment/VERSION.txt | 2 +- pkgs/sagemath-objects/VERSION.txt | 2 +- pkgs/sagemath-repl/VERSION.txt | 2 +- src/VERSION.txt | 2 +- src/bin/sage-version.sh | 6 +++--- src/sage/version.py | 6 +++--- 25 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.zenodo.json b/.zenodo.json index 6054ad0b28c..a79e2f381e6 100644 --- a/.zenodo.json +++ b/.zenodo.json @@ -1,10 +1,10 @@ { "description": "Mirror of the Sage https://sagemath.org/ source tree", "license": "other-open", - "title": "sagemath/sage: 10.0.rc2", - "version": "10.0.rc2", + "title": "sagemath/sage: 10.0.rc3", + "version": "10.0.rc3", "upload_type": "software", - "publication_date": "2023-05-07", + "publication_date": "2023-05-12", "creators": [ { "affiliation": "SageMath.org", @@ -15,7 +15,7 @@ "related_identifiers": [ { "scheme": "url", - "identifier": "https://github.com/sagemath/sage/tree/10.0.rc2", + "identifier": "https://github.com/sagemath/sage/tree/10.0.rc3", "relation": "isSupplementTo" }, { diff --git a/VERSION.txt b/VERSION.txt index 9a3b0d3578c..beba69b49b1 100644 --- a/VERSION.txt +++ b/VERSION.txt @@ -1 +1 @@ -SageMath version 10.0.rc2, Release Date: 2023-05-07 +SageMath version 10.0.rc3, Release Date: 2023-05-12 diff --git a/build/pkgs/configure/checksums.ini b/build/pkgs/configure/checksums.ini index c010f7d2046..6613130e4db 100644 --- a/build/pkgs/configure/checksums.ini +++ b/build/pkgs/configure/checksums.ini @@ -1,4 +1,4 @@ tarball=configure-VERSION.tar.gz -sha1=3f93e48539eee55063a684244f91b43b8c866dff -md5=133849519bfca05eaf27d223be36073b -cksum=4086801344 +sha1=959551bd3287d8fef9ca0452060876d14476112f +md5=3151567a6d8a667f3ce7ecfbadb30a32 +cksum=3323217204 diff --git a/build/pkgs/configure/package-version.txt b/build/pkgs/configure/package-version.txt index 0946ca0ac77..f2e0a411f86 100644 --- a/build/pkgs/configure/package-version.txt +++ b/build/pkgs/configure/package-version.txt @@ -1 +1 @@ -9fd975263748c1a1cb30d205ce5b12f6e50c0d4b +937f7d915f988499400b698254c3a960eacf1f6d diff --git a/build/pkgs/sage_conf/install-requires.txt b/build/pkgs/sage_conf/install-requires.txt index fd7500a8be7..92f87843a26 100644 --- a/build/pkgs/sage_conf/install-requires.txt +++ b/build/pkgs/sage_conf/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-conf ~= 10.0rc2 +sage-conf ~= 10.0rc3 diff --git a/build/pkgs/sage_docbuild/install-requires.txt b/build/pkgs/sage_docbuild/install-requires.txt index 650e1f42230..3bea2a59cde 100644 --- a/build/pkgs/sage_docbuild/install-requires.txt +++ b/build/pkgs/sage_docbuild/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-docbuild ~= 10.0rc2 +sage-docbuild ~= 10.0rc3 diff --git a/build/pkgs/sage_setup/install-requires.txt b/build/pkgs/sage_setup/install-requires.txt index 83e854ef8b6..edce6aef14d 100644 --- a/build/pkgs/sage_setup/install-requires.txt +++ b/build/pkgs/sage_setup/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-setup ~= 10.0rc2 +sage-setup ~= 10.0rc3 diff --git a/build/pkgs/sage_sws2rst/install-requires.txt b/build/pkgs/sage_sws2rst/install-requires.txt index f03bf8f5eda..6673b9142bf 100644 --- a/build/pkgs/sage_sws2rst/install-requires.txt +++ b/build/pkgs/sage_sws2rst/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sage-sws2rst ~= 10.0rc2 +sage-sws2rst ~= 10.0rc3 diff --git a/build/pkgs/sagelib/install-requires.txt b/build/pkgs/sagelib/install-requires.txt index df82c185f3f..648cc1710ac 100644 --- a/build/pkgs/sagelib/install-requires.txt +++ b/build/pkgs/sagelib/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagelib ~= 10.0rc2 +sagelib ~= 10.0rc3 diff --git a/build/pkgs/sagemath_categories/install-requires.txt b/build/pkgs/sagemath_categories/install-requires.txt index c4b241f3cb2..5bbc990e31c 100644 --- a/build/pkgs/sagemath_categories/install-requires.txt +++ b/build/pkgs/sagemath_categories/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-categories ~= 10.0rc2 +sagemath-categories ~= 10.0rc3 diff --git a/build/pkgs/sagemath_environment/install-requires.txt b/build/pkgs/sagemath_environment/install-requires.txt index ac491e6b0db..27341713914 100644 --- a/build/pkgs/sagemath_environment/install-requires.txt +++ b/build/pkgs/sagemath_environment/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-environment ~= 10.0rc2 +sagemath-environment ~= 10.0rc3 diff --git a/build/pkgs/sagemath_objects/install-requires.txt b/build/pkgs/sagemath_objects/install-requires.txt index b8124719794..e0febeb6fe2 100644 --- a/build/pkgs/sagemath_objects/install-requires.txt +++ b/build/pkgs/sagemath_objects/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-objects ~= 10.0rc2 +sagemath-objects ~= 10.0rc3 diff --git a/build/pkgs/sagemath_repl/install-requires.txt b/build/pkgs/sagemath_repl/install-requires.txt index 978fa025f18..4d857f7b9d6 100644 --- a/build/pkgs/sagemath_repl/install-requires.txt +++ b/build/pkgs/sagemath_repl/install-requires.txt @@ -1,2 +1,2 @@ # This file is updated on every release by the sage-update-version script -sagemath-repl ~= 10.0rc2 +sagemath-repl ~= 10.0rc3 diff --git a/pkgs/sage-conf/VERSION.txt b/pkgs/sage-conf/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sage-conf/VERSION.txt +++ b/pkgs/sage-conf/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sage-conf_pypi/VERSION.txt b/pkgs/sage-conf_pypi/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sage-conf_pypi/VERSION.txt +++ b/pkgs/sage-conf_pypi/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sage-docbuild/VERSION.txt b/pkgs/sage-docbuild/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sage-docbuild/VERSION.txt +++ b/pkgs/sage-docbuild/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sage-setup/VERSION.txt b/pkgs/sage-setup/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sage-setup/VERSION.txt +++ b/pkgs/sage-setup/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sage-sws2rst/VERSION.txt b/pkgs/sage-sws2rst/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sage-sws2rst/VERSION.txt +++ b/pkgs/sage-sws2rst/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sagemath-categories/VERSION.txt b/pkgs/sagemath-categories/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sagemath-categories/VERSION.txt +++ b/pkgs/sagemath-categories/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sagemath-environment/VERSION.txt b/pkgs/sagemath-environment/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sagemath-environment/VERSION.txt +++ b/pkgs/sagemath-environment/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sagemath-objects/VERSION.txt b/pkgs/sagemath-objects/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sagemath-objects/VERSION.txt +++ b/pkgs/sagemath-objects/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/pkgs/sagemath-repl/VERSION.txt b/pkgs/sagemath-repl/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/pkgs/sagemath-repl/VERSION.txt +++ b/pkgs/sagemath-repl/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/src/VERSION.txt b/src/VERSION.txt index dcae77b1fb0..61e1e964f69 100644 --- a/src/VERSION.txt +++ b/src/VERSION.txt @@ -1 +1 @@ -10.0.rc2 +10.0.rc3 diff --git a/src/bin/sage-version.sh b/src/bin/sage-version.sh index a63b53e5116..3163501ac4d 100644 --- a/src/bin/sage-version.sh +++ b/src/bin/sage-version.sh @@ -4,6 +4,6 @@ # which stops "setup.py develop" from rewriting it as a Python file. : # This file is auto-generated by the sage-update-version script, do not edit! -SAGE_VERSION='10.0.rc2' -SAGE_RELEASE_DATE='2023-05-07' -SAGE_VERSION_BANNER='SageMath version 10.0.rc2, Release Date: 2023-05-07' +SAGE_VERSION='10.0.rc3' +SAGE_RELEASE_DATE='2023-05-12' +SAGE_VERSION_BANNER='SageMath version 10.0.rc3, Release Date: 2023-05-12' diff --git a/src/sage/version.py b/src/sage/version.py index 310feed8a6d..81a64f4f2fd 100644 --- a/src/sage/version.py +++ b/src/sage/version.py @@ -1,5 +1,5 @@ # Sage version information for Python scripts # This file is auto-generated by the sage-update-version script, do not edit! -version = '10.0.rc2' -date = '2023-05-07' -banner = 'SageMath version 10.0.rc2, Release Date: 2023-05-07' +version = '10.0.rc3' +date = '2023-05-12' +banner = 'SageMath version 10.0.rc3, Release Date: 2023-05-12'