Skip to content

Commit 7326051

Browse files
committed
Merge tag '9.8.beta1' into public/change_default_composition_for_elliptic_curve_isogenies
SageMath version 9.8.beta1, Release Date: 2022-09-29
2 parents b33e5da + 54cd6fe commit 7326051

File tree

720 files changed

+18239
-6457
lines changed

Some content is hidden

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

720 files changed

+18239
-6457
lines changed

.circleci/before-script.sh

-26
This file was deleted.

.circleci/config.yml

-89
This file was deleted.

.github/workflows/ci-linux.yml

+117-1
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,131 @@ env:
3333

3434
jobs:
3535

36-
docker:
36+
standard-pre:
3737
uses: ./.github/workflows/docker.yml
3838
with:
39+
# Build from scratch
40+
docker_targets: "with-system-packages configured with-targets-pre"
3941
# FIXME: duplicated from env.TARGETS
4042
targets_pre: all-sage-local
43+
tox_packages_factors: >-
44+
["standard"]
45+
docker_push_repository: ghcr.io/${{ github.repository }}/
46+
47+
standard:
48+
if: ${{ success() || failure() }}
49+
needs: [standard-pre]
50+
uses: ./.github/workflows/docker.yml
51+
with:
52+
# Build incrementally from previous stage (pre)
53+
incremental: true
54+
from_docker_repository: ghcr.io/${{ github.repository }}/
55+
from_docker_target: "with-targets-pre"
56+
docker_targets: "with-targets with-targets-optional"
57+
# FIXME: duplicated from env.TARGETS
4158
targets: build doc-html
4259
targets_optional: ptest
60+
tox_packages_factors: >-
61+
["standard"]
4362
docker_push_repository: ghcr.io/${{ github.repository }}/
4463

