Skip to content

Commit 544556d

Browse files
committed
Merge tag '10.5.beta1' into public/elliptic_curve_logarithms_2dim
SageMath version 10.5.beta1, Release Date: 2024-08-03
2 parents 2f3affc + 0f34773 commit 544556d

2,568 files changed

Lines changed: 53254 additions & 71297 deletions

File tree

Some content is hidden

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

.ci/create-changes-html.sh

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -24,26 +24,27 @@ const diffSite = 'https://pianomister.github.io/diffsite'
2424
const diffParagraphs = document.querySelectorAll('p.diff');
2525
diffParagraphs.forEach(paragraph => {
2626
const rootURL = window.location.origin;
27-
const docAnchor = paragraph.querySelector('a'); // first "a" element
27+
const docAnchor = paragraph.querySelector('a');
2828
const url = new URL(docAnchor.href);
2929
const path = url.pathname;
3030
const anchor = document.createElement('a');
3131
anchor.href = diffSite + '/?url1=' + rootURL + path + '&url2=' + baseDocURL + path;
3232
anchor.textContent = 'compare with the base';
3333
anchor.setAttribute('target', '_blank');
34+
paragraph.innerHTML += '  ';
3435
paragraph.appendChild(anchor);
35-
paragraph.innerHTML += ' ';
36-
const hunkAnchors = paragraph.querySelectorAll('a.hunk');
37-
hunkAnchors.forEach(hunkAnchor => {
36+
const hunks = paragraph.parentNode.querySelectorAll('p.hunk');
37+
hunks.forEach(hunk => {
38+
const hunkAnchor = hunk.querySelector('a');
3839
const url = new URL(hunkAnchor.href);
3940
const path = url.pathname;
4041
const pathHash = path + url.hash.replace('#', '%23');
4142
const anchor = document.createElement('a');
4243
anchor.href = diffSite + '/?url1=' + rootURL + pathHash + '&url2=' + baseDocURL + path;
43-
anchor.textContent = hunkAnchor.textContent;
44+
anchor.textContent = 'compare with the base';
4445
anchor.setAttribute('target', '_blank');
45-
paragraph.appendChild(anchor);
46-
paragraph.innerHTML += ' ';
46+
hunk.innerHTML += '  ';
47+
hunk.appendChild(anchor);
4748
});
4849
});
4950
});
@@ -54,39 +55,51 @@ echo '<body>' >> CHANGES.html
5455
(cd $DOC_REPOSITORY && git diff $BASE_DOC_COMMIT -- "*.html") > diff.txt
5556
python3 - << EOF
5657
import os, re, html
58+
from itertools import chain
5759
with open('diff.txt', 'r') as f:
5860
diff_text = f.read()
5961
diff_blocks = re.split(r'^(?=diff --git)', diff_text, flags=re.MULTILINE)
6062
out_blocks = []
6163
for block in diff_blocks:
6264
match = re.search(r'^diff --git a/(.*) b/\1', block, flags=re.MULTILINE)
6365
if match:
64-
doc = match.group(1)
65-
file_path = os.path.join('$DOC_REPOSITORY', doc)
66+
path = match.group(1)
67+
file_path = os.path.join('$DOC_REPOSITORY', path)
6668
try:
6769
with open(file_path, 'r') as file:
6870
content = file.readlines()
6971
except FileNotFoundError:
7072
content = []
7173
count = 0
74+
hunks = []
75+
hunk_lines = []
76+
in_hunk = False
7277
for line in block.splitlines():
7378
if line.startswith('@@ -'):
79+
if hunk_lines:
80+
hunks.append('<pre><code class="language-diff">'
81+
+ html.escape('\n'.join(hunk_lines)).strip()
82+
+ '</code></pre>')
83+
hunk_lines = []
7484
search_result = re.search(r'@@ -(\d+),(\d+) \+(\d+),(\d+)', line)
7585
if search_result:
7686
line_number = int(search_result.group(3))
77-
for i in range(line_number - 1, -1, -1):
78-
if content[i].startswith('<'):
87+
span = int(search_result.group(4))
88+
for i in chain(range(line_number, line_number + span), range(line_number - 1, -1, -1)):
89+
if content[i].startswith('<') and not content[i].startswith('</'):
7990
count += 1
8091
content[i] = f'<span id="hunk{count}" style="visibility: hidden;"></span>' + content[i]
92+
hunks.append(f'<p class="hunk"><a href="{path}#hunk{count}" class="hunk" target="_blank">hunk #{count}</a></p>')
8193
break
94+
hunk_lines.append(line)
95+
if hunk_lines:
96+
hunks.append('<pre><code class="language-diff">'
97+
+ html.escape('\n'.join(hunk_lines)).strip()
98+
+ '</code></pre>')
8299
if content:
83100
with open(file_path, 'w') as file:
84101
file.writelines(content)
85-
path = doc
86-
hunks = '&nbsp;'.join(f'<a href="{path}#hunk{i+1}" class="hunk" target="_blank">#{i + 1}</a>' for i in range(count))
87-
out_blocks.append(f'<p class="diff"><a href="{path}">{doc}</a>&nbsp;' + hunks + '&emsp;</p>'
88-
+ '\n<pre><code class="language-diff">'
89-
+ html.escape(block).strip() + '</code></pre>')
102+
out_blocks.append(f'<div class="diff"><p class="diff"><a href="{path}">{path}</a></p>\n' + '\n'.join(hunks) + '\n</div>')
90103
output_text = '\n'.join(out_blocks)
91104
with open('diff.html', 'w') as f:
92105
f.write(output_text)

