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

Commit

Permalink
Merge branch 30303 (and sage 9.2.beta8) into 30312
Browse files Browse the repository at this point in the history
  • Loading branch information
Ivo-Maffei committed Aug 11, 2020
2 parents b921ccf + d7453fa commit 562283f
Show file tree
Hide file tree
Showing 170 changed files with 5,334 additions and 2,294 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ list:
@$(MAKE) --silent build/make/Makefile >&2
@$(MAKE) --silent -f build/make/Makefile SAGE_SPKG_INST=local $@

.PHONY: default build install micro_release \
.PHONY: default build dist install micro_release \
misc-clean bdist-clean distclean bootstrap-clean maintainer-clean \
test check testoptional testall testlong testoptionallong testallong \
ptest ptestoptional ptestall ptestlong ptestoptionallong ptestallong \
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.2.beta7, Release Date: 2020-08-02
SageMath version 9.2.beta8, Release Date: 2020-08-10
File renamed without changes.
File renamed without changes.
4 changes: 1 addition & 3 deletions build/bin/sage-site
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,7 @@ usage_advanced() {
echo " -b -- build Sage library -- do this if you have"
echo " modified any source code files in SAGE_ROOT/src/sage/"
echo " -ba -- same as -b, but rebuild *all* Cython"
echo " code. This could take a while, so you will be asked"
echo " if you want to proceed."
echo " --ba-force -- same as -ba, but don't query before rebuilding"
echo " code."
echo " -br -- build and run Sage"
echo
echo " -bt [...] -- build Sage and test; same options as -t"
Expand Down
8 changes: 7 additions & 1 deletion build/bin/sage-system-python
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,17 @@ fi

# Trac #29890: Our first choice is "python", not "python3". This is to avoid
# a defect of sage_bootstrap on macOS regarding SSL URLs.

# Trac #30177: Also check for hashlib.sha1 to guard against broken python2
# from old homebrew installations. Also check whether the current directory
# is accessible by this python; this is to guard on Cygwin against Pythons
# installed somewhere else in Windows.

PYTHONS="python python3 python3.8 python3.7 python2.7 python3.6 python2"
for PY in $PYTHONS; do
PYTHON="$(PATH="$SAGE_ORIG_PATH" command -v $PY)"
if [ -n "$PYTHON" ]; then
if "$PYTHON" -c 'import urllib'; then
if "$PYTHON" -c "import urllib; from hashlib import sha1; from os import listdir; listdir(\"$(pwd)\");" 2>/dev/null; then
exec "$PYTHON" "$@"
fi
fi
Expand Down
35 changes: 21 additions & 14 deletions build/make/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -465,28 +465,35 @@ $(foreach pkgname, $(NORMAL_PACKAGES),\
$(call pkg_deps,$(pkgname)))))
endif

