Skip to content
This repository was archived by the owner on Jan 30, 2023. It is now read-only.

Commit 2b9ef5a

Browse files
author
Matthias Koeppe
committed
Merge #33855
2 parents f56a535 + 4473375 commit 2b9ef5a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+502
-349
lines changed

.github/workflows/tox.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -169,12 +169,12 @@ jobs:
169169
2-optional*) export TARGETS_PRE="build/make/Makefile" TARGETS="build/make/Makefile"
170170
targets_pattern="${{ matrix.stage }}"
171171
targets_pattern="${targets_pattern#2-optional-}"
172-
export TARGETS_OPTIONAL=$( echo $(export PATH=build/bin:$PATH && (for a in spkg-install.in spkg-install requirements.txt; do sage-package list :optional: --has-file $a --no-file huge --no-file has_nonfree_dependencies; done) | grep -v ^_ | grep -v sagemath_doc | grep '^[${{ matrix.targets_pattern }}]' ) )
172+
export TARGETS_OPTIONAL=$( echo $(export PATH=build/bin:$PATH && (for a in spkg-install.in spkg-install requirements.txt; do sage-package list :optional: --has-file $a --no-file huge --no-file has_nonfree_dependencies; done) | grep -v ^_ | grep -v sagemath_doc | grep "^[$targets_pattern]" ) )
173173
;;
174174
2-experimental*) export TARGETS_PRE="build/make/Makefile" TARGETS="build/make/Makefile"
175175
targets_pattern="${{ matrix.stage }}"
176176
targets_pattern="${targets_pattern#2-experimental-}"
177-
export TARGETS_OPTIONAL=$( echo $(export PATH=build/bin:$PATH && (for a in spkg-install.in spkg-install requirements.txt; do sage-package list :experimental: --has-file $a --no-file huge --no-file has_nonfree_dependencies; done) | grep -v ^_ | grep -v sagemath_doc | grep '^[${{ matrix.targets_pattern }}]' ) )
177+
export TARGETS_OPTIONAL=$( echo $(export PATH=build/bin:$PATH && (for a in spkg-install.in spkg-install requirements.txt; do sage-package list :experimental: --has-file $a --no-file huge --no-file has_nonfree_dependencies; done) | grep -v ^_ | grep -v sagemath_doc | grep "^[$targets_pattern]" ) )
178178
;;
179179
esac
180180
MAKE="make -j12" tox -e $TOX_ENV -- SAGE_NUM_THREADS=4 $TARGETS

.vscode/launch.json

+12
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,18 @@
88
"program": "${file}",
99
"console": "integratedTerminal",
1010
"justMyCode": false
11+
},
12+
{
13+
"name": "Sage: Test",
14+
"type": "python",
15+
"request": "launch",
16+
"program": "${workspaceFolder}/src/bin/sage-runtests",
17+
"args": [
18+
"--verbose",
19+
"${file}"
20+
],
21+
"console": "integratedTerminal",
22+
"justMyCode": false
1123
}
1224
],
1325
}

