Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into use-pari-zncoppers…
Browse files Browse the repository at this point in the history
…mith
  • Loading branch information
grhkm21 committed Jan 31, 2025
2 parents 542eb8e + dc99dc8 commit a9650e8
Show file tree
Hide file tree
Showing 435 changed files with 8,582 additions and 5,992 deletions.
102 changes: 2 additions & 100 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ concurrency:
#
# The three workflows:
#
# - build.yml (with jobs test-new, test-mod, test-long),
# - build.yml (with jobs test-new, test-long),
# - doc-build.yml,
# - doc-build-pdf.yml
#
Expand All @@ -50,7 +50,7 @@ concurrency:
# This baseline is transparently improved by our use of the GH Actions cache,
# see https://docs.docker.com/build/ci/github-actions/cache/#cache-backend-api.
#
# Jobs test-mod and test-long are only started after test-new completed;
# Jobs test-long is only started after test-new completed;
# but the workflows doc-build.yml and doc-build-pdf.yml are started independently.
#
# - When nothing is cached and the 3 workflows are launched in parallel,
Expand Down Expand Up @@ -254,104 +254,6 @@ jobs:
./sage -t --long --format github -p4 ${{ steps.changed-files.outputs.doctests_all_changed_files }}
shell: sh .ci/docker-exec-script.sh BUILD /sage {0}

test-mod:
runs-on: ubuntu-latest
needs: [test-new]
services:
# https://docs.docker.com/build/ci/github-actions/local-registry/
registry:
image: registry:2
ports:
- 5000:5000
strategy:
fail-fast: false
matrix:
targets:
- sagemath_categories-check
steps:
- name: Maximize build disk space
uses: easimon/maximize-build-space@v10
with:
# need space in /var for Docker images
root-reserve-mb: 30000
remove-dotnet: true
remove-android: true
remove-haskell: true
remove-codeql: true
remove-docker-images: true

- name: Checkout
id: checkout
uses: actions/checkout@v4

- name: Install test prerequisites
# From docker.yml
run: |
sudo DEBIAN_FRONTEND=noninteractive apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get install tox
sudo apt-get clean
df -h
- name: Merge CI fixes from sagemath/sage
# From docker.yml
# This step needs to happen after the commit sha is put in DOCKER_TAG
# so that multi-stage builds can work correctly.
run: |
.ci/merge-fixes.sh
env:
GH_TOKEN: ${{ github.token }}

# Building

- name: Generate Dockerfile
# From docker.yml
run: |
tox -e ${{ env.TOX_ENV }}
cp .tox/${{ env.TOX_ENV }}/Dockerfile .
env:
# Only generate the Dockerfile, do not run 'docker build' here
DOCKER_TARGETS: ""

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
driver-opts: network=host

- name: Build Docker image
id: image
uses: docker/build-push-action@v6
with:
push: true
load: false
context: .
tags: ${{ env.BUILD_IMAGE }}
target: with-targets
cache-from: type=gha
cache-to: type=gha,mode=max
build-args: |
NUMPROC=6
USE_MAKEFLAGS=-k V=0 SAGE_NUM_THREADS=4 --output-sync=recurse
TARGETS_PRE=build/make/Makefile
TARGETS=${{ needs.test-new.outputs.build_targets }}
- name: Start container
id: container
if: (success() || failure())
run: |
docker run --name BUILD -dit \
--mount type=bind,src=$(pwd),dst=$(pwd) \
--workdir $(pwd) \
${{ env.BUILD_IMAGE }} /bin/sh
# Testing

- name: Test modularized distributions
if: (success() || failure()) && steps.container.outcome == 'success'
run: |
export MAKE="make -j2 --output-sync=recurse" SAGE_NUM_THREADS=4
make V=0 tox-ensure && make ${{ matrix.targets }}
shell: sh .ci/docker-exec-script.sh BUILD /sage {0}

test-long:
runs-on: ubuntu-latest
needs: [test-new]
Expand Down
15 changes: 2 additions & 13 deletions .github/workflows/ci-conda.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,23 +26,12 @@ jobs:
# On pushes to tags or branches, test the whole matrix.
os: >-
${{ github.event_name == 'pull_request'
&& fromJson('["ubuntu-latest"]')
&& fromJson('["ubuntu-latest", "macos-latest"]')
|| fromJson('["ubuntu-latest", "macos-latest", "macos-13"]') }}
python: >-
${{ github.event_name == 'pull_request'
&& fromJson('["3.9"]')
|| fromJson('["3.9", "3.10", "3.11"]') }}
python: ['3.11', '3.12']
# Optional environment is disabled for now as its not yet working
# environment: [environment, environment-optional]
conda-env: [environment]
# On pull requests, only test two jobs:
# Ubuntu with Python 3.9, macOS (arm64) with Python 3.11.
# Build & Test currently uses Python 3.10 (on ubuntu-jammy).
# Together, they cover the supported minor Python versions.
include: >-
${{ github.event_name == 'pull_request'
&& fromJson('[{"os": "macos-latest", "python": "3.11", "conda-env": "environment"}]')
|| fromJson('[]') }}

steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-meson.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu]
python: ['3.9', '3.10', '3.11']
python: ['3.11', '3.12']

steps:
- uses: actions/checkout@v4
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,8 @@ jobs:
\"tag_name\": \"${{ github.ref_name }}\",
\"previous_tag_name\": \"$latest_release_tag\"
}" | jq -r '.body')
# escape special characters for json
release_notes=$(jq -R -s '.' <<< "$release_notes")
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
Expand All @@ -144,7 +146,7 @@ jobs:
-d "{
\"tag_name\": \"${{ github.ref_name }}\",
\"prerelease\": ${{ contains(github.ref, 'beta') || contains(github.ref, 'rc') }},
\"body\": \"$release_notes\"
\"body\": $release_notes
}"
- name: Create release assets
uses: softprops/action-gh-release@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pyright.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
eval $(sage-print-system-package-command auto --spkg --yes --no-install-recommends install git)
- name: Install GH CLI
uses: dev-hanz-ops/[email protected].0
uses: dev-hanz-ops/[email protected].1
with:
gh-cli-version: 2.32.0

Expand Down
10 changes: 4 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,11 @@
# no longer generated, but may still be in user worktrees
/src/lib/pkgconfig

# Conda environment files
# The files without Python version, with -dev or in src are no longer generated
# but may still be in users' directories.
# Conda environment files (auto-generated)
/environment-3.[0-9].yml
/environment-3.[0-9][0-9].yml
# The following files are no longer generated but may still be in users' directories
/environment.yml
/environment-3.9.yml
/environment-3.10.yml
/environment-3.11.yml
/environment-dev-3.9.yml
/environment-dev-3.10.yml
/environment-dev-3.11.yml
Expand Down
8 changes: 7 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -108,5 +108,11 @@
"zmin"
],
"editor.formatOnType": true,
"esbonio.sphinx.confDir": ""
"esbonio.sphinx.confDir": "",
// Don't update the settings.json file with values inferred from Meson (we provide them manually)
"mesonbuild.modifySettings": false,
// Use the Meson build system for C/C++ files
"C_Cpp.default.configurationProvider": "mesonbuild.mesonbuild",
// Use the compile_commands.json file generated by Meson for IntelliSense
"C_Cpp.default.compileCommands": "${workspaceFolder}/builddir/compile_commands.json"
}
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ title: SageMath
abstract: SageMath is a free open-source mathematics software system.
authors:
- name: "The SageMath Developers"
version: 10.6.beta3
version: 10.6.beta5
doi: 10.5281/zenodo.8042260
date-released: 2025-01-04
date-released: 2025-01-26
repository-code: "https://github.com/sagemath/sage"
url: "https://www.sagemath.org/"
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ distclean: build-clean
bootstrap-clean:
rm -rf config/install-sh config/compile config/config.guess config/config.sub config/missing configure build/make/Makefile-auto.in
rm -f src/doc/en/installation/*.txt
find src/doc/en/reference/spkg -name index.rst -prune -o -maxdepth 1 -name "*.rst" -exec rm -f {} \+
find src/doc/en/reference/spkg -maxdepth 1 -name index.rst -prune -o -name "*.rst" -exec rm -f {} \+
for a in environment environment-optional src/environment src/environment-optional; do rm -f $$a.yml $$a-3.[89].yml $$a-3.1[0-9].yml; done
rm -f src/requirements.txt
rm -f src/setup.cfg
Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
SageMath version 10.6.beta3, Release Date: 2025-01-04
SageMath version 10.6.beta5, Release Date: 2025-01-26
4 changes: 2 additions & 2 deletions bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -224,8 +224,8 @@ save () {
config/install-sh config/compile config/config.guess config/config.sub config/missing \
build/make/Makefile-auto.in \
src/doc/en/installation/*.txt \
$(find src/doc/en/reference/spkg -name index.rst -prune -o -maxdepth 1 -name "*.rst" -print) \
environment-3.[89]-*.yml environment-3.1[0-9]-*.yml \
$(find src/doc/en/reference/spkg -maxdepth 1 -name index.rst -prune -o -name "*.rst" -print) \
environment-3.1[0-9]-*.yml \
src/pyproject.toml \
src/requirements.txt \
src/setup.cfg \
Expand Down
16 changes: 8 additions & 8 deletions build/bin/sage-spkg
Original file line number Diff line number Diff line change
Expand Up @@ -603,14 +603,14 @@ case "$PKG_SRC" in
esac
# Poison the proxy variable to forbid downloads in spkg-install
# for normal packages
case $PKG_SRC_TYPE in
normal|wheel)
export http_proxy=http://192.0.2.0:5187/
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export rsync_proxy=$http_proxy
;;
# for normal/wheel standard packages
case "$PKG_TYPE:$PKG_SRC_TYPE" in
standard:normal|standard:wheel)
export http_proxy=http://192.0.2.0:5187/
export https_proxy=$http_proxy
export ftp_proxy=$http_proxy
export rsync_proxy=$http_proxy
;;
esac
# Make sage-logger show the full logs
Expand Down
1 change: 0 additions & 1 deletion build/pkgs/ccache/spkg-install.in
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ mkdir build
cd build
sdh_cmake -DCMAKE_BUILD_TYPE=Release \
-DENABLE_TESTING=OFF \
-DREDIS_STORAGE_BACKEND=OFF \
..
sdh_make
sdh_make_install
Expand Down
4 changes: 2 additions & 2 deletions build/pkgs/configure/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
tarball=configure-VERSION.tar.gz
sha1=852d0d200a6a73aa5ddb9e00874cbe4a61c211e9
sha256=c4b089d90850dfdf15b905f66e4f6a0d961b96eb0663d8603beaff1a9efb2cbe
sha1=86711d4cbef2cd4e7bb4afcde36965e5dea908e0
sha256=9793cf92ebdceb09050a585294de93c242c033745a0012cae1bd301d307a45df
2 changes: 1 addition & 1 deletion build/pkgs/configure/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
a2ba1f943f88775218c385efe55509c4548d1b44
efc0914cd8d72a9bdfdcca4511b55e290b9b6674
4 changes: 2 additions & 2 deletions build/pkgs/igraph/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=igraph-VERSION.tar.gz
sha1=3789f61beac1f1231f8c3832102dcb2720f2a0c9
sha256=b011f7f9f38a3e59924cc9ff652e6d33105fa03fcaf3792f47d752626a0a4625
sha1=af74e361167bd790ed2fcc248acd21ec946ddb2a
sha256=03ba01db0544c4e32e51ab66f2356a034394533f61b4e14d769b9bbf5ad5e52c
upstream_url=https://github.com/igraph/igraph/releases/download/VERSION/igraph-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/igraph/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.10.12
0.10.15
2 changes: 1 addition & 1 deletion build/pkgs/igraph/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ SAGE_SPKG_CONFIGURE([igraph], [
dnl check for igraph with pkg-config
dnl Per upstream in https://github.com/sagemath/sage/pull/36750#issuecomment-1826998762:
dnl each python-igraph release is only guaranteed to be compatible with the same C/igraph that it bundles
PKG_CHECK_MODULES([IGRAPH], [igraph >= 0.10.12 igraph < 0.10.13], [], [
PKG_CHECK_MODULES([IGRAPH], [igraph >= 0.10.14 igraph < 0.10.16], [], [
sage_spkg_install_igraph=yes])
])
])
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/ore_algebra/requirements.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
git+https://github.com/mkauers/ore_algebra@01c357f590685ff362c008229681ee08269457da#egg=ore_algebra
ore_algebra @ git+https://github.com/mkauers/ore_algebra
4 changes: 2 additions & 2 deletions build/pkgs/python_igraph/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=python-igraph-VERSION.tar.gz
sha1=da963213ab22c60938d4e77ffab811875ee43a8a
sha256=2d71d645a4c3344c5910543fabbae10d3163f46a3e824ba7753c14b9036b8233
sha1=19b52531169f200ff60f2cb8245eaa9e277c6c13
sha256=d7dc1404567ba3b0ea1bf8b5fa6e101617915c8ad11ea5a9f925a40bf4adad7d
upstream_url=https://files.pythonhosted.org/packages/source/i/igraph/igraph-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/python_igraph/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.11.5
0.11.8
2 changes: 1 addition & 1 deletion build/pkgs/sage_conf/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sage-conf ~= 10.6b3
sage-conf ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sage_docbuild/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sage-docbuild ~= 10.6b3
sage-docbuild ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sage_setup/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sage-setup ~= 10.6b3
sage-setup ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sage_sws2rst/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sage-sws2rst ~= 10.6b3
sage-sws2rst ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagelib/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-standard ~= 10.6b3
sagemath-standard ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_bliss/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-bliss ~= 10.6b3
sagemath-bliss ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_categories/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-categories ~= 10.6b3
sagemath-categories ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_coxeter3/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-coxeter3 ~= 10.6b3
sagemath-coxeter3 ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_environment/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-environment ~= 10.6b3
sagemath-environment ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_mcqd/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-mcqd ~= 10.6b3
sagemath-mcqd ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_meataxe/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-meataxe ~= 10.6b3
sagemath-meataxe ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_objects/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-objects ~= 10.6b3
sagemath-objects ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_repl/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-repl ~= 10.6b3
sagemath-repl ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_sirocco/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-sirocco ~= 10.6b3
sagemath-sirocco ~= 10.6b5
2 changes: 1 addition & 1 deletion build/pkgs/sagemath_tdlib/version_requirements.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# This file is updated on every release by the sage-update-version script
sagemath-tdlib ~= 10.6b3
sagemath-tdlib ~= 10.6b5
3 changes: 2 additions & 1 deletion build/sage_bootstrap/download/mirror_list.py
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,8 @@ def _rank_mirrors(self):
This method is used by the YUM fastestmirror plugin
"""
timed_mirrors = []
import time, socket
import time
import socket
log.info('Searching fastest mirror')
timeout = 1
for mirror in self.mirrors:
Expand Down
Loading

0 comments on commit a9650e8

Please sign in to comment.