# SAGE_CHECK_PACKAGES: if this contains "!pkg", skip tests for "pkg",
# so set SAGE_CHECK=no. If this contains "pkg", run tests, so set
# SAGE_CHECK=yes. Check this now and export SAGE_CHECK so that the
# package's spkg-install script can use this variable.
# Parsing the SAGE_CHECK_PACKAGES variable:
# - if this contains "!pkg", set SAGE_CHECK_pkg=no.
# - if this contains "?pkg", set SAGE_CHECK_pkg=warn.
# - if this contains "pkg", set SAGE_CHECK_pkg=yes.
#
# We check this now and export SAGE_CHECK_pkg for
# dependencies and the Makefile rules.
#
# Since Python's self-tests seem to fail on all platforms, we disable
# its test suite by default. However, if SAGE_CHECK=warn, we do not
# do that.
SAGE_CHECK_PACKAGES_DEFAULT := !python3
# its test suite by default.
# However, if SAGE_CHECK=warn, we do not do that.
SAGE_CHECK_PACKAGES_DEFAULT_yes := !python3
SAGE_CHECK_PACKAGES_DEFAULT_warn :=
SAGE_CHECK_PACKAGES_DEFAULT_no :=
comma := ,
ifeq "$(origin SAGE_CHECK_PACKAGES)" "undefined"
SAGE_CHECK_PACKAGES := $(if $(findstring yes,$(SAGE_CHECK)),$(SAGE_CHECK_PACKAGES_DEFAULT))
SAGE_CHECK_PACKAGES := $(SAGE_CHECK_PACKAGES_DEFAULT$(SAGE_CHECK))
endif
SAGE_CHECK_PACKAGES := $(subst $(comma), ,$(SAGE_CHECK_PACKAGES))
SAGE_CHECK_PACKAGES := $(subst :, ,$(SAGE_CHECK_PACKAGES))
SAGE_CHECK_PACKAGES_sep := $(subst $(comma), ,$(SAGE_CHECK_PACKAGES))
SAGE_CHECK_PACKAGES_sep := $(subst :, ,$(SAGE_CHECK_PACKAGES_sep))
define SET_SAGE_CHECK
$(eval SAGE_CHECK_$(1) := $(2))
endef
$(foreach clause, $(SAGE_CHECK_PACKAGES), \
$(if $(findstring !,$(clause)), \
$(eval $(call SET_SAGE_CHECK,$(subst !,,$(clause)),no)), \
$(eval $(call SET_SAGE_CHECK,$(clause),yes))))
$(foreach clause, $(SAGE_CHECK_PACKAGES_sep), \
$(if $(findstring !,$(clause)), \
$(eval $(call SET_SAGE_CHECK,$(subst !,,$(clause)),no)), \
$(if $(findstring ?,$(clause)), \
$(eval $(call SET_SAGE_CHECK,$(subst ?,,$(clause)),warn)), \
$(eval $(call SET_SAGE_CHECK,$(clause),yes)))))
debug-check:
@echo $(foreach pkgname, $(NORMAL_PACKAGES), SAGE_CHECK_$(pkgname) = $(SAGE_CHECK_$(pkgname)))

Expand Down
1 change: 1 addition & 0 deletions build/make/install
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export SAGE_SHARE="$SAGE_LOCAL/share"
export SAGE_PKGCONFIG="$SAGE_LOCAL/lib/pkgconfig"
export SAGE_LOGS="$SAGE_ROOT/logs/pkgs"
export SAGE_SPKG_INST="$SAGE_LOCAL/var/lib/sage/installed"
export SAGE_SPKG_SCRIPTS="$SAGE_LOCAL/var/lib/sage/scripts"

if [ -z "${SAGE_ORIG_PATH_SET}" ]; then
SAGE_ORIG_PATH=$PATH && export SAGE_ORIG_PATH
Expand Down
5 changes: 5 additions & 0 deletions build/pkgs/backcall/SPKG.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
= backcall =

== Description ==

Specifications for callback functions passed in to an API
5 changes: 5 additions & 0 deletions build/pkgs/backcall/checksums.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
tarball=backcall-VERSION.tar.gz
sha1=e0ca4c1bde8f0a198505a090cd585a325789def1
md5=87ce0c7839808e6a3427d57df6a792e7
cksum=3908868358
upstream_url=https://pypi.io/packages/source/b/backcall/backcall-VERSION.tar.gz
5 changes: 5 additions & 0 deletions build/pkgs/backcall/dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
$(PYTHON) | $(PYTHON_TOOLCHAIN)

----------
All lines of this file are ignored except the first.
It is copied by SAGE_ROOT/build/make/install into SAGE_ROOT/build/make/Makefile.
1 change: 1 addition & 0 deletions build/pkgs/backcall/package-version.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0.1.0
3 changes: 3 additions & 0 deletions build/pkgs/backcall/spkg-install.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
cd src