.zenodo.json

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"description": "Mirror of the Sage https://sagemath.org/ source tree",
33
"license": "other-open",
4-
"title": "sagemath/sage: 9.6.rc2",
5-
"version": "9.6.rc2",
4+
"title": "sagemath/sage: 9.6",
5+
"version": "9.6",
66
"upload_type": "software",
7-
"publication_date": "2022-04-25",
7+
"publication_date": "2022-05-15",
88
"creators": [
99
{
1010
"affiliation": "SageMath.org",
@@ -15,7 +15,7 @@
1515
"related_identifiers": [
1616
{
1717
"scheme": "url",
18-
"identifier": "https://github.com/sagemath/sage/tree/9.6.rc2",
18+
"identifier": "https://github.com/sagemath/sage/tree/9.6",
1919
"relation": "isSupplementTo"
2020
},
2121
{

VERSION.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
SageMath version 9.6.rc2, Release Date: 2022-04-25
1+
SageMath version 9.6, Release Date: 2022-05-15

build/make/Makefile.in

+2-2
Original file line numberDiff line numberDiff line change
@@ -505,7 +505,7 @@ $(1)-$(4)-no-deps:
505505
echo "$$($(4)_DISABLED_MESSAGE)" 2>&1; \
506506
exit 1; \
507507
else \
508-
$(AM_V_at)sage-logger -p 'SAGE_CHECK=$$(SAGE_CHECK_$(1)) PATH=$$($(4))/bin:$$$$PATH $$(SAGE_SPKG) $$(SAGE_SPKG_OPTIONS) \
508+
sage-logger -p 'SAGE_CHECK=$$(SAGE_CHECK_$(1)) PATH=$$($(4))/bin:$$$$PATH $$(SAGE_SPKG) $$(SAGE_SPKG_OPTIONS) \
509509
$(if $(filter $(1),$(TOOLCHAIN_DEPS)),--keep-existing) \
510510
$(1)-$(2) $$($(4))' '$$(SAGE_LOGS)/$(1)-$(2).log'; \
511511
fi
@@ -615,7 +615,7 @@ $(1)-$(4)-no-deps:
615615
echo "$$($(4)_DISABLED_MESSAGE)" 2>&1; \
616616
exit 1; \
617617
elif [ -x '$$(SAGE_ROOT)/build/pkgs/$(1)/spkg-install' ]; then \
618-
$(AM_V_at)cd '$$(SAGE_ROOT)/build/pkgs/$(1)' && \
618+
cd '$$(SAGE_ROOT)/build/pkgs/$(1)' && \
619619
. '$$(SAGE_ROOT)/src/bin/sage-src-env-config' && \
620620
. '$$(SAGE_ROOT)/src/bin/sage-env-config' && \
621621
. '$$(SAGE_ROOT)/src/bin/sage-env' && \

build/pkgs/configure/checksums.ini

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
tarball=configure-VERSION.tar.gz
2-
sha1=586eb612f05d0bc8e37e63d6740d7e7104ae10e9
3-
md5=44f1f222057ebe2bdbb8c9dbf41fc034
4-
cksum=1590172438
2+
sha1=f0ab7c18b3a169fdf7238fe8d70f8bce29373ef4
3+
md5=37b7220d90d9ec624e126ebb12cc8547
4+
cksum=3498005086
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9b2069cf00a00d955fc13cf7e3fbf8ea541aec5c
1+
888d18eb851f892097a0a683c01e3a95db863495

build/pkgs/gcc/checksums.ini

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
tarball=gcc-VERSION.tar.xz
2-
sha1=fb51ed1660c065898c75951fb38e1ebad7d49feb
3-
md5=443c15b92614a3ce8f22e3b24ca2226a
4-
cksum=990531701
2+
sha1=cf86a48278f9a6f4b03d4390550577b20353b4e9
3+
md5=4ee3e8c4c99e7b3444eb79f00f5f7a7e
4+
cksum=215110545
55
upstream_url=https://mirrors.kernel.org/gnu/gcc/gcc-VERSION/gcc-VERSION.tar.xz

build/pkgs/gcc/package-version.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
10.3.0
1+
11.3.0

build/pkgs/sage_setup/dependencies

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
$(PYTHON) cython pkgconfig $(SAGE_ROOT)/pkgs/sage-setup/sage_setup/autogen/interpreters/specs/*.py | $(PYTHON_TOOLCHAIN)
1+
$(PYTHON) cython pkgconfig $(SAGE_ROOT)/pkgs/sage-setup/sage_setup/autogen/interpreters/specs/*.py $(SAGE_ROOT)/pkgs/sage-setup/sage_setup/command/*.py | $(PYTHON_TOOLCHAIN)
22

33
----------
44
All lines of this file are ignored except the first.
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9.6.rc2
1+
9.6

pkgs/sagemath-standard/setup.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,12 @@
4747
from sage_setup.command.sage_build import sage_build
4848
from sage_setup.command.sage_build_cython import sage_build_cython
4949
from sage_setup.command.sage_build_ext import sage_build_ext
50-
from sage_setup.command.sage_install import sage_install_and_clean
50+
from sage_setup.command.sage_install import sage_develop, sage_install_and_clean
5151

5252
cmdclass = dict(build=sage_build,
5353
build_cython=sage_build_cython,
5454
build_ext=sage_build_ext,
55+
develop=sage_develop,
5556
install=sage_install_and_clean)
5657

5758
#########################################################

src/VERSION.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9.6.rc2
1+
9.6

src/bin/sage-version.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Sage version information for shell scripts
22
# This file is auto-generated by the sage-update-version script, do not edit!
3-
SAGE_VERSION='9.6.rc2'
4-
SAGE_RELEASE_DATE='2022-04-25'
5-
SAGE_VERSION_BANNER='SageMath version 9.6.rc2, Release Date: 2022-04-25'
3+
SAGE_VERSION='9.6'
4+
SAGE_RELEASE_DATE='2022-05-15'
5+
SAGE_VERSION_BANNER='SageMath version 9.6, Release Date: 2022-05-15'

src/doc/en/installation/binary.rst

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Linux
99
SageMath used to provide pre-built binaries for several Linux flavors.
1010
This has been discontinued, as most major Linux distributions have
1111
up-to-date distribution packages providing SageMath.
12+
See :ref:`sec-GNU-Linux` for information.
1213

1314

1415
macOS

src/doc/en/installation/conda.rst

+24-15
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,37 @@
33
Install from conda-forge
44
========================
55

6-
SageMath can be installed via Conda from the
6+
SageMath can be installed on Linux and macOS via Conda from the
77
`conda-forge <https://conda-forge.org>`_ conda channel.
88

9-
This works on Linux and macOS on ``x86_64`` processors,
10-
and on Linux on ``aarch64`` processors (using Miniforge).
9+
Both the ``x86_64`` (Intel) architecture and the ``arm64``/``aarch64``
10+
architectures (including Apple Silicon, M1) are supported.
1111

12-
This requires a working Conda installation: either Miniforge, Miniconda
13-
or Anaconda. If you don't have one yet, we recommend installing
14-
`Miniforge <https://github.com/conda-forge/miniforge#miniforge3>`_.
12+
You will need a working Conda installation: either Mambaforge/Miniforge,
13+
Miniconda or Anaconda. If you don't have one yet, we recommend installing
14+
`Mambaforge <https://github.com/conda-forge/miniforge#mambaforge>`_ as
15+
follows. In a terminal,
1516

16-
Miniforge uses conda-forge as the default channel. If you are
17-
using Miniconda or Anaconda, set it up to use conda-forge:
17+
.. code-block:: shell
18+
19+
$ curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-$(uname)-$(uname -m).sh
20+
$ sh Mambaforge-$(uname)-$(uname -m).sh
21+
22+
* Mambaforge and Miniforge use conda-forge as the default channel.
23+
24+
* If you are using Miniconda or Anaconda, set it up to use conda-forge:
25+
26+
* Add the conda-forge channel: ``conda config --add channels conda-forge``
1827

19-
* Add the conda-forge channel: ``conda config --add channels conda-forge``
20-
* Change channel priority to strict: ``conda config --set channel_priority strict``
28+
* Change channel priority to strict: ``conda config --set channel_priority strict``
2129

22-
Optionally, use `mamba <https://github.com/mamba-org/mamba>`_
23-
which uses a faster dependency solver than `conda`.
30+
Optionally, use `mamba <https://github.com/mamba-org/mamba>`_,
31+
which uses a faster dependency solver than ``conda``.
32+
If you installed Mambaforge, it is already provided. Otherwise, use
2433

2534
.. code-block:: shell
2635
27-
conda install mamba
36+
$ conda install mamba
2837
2938
3039
.. _sec-installation-conda-binary:
@@ -36,8 +45,8 @@ Create a new conda environment containing SageMath, either with ``mamba`` or ``c
3645

3746
.. code-block:: shell
3847
39-
mamba create -n sage sage python=X
40-
conda create -n sage sage python=X
48+
$ mamba create -n sage sage python=X # either
49+
$ conda create -n sage sage python=X # or
4150
4251
where ``X`` is version of Python, e.g. ``3.9``.
4352

src/doc/en/installation/index.rst

+63-45
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,10 @@ may have become available afterwards and can be found in the section
1414
`release tour <https://wiki.sagemath.org/ReleaseTours>`_ for each
1515
SageMath release.
1616

17-
**Where would you like to run SageMath?**
17+
**Where would you like to run SageMath?** Pick one of the following sections.
1818

19-
**On Linux:**
19+
macOS
20+
=====
2021

2122
- **Do you want to do SageMath development?**
2223

@@ -34,27 +35,57 @@ SageMath release.
3435
these describe an experimental method that gets all required
3536
packages, including Python packages, from conda-forge.
3637

37-
- No development: **Do you have root access (sudo)?**
38-
39-
- **Yes, root access:** Then the easiest way to install SageMath is
40-
through a Linux distribution that provides it as a package. Most
41-
major Linux distributions have up-to-date versions of SageMath,
42-
see `repology.org: sagemath
43-
<https://repology.org/project/sagemath/versions>`_ for an
44-
overview. See :ref:`sec-GNU-Linux` for additional information.
38+
- **No development:**
4539

46-
If you are on an older version of your distribution and a recent
47-
version of SageMath is only available on a newer version of the
48-
distribution, consider upgrading your distribution.
40+
- Install the `binary build of SageMath <https://github.com/3-manifolds/Sage_macOS/releases>`_
41+
from the 3-manifolds project. It is a signed and notarized app, which
42+
works for macOS 10.12 and newer. It is completely self-contained and
43+
provides the standard Sage distribution together with many optional
44+
packages. Additional optional Python packages can be installed with the
45+
``%pip`` magic command and will go into your ``~/.sage`` directory.
4946

50-
- **No root access:** Install SageMath from the `conda-forge
47+
- Alternatively, install SageMath from the `conda-forge
5148
<https://conda-forge.org/>`_ project, as described in section
5249
:ref:`sec-installation-conda`.
5350

5451
- Alternatively, build SageMath from source as described in section
5552
:ref:`sec-installation-from-sources`.
5653

57-
**On macOS:**
54+
Windows
55+
=======
56+
57+
- **Do you want to do SageMath development?**
58+
59+
- **Yes, development:**
60+
61+
Enable Windows Subsystem for Linux (WSL) by following the
62+
`official WSL setup guide
63+
<https://docs.microsoft.com/en-us/windows/wsl/install-win10>`_. Be
64+
sure to do the steps to install WSL2 and set it as default.
65+
Then go to the Microsoft Store and install Ubuntu (or another
66+
Linux distribution). Start Ubuntu from the start menu.
67+
68+
Then follow the instructions for development on Linux below.
69+
70+
- **No development:**
71+
72+
- Enable Windows Subsystem for Linux (WSL) by following the
73+
`official WSL setup guide
74+
<https://docs.microsoft.com/en-us/windows/wsl/install-win10>`_. Be
75+
sure to do the steps to install WSL2 and set it as default.
76+
Then go to the Microsoft Store and install Ubuntu (or another
77+
Linux distribution). Start Ubuntu from the start menu.
78+
79+
On the Linux running on WSL, you always have root access, so you
80+
can use any of the installation methods described below for
81+
Linux.
82+
83+
- Alternatively, in particular if you cannot use WSL, install
84+
`Cygwin <https://cygwin.com/>`_ and then build SageMath from source
85+
as described in section :ref:`sec-installation-from-sources`.
86+
87+
Linux
88+
=====
5889

5990
- **Do you want to do SageMath development?**
6091

@@ -72,47 +103,34 @@ SageMath release.
72103
these describe an experimental method that gets all required
73104
packages, including Python packages, from conda-forge.
74105

75-
- **No development:**
106+
- No development: **Do you have root access (sudo)?**
76107

77-
- Install the `binary build of SageMath <https://github.com/3-manifolds/Sage_macOS/releases>`_
78-
from the 3-manifolds project. It is a signed and notarized app.
79-
You can choose between two options: A 800 MB disk image with the standard Sage distribution,
80-
and a 1 GB disk image that adds many optional packages.
108+
- **Yes, root access:** Then the easiest way to install SageMath is
109+
through a Linux distribution that provides it as a package. Most
110+
major Linux distributions have up-to-date versions of SageMath,
111+
see `repology.org: sagemath
112+
<https://repology.org/project/sagemath/versions>`_ for an
113+
overview. See :ref:`sec-GNU-Linux` for additional information.
81114

82-
- Alternatively, install SageMath from the `conda-forge
83-
<https://conda-forge.org/>`_ project, as described in section
115+
If you are on an older version of your distribution and a recent
116+
version of SageMath is only available on a newer version of the
117+
distribution, consider upgrading your distribution.
118+
In particular, do not install a version of Sage older than 9.2.
119+
120+
- **No root access, or on an older distribution** Install SageMath from
121+
the `conda-forge <https://conda-forge.org/>`_ project, as described in section
84122
:ref:`sec-installation-conda`.
85123

86124
- Alternatively, build SageMath from source as described in section
87125
:ref:`sec-installation-from-sources`.
88126

89-
**On Windows:**
90-
91-
- **Do you want to do SageMath development?**
92-
93-
- **Yes, development:**
94-
95-
Enable Windows Subsystem for Linux (WSL), selecting any Linux
96-
distribution, for example Ubuntu. Then follow the instructions for
97-
development on Linux.
98-
99-
- **No development:**
100-
101-
- Enable Windows Subsystem for Linux (WSL), selecting any Linux
102-
distribution, for example Ubuntu. On the Linux running on WSL,
103-
you always have root access, so you can use any of the
104-
installation methods described above for Linux.
105-
106-
- Alternatively, in particular if you cannot use WSL, install
107-
`Cygwin <https://cygwin.com/>`_ and then build SageMath from source
108-
as described in section :ref:`sec-installation-from-sources`.
109-
110-
**In the cloud:**
127+
In the cloud
128+
============
111129

112130
- `CoCalc <https://cocalc.com/>`_: an online service that provides SageMath and
113131
many other tools.
114132

115-
- On any system that can allows you to bring your own Docker images to run in
133+
- On any system that allows you to bring your own Docker images to run in
116134
a container: Use the `Docker image sagemath/sagemath <https://hub.docker.com/r/sagemath/sagemath/>`_.
117135

118136
- `Sage Cell Server <https://sagecell.sagemath.org/>`_: an online service for

src/doc/en/installation/linux.rst

+6-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
Linux package managers
44
======================
55

6-
On Debian GNU/Linux version >= 9, Ubuntu version >= 18.04,
6+
On Debian GNU/Linux version >= 11, Ubuntu version >= 21.04, and
77
Arch Linux there are three packages to install
88

99
- ``sagemath`` (for the binaries)
@@ -16,11 +16,13 @@ Arch Linux there are three packages to install
1616
See `repology.org: sagemath
1717
<https://repology.org/project/sagemath/versions>`_ for information
1818
about SageMath packages in other distributions, and their available
19-
versions.
19+
versions. Do not install a version of Sage older than 9.2.
20+
If you are on an older version of your distribution and a recent
21+
version of SageMath is only available on a newer version of the
22+
distribution, consider upgrading your distribution.
2023

2124
Gentoo users might want to give a try to
2225
`sage-on-gentoo <https://github.com/cschwan/sage-on-gentoo>`_.
2326

24-
The SageMath wiki page `Distribution
25-
<https://wiki.sagemath.org/Distribution>`_ collects information
27+
The :trac:`Trac wiki page Distribution <wiki/Distribution>` collects information
2628
regarding packaging and distribution of SageMath.

src/doc/en/installation/source.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,7 @@ include:
349349
Ubuntu on Windows Subsystem for Linux (WSL) prerequisite installation
350350
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
351351

352-
Sage can be installed onto Linux running on Windows Subsystem for Linux (WSL). These instructions describe a fresh install of Ubuntu 20.10, but other distibutions or installation methods should work too, though have not been tested.
352+
Sage can be installed onto Linux running on Windows Subsystem for Linux (WSL). These instructions describe a fresh install of Ubuntu 20.10, but other distributions or installation methods should work too, though have not been tested.
353353

354354
- Enable hardware-assisted virtualization in the EFI or BIOS of your system. Refer to your system (or motherboard) maker's documentation for instructions on how to do this.
355355

0 commit comments

Comments
 (0)