64+
minimal-pre:
65+
if: ${{ success() || failure() }}
66+
# It does not really "need" it.
67+
needs: [standard]
68+
uses: ./.github/workflows/docker.yml
69+
with:
70+
# Build from scratch
71+
docker_targets: "with-system-packages configured with-targets-pre"
72+
# FIXME: duplicated from env.TARGETS
73+
targets_pre: all-sage-local
74+
tox_packages_factors: >-
75+
["minimal"]
76+
docker_push_repository: ghcr.io/${{ github.repository }}/
77+
78+
minimal:
79+
if: ${{ success() || failure() }}
80+
needs: [minimal-pre]
81+
uses: ./.github/workflows/docker.yml
82+
with:
83+
# Build incrementally from previous stage (pre)
84+
incremental: true
85+
from_docker_repository: ghcr.io/${{ github.repository }}/
86+
from_docker_target: "with-targets-pre"
87+
docker_targets: "with-targets with-targets-optional"
88+
# FIXME: duplicated from env.TARGETS
89+
targets: build doc-html
90+
targets_optional: ptest
91+
tox_packages_factors: >-
92+
["minimal]
93+
docker_push_repository: ghcr.io/${{ github.repository }}/
94+
95+
maximal-pre:
96+
if: ${{ success() || failure() }}
97+
needs: [minimal]
98+
uses: ./.github/workflows/docker.yml
99+
with:
100+
# Build from scratch
101+
docker_targets: "with-system-packages configured with-targets-pre"
102+
# FIXME: duplicated from env.TARGETS
103+
targets_pre: all-sage-local
104+
tox_packages_factors: >-
105+
["maximal"]
106+
docker_push_repository: ghcr.io/${{ github.repository }}/
107+
108+
optional-0-o:
109+
if: ${{ success() || failure() }}
110+
needs: [maximal-pre]
111+
uses: ./.github/workflows/docker.yml
112+
with:
113+
incremental: true
114+
from_docker_repository: ghcr.io/${{ github.repository }}/
115+
from_docker_target: "with-targets-pre"
116+
tox_packages_factors: >-
117+
["maximal"]
118+
docker_targets: "with-targets-optional"
119+
targets_optional: '$(echo $(export PATH=build/bin:$PATH && sage-package list :optional: --has-file "spkg-install.in|spkg-install|requirements.txt" --no-file "huge|has_nonfree_dependencies" | grep -v sagemath_doc | grep ^[0-o]))'
120+
121+
122+
optional-p-z:
123+
if: ${{ success() || failure() }}
124+
needs: [optional-0-o]
125+
uses: ./.github/workflows/docker.yml
126+
with:
127+
incremental: true
128+
from_docker_repository: ghcr.io/${{ github.repository }}/
129+
from_docker_target: "with-targets-pre"
130+
tox_packages_factors: >-
131+
["maximal"]
132+
docker_targets: "with-targets-optional"
133+
targets_optional: '$(echo $(export PATH=build/bin:$PATH && sage-package list :optional: --has-file "spkg-install.in|spkg-install|requirements.txt" --no-file "huge|has_nonfree_dependencies" | grep -v sagemath_doc | grep ^[p-z]))'
134+
135+
experimental-0-o:
136+
if: ${{ success() || failure() }}
137+
needs: [optional-p-z]
138+
uses: ./.github/workflows/docker.yml
139+
with:
140+
incremental: true
141+
from_docker_repository: ghcr.io/${{ github.repository }}/
142+
from_docker_target: "with-targets-pre"
143+
tox_packages_factors: >-
144+
["maximal"]
145+
docker_targets: "with-targets-optional"
146+
targets_optional: '$(echo $(export PATH=build/bin:$PATH && sage-package list :experimental: --has-file "spkg-install.in|spkg-install|requirements.txt" --no-file "huge|has_nonfree_dependencies" | grep -v sagemath_doc | grep ^[0-o]))'
147+
148+
experimental-p-z:
149+
if: ${{ success() || failure() }}
150+
needs: [experimental-0-o]
151+
uses: ./.github/workflows/docker.yml
152+
with:
153+
incremental: true
154+
from_docker_repository: ghcr.io/${{ github.repository }}/
155+
from_docker_target: "with-targets-pre"
156+
tox_packages_factors: >-
157+
["maximal"]
158+
docker_targets: "with-targets-optional"
159+
targets_optional: '$(echo $(export PATH=build/bin:$PATH && sage-package list :experimental: --has-file "spkg-install.in|spkg-install|requirements.txt" --no-file "huge|has_nonfree_dependencies" | grep -v sagemath_doc | grep ^[p-z]))'
160+
45161
local-ubuntu:
46162

47163
runs-on: ubuntu-latest

.github/workflows/ci-macos.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -76,19 +76,19 @@ jobs:
7676
# For doctesting, we use a lower parallelization to avoid timeouts.
7777
run: |
7878
case "${{ matrix.stage }}" in
79-
1) export TARGETS_PRE="all-sage-local" TARGETS="all-sage-local" TARGETS_OPTIONAL=""
79+
1) export TARGETS_PRE="all-sage-local" TARGETS="all-sage-local" TARGETS_OPTIONAL="build/make/Makefile"
8080
;;
8181
2) export TARGETS_PRE="all-sage-local" TARGETS="build doc-html" TARGETS_OPTIONAL="ptest"
8282
;;
8383
2-optional*) export TARGETS_PRE="build/make/Makefile" TARGETS="build/make/Makefile"
8484
targets_pattern="${{ matrix.stage }}"
8585
targets_pattern="${targets_pattern#2-optional-}"
86-
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]" ) )
86+
export TARGETS_OPTIONAL=$( echo $(export PATH=build/bin:$PATH && sage-package list :optional: --has-file 'spkg-install.in|spkg-install|requirements.txt' --no-file huge|has_nonfree_dependencies | grep -v sagemath_doc | grep "^[$targets_pattern]" ) )
8787
;;
8888
2-experimental*) export TARGETS_PRE="build/make/Makefile" TARGETS="build/make/Makefile"
8989
targets_pattern="${{ matrix.stage }}"
9090
targets_pattern="${targets_pattern#2-experimental-}"
91-
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]" ) )
91+
export TARGETS_OPTIONAL=$( echo $(export PATH=build/bin:$PATH && sage-package list :experimental: --has-file 'spkg-install.in|spkg-install|requirements.txt' --no-file huge|has_nonfree_dependencies | grep -v sagemath_doc | grep "^[$targets_pattern]" ) )
9292
;;
9393
esac
9494
MAKE="make -j12" tox -e $TOX_ENV -- SAGE_NUM_THREADS=4 $TARGETS

.github/workflows/doc-build.yml

