Skip to content

Commit

Permalink
Merge branch 'develop' into p/38659/p/streamline-installation-guide
Browse files Browse the repository at this point in the history
  • Loading branch information
kwankyu committed Nov 11, 2024
2 parents 4599353 + 209ae4c commit 65f3178
Show file tree
Hide file tree
Showing 835 changed files with 12,456 additions and 3,220 deletions.
8 changes: 4 additions & 4 deletions .ci/write-dockerfile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ ARG NUMPROC=8
ENV MAKE="make -j\${NUMPROC}"
ARG USE_MAKEFLAGS="-k V=0"
ENV SAGE_CHECK=warn
ENV SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
ENV SAGE_CHECK_PACKAGES="!cython,!python3,!cysignals,!linbox,!ppl,!cmake,!rpy2,!sage_sws2rst"
#:toolchain:
$RUN$CHECK_STATUS_THEN make \${USE_MAKEFLAGS} base-toolchain$ENDRUN$THEN_SAVE_STATUS
Expand All @@ -335,7 +335,7 @@ ARG NUMPROC=8
ENV MAKE="make -j\${NUMPROC}"
ARG USE_MAKEFLAGS="-k V=0"
ENV SAGE_CHECK=warn
ENV SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
ENV SAGE_CHECK_PACKAGES="!cython,!python3,!cysignals,!linbox,!ppl,!cmake,!rpy2,!sage_sws2rst"
#:make:
ARG TARGETS_PRE="all-sage-local"
$RUN$CHECK_STATUS_THEN make SAGE_SPKG="sage-spkg -y -o" \${USE_MAKEFLAGS} \${TARGETS_PRE}$ENDRUN$THEN_SAVE_STATUS
Expand All @@ -345,7 +345,7 @@ ARG NUMPROC=8
ENV MAKE="make -j\${NUMPROC}"
ARG USE_MAKEFLAGS="-k V=0"
ENV SAGE_CHECK=warn
ENV SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
ENV SAGE_CHECK_PACKAGES="!cython,!python3,!cysignals,!linbox,!ppl,!cmake,!rpy2,!sage_sws2rst"
$ADD .gitignore /new/.gitignore
$ADD src /new/src
RUN cd /new && rm -rf .git && \\
Expand All @@ -366,7 +366,7 @@ ARG NUMPROC=8
ENV MAKE="make -j\${NUMPROC}"
ARG USE_MAKEFLAGS="-k V=0"
ENV SAGE_CHECK=warn
ENV SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
ENV SAGE_CHECK_PACKAGES="!cython,!python3,!cysignals,!linbox,!ppl,!cmake,!rpy2,!sage_sws2rst"
ARG TARGETS_OPTIONAL="ptest"
$RUN$CHECK_STATUS_THEN make SAGE_SPKG="sage-spkg -y -o" \${USE_MAKEFLAGS} \${TARGETS_OPTIONAL} || echo "(error ignored)"$ENDRUN$THEN_SAVE_STATUS
Expand Down
1 change: 1 addition & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,4 @@ coverage:
target: auto
threshold: 0%
base: auto
informational: true
79 changes: 79 additions & 0 deletions .github/workflows/ci-meson.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: Build & Test using Meson

on:
push:
branches:
- master
- develop
pull_request:
workflow_dispatch:
# Allow to run manually

concurrency:
# Cancel previous runs of this workflow for the same branch
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
test:
name: Conda (${{ matrix.os }}, Python ${{ matrix.python }})
runs-on: ${{ matrix.os }}-latest

strategy:
fail-fast: false
matrix:
os: [ubuntu]
python: ['3.9', '3.10', '3.11']

steps:
- uses: actions/checkout@v4

- name: Merge CI fixes from sagemath/sage
run: |
.ci/merge-fixes.sh
env:
GH_TOKEN: ${{ github.token }}

- name: Cache conda packages
uses: actions/cache@v4
with:
path: ~/conda_pkgs_dir
key:
${{ runner.os }}-conda-${{ hashFiles('src/environment-3.11-linux.yml') }}

- name: Compiler cache
uses: hendrikmuhs/[email protected]
with:
key: ${{ runner.os }}-meson-${{ matrix.python }}

- name: Setup Conda environment
uses: conda-incubator/setup-miniconda@v2
with:
python-version: ${{ matrix.python }}
miniforge-version: latest
use-mamba: true
channels: conda-forge
channel-priority: true
activate-environment: sage
environment-file: src/environment-${{ matrix.python }}-${{ startsWith(matrix.os, 'macos') && (startsWith(runner.arch, 'ARM') && 'macos' || 'macos-x86_64') || 'linux' }}.yml