.ci/write-dockerfile.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ RUN cd /new && rm -rf .git && \
354354
mv src /sage/src; \
355355
cd /sage && ./bootstrap && ./config.status; \
356356
fi; \
357-
cd /sage && rm -rf /new .git
357+
cd /sage && rm -rf .git; rm -rf /new || echo "(error ignored)"
358358
359359
ARG TARGETS="build"
360360
$RUN $CHECK_STATUS_THEN make SAGE_SPKG="sage-spkg -y -o" \${USE_MAKEFLAGS} \${TARGETS} $ENDRUN $THEN_SAVE_STATUS

.github/workflows/ci-linux-incremental.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,8 @@ jobs:
124124
# with only a small number of test failures as of 10.2.rc0
125125
tox_system_factors: >-
126126
["gentoo-python3.11",
127-
"archlinux-latest"]
127+
"archlinux-latest",
128+
"fedora-40"]
128129
tox_packages_factors: >-
129130
["standard-sitepackages"]
130131
docker_push_repository: ghcr.io/${{ github.repository }}/

.github/workflows/ci-linux.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,7 @@ jobs:
116116
"debian-sid",
117117
"linuxmint-21.1",
118118
"linuxmint-21.2",
119-
"fedora-38",
120-
"fedora-39",
119+
"fedora-40",
121120
"centos-stream-9-python3.9",
122121
"almalinux-8-python3.9",
123122
"gentoo-python3.10",

.github/workflows/doc-build.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,9 @@ jobs:
153153
find . -name "*.html" | xargs sed -i -e '/class="sidebar-brand-text"/ s/Sage [0-9a-z.]* /Sage '"$new_version"' /' \
154154
-e '/<link rel="stylesheet"/ s/?v=[0-9a-f]*"/"/' \
155155
-e 's;'"$mathjax_path_from"';'"$mathjax_path_to"';' \
156-
-e '\;<script type="application/vnd\.jupyter\.widget-state+json">;,\;</script>; d')
156+
-e '\;<script type="application/vnd\.jupyter\.widget-state+json">;,\;</script>; d' \
157+
-e 's;#L[0-9]*";";' \
158+
&& true)
157159
# Create git repo from old doc
158160
(cd doc && \
159161
git init && \
@@ -199,6 +201,7 @@ jobs:
199201
find . -name "*.html" | xargs sed -i -e '/This is documentation/ s/ built with GitHub PR .* for development/ for development/' \
200202
-e '/<link rel="stylesheet"/ s/?v=[0-9a-f]*"/"/' \
201203
-e '\;<script type="application/vnd\.jupyter\.widget-state+json">;,\;</script>; d' \
204+
-e 's;#L[0-9]*";";' \
202205
&& git commit -a -m 'wipe-out')
203206
# Since HEAD is at commit 'wipe-out', HEAD~1 is commit 'new' (new doc), HEAD~2 is commit 'old' (old doc)
204207
.ci/create-changes-html.sh $(cd doc && git rev-parse HEAD~2) doc

CITATION.cff

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ title: SageMath
44
abstract: SageMath is a free open-source mathematics software system.
55
authors:
66
- name: "The SageMath Developers"
7-
version: 10.5.beta0
7+
version: 10.5.beta1
88
doi: 10.5281/zenodo.8042260
9-
date-released: 2024-07-24
9+
date-released: 2024-08-03
1010
repository-code: "https://github.com/sagemath/sage"
1111
url: "https://www.sagemath.org/"

VERSION.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
SageMath version 10.5.beta0, Release Date: 2024-07-24
1+
SageMath version 10.5.beta1, Release Date: 2024-08-03

build/pkgs/4ti2/distros/fedora.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
4ti2
2+
4ti2-devel
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
python3.9
2-
python3.9-devel
32
# Except on centos-stream-8 and almalinux-8, where it is called python39 and python39-devel; we special-case this in tox.ini
3+
# python3.9 does not exist any more
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
python-beautifulsoup4
1+
python3-beautifulsoup4

0 commit comments

Comments
 (0)