-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ jobs:
2424
# Reuse built SAGE_LOCAL contained in the Docker image
2525
./bootstrap
2626
./configure --enable-build-as-root --prefix=/sage/local --with-sage-venv --enable-download-from-upstream-url
27-
make furo
2827
2928
- name: Build
3029
run: make doc-html

.github/workflows/docker.yml

+31-12
Original file line numberDiff line numberDiff line change
@@ -18,24 +18,20 @@ on:
1818
default: >-
1919
["ubuntu-trusty-toolchain-gcc_9",
2020
"ubuntu-xenial-toolchain-gcc_9",
21-
"ubuntu-bionic",
21+
"ubuntu-bionic-gcc_8",
2222
"ubuntu-focal",
2323
"ubuntu-jammy",
2424
"ubuntu-kinetic",
25-
"debian-stretch",
2625
"debian-buster",
2726
"debian-bullseye",
2827
"debian-bookworm",
2928
"debian-sid",
30-
"linuxmint-19",
31-
"linuxmint-19.3",
29+
"linuxmint-19-gcc_8",
30+
"linuxmint-19.3-gcc_8",
3231
"linuxmint-20.1",
3332
"linuxmint-20.2",
3433
"linuxmint-20.3",
3534
"linuxmint-21",
36-
"fedora-26",
37-
"fedora-27",
38-
"fedora-28",
3935
"fedora-29",
4036
"fedora-30",
4137
"fedora-31",
@@ -51,8 +47,8 @@ on:
5147
"gentoo-python3.9",
5248
"gentoo-python3.10",
5349
"archlinux-latest",
54-
"opensuse-15.3",
55-
"opensuse-15.4",
50+
"opensuse-15.3-gcc_11",
51+
"opensuse-15.4-gcc_11",
5652
"opensuse-tumbleweed",
5753
"conda-forge",
5854
"ubuntu-bionic-i386",
@@ -68,14 +64,33 @@ on:
6864
]
6965
max_parallel:
7066
type: number
71-
default: 20
67+
default: 24
7268
#
7369
# Publishing to GitHub Packages
7470
#
7571
docker_push_repository:
7672
required: false
7773
type: string
7874
#
75+
# Incremental builds
76+
#
77+
docker_targets:
78+
default: "with-system-packages configured with-targets-pre with-targets with-targets-optional"
79+
type: string
80+
incremental:
81+
default: false
82+
type: boolean
83+
from_docker_repository:
84+
required: false
85+
type: string
86+
from_docker_target:
87+
required: false
88+
type: string
89+
from_docker_tag:
90+
required: false
91+
default: "$BUILD_TAG"
92+
type: string
93+
#
7994
# For use in upstream CIs
8095
#
8196
upstream_artifact:
@@ -104,12 +119,16 @@ jobs:
104119
tox_system_factor: ${{ fromJson(inputs.tox_system_factors) }}
105120
tox_packages_factor: ${{ fromJson(inputs.tox_packages_factors) }}
106121
env:
107-
TOX_ENV: docker-${{ matrix.tox_system_factor }}-${{ matrix.tox_packages_factor }}
122+
TOX_ENV: "docker-${{ matrix.tox_system_factor }}-${{ matrix.tox_packages_factor }}${{ inputs.incremental && '-incremental' || '' }}"
108123
LOGS_ARTIFACT_NAME: logs-commit-${{ github.sha }}-tox-docker-${{ matrix.tox_system_factor }}-${{ matrix.tox_packages_factor }}
109-
DOCKER_TARGETS: with-system-packages configured with-targets-pre with-targets with-targets-optional
124+
DOCKER_TARGETS: ${{ inputs.docker_targets }}
110125
TARGETS_PRE: ${{ inputs.targets_pre }}
111126
TARGETS: ${{ inputs.targets }}
112127
TARGETS_OPTIONAL: ${{ inputs.targets_optional }}
128+
FROM_DOCKER_REPOSITORY: ${{ inputs.from_docker_repository }}
129+
FROM_DOCKER_TARGET: ${{ inputs.from_docker_target }}
130+
FROM_DOCKER_TAG: ${{ inputs.from_docker_tag }}
131+
113132
steps:
114133
- name: Check out SageMath
115134
uses: actions/checkout@v2

0 commit comments

Comments
 (0)