- name: Print Conda environment
shell: bash -l {0}
run: |
conda info
conda list
- name: Build
shell: bash -l {0}
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
export CC="ccache $CC"
export CXX="ccache $CXX"
pip install --no-build-isolation --config-settings=builddir=builddir . -v
- name: Test
shell: bash -l {0}
run: |
# We don't install sage_setup, so don't try to test it
rm -R ./src/sage_setup/
./sage -t --all -p4
7 changes: 7 additions & 0 deletions .github/workflows/dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -263,6 +263,13 @@ jobs:
run: |
"${{ steps.python.outputs.python-path }}" -m cibuildwheel unpacked/sagemath*mcqd*
- name: sagemath-tdlib
run: |
case "${{ matrix.arch }}" in
i686) ;; # broken - boost-related
*) "${{ steps.python.outputs.python-path }}" -m cibuildwheel unpacked/sagemath*tdlib*
esac
- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-${{ matrix.build }}-${{ matrix.arch }}-wheels
Expand Down
170 changes: 170 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -146,10 +146,12 @@ __pycache__/

# Generated by sage_setup.autogen
/src/sage/ext/interpreters
!/src/sage/ext/interpreters/meson.build

# Generated Cython files
*.so
**/*.so
**/*.so.old
/src/cython_debug
# Most C and C++ files are generated by Cython and should not
# be included in the sdist.
Expand Down Expand Up @@ -299,3 +301,171 @@ src/.coverage/
# git worktree
worktree*
**/worktree*

# Meson build directory
builddir
builddir-*
build-install
build/cp*

