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

Commit

Permalink
Merge tag '9.6.beta4' into t/33465/sage_graphs__use_executable_absolu…
Browse files Browse the repository at this point in the history
…te_filename__

SageMath version 9.6.beta4, Release Date: 2022-03-08
  • Loading branch information
Matthias Koeppe committed Mar 8, 2022
2 parents ed22266 + b21ca55 commit d0e2179
Show file tree
Hide file tree
Showing 182 changed files with 3,874 additions and 4,046 deletions.
21 changes: 19 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,10 @@ jobs:
run: |
# Reuse built SAGE_LOCAL contained in the Docker image
./bootstrap
./configure --enable-build-as-root --prefix=/sage/local --with-sage-venv
./configure --enable-build-as-root --prefix=/sage/local --with-sage-venv --enable-editable
# Install test tools
apt-get install -y git
./sage -python -m pip install coverage
- name: Build
run: make build
Expand All @@ -31,4 +34,18 @@ jobs:
SAGE_NUM_THREADS: 2

- name: Test
run: ./sage -t --all -p0
run: ../sage -python -m coverage run ./bin/sage-runtests --all -p2
working-directory: ./src

- name: Prepare coverage results
if: always()
run: |
./venv/bin/python3 -m coverage combine src/.coverage/
./venv/bin/python3 -m coverage xml
find . -name *coverage*
- name: Upload coverage to codecov
if: always()
uses: codecov/codecov-action@v2
with:
files: ./coverage.xml
2 changes: 1 addition & 1 deletion .github/workflows/ci-cygwin-minimal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ jobs:
env:
STAGE: ii-b
PREVIOUS_STAGES: i-*
TARGETS: singular maxima gap pari gfan palp flintqs ratpoints arb ecm givaro
TARGETS: singular maxima gap pari gfan palp flintqs arb ecm givaro
LOCAL_ARTIFACT_NAME: sage-local-commit-${{ github.sha }}-cygwin-${{ matrix.pkgs }}
LOGS_ARTIFACT_NAME: logs-commit-${{ github.sha }}-cygwin-${{ matrix.pkgs }}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-cygwin-standard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,7 @@ jobs:
env:
STAGE: ii-b
PREVIOUS_STAGES: i-*
TARGETS: singular maxima gap pari gfan palp flintqs ratpoints arb ecm givaro
TARGETS: singular maxima gap pari gfan palp flintqs arb ecm givaro
LOCAL_ARTIFACT_NAME: sage-local-commit-${{ github.sha }}-cygwin-${{ matrix.pkgs }}
LOGS_ARTIFACT_NAME: logs-commit-${{ github.sha }}-cygwin-${{ matrix.pkgs }}

Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@ name: Lint

on: [push, pull_request]

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

jobs:
lint-pycodestyle:
name: Code style check with pycodestyle
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,9 @@ src/venv.bak/
**/.tox
/prefix

# code coverage generated files
src/.coverage/

# git worktree
worktree*
**/worktree*
14 changes: 10 additions & 4 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,22 @@
{
"python.defaultInterpreterPath": "./venv/bin/python",
"python.pythonPath": "./venv/bin/python",
"python.defaultInterpreterPath": "./venv/bin/python3",
"files.exclude": {
"**/__pycache__": true,
"src/**/*.cpp": true,
"src/**/*.so": true,
"build/pkgs/sagelib/src": true
},
"search.exclude": {
"build/pkgs/sagemath_categories/src": true,
"build/pkgs/sagemath_objects/src": true,
"build/pkgs/sagelib/src": true,
"pkgs/sage-conf_pypi/sage_root/build": true,
"pkgs/sagemath-categories/sage": true,
"pkgs/sagemath-objects/sage": true,
"pkgs/sagemath-standard/sage": true,
},
"python.testing.pytestEnabled": true,
"python.testing.pytestArgs": [
"src"
],
"python.testing.nosetestsEnabled": false,
"python.testing.unittestEnabled": false,
}
8 changes: 4 additions & 4 deletions .zenodo.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"description": "Mirror of the Sage https://sagemath.org/ source tree",
"license": "other-open",
"title": "sagemath/sage: 9.6.beta3",
"version": "9.6.beta3",
"title": "sagemath/sage: 9.6.beta4",
"version": "9.6.beta4",
"upload_type": "software",
"publication_date": "2022-02-27",
"publication_date": "2022-03-08",
"creators": [
{
"affiliation": "SageMath.org",
Expand All @@ -15,7 +15,7 @@
"related_identifiers": [
{
"scheme": "url",
"identifier": "https://github.com/sagemath/sage/tree/9.6.beta3",
"identifier": "https://github.com/sagemath/sage/tree/9.6.beta4",
"relation": "isSupplementTo"
},
{
Expand Down
1 change: 0 additions & 1 deletion COPYING.txt
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,6 @@ pynac GPLv2+
pyparsing MIT License
python Python License (see below)
R GPLv2+
ratpoints GPLv2+
readline GPLv3+
rpy GPLv2+
rubiks/dietz GPL, any version
Expand Down
3 changes: 1 addition & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,6 @@ micro_release:
@echo "Removing documentation. Inspection in IPython still works."
rm -rf local/share/doc local/share/*/doc local/share/*/examples local/share/singular/html
@echo "Removing unnecessary files & directories - make will not be functional afterwards anymore"
@# We need src/doc/common, src/doc/en/introspect for introspection with "??"
@# We keep src/sage for some doctests that it expect it to be there and
@# also because it does not add any weight with rdfind below.
@# We need src/sage/bin/ for the scripts that invoke Sage
Expand All @@ -203,7 +202,7 @@ micro_release:
@# We keep VERSION.txt.
@# We keep COPYING.txt so we ship a license with this distribution.
find . -name . -o -prune ! -name config.status ! -name src ! -name sage ! -name local ! -name VERSION.txt ! -name COPYING.txt ! -name build -exec rm -rf \{\} \;
cd src && find . -name . -o -prune ! -name sage ! -name bin ! -name doc -exec rm -rf \{\} \;
cd src && find . -name . -o -prune ! -name sage ! -name bin -exec rm -rf \{\} \;
if command -v rdfind > /dev/null; then \
echo "Hardlinking identical files."; \
rdfind -makeresultsfile false -makehardlinks true .; \
Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
SageMath version 9.6.beta3, Release Date: 2022-02-27
SageMath version 9.6.beta4, Release Date: 2022-03-08
35 changes: 32 additions & 3 deletions bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -79,9 +79,11 @@ install_config_rpath() {


bootstrap () {
if [ "${BOOTSTRAP_QUIET}" = "no" ]; then
echo "bootstrap:$LINENO: installing 'm4/sage_spkg_configures.m4'"
fi
rm -f m4/sage_spkg_configures.m4
spkg_configures=""

# initialize SAGE_ENABLE... options for standard packages
for pkgname in $(./sage --package list :standard: | sort); do
spkg_configures="$spkg_configures
Expand All @@ -101,16 +103,43 @@ AC_SUBST(SAGE_ENABLE_$pkgname, [if_installed])"
if [ -f build/pkgs/$pkgname/spkg-install -o -f build/pkgs/$pkgname/spkg-install.in ]; then
# Trac #31163: Not just an optional dummy package
spkg_configures="$spkg_configures
SAGE_SPKG_ENABLE([$pkgname], [$pkgtype], [$(head -n1 build/pkgs/$pkgname/SPKG.rst 2>/dev/null || echo $pkgname)])"
SAGE_SPKG_ENABLE([$pkgname], [$pkgtype], [$(grep -v ^= build/pkgs/$pkgname/SPKG.rst | head -n1 2>/dev/null || echo $pkgname)])"
fi
;;
esac
fi
done
for pkgname in $(./sage --package list --has-file spkg-configure.m4 | sort); do
echo "m4_sinclude([build/pkgs/$pkgname/spkg-configure.m4])" >> m4/sage_spkg_configures.m4
echo "m4_sinclude([build/pkgs/$pkgname/spkg-configure.m4])"
spkg_configures="$spkg_configures
SAGE_SPKG_CONFIGURE_$(echo ${pkgname} | tr '[a-z]' '[A-Z]')"
done >> m4/sage_spkg_configures.m4
for pkgname in $(./sage --package list | sort); do
DIR=build/pkgs/$pkgname
pkgtype="$(cat $DIR/type)"
if test -f "$DIR/requirements.txt"; then
SPKG_SOURCE=pip
elif test ! -f "$DIR/checksums.ini"; then
if test -f "$DIR/spkg-install"; then
SPKG_SOURCE=script
else
# a dummy script package
SPKG_SOURCE=none
fi
else
SPKG_SOURCE=normal
fi
if test -f "$DIR/trees.txt"; then
SPKG_TREE_VAR="$(sed "s/#.*//;" "$DIR/trees.txt")"
else
SPKG_TREE_VAR=SAGE_LOCAL
if test -f "$DIR/requirements.txt" -o -f "$DIR/install-requires.txt"; then
# A Python package
SPKG_TREE_VAR=SAGE_VENV
fi
fi
spkg_configures="$spkg_configures
SAGE_SPKG_FINALIZE([$pkgname], [$pkgtype], [$SPKG_SOURCE], [$SPKG_TREE_VAR])"
done
echo "$spkg_configures" >> m4/sage_spkg_configures.m4

Expand Down
6 changes: 3 additions & 3 deletions build/pkgs/configure/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=configure-VERSION.tar.gz
sha1=e097e1c5bf49ece5ef27101143c5b0a89ae77714
md5=206b6e2055e09a0bd00c54e2065c430a
cksum=1007778800
sha1=0fa6909f982efbd452287651f58854ffdce6a588
md5=80324f006d5a30d741ec34235c0220e0
cksum=2324005793
2 changes: 1 addition & 1 deletion build/pkgs/configure/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0fed9a145e65dfe3989e9383aa93c4137806fb03
b845564e0439f7178a40c8f28983aa039364209b
6 changes: 3 additions & 3 deletions build/pkgs/ecl/SPKG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,20 +19,20 @@ Solaris and Windows, running on top of the Intel, Sparc, Alpha and
PowerPC processors. Porting to other architectures should be rather
easy.

Website: http://ecls.sourceforge.net/
Website: https://common-lisp.net/project/ecl/

License
-------

- LGPL V2+ or compatible - for details see

http://ecls.sourceforge.net/license.html
https://common-lisp.net/project/ecl/static/manual/Copyrights.html#Copyright-of-ECL


Upstream Contact
----------------

- the ECL mailing list - see http://ecls.sourceforge.net/resources.html
- the ECL mailing list - see https://mailman.common-lisp.net/listinfo/ecl-devel

Special Update/Build Instructions
---------------------------------
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
From aef4a7749dec9ecf942647af39d7a1303c758131 Mon Sep 17 00:00:00 2001
From: Isuru Fernando <isuruf@gmail.com>
Date: Thu, 16 Sep 2021 15:46:09 -0500
Subject: [PATCH 08/24] bpo-22699: Allow compiling on debian/ubuntu with a
different compiler

This PR fixes one issue mentioned in the bpo
https://bugs.python.org/issue22699#msg364685 with a slightly better
patch than given
---
setup.py | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/setup.py b/setup.py
index 8fb8ea5c47..783d20bdcd 100644
--- a/setup.py
+++ b/setup.py
@@ -663,9 +663,30 @@ def add_multiarch_paths(self):
# Debian/Ubuntu multiarch support.
# https://wiki.ubuntu.com/MultiarchSpec
cc = sysconfig.get_config_var('CC')
- tmpfile = os.path.join(self.build_temp, 'multiarch')
if not os.path.exists(self.build_temp):
os.makedirs(self.build_temp)
+
+ tmpfile_sysroot = os.path.join(self.build_temp, 'sysroot')
+ ret_sysroot = run_command(
+ '%s -print-sysroot > %s 2> /dev/null' % (cc, tmpfile_sysroot))
+
+ try:
+ if ret_sysroot == 0:
+ with open(tmpfile_sysroot) as fp:
+ sysroot = fp.readline().strip()
+ # if the sysroot is not /, then we are not using
+ # the compiler from debian/ubuntu
+ if sysroot not in ['', '/']:
+ add_dir_to_list(self.compiler.library_dirs,
+ sysroot + '/usr/lib')
+ add_dir_to_list(self.compiler.include_dirs,
+ sysroot + '/usr/include')
+ return
+ finally:
+ os.unlink(tmpfile_sysroot)
+
+ tmpfile = os.path.join(self.build_temp, 'multiarch')
+
ret = run_command(
'%s -print-multiarch > %s 2> /dev/null' % (cc, tmpfile))
multiarch_path_component = ''
--- a/setup.py 2021-09-28 23:49:53.193868987 -0700
+++ b/setup.py 2021-09-28 23:50:13.554098642 -0700
@@ -738,7 +738,8 @@
for env_var, arg_name, dir_list in (
('LDFLAGS', '-R', self.compiler.runtime_library_dirs),
('LDFLAGS', '-L', self.compiler.library_dirs),
- ('CPPFLAGS', '-I', self.compiler.include_dirs)):
+ ('CPPFLAGS', '-I', self.compiler.include_dirs),
+ ('CPPFLAGS', '-isystem', self.compiler.include_dirs)):
env_val = sysconfig.get_config_var(env_var)
if env_val:
parser = argparse.ArgumentParser()
--
2.30.2

2 changes: 1 addition & 1 deletion build/pkgs/python3/spkg-build.in
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ sdh_configure --enable-shared $PYTHON_CONFIGURE
# we need to provide paths into $SAGE_LOCAL, so that setup.py finds
# the libraries needed for the extension modules - in particular sqlite3.
# (The search code there does not know about CPATH and LIBRARY_PATH.)
make_LDFLAGS="-L. -L$SAGE_LOCAL/lib $LDFLAGS"
make_LDFLAGS="-L. -Wl,-rpath,. -L$SAGE_LOCAL/lib $LDFLAGS"
make_CPPFLAGS="-I$SAGE_LOCAL/include $CPPFLAGS"

# Also, we need to add an rpath, like we do for SAGE_LOCAL in src/bin/sage-env.
Expand Down
29 changes: 0 additions & 29 deletions build/pkgs/ratpoints/SPKG.rst

This file was deleted.

4 changes: 0 additions & 4 deletions build/pkgs/ratpoints/checksums.ini

This file was deleted.

5 changes: 0 additions & 5 deletions build/pkgs/ratpoints/dependencies

This file was deleted.

1 change: 0 additions & 1 deletion build/pkgs/ratpoints/distros/arch.txt

This file was deleted.

1 change: 0 additions & 1 deletion build/pkgs/ratpoints/distros/conda.txt

This file was deleted.

1 change: 0 additions & 1 deletion build/pkgs/ratpoints/distros/debian.txt

This file was deleted.

1 change: 0 additions & 1 deletion build/pkgs/ratpoints/distros/nix.txt

This file was deleted.

1 change: 0 additions & 1 deletion build/pkgs/ratpoints/distros/repology.txt

This file was deleted.

1 change: 0 additions & 1 deletion build/pkgs/ratpoints/package-version.txt

This file was deleted.

Loading

0 comments on commit d0e2179

Please sign in to comment.