sdh_pip_install .
1 change: 1 addition & 0 deletions build/pkgs/backcall/type
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
standard
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=450767d58fcd094130bcc0bae6a17340adde685f
md5=fc57202cf758c74e29dcf906e0287859
cksum=4241511310
sha1=3f0bae0f42cabe487db185d354ffce5401f41c0d
md5=0f6b2ddc8280958cde5b5d089a2400e0
cksum=1841781857
2 changes: 1 addition & 1 deletion build/pkgs/configure/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
acf026331eeef4295aebdf3cdef0a0f5c2bdd19e
ab502c6901350ba3418d03f479c27128b14de479
53 changes: 28 additions & 25 deletions build/pkgs/gp2c/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,32 +1,34 @@
SAGE_SPKG_CONFIGURE([gp2c], [
# Default to installing the SPKG
# Default to installing the SPKG, if the check is run at all.
sage_spkg_install_gp2c=yes
# And to using sage's pari.cfg (from the pari SPKG).
libpari_pari_cfg='$SAGE_LOCAL/lib/pari/pari.cfg'
SAGE_SPKG_DEPCHECK([pari], [
AS_IF([test "x$USING_SYSTEM_PARI" = "xyes"], [
# We're using the system pari, so we can use the system gp2c
# if we find a suitable one.
AC_PATH_PROG([GP2C], [gp2c])
if test -n "$GP2C"; then
AS_IF([test -n "$GP2C"], [
# We found gp2c on the system; use it.
sage_spkg_install_gp2c=no
fi
# Either way, if we're using the system pari, we no longer want
# to use sage's pari.cfg.
libpari_pari_cfg=''
])
])
],[],[],[
],[],[
# Pre-check phase. We need to determine the location of pari.cfg
# regardless of whether or not we're using the system copy of pari.
#
# Store the depcheck result to be reused in this macro's check and
# post-check phases. We do this in pre-check because the "check"
# phase itself may be skipped via --with-system-gp2c=no.
USING_SYSTEM_PARI=no
SAGE_SPKG_DEPCHECK([pari], [USING_SYSTEM_PARI=yes])
],[
# Post-check phase. Here we may need to locate pari.cfg if we're using
# the system's pari (which can put pari.cfg wherever it wants) but sage's
# gp2c (which needs to know where pari.cfg lives).
#
# Can we avoid this if the user hasn't passed --enable-gp2c to ./configure?
#
if test "x$sage_spkg_install_gp2c" = "xyes"; then
if test -z "$libpari_pari_cfg"; then
AS_IF([test "x$sage_spkg_install_gp2c" = "xyes"], [
AS_IF([test "x$USING_SYSTEM_PARI" = "xyes"], [
# Installing the gp2c package but don't know where pari.cfg is. There's
# no good way to do this, except to try every known location. If you
# have two copies of pari.cfg in two locations, this loop will overwrite
Expand All @@ -42,10 +44,10 @@ SAGE_SPKG_CONFIGURE([gp2c], [
# Arch/Conda: $gp_prefix/lib/pari/pari.cfg
# Fedora: $gp_prefix/share/doc/pari/pari.cfg
m4_foreach([pari_cfg_path], [share/pari,lib/pari,share/doc/pari], [
if test -f "${gp_prefix}/pari_cfg_path/pari.cfg"; then
AS_IF([test -f "${gp_prefix}/pari_cfg_path/pari.cfg"], [
libpari_pari_cfg="${gp_prefix}/pari_cfg_path/pari.cfg"
AC_MSG_NOTICE([found a pari.cfg at $libpari_pari_cfg])
fi
])
])
# Debian: $gp_prefix/lib/<arch-tuple>/pari/pari.cfg
Expand All @@ -55,20 +57,21 @@ SAGE_SPKG_CONFIGURE([gp2c], [
# right one. If it doesn't, the "-f" test below prevents anything
# too bad from happening.
debian_arch=$(dpkg-architecture -qDEB_BUILD_MULTIARCH 2>/dev/null)
if test -f "${gp_prefix}/lib/${debian_arch}/pari/pari.cfg"; then
AS_IF([test -f "${gp_prefix}/lib/${debian_arch}/pari/pari.cfg"], [
libpari_pari_cfg="${gp_prefix}/lib/${debian_arch}/pari/pari.cfg"
AC_MSG_NOTICE([found a pari.cfg at $libpari_pari_cfg])
fi
])
# If we can't find pari.cfg, gp2c isn't going to work.
if test -z "$libpari_pari_cfg"; then
AC_MSG_ERROR([unable to locate pari.cfg])
fi
fi
AS_IF([test -z "$libpari_pari_cfg"], [
AC_MSG_ERROR([using system pari and unable to locate pari.cfg])
])
], [
# Not using the system pari
libpari_pari_cfg='$SAGE_LOCAL/lib/pari/pari.cfg'
])
# Only print out the location of pari.cfg if we're not using the
# system gp2c, because if we're using the system gp2c, who cares.
AC_MSG_NOTICE([pari.cfg is $libpari_pari_cfg])
fi
])
AC_SUBST(SAGE_PARI_CFG, [$libpari_pari_cfg])
])
7 changes: 4 additions & 3 deletions build/pkgs/ipykernel/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
tarball=ipykernel-VERSION.tar.gz
sha1=e8cd8fb9c9e9228c44682852db2d2af782a0ed35
md5=91af54e6a4ad908ded0bed383dd03374
cksum=1184432452
sha1=488a72393a8af0d10baab0893d05f185bf14afff
md5=2866e6370fab41e6a544d2e3ba384cce
cksum=285781029
upstream_url=https://pypi.io/packages/source/i/ipykernel/ipykernel-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/ipykernel/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.8.2
5.2.1
7 changes: 4 additions & 3 deletions build/pkgs/ipython/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
tarball=ipython-VERSION.tar.gz
sha1=987b66cc662db8bd2ae96eee2f2237266d0c92dc
md5=7014b8824981eef2cb893ea5398d6b8d
cksum=2260693848
sha1=8e2751e3365bbfd97277760b110fb2f290e0d3d3
md5=de97012f2496dfcc6f005b68ca0eda4a
cksum=1236566613
upstream_url=https://pypi.io/packages/source/i/ipython/ipython-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/ipython/dependencies
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
$(PYTHON) jinja2 tornado pyzmq pickleshare simplegeneric traitlets | $(PYTHON_TOOLCHAIN) wcwidth prompt_toolkit pygments pexpect appnope
$(PYTHON) jinja2 tornado pyzmq pickleshare simplegeneric traitlets | $(PYTHON_TOOLCHAIN) wcwidth prompt_toolkit pygments pexpect appnope backcall jedi

----------
All lines of this file are ignored except the first.
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/ipython/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
5.8.0
7.13.0
8 changes: 8 additions & 0 deletions build/pkgs/jedi/SPKG.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
= jedi =

== Description ==

Jedi is a static analysis tool for Python that is typically used in
IDEs/editors plugins. Jedi has a focus on autocompletion and goto
functionality. Other features include refactoring, code search and
finding references.
5 changes: 5 additions & 0 deletions build/pkgs/jedi/checksums.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
tarball=jedi-VERSION.tar.gz
sha1=87408742e4bc7a0cea9512757388ed58587c3956
md5=d6a8e5832939c51dceda474b720696f6
cksum=783840182
upstream_url=https://pypi.io/packages/source/j/jedi/jedi-VERSION.tar.gz
5 changes: 5 additions & 0 deletions build/pkgs/jedi/dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
$(PYTHON) parso | $(PYTHON_TOOLCHAIN)

----------
All lines of this file are ignored except the first.
It is copied by SAGE_ROOT/build/make/install into SAGE_ROOT/build/make/Makefile.
1 change: 1 addition & 0 deletions build/pkgs/jedi/package-version.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0.17.0
3 changes: 3 additions & 0 deletions build/pkgs/jedi/spkg-install.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
cd src

sdh_pip_install .
1 change: 1 addition & 0 deletions build/pkgs/jedi/type
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
standard
6 changes: 3 additions & 3 deletions build/pkgs/matplotlib/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
tarball=matplotlib-VERSION.tar.gz
sha1=8263c2e1ceb3f610c898b85dfeb8b68bf338e86f
md5=6c018a644a88120886cc7211f7c826f0
cksum=3466825812
sha1=e407249b202d199c704f2bb40bd48776d6a6f633
md5=b1de7185687c6f5c092689e3431a69b3
cksum=1389017280
upstream_url=https://pypi.io/packages/source/m/matplotlib/matplotlib-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/matplotlib/dependencies
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
$(PYTHON) numpy freetype libpng dateutil pyparsing tornado six cycler | $(PYTHON_TOOLCHAIN) pytz kiwisolver
$(PYTHON) numpy freetype pillow dateutil pyparsing tornado six cycler | $(PYTHON_TOOLCHAIN) pytz kiwisolver

----------
All lines of this file are ignored except the first.
Expand Down
7 changes: 4 additions & 3 deletions build/pkgs/matplotlib/make-setup-config.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
from configparser import SafeConfigParser
from configparser import ConfigParser
import os

config = SafeConfigParser()
config = ConfigParser()

config.add_section('directories')
config.set('directories', 'basedirlist', os.environ['SAGE_LOCAL'])


config.add_section('libs')
config.set('libs', 'system_freetype', 'True')

#####################################################################
# Sage code -- all this code just sets the graphical_backend variable.
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/matplotlib/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.2.1
3.3.0.p0
Loading

0 comments on commit 562283f

Please sign in to comment.