# Meson temporary files
src/sage/interfaces/__init__.py
src/sage/crypto/block_cipher/__init__.py
src/sage/crypto/public_key/__init__.py
src/sage/logic/__init__.py
src/sage/parallel/__init__.py
src/sage/dynamics/cellular_automata/__init__.py
src/sage/dynamics/arithmetic_dynamics/__init__.py
src/sage/dynamics/__init__.py
src/sage/dynamics/complex_dynamics/__init__.py
src/sage/knots/__init__.py
src/sage/topology/__init__.py
src/sage/functions/__init__.py
src/sage/manifolds/subsets/__init__.py
src/sage/manifolds/__init__.py
src/sage/manifolds/differentiable/examples/__init__.py
src/sage/manifolds/differentiable/__init__.py
src/sage/coding/source_coding/__init__.py
src/sage/coding/guruswami_sudan/__init__.py
src/sage/coding/__init__.py
src/sage/coding/codecan/__init__.py
src/sage/games/__init__.py
src/sage/quivers/__init__.py
src/sage/schemes/cyclic_covers/__init__.py
src/sage/schemes/plane_conics/__init__.py
src/sage/schemes/curves/__init__.py
src/sage/schemes/plane_quartics/__init__.py
src/sage/schemes/jacobians/__init__.py
src/sage/schemes/toric/sheaf/__init__.py
src/sage/schemes/toric/__init__.py
src/sage/schemes/product_projective/__init__.py
src/sage/schemes/elliptic_curves/__init__.py
src/sage/schemes/riemann_surfaces/__init__.py
src/sage/schemes/hyperelliptic_curves/__init__.py
src/sage/schemes/berkovich/__init__.py
src/sage/schemes/generic/__init__.py
src/sage/schemes/projective/__init__.py
src/sage/schemes/__init__.py
src/sage/schemes/affine/__init__.py
src/sage/modular/hecke/__init__.py
src/sage/modular/pollack_stevens/__init__.py
src/sage/modular/overconvergent/__init__.py
src/sage/modular/modform/__init__.py
src/sage/modular/quasimodform/__init__.py
src/sage/modular/modsym/__init__.py
src/sage/modular/local_comp/__init__.py
src/sage/modular/quatalg/__init__.py
src/sage/modular/ssmod/__init__.py
src/sage/modular/abvar/__init__.py
src/sage/modular/__init__.py
src/sage/modular/btquotients/__init__.py
src/sage/modular/arithgroup/__init__.py
src/sage/modular/modform_hecketriangle/__init__.py
src/sage/combinat/cluster_algebra_quiver/__init__.py
src/sage/combinat/root_system/__init__.py
src/sage/combinat/species/__init__.py
src/sage/combinat/designs/__init__.py
src/sage/combinat/posets/__init__.py
src/sage/combinat/matrices/__init__.py
src/sage/combinat/rigged_configurations/__init__.py
src/sage/combinat/ncsf_qsym/__init__.py
src/sage/combinat/path_tableaux/__init__.py
src/sage/combinat/sf/__init__.py
src/sage/combinat/__init__.py
src/sage/combinat/chas/__init__.py
src/sage/combinat/ncsym/__init__.py
src/sage/combinat/words/__init__.py
src/sage/combinat/crystals/__init__.py
src/sage/tensor/modules/__init__.py
src/sage/tensor/__init__.py
src/sage/groups/matrix_gps/__init__.py
src/sage/groups/semimonomial_transformations/__init__.py
src/sage/groups/perm_gps/partn_ref2/__init__.py
src/sage/groups/perm_gps/partn_ref/__init__.py
src/sage/groups/perm_gps/__init__.py
src/sage/groups/__init__.py
src/sage/groups/affine_gps/__init__.py
src/sage/groups/abelian_gps/__init__.py
src/sage/groups/additive_abelian/__init__.py
src/sage/groups/lie_gps/__init__.py
src/sage/groups/misc_gps/__init__.py
src/sage/symbolic/__init__.py
src/sage/symbolic/integration/__init__.py
src/sage/lfunctions/__init__.py
src/sage/arith/__init__.py
src/sage/ext/__init__.py
src/sage/categories/examples/__init__.py
src/sage/categories/__init__.py
src/sage/modules/fg_pid/__init__.py
src/sage/modules/__init__.py
src/sage/modules/with_basis/__init__.py
src/sage/modules/fp_graded/steenrod/__init__.py
src/sage/modules/fp_graded/__init__.py
src/sage/misc/__init__.py
src/sage/rings/convert/__init__.py
src/sage/rings/invariants/__init__.py
src/sage/rings/finite_rings/__init__.py
src/sage/rings/function_field/__init__.py
src/sage/rings/function_field/drinfeld_modules/__init__.py
src/sage/rings/semirings/__init__.py
src/sage/rings/number_field/__init__.py
src/sage/rings/__init__.py
src/sage/rings/padics/__init__.py
src/sage/rings/valuation/__init__.py
src/sage/rings/asymptotic/__init__.py
src/sage/rings/polynomial/weil/__init__.py
src/sage/rings/polynomial/__init__.py
src/sage/rings/polynomial/padics/__init__.py
src/sage/monoids/__init__.py
src/sage/matrix/__init__.py
src/sage/matroids/__init__.py
src/sage/interacts/__init__.py
src/sage/__init__.py
src/sage/plot/__init__.py
src/sage/plot/plot3d/__init__.py
src/sage/typeset/__init__.py
src/sage/algebras/lie_conformal_algebras/__init__.py
src/sage/algebras/fusion_rings/__init__.py
src/sage/algebras/letterplace/__init__.py
src/sage/algebras/quatalg/__init__.py
src/sage/algebras/steenrod/__init__.py
src/sage/algebras/finite_dimensional_algebras/__init__.py
src/sage/algebras/__init__.py
src/sage/algebras/hecke_algebras/__init__.py
src/sage/algebras/lie_algebras/__init__.py
src/sage/algebras/quantum_groups/__init__.py
src/sage/quadratic_forms/genera/__init__.py
src/sage/quadratic_forms/__init__.py
src/sage/game_theory/__init__.py
src/sage/sandpiles/__init__.py
src/sage/sat/__init__.py
src/sage/homology/__init__.py
src/sage/geometry/riemannian_manifolds/__init__.py
src/sage/geometry/hyperplane_arrangement/__init__.py
src/sage/geometry/triangulation/__init__.py
src/sage/geometry/polyhedron/modules/__init__.py
src/sage/geometry/polyhedron/__init__.py
src/sage/geometry/polyhedron/combinatorial_polyhedron/__init__.py
src/sage/geometry/__init__.py
src/sage/geometry/hyperbolic_space/__init__.py
src/sage/sets/__init__.py
src/sage/probability/__init__.py
src/sage/numerical/backends/__init__.py
src/sage/numerical/__init__.py
src/sage/data_structures/__init__.py
src/sage/graphs/graph_decompositions/__init__.py
src/sage/graphs/generators/__init__.py
src/sage/graphs/__init__.py
src/sage/graphs/base/__init__.py
src/sage/databases/__init__.py
src/sage/stats/hmm/__init__.py
src/sage/stats/__init__.py
src/sage/stats/distributions/__init__.py
src/sage/libs/gap/__init__.py
src/sage/libs/mpfi/__init__.py
src/sage/libs/__init__.py
src/sage/libs/polybori/__init__.py
src/sage/libs/mpfr/__init__.py
src/sage/libs/mpc/__init__.py
src/sage/calculus/transforms/__init__.py
src/sage/calculus/__init__.py
3 changes: 2 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@
"pkgs/sage-conf_pypi/sage_root": true,
"pkgs/sage-docbuild/sage_docbuild": true,
"pkgs/sage-setup/sage_setup": true,
"pkgs/sagemath-*/sage": true
"pkgs/sagemath-*/sage": true,
"pkgs/sagemath-*/sage_setup": true
},
"python.testing.pytestEnabled": true,
"python.testing.pytestArgs": [
Expand Down
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.5.beta7
version: 10.5.beta9
doi: 10.5281/zenodo.8042260
date-released: 2024-10-12
date-released: 2024-11-03
repository-code: "https://github.com/sagemath/sage"
url: "https://www.sagemath.org/"
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
SageMath version 10.5.beta7, Release Date: 2024-10-12
SageMath version 10.5.beta9, Release Date: 2024-11-03
3 changes: 3 additions & 0 deletions bootstrap-conda
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,9 @@ echo >&2 $0:$LINENO: generate conda environment files
) > environment-template.yml
(
sed 's/name: sage-build/name: sage/' environment-template.yml
echo " - meson"
echo " - meson-python"
echo " - pytest"
echo " # Additional packages providing all dependencies for the Sage library"
for pkg in $SAGELIB_SYSTEM_PACKAGES; do
echo " - $pkg"
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/alabaster/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=alabaster-VERSION-py3-none-any.whl
sha1=6c86446396c69236a1542e09771e8d7b8487dcfa
sha256=b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92
upstream_url=https://pypi.io/packages/py3/a/alabaster/alabaster-VERSION-py3-none-any.whl
upstream_url=https://files.pythonhosted.org/packages/py3/a/alabaster/alabaster-VERSION-py3-none-any.whl
2 changes: 1 addition & 1 deletion build/pkgs/anyio/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=anyio-VERSION-py3-none-any.whl
sha1=f5bd548b3a14c9c93622bf04f7c6464e3f44966a
sha256=c1b2d8f46a8a812513012e1107cb0e68c17159a7a594208005a57dc776e1bdc7
upstream_url=https://pypi.io/packages/py3/a/anyio/anyio-VERSION-py3-none-any.whl
upstream_url=https://files.pythonhosted.org/packages/py3/a/anyio/anyio-VERSION-py3-none-any.whl
2 changes: 1 addition & 1 deletion build/pkgs/appdirs/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=appdirs-VERSION-py2.py3-none-any.whl
sha1=fc74022712122436427f8282a47bfa430ec2db56
sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
upstream_url=https://pypi.io/packages/py2.py3/a/appdirs/appdirs-VERSION-py2.py3-none-any.whl
upstream_url=https://files.pythonhosted.org/packages/py2.py3/a/appdirs/appdirs-VERSION-py2.py3-none-any.whl
2 changes: 1 addition & 1 deletion build/pkgs/appnope/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=appnope-VERSION.tar.gz
sha1=4dcd80020b345a184d6da6063a69e25b1d353323
sha256=1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee
upstream_url=https://pypi.io/packages/source/a/appnope/appnope-VERSION.tar.gz
upstream_url=https://files.pythonhosted.org/packages/source/a/appnope/appnope-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/argon2_cffi/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=argon2-cffi-VERSION.tar.gz
sha1=c16c1506de0211bdfa23d4d51e780fb4aaff5222
sha256=d384164d944190a7dd7ef22c6aa3ff197da12962bd04b17f64d4e93d934dba5b
upstream_url=https://pypi.io/packages/source/a/argon2_cffi/argon2-cffi-VERSION.tar.gz
upstream_url=https://files.pythonhosted.org/packages/source/a/argon2_cffi/argon2-cffi-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/argon2_cffi_bindings/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=argon2-cffi-bindings-VERSION.tar.gz
sha1=5a9b8906d9ca73c53c2bf0a2f0a8127fda69e965
sha256=bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3
upstream_url=https://pypi.io/packages/source/a/argon2_cffi_bindings/argon2-cffi-bindings-VERSION.tar.gz
upstream_url=https://files.pythonhosted.org/packages/source/a/argon2_cffi_bindings/argon2-cffi-bindings-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/arrow/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=arrow-VERSION-py3-none-any.whl
sha1=fd9376ef4788dc2b1c981e6b5beb9048e046c556
sha256=c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80
upstream_url=https://pypi.io/packages/py3/a/arrow/arrow-VERSION-py3-none-any.whl
upstream_url=https://files.pythonhosted.org/packages/py3/a/arrow/arrow-VERSION-py3-none-any.whl
Loading

0 comments on commit 65f3178

Please sign in to comment.