Update to sagemath 8.0

This commit is contained in:
pcpa 2017-11-10 11:26:56 -05:00
parent b78abd5373
commit abc6d11c12
27 changed files with 290 additions and 655 deletions

1
.gitignore vendored
View file

@ -13,3 +13,4 @@
/sage-7.4.tar.gz /sage-7.4.tar.gz
/sage-7.5.1.tar.gz /sage-7.5.1.tar.gz
/sage-7.6.tar.gz /sage-7.6.tar.gz
/sage-8.0.tar.gz

View file

@ -1,7 +1,7 @@
diff -up src/module_list.py.orig src/module_list.py diff -up src/module_list.py.orig src/module_list.py
--- src/module_list.py.orig 2017-04-11 10:03:27.798279059 -0400 --- src/module_list.py.orig 2017-11-08 08:34:54.635233833 -0500
+++ src/module_list.py 2017-04-11 10:05:34.272283903 -0400 +++ src/module_list.py 2017-11-08 08:36:05.888236561 -0500
@@ -12,20 +12,14 @@ SAGE_INC = '/usr/include' @@ -12,7 +12,7 @@ SAGE_INC = '/usr/include'
import pkgconfig import pkgconfig
# CBLAS can be one of multiple implementations # CBLAS can be one of multiple implementations
@ -10,11 +10,10 @@ diff -up src/module_list.py.orig src/module_list.py
cblas_libs = cblas_pc['libraries'] cblas_libs = cblas_pc['libraries']
cblas_library_dirs = cblas_pc['library_dirs'] cblas_library_dirs = cblas_pc['library_dirs']
cblas_include_dirs = cblas_pc['include_dirs'] cblas_include_dirs = cblas_pc['include_dirs']
@@ -21,11 +21,9 @@ cblas_include_dirs = cblas_pc['include_d
if os.path.exists('/usr/lib/libblas.dll.a'):
cblas_libs = ['gslcblas']
-# TODO: Remove Cygwin hack by installing a suitable cblas.pc
-if os.path.exists('/usr/lib/libblas.dll.a'):
- cblas_libs = ['gslcblas']
-
-# LAPACK can be one of multiple implementations -# LAPACK can be one of multiple implementations
-lapack_pc = pkgconfig.parse('lapack') -lapack_pc = pkgconfig.parse('lapack')
-lapack_libs = lapack_pc['libraries'] -lapack_libs = lapack_pc['libraries']
@ -26,7 +25,7 @@ diff -up src/module_list.py.orig src/module_list.py
# FFLAS-FFPACK # FFLAS-FFPACK
fflas_ffpack_pc = pkgconfig.parse('fflas-ffpack') fflas_ffpack_pc = pkgconfig.parse('fflas-ffpack')
@@ -44,7 +38,9 @@ givaro_cflags = pkgconfig.cflags('givaro @@ -44,7 +42,9 @@ givaro_cflags = pkgconfig.cflags('givaro
# The above cblas should already be in the list thanks to #20646 # The above cblas should already be in the list thanks to #20646
gsl_pc = pkgconfig.parse('gsl') gsl_pc = pkgconfig.parse('gsl')
gsl_libs = gsl_pc['libraries'] gsl_libs = gsl_pc['libraries']
@ -38,9 +37,9 @@ diff -up src/module_list.py.orig src/module_list.py
# GD image library # GD image library
diff -up src/sage/misc/cython.py.orig src/sage/misc/cython.py diff -up src/sage/misc/cython.py.orig src/sage/misc/cython.py
--- src/sage/misc/cython.py.orig 2017-04-11 10:05:44.166284281 -0400 --- src/sage/misc/cython.py.orig 2017-11-08 08:36:27.499237389 -0500
+++ src/sage/misc/cython.py 2017-04-11 10:06:00.016284888 -0400 +++ src/sage/misc/cython.py 2017-11-08 08:36:37.240237762 -0500
@@ -30,15 +30,11 @@ import pkgconfig @@ -30,7 +30,7 @@ import pkgconfig
# CBLAS can be one of multiple implementations # CBLAS can be one of multiple implementations
@ -49,11 +48,3 @@ diff -up src/sage/misc/cython.py.orig src/sage/misc/cython.py
cblas_libs = list(cblas_pc['libraries']) cblas_libs = list(cblas_pc['libraries'])
cblas_library_dirs = list(cblas_pc['library_dirs']) cblas_library_dirs = list(cblas_pc['library_dirs'])
cblas_include_dirs = list(cblas_pc['include_dirs']) cblas_include_dirs = list(cblas_pc['include_dirs'])
-# TODO: Remove Cygwin hack by installing a suitable cblas.pc
-if os.path.exists('/usr/lib/libblas.dll.a'):
- cblas_libs = 'gslcblas'
-
standard_libs = [
'mpfr', 'gmp', 'gmpxx', 'stdc++', 'pari', 'm',
'ec', 'gsl',

View file

@ -1,7 +1,7 @@
diff -up src/sage/numerical/backends/coin_backend.pyx.orig src/sage/numerical/backends/coin_backend.pyx diff -up src/sage/numerical/backends/coin_backend.pyx.orig src/sage/numerical/backends/coin_backend.pyx
--- src/sage/numerical/backends/coin_backend.pyx.orig 2016-10-20 08:11:54.641546892 -0400 --- src/sage/numerical/backends/coin_backend.pyx.orig 2017-11-08 08:23:51.731208448 -0500
+++ src/sage/numerical/backends/coin_backend.pyx 2016-10-20 08:12:03.505547232 -0400 +++ src/sage/numerical/backends/coin_backend.pyx 2017-11-08 08:24:02.347208854 -0500
@@ -756,8 +756,8 @@ cdef class CoinBackend(GenericBackend): @@ -759,8 +759,8 @@ cdef class CoinBackend(GenericBackend):
model.setLogLevel(old_logLevel) model.setLogLevel(old_logLevel)
# multithreading # multithreading

View file

@ -1,7 +1,7 @@
diff -up src/module_list.py.orig src/module_list.py diff -up src/module_list.py.orig src/module_list.py
--- src/module_list.py.orig 2017-04-11 09:54:40.320258860 -0400 --- src/module_list.py.orig 2017-11-08 06:12:26.727906504 -0500
+++ src/module_list.py 2017-04-11 09:54:50.432259248 -0400 +++ src/module_list.py 2017-11-08 06:14:29.020911187 -0500
@@ -165,7 +165,6 @@ library_order["stdc++"] = 1000 @@ -163,7 +163,6 @@ library_order["stdc++"] = 1000
### ###
############################################################# #############################################################
@ -9,7 +9,7 @@ diff -up src/module_list.py.orig src/module_list.py
UNAME = os.uname() UNAME = os.uname()
def uname_specific(name, value, alternative): def uname_specific(name, value, alternative):
@@ -381,21 +380,21 @@ ext_modules = [ @@ -391,21 +390,21 @@ ext_modules = [
sources = ['sage/graphs/matchpoly.pyx'], sources = ['sage/graphs/matchpoly.pyx'],
extra_compile_args = ['-std=c99']), extra_compile_args = ['-std=c99']),
@ -28,25 +28,25 @@ diff -up src/module_list.py.orig src/module_list.py
- sources = ['sage/graphs/modular_decomposition.pyx'], - sources = ['sage/graphs/modular_decomposition.pyx'],
- libraries = ['modulardecomposition'], - libraries = ['modulardecomposition'],
- package = 'modular_decomposition'), - package = 'modular_decomposition'),
+# Extension("sage.graphs.mcqd", +# OptionalExtension("sage.graphs.mcqd",
+# ["sage/graphs/mcqd.pyx"], +# ["sage/graphs/mcqd.pyx"],
+# language = "c++", +# language = "c++",
+# package = 'mcqd'), +# package = 'mcqd'),
+ +
+# Extension("sage.graphs.bliss", +# OptionalExtension("sage.graphs.bliss",
+# ["sage/graphs/bliss.pyx"], +# ["sage/graphs/bliss.pyx"],
+# language = "c++", +# language = "c++",
+# libraries = ['bliss'], +# libraries = ['bliss'],
+# package = 'bliss'), +# package = 'bliss'),
+ +
+# Extension('sage.graphs.modular_decomposition', +# OptionalExtension('sage.graphs.modular_decomposition',
+# sources = ['sage/graphs/modular_decomposition.pyx'], +# sources = ['sage/graphs/modular_decomposition.pyx'],
+# libraries = ['modulardecomposition'], +# libraries = ['modulardecomposition'],
+# package = 'modular_decomposition'), +# package = 'modular_decomposition'),
Extension('sage.graphs.planarity', Extension('sage.graphs.planarity',
sources = ['sage/graphs/planarity.pyx'], sources = ['sage/graphs/planarity.pyx'],
@@ -414,10 +413,10 @@ ext_modules = [ @@ -424,10 +423,10 @@ ext_modules = [
Extension('sage.graphs.graph_decompositions.cutwidth', Extension('sage.graphs.graph_decompositions.cutwidth',
sources = ['sage/graphs/graph_decompositions/cutwidth.pyx']), sources = ['sage/graphs/graph_decompositions/cutwidth.pyx']),
@ -54,14 +54,14 @@ diff -up src/module_list.py.orig src/module_list.py
- sources = ['sage/graphs/graph_decompositions/tdlib.pyx'], - sources = ['sage/graphs/graph_decompositions/tdlib.pyx'],
- language="c++", - language="c++",
- package = 'tdlib'), - package = 'tdlib'),
+# Extension('sage.graphs.graph_decompositions.tdlib', +# OptionalExtension('sage.graphs.graph_decompositions.tdlib',
+# sources = ['sage/graphs/graph_decompositions/tdlib.pyx'], +# sources = ['sage/graphs/graph_decompositions/tdlib.pyx'],
+# language="c++", +# language="c++",
+# package = 'tdlib'), +# package = 'tdlib'),
Extension('sage.graphs.spanning_tree', Extension('sage.graphs.spanning_tree',
sources = ['sage/graphs/spanning_tree.pyx']), sources = ['sage/graphs/spanning_tree.pyx']),
@@ -512,18 +511,18 @@ ext_modules = [ @@ -514,17 +513,17 @@ ext_modules = [
## ##
################################ ################################
@ -71,7 +71,7 @@ diff -up src/module_list.py.orig src/module_list.py
- language="c++", - language="c++",
- libraries = ['coxeter3'], - libraries = ['coxeter3'],
- package = 'coxeter3'), - package = 'coxeter3'),
+# Extension('sage.libs.coxeter3.coxeter', +# OptionalExtension('sage.libs.coxeter3.coxeter',
+# sources = ['sage/libs/coxeter3/coxeter.pyx'], +# sources = ['sage/libs/coxeter3/coxeter.pyx'],
+# include_dirs = [os.path.join(SAGE_INC, 'coxeter')], +# include_dirs = [os.path.join(SAGE_INC, 'coxeter')],
+# language="c++", +# language="c++",
@ -79,15 +79,14 @@ diff -up src/module_list.py.orig src/module_list.py
+# package = 'coxeter3'), +# package = 'coxeter3'),
Extension('sage.libs.ecl', Extension('sage.libs.ecl',
sources = ["sage/libs/ecl.pyx"], sources = ["sage/libs/ecl.pyx"]),
libraries = ["ecl"]),
- OptionalExtension("sage.libs.fes", - OptionalExtension("sage.libs.fes",
+ Extension("sage.libs.fes", + Extension("sage.libs.fes",
["sage/libs/fes.pyx"], ["sage/libs/fes.pyx"],
language = "c", language = "c",
libraries = ['fes'], libraries = ['fes'],
@@ -547,17 +546,17 @@ ext_modules = [ @@ -548,23 +547,23 @@ ext_modules = [
Extension('sage.libs.gmp.pylong', Extension('sage.libs.gmp.pylong',
sources = ['sage/libs/gmp/pylong.pyx']), sources = ['sage/libs/gmp/pylong.pyx']),
@ -96,25 +95,39 @@ diff -up src/module_list.py.orig src/module_list.py
- libraries = ["braiding"], - libraries = ["braiding"],
- package="libbraiding", - package="libbraiding",
- language = 'c++'), - language = 'c++'),
+# Extension('sage.libs.braiding', -
+# sources = ["sage/libs/braiding.pyx"], -
+# libraries = ["braiding"],
+# package="libbraiding",
+# language = 'c++'),
- OptionalExtension('sage.libs.homfly', - OptionalExtension('sage.libs.homfly',
- sources = ["sage/libs/homfly.pyx"], - sources = ["sage/libs/homfly.pyx"],
- libraries = ["homfly", "gc"], - libraries = ["homfly", "gc"],
- package="libhomfly"), - package="libhomfly"),
+# Extension('sage.libs.homfly', -
- OptionalExtension('sage.libs.sirocco',
- sources = ["sage/libs/sirocco.pyx"],
- libraries = ["sirocco", "mpfr", "gmp"],
- package="sirocco",
- language = 'c++'),
+# OptionalExtension('sage.libs.braiding',
+# sources = ["sage/libs/braiding.pyx"],
+# libraries = ["braiding"],
+# package="libbraiding",
+# language = 'c++'),
+
+
+# OptionalExtension('sage.libs.homfly',
+# sources = ["sage/libs/homfly.pyx"], +# sources = ["sage/libs/homfly.pyx"],
+# libraries = ["homfly", "gc"], +# libraries = ["homfly", "gc"],
+# package="libhomfly"), +# package="libhomfly"),
+
+# OptionalExtension('sage.libs.sirocco',
+# sources = ["sage/libs/sirocco.pyx"],
+# libraries = ["sirocco", "mpfr", "gmp"],
+# package="sirocco",
+# language = 'c++'),
Extension('*', ['sage/libs/linbox/*.pyx']), Extension('*', ['sage/libs/linbox/*.pyx']),
@@ -895,10 +894,10 @@ ext_modules = [ @@ -901,10 +900,10 @@ ext_modules = [
Extension('sage.matrix.matrix_window', Extension('sage.matrix.matrix_window',
sources = ['sage/matrix/matrix_window.pyx']), sources = ['sage/matrix/matrix_window.pyx']),
@ -122,14 +135,14 @@ diff -up src/module_list.py.orig src/module_list.py
- sources = ['sage/matrix/matrix_gfpn_dense.pyx'], - sources = ['sage/matrix/matrix_gfpn_dense.pyx'],
- libraries = ['mtx'], - libraries = ['mtx'],
- package = 'meataxe'), - package = 'meataxe'),
+# Extension("sage.matrix.matrix_gfpn_dense", +# OptionalExtension("sage.matrix.matrix_gfpn_dense",
+# sources = ['sage/matrix/matrix_gfpn_dense.pyx'], +# sources = ['sage/matrix/matrix_gfpn_dense.pyx'],
+# libraries = ['mtx'], +# libraries = ['mtx'],
+# package = 'meataxe'), +# package = 'meataxe'),
Extension('sage.matrix.misc', Extension('sage.matrix.misc',
sources = ['sage/matrix/misc.pyx'], sources = ['sage/matrix/misc.pyx'],
@@ -1077,19 +1076,19 @@ ext_modules = [ @@ -1089,19 +1088,19 @@ ext_modules = [
Extension("sage.numerical.backends.interactivelp_backend", Extension("sage.numerical.backends.interactivelp_backend",
["sage/numerical/backends/interactivelp_backend.pyx"]), ["sage/numerical/backends/interactivelp_backend.pyx"]),
@ -144,13 +157,13 @@ diff -up src/module_list.py.orig src/module_list.py
- libraries = ["stdc++", "cplex"], - libraries = ["stdc++", "cplex"],
- condition = os.path.isfile(SAGE_INC + "/cplex.h") and - condition = os.path.isfile(SAGE_INC + "/cplex.h") and
- os.path.isfile(SAGE_LOCAL + "/lib/libcplex.a")), - os.path.isfile(SAGE_LOCAL + "/lib/libcplex.a")),
+# Extension("sage.numerical.backends.gurobi_backend", +# OptionalExtension("sage.numerical.backends.gurobi_backend",
+# ["sage/numerical/backends/gurobi_backend.pyx"], +# ["sage/numerical/backends/gurobi_backend.pyx"],
+# libraries = ["stdc++", "gurobi"], +# libraries = ["stdc++", "gurobi"],
+# condition = os.path.isfile(SAGE_INC + "/gurobi_c.h") and +# condition = os.path.isfile(SAGE_INC + "/gurobi_c.h") and
+# os.path.isfile(SAGE_LOCAL + "/lib/libgurobi.so")), +# os.path.isfile(SAGE_LOCAL + "/lib/libgurobi.so")),
+ +
+# Extension("sage.numerical.backends.cplex_backend", +# OptionalExtension("sage.numerical.backends.cplex_backend",
+# ["sage/numerical/backends/cplex_backend.pyx"], +# ["sage/numerical/backends/cplex_backend.pyx"],
+# libraries = ["stdc++", "cplex"], +# libraries = ["stdc++", "cplex"],
+# condition = os.path.isfile(SAGE_INC + "/cplex.h") and +# condition = os.path.isfile(SAGE_INC + "/cplex.h") and
@ -161,21 +174,3 @@ diff -up src/module_list.py.orig src/module_list.py
["sage/numerical/backends/coin_backend.pyx"], ["sage/numerical/backends/coin_backend.pyx"],
language = 'c++', language = 'c++',
libraries = ["Cbc", "CbcSolver", "Cgl", "Clp", "CoinUtils", libraries = ["Cbc", "CbcSolver", "Cgl", "Clp", "CoinUtils",
@@ -1572,7 +1571,7 @@ ext_modules = [
##
################################
- OptionalExtension("sage.sat.solvers.cryptominisat.cryptominisat",
+ Extension("sage.sat.solvers.cryptominisat.cryptominisat",
sources = ["sage/sat/solvers/cryptominisat/cryptominisat.pyx"],
include_dirs = [os.path.join(SAGE_INC, "cmsat")] + zlib_include_dirs,
language = "c++",
@@ -1580,7 +1579,7 @@ ext_modules = [
library_dirs = zlib_library_dirs,
package = 'cryptominisat'),
- OptionalExtension("sage.sat.solvers.cryptominisat.solverconf",
+ Extension("sage.sat.solvers.cryptominisat.solverconf",
sources = ["sage/sat/solvers/cryptominisat/solverconf.pyx",
"sage/sat/solvers/cryptominisat/solverconf_helper.cpp"],
include_dirs = [os.path.join(SAGE_INC, "cmsat")] + zlib_include_dirs,

View file

@ -1,7 +1,7 @@
diff -up src/sage/libs/fes.pyx.orig src/sage/libs/fes.pyx diff -up src/sage/libs/fes.pyx.orig src/sage/libs/fes.pyx
--- src/sage/libs/fes.pyx.orig 2017-03-04 13:32:40.457489539 -0500 --- src/sage/libs/fes.pyx.orig 2017-11-08 08:26:29.835214502 -0500
+++ src/sage/libs/fes.pyx 2017-03-04 13:32:50.717489932 -0500 +++ src/sage/libs/fes.pyx 2017-11-08 08:26:38.707214842 -0500
@@ -84,8 +84,8 @@ from sage.rings.polynomial.pbori import @@ -86,8 +86,8 @@ from sage.rings.polynomial.pbori import
from sage.arith.all import binomial from sage.arith.all import binomial
from sage.combinat.subset import Subsets from sage.combinat.subset import Subsets

View file

@ -1,9 +1,9 @@
diff -up src/module_list.py.orig src/module_list.py diff -up src/module_list.py.orig src/module_list.py
--- src/module_list.py.orig 2017-04-11 10:00:15.271271687 -0400 --- src/module_list.py.orig 2017-11-08 08:27:07.539215946 -0500
+++ src/module_list.py 2017-04-11 10:00:26.344272111 -0400 +++ src/module_list.py 2017-11-08 08:27:17.051216310 -0500
@@ -522,11 +522,11 @@ ext_modules = [ @@ -523,11 +523,11 @@ ext_modules = [
sources = ["sage/libs/ecl.pyx"], Extension('sage.libs.ecl',
libraries = ["ecl"]), sources = ["sage/libs/ecl.pyx"]),
- Extension("sage.libs.fes", - Extension("sage.libs.fes",
- ["sage/libs/fes.pyx"], - ["sage/libs/fes.pyx"],

View file

@ -1,130 +0,0 @@
diff -up build/pkgs/sagenb/src/sagenb/flask_version/admin.py.orig build/pkgs/sagenb/src/sagenb/flask_version/admin.py
--- build/pkgs/sagenb/src/sagenb/flask_version/admin.py.orig 2016-08-24 07:36:12.876678518 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/admin.py 2016-08-24 07:36:28.037679098 -0400
@@ -1,10 +1,10 @@
import os
-from flask import Module, url_for, render_template, request, session, redirect, g, current_app
+from flask import Blueprint, url_for, render_template, request, session, redirect, g, current_app
from decorators import login_required, admin_required, with_lock
from flask.ext.babel import Babel, gettext, ngettext, lazy_gettext
_ = gettext
-admin = Module('sagenb.flask_version.admin')
+admin = Blueprint('admin', 'sagenb.flask_version.admin')
@admin.route('/users')
@admin.route('/users/reset/<reset>')
diff -up build/pkgs/sagenb/src/sagenb/flask_version/authentication.py.orig build/pkgs/sagenb/src/sagenb/flask_version/authentication.py
--- build/pkgs/sagenb/src/sagenb/flask_version/authentication.py.orig 2016-08-24 07:36:36.716679431 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/authentication.py 2016-08-24 07:36:57.093680211 -0400
@@ -1,11 +1,11 @@
import os
import random
-from flask import Module, url_for, render_template, request, session, redirect, g, current_app
+from flask import Blueprint, url_for, render_template, request, session, redirect, g, current_app
from decorators import with_lock
from flask.ext.babel import gettext, ngettext, lazy_gettext
_ = gettext
-authentication = Module('sagenb.flask_version.authentication')
+authentication = Blueprint('authentication', 'sagenb.flask_version.authentication')
##################
# Authentication #
diff -up build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig build/pkgs/sagenb/src/sagenb/flask_version/base.py
--- build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig 2016-08-24 07:37:06.477680570 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/base.py 2016-08-24 07:37:26.182681325 -0400
@@ -1,7 +1,7 @@
#!/usr/bin/env python
import os, time, re
from functools import partial
-from flask import Flask, Module, url_for, request, session, redirect, g, make_response, current_app, render_template
+from flask import Flask, Blueprint, url_for, request, session, redirect, g, make_response, current_app, render_template
from decorators import login_required, guest_or_login_required, with_lock
from decorators import global_lock
@@ -80,7 +80,7 @@ class SageNBFlask(Flask):
return render_template(os.path.join('html', 'error_message.html'),
**template_dict)
-base = Module('sagenb.flask_version.base')
+base = Blueprint('base', 'sagenb.flask_version.base')
#############
# Main Page #
diff -up build/pkgs/sagenb/src/sagenb/flask_version/doc.py.orig build/pkgs/sagenb/src/sagenb/flask_version/doc.py
--- build/pkgs/sagenb/src/sagenb/flask_version/doc.py.orig 2016-08-24 07:37:34.941681660 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/doc.py 2016-08-24 07:37:49.829682230 -0400
@@ -14,13 +14,13 @@ URLS to do:
"""
import os
-from flask import Module, url_for, render_template, request, session, redirect, g, current_app
+from flask import Blueprint, url_for, render_template, request, session, redirect, g, current_app
from decorators import login_required, guest_or_login_required
from flask.ext.babel import gettext, ngettext, lazy_gettext
_ = gettext
-doc = Module('sagenb.flask_version.doc')
+doc = Blueprint('doc', 'sagenb.flask_version.doc')
from sage.env import SAGE_DOC
DOC = os.path.join(SAGE_DOC, 'html', 'en')
diff -up build/pkgs/sagenb/src/sagenb/flask_version/settings.py.orig build/pkgs/sagenb/src/sagenb/flask_version/settings.py
--- build/pkgs/sagenb/src/sagenb/flask_version/settings.py.orig 2016-08-24 07:37:59.637682606 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/settings.py 2016-08-24 07:38:16.493683252 -0400
@@ -1,12 +1,12 @@
import os
import random
-from flask import Module, url_for, render_template, request, session, redirect, g, current_app
+from flask import Blueprint, url_for, render_template, request, session, redirect, g, current_app
from decorators import login_required, with_lock
from flask.ext.babel import gettext, ngettext, lazy_gettext
_ = gettext
-settings = Module('sagenb.flask_version.settings')
+settings = Blueprint('settings', 'sagenb.flask_version.settings')
@settings.route('/settings', methods = ['GET','POST'])
@login_required
diff -up build/pkgs/sagenb/src/sagenb/flask_version/worksheet_listing.py.orig build/pkgs/sagenb/src/sagenb/flask_version/worksheet_listing.py
--- build/pkgs/sagenb/src/sagenb/flask_version/worksheet_listing.py.orig 2016-08-24 07:38:27.211683662 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/worksheet_listing.py 2016-08-24 07:38:44.718684332 -0400
@@ -2,12 +2,12 @@
"""
import os
import urllib, urlparse
-from flask import Module, url_for, render_template, request, session, redirect, g, current_app
+from flask import Blueprint, url_for, render_template, request, session, redirect, g, current_app
from decorators import login_required, guest_or_login_required, with_lock
from flask.ext.babel import Babel, gettext, ngettext, lazy_gettext
_ = gettext
-worksheet_listing = Module('sagenb.flask_version.worksheet_listing')
+worksheet_listing = Blueprint('worksheet_listing', 'sagenb.flask_version.worksheet_listing')
def render_worksheet_list(args, pub, username):
"""
diff -up build/pkgs/sagenb/src/sagenb/flask_version/worksheet.py.orig build/pkgs/sagenb/src/sagenb/flask_version/worksheet.py
--- build/pkgs/sagenb/src/sagenb/flask_version/worksheet.py.orig 2016-08-24 07:38:50.285684546 -0400
+++ build/pkgs/sagenb/src/sagenb/flask_version/worksheet.py 2016-08-24 07:39:10.173685307 -0400
@@ -1,7 +1,7 @@
import re
import os, threading, collections
from functools import wraps
-from flask import Module, make_response, url_for, render_template, request, session, redirect, g, current_app
+from flask import Blueprint, make_response, url_for, render_template, request, session, redirect, g, current_app
from decorators import login_required, with_lock
from collections import defaultdict
from werkzeug.utils import secure_filename
@@ -11,7 +11,7 @@ _ = gettext
from sagenb.notebook.interact import INTERACT_UPDATE_PREFIX
from sagenb.notebook.misc import encode_response
-ws = Module('sagenb.flask_version.worksheet')
+ws = Blueprint('worksheet', 'sagenb.flask_version.worksheet')
worksheet_locks = defaultdict(threading.Lock)
def worksheet_view(f):

View file

@ -1,7 +1,7 @@
diff -up src/sage/groups/perm_gps/permgroup.py.orig src/sage/groups/perm_gps/permgroup.py diff -up src/sage/groups/perm_gps/permgroup.py.orig src/sage/groups/perm_gps/permgroup.py
--- src/sage/groups/perm_gps/permgroup.py.orig 2016-08-20 15:03:27.119562623 -0400 --- src/sage/groups/perm_gps/permgroup.py.orig 2017-11-08 08:23:18.884207190 -0500
+++ src/sage/groups/perm_gps/permgroup.py 2016-08-20 15:05:17.650566855 -0400 +++ src/sage/groups/perm_gps/permgroup.py 2017-11-08 08:23:27.988207539 -0500
@@ -165,6 +165,10 @@ def load_hap(): @@ -166,6 +166,10 @@ def load_hap():
gap.load_package("hap") gap.load_package("hap")
except Exception: except Exception:
gap.load_package("hap") gap.load_package("hap")
@ -12,7 +12,7 @@ diff -up src/sage/groups/perm_gps/permgroup.py.orig src/sage/groups/perm_gps/per
def hap_decorator(f): def hap_decorator(f):
""" """
@@ -190,8 +194,6 @@ def hap_decorator(f): @@ -191,8 +195,6 @@ def hap_decorator(f):
""" """
@wraps(f) @wraps(f)
def wrapped(self, n, p=0): def wrapped(self, n, p=0):

View file

@ -1,7 +1,7 @@
diff -up src/module_list.py.orig src/module_list.py diff -up src/module_list.py.orig src/module_list.py
--- src/module_list.py.orig 2017-04-11 10:02:15.848276304 -0400 --- src/module_list.py.orig 2017-11-08 08:30:43.611224220 -0500
+++ src/module_list.py 2017-04-11 10:02:24.616276640 -0400 +++ src/module_list.py 2017-11-08 08:30:51.131224508 -0500
@@ -855,7 +855,7 @@ ext_modules = [ @@ -861,7 +861,7 @@ ext_modules = [
library_dirs = m4ri_library_dirs, library_dirs = m4ri_library_dirs,
include_dirs = m4ri_include_dirs, include_dirs = m4ri_include_dirs,
depends = [SAGE_INC + "/m4rie/m4rie.h"], depends = [SAGE_INC + "/m4rie/m4rie.h"],

View file

@ -1,7 +1,7 @@
diff -up src/sage/modular/arithgroup/farey.cpp.orig src/sage/modular/arithgroup/farey.cpp diff -up src/sage/modular/arithgroup/farey.cpp.orig src/sage/modular/arithgroup/farey.cpp
--- src/sage/modular/arithgroup/farey.cpp.orig 2016-08-08 13:04:25.463462742 -0400 --- src/sage/modular/arithgroup/farey.cpp.orig 2017-11-08 06:03:07.383885084 -0500
+++ src/sage/modular/arithgroup/farey.cpp 2016-08-08 13:04:47.129463572 -0400 +++ src/sage/modular/arithgroup/farey.cpp 2017-11-08 06:03:18.271885501 -0500
@@ -142,6 +142,7 @@ operator*(const SL2Z& M, const vector<mp @@ -136,6 +136,7 @@ operator*(const SL2Z& M, const vector<mp
return result; return result;
} }
@ -9,7 +9,7 @@ diff -up src/sage/modular/arithgroup/farey.cpp.orig src/sage/modular/arithgroup/
inline inline
mpz_class mpz_class
floor(const mpq_class r) { floor(const mpq_class r) {
@@ -152,6 +153,7 @@ floor(const mpq_class r) { @@ -146,6 +147,7 @@ floor(const mpq_class r) {
return result - 1; return result - 1;
} }
} }

View file

@ -1,6 +1,6 @@
diff -up src/module_list.py.orig src/module_list.py diff -up src/module_list.py.orig src/module_list.py
--- src/module_list.py.orig 2017-04-11 10:01:47.513275219 -0400 --- src/module_list.py.orig 2017-11-08 08:30:03.588222687 -0500
+++ src/module_list.py 2017-04-11 10:02:00.105275701 -0400 +++ src/module_list.py 2017-11-08 08:30:21.532223375 -0500
@@ -62,6 +62,7 @@ linbox_cflags = pkgconfig.cflags('linbox @@ -62,6 +62,7 @@ linbox_cflags = pkgconfig.cflags('linbox
# Singular # Singular
singular_pc = pkgconfig.parse('Singular') singular_pc = pkgconfig.parse('Singular')
@ -9,7 +9,7 @@ diff -up src/module_list.py.orig src/module_list.py
singular_library_dirs = singular_pc['library_dirs'] singular_library_dirs = singular_pc['library_dirs']
singular_cflags = pkgconfig.cflags('Singular').split() singular_cflags = pkgconfig.cflags('Singular').split()
@@ -187,7 +188,8 @@ ext_modules = [ @@ -185,7 +186,8 @@ ext_modules = [
language='c++', language='c++',
libraries = ["gmp", "m", "ntl"]), libraries = ["gmp", "m", "ntl"]),
@ -19,7 +19,7 @@ diff -up src/module_list.py.orig src/module_list.py
Extension('sage.algebras.quatalg.quaternion_algebra_cython', Extension('sage.algebras.quatalg.quaternion_algebra_cython',
sources = ['sage/algebras/quatalg/quaternion_algebra_cython.pyx'], sources = ['sage/algebras/quatalg/quaternion_algebra_cython.pyx'],
@@ -574,7 +576,8 @@ ext_modules = [ @@ -581,7 +583,8 @@ ext_modules = [
[])), [])),
Extension('sage.libs.lrcalc.lrcalc', Extension('sage.libs.lrcalc.lrcalc',
@ -27,9 +27,9 @@ diff -up src/module_list.py.orig src/module_list.py
+ sources = ["sage/libs/lrcalc/lrcalc.pyx"], + sources = ["sage/libs/lrcalc/lrcalc.pyx"],
+ include_dirs = [os.path.join(SAGE_INC, 'lrcalc')]), + include_dirs = [os.path.join(SAGE_INC, 'lrcalc')]),
Extension('*', ['sage/libs/cypari2/*.pyx']),
Extension('*', ['sage/libs/pari/*.pyx']), Extension('*', ['sage/libs/pari/*.pyx']),
@@ -592,7 +595,8 @@ ext_modules = [
@@ -598,7 +601,8 @@ ext_modules = [
sources = ['sage/libs/readline.pyx'], sources = ['sage/libs/readline.pyx'],
libraries = ['readline']), libraries = ['readline']),
@ -39,7 +39,7 @@ diff -up src/module_list.py.orig src/module_list.py
Extension('sage.libs.symmetrica.symmetrica', Extension('sage.libs.symmetrica.symmetrica',
sources = ["sage/libs/symmetrica/symmetrica.pyx"], sources = ["sage/libs/symmetrica/symmetrica.pyx"],
@@ -600,17 +604,21 @@ ext_modules = [ @@ -606,17 +610,21 @@ ext_modules = [
Extension('sage.libs.mpmath.utils', Extension('sage.libs.mpmath.utils',
sources = ["sage/libs/mpmath/utils.pyx"], sources = ["sage/libs/mpmath/utils.pyx"],
@ -65,7 +65,7 @@ diff -up src/module_list.py.orig src/module_list.py
################################### ###################################
## ##
@@ -618,7 +626,8 @@ ext_modules = [ @@ -624,7 +632,8 @@ ext_modules = [
## ##
################################### ###################################
@ -75,7 +75,7 @@ diff -up src/module_list.py.orig src/module_list.py
################################### ###################################
## ##
@@ -799,6 +808,7 @@ ext_modules = [ @@ -805,6 +814,7 @@ ext_modules = [
Extension("sage.matrix.matrix_complex_ball_dense", Extension("sage.matrix.matrix_complex_ball_dense",
["sage/matrix/matrix_complex_ball_dense.pyx"], ["sage/matrix/matrix_complex_ball_dense.pyx"],
libraries=['arb', 'mpfi', 'mpfr'], libraries=['arb', 'mpfi', 'mpfr'],
@ -83,7 +83,7 @@ diff -up src/module_list.py.orig src/module_list.py
language = "c++"), language = "c++"),
Extension('sage.matrix.matrix_complex_double_dense', Extension('sage.matrix.matrix_complex_double_dense',
@@ -866,6 +876,7 @@ ext_modules = [ @@ -872,6 +882,7 @@ ext_modules = [
sources = ['sage/matrix/matrix_modn_sparse.pyx']), sources = ['sage/matrix/matrix_modn_sparse.pyx']),
Extension('sage.matrix.matrix_mpolynomial_dense', Extension('sage.matrix.matrix_mpolynomial_dense',
@ -91,7 +91,7 @@ diff -up src/module_list.py.orig src/module_list.py
sources = ['sage/matrix/matrix_mpolynomial_dense.pyx']), sources = ['sage/matrix/matrix_mpolynomial_dense.pyx']),
Extension('sage.matrix.matrix_polynomial_dense', Extension('sage.matrix.matrix_polynomial_dense',
@@ -1189,6 +1200,7 @@ ext_modules = [ @@ -1201,6 +1212,7 @@ ext_modules = [
Extension("sage.rings.complex_arb", Extension("sage.rings.complex_arb",
["sage/rings/complex_arb.pyx"], ["sage/rings/complex_arb.pyx"],
libraries=['mpfi', 'mpfr', 'gmp'], libraries=['mpfi', 'mpfr', 'gmp'],
@ -99,7 +99,7 @@ diff -up src/module_list.py.orig src/module_list.py
language = 'c++'), language = 'c++'),
Extension('sage.rings.complex_double', Extension('sage.rings.complex_double',
@@ -1264,6 +1276,7 @@ ext_modules = [ @@ -1276,6 +1288,7 @@ ext_modules = [
Extension("sage.rings.real_arb", Extension("sage.rings.real_arb",
["sage/rings/real_arb.pyx"], ["sage/rings/real_arb.pyx"],
libraries = ['mpfi', 'mpfr'], libraries = ['mpfi', 'mpfr'],
@ -107,7 +107,7 @@ diff -up src/module_list.py.orig src/module_list.py
language = 'c++'), language = 'c++'),
Extension('sage.rings.real_lazy', Extension('sage.rings.real_lazy',
@@ -1462,12 +1475,15 @@ ext_modules = [ @@ -1481,12 +1494,15 @@ ext_modules = [
sources = ['sage/rings/polynomial/multi_polynomial.pyx']), sources = ['sage/rings/polynomial/multi_polynomial.pyx']),
Extension('sage.rings.polynomial.multi_polynomial_ideal_libsingular', Extension('sage.rings.polynomial.multi_polynomial_ideal_libsingular',
@ -123,7 +123,7 @@ diff -up src/module_list.py.orig src/module_list.py
sources = ['sage/rings/polynomial/multi_polynomial_libsingular.pyx']), sources = ['sage/rings/polynomial/multi_polynomial_libsingular.pyx']),
Extension('sage.rings.polynomial.multi_polynomial_ring_generic', Extension('sage.rings.polynomial.multi_polynomial_ring_generic',
@@ -1481,6 +1497,7 @@ ext_modules = [ @@ -1500,6 +1516,7 @@ ext_modules = [
Extension('sage.rings.polynomial.polynomial_complex_arb', Extension('sage.rings.polynomial.polynomial_complex_arb',
sources = ['sage/rings/polynomial/polynomial_complex_arb.pyx'], sources = ['sage/rings/polynomial/polynomial_complex_arb.pyx'],
@ -132,13 +132,13 @@ diff -up src/module_list.py.orig src/module_list.py
Extension('sage.rings.polynomial.polynomial_compiled', Extension('sage.rings.polynomial.polynomial_compiled',
diff -up src/setup.py.orig src/setup.py diff -up src/setup.py.orig src/setup.py
--- src/setup.py.orig 2017-04-11 10:01:57.270275593 -0400 --- src/setup.py.orig 2017-11-08 08:30:03.589222688 -0500
+++ src/setup.py 2017-04-11 10:02:00.107275701 -0400 +++ src/setup.py 2017-11-08 08:30:21.533223375 -0500
@@ -83,6 +83,7 @@ except KeyError: @@ -89,6 +89,7 @@ except KeyError:
# search for dependencies and add to gcc -I<path> # search for dependencies and add to gcc -I<path>
# this depends on SAGE_CYTHONIZED # this depends on SAGE_CYTHONIZED
include_dirs = sage_include_directories(use_sources=True) include_dirs = sage_include_directories(use_sources=True)
+include_dirs.extend(['@@CYSIGNALS@@']) +include_dirs.extend(['@@CYSIGNALS@@'])
# Manually add -fno-strict-aliasing, which is needed to compile Cython # Look for libraries in $SAGE_LOCAL/lib
# and disappears from the default flags if the user has set CFLAGS. library_dirs = [os.path.join(SAGE_LOCAL, "lib")]

View file

@ -1,6 +1,6 @@
diff -up src/sage/libs/gap/test/main.c.orig src/sage/libs/gap/test/main.c diff -up src/sage/libs/gap/test/main.c.orig src/sage/libs/gap/test/main.c
--- src/sage/libs/gap/test/main.c.orig 2017-04-11 09:59:37.166270228 -0400 --- src/sage/libs/gap/test/main.c.orig 2017-11-08 08:24:43.763210440 -0500
+++ src/sage/libs/gap/test/main.c 2017-04-11 09:59:39.063270300 -0400 +++ src/sage/libs/gap/test/main.c 2017-11-08 08:24:46.603210549 -0500
@@ -22,7 +22,7 @@ void eval(char* cmd) { @@ -22,7 +22,7 @@ void eval(char* cmd) {
libgap_start_interaction(cmd); libgap_start_interaction(cmd);
@ -11,9 +11,9 @@ diff -up src/sage/libs/gap/test/main.c.orig src/sage/libs/gap/test/main.c
char* out = libgap_get_output(); char* out = libgap_get_output();
libgap_exit(); libgap_exit();
diff -up src/sage/libs/gap/util.pyx.orig src/sage/libs/gap/util.pyx diff -up src/sage/libs/gap/util.pyx.orig src/sage/libs/gap/util.pyx
--- src/sage/libs/gap/util.pyx.orig 2017-04-11 09:59:20.424269587 -0400 --- src/sage/libs/gap/util.pyx.orig 2017-11-08 08:24:28.405209852 -0500
+++ src/sage/libs/gap/util.pyx 2017-04-11 09:59:39.065270300 -0400 +++ src/sage/libs/gap/util.pyx 2017-11-08 08:24:46.603210549 -0500
@@ -158,17 +158,9 @@ def gap_root(): @@ -160,17 +160,9 @@ def gap_root():
sage: from sage.libs.gap.util import gap_root sage: from sage.libs.gap.util import gap_root
sage: gap_root() # random output sage: gap_root() # random output

View file

@ -1,15 +1,15 @@
diff -up src/sage/geometry/polyhedron/base.py.orig src/sage/geometry/polyhedron/base.py diff -up src/sage/geometry/polyhedron/base.py.orig src/sage/geometry/polyhedron/base.py
--- src/sage/geometry/polyhedron/base.py.orig 2017-04-11 09:57:57.498266411 -0400 --- src/sage/geometry/polyhedron/base.py.orig 2017-11-08 08:21:45.693203621 -0500
+++ src/sage/geometry/polyhedron/base.py 2017-04-11 09:58:07.176266782 -0400 +++ src/sage/geometry/polyhedron/base.py 2017-11-08 08:21:56.893204050 -0500
@@ -22,7 +22,6 @@ import six @@ -22,7 +22,6 @@ from sage.structure.element import Eleme
from sage.structure.element import Element, coerce_binop, is_Vector from sage.structure.richcmp import rich_to_bool, op_NE
from sage.misc.all import cached_method, prod from sage.misc.all import cached_method, prod
-from sage.misc.package import is_package_installed -from sage.misc.package import is_package_installed
from sage.rings.all import QQ, ZZ from sage.rings.all import QQ, ZZ, AA
from sage.rings.real_double import RDF from sage.rings.real_double import RDF
@@ -3988,10 +3987,6 @@ class Polyhedron_base(Element): @@ -4188,10 +4187,6 @@ class Polyhedron_base(Element):
David Avis's lrs program. David Avis's lrs program.
""" """

View file

@ -1,6 +1,6 @@
diff -up src/bin/sage-maxima.lisp.orig src/bin/sage-maxima.lisp diff -up src/bin/sage-maxima.lisp.orig src/bin/sage-maxima.lisp
--- src/bin/sage-maxima.lisp.orig 2016-08-08 13:31:41.528525393 -0400 --- src/bin/sage-maxima.lisp.orig 2017-11-08 08:16:44.346192082 -0500
+++ src/bin/sage-maxima.lisp 2016-08-08 13:31:54.865525903 -0400 +++ src/bin/sage-maxima.lisp 2017-11-08 08:16:54.098192455 -0500
@@ -4,3 +4,8 @@ @@ -4,3 +4,8 @@
(setf *prompt-prefix* "<sage-display>") (setf *prompt-prefix* "<sage-display>")
@ -11,9 +11,9 @@ diff -up src/bin/sage-maxima.lisp.orig src/bin/sage-maxima.lisp
+ *standard-input* (open "/dev/stdin" :direction :input) + *standard-input* (open "/dev/stdin" :direction :input)
+ *standard-output* (open "/dev/stdout" :direction :output)) + *standard-output* (open "/dev/stdout" :direction :output))
diff -up src/sage/interfaces/maxima.py.orig src/sage/interfaces/maxima.py diff -up src/sage/interfaces/maxima.py.orig src/sage/interfaces/maxima.py
--- src/sage/interfaces/maxima.py.orig 2016-08-08 13:32:02.623526200 -0400 --- src/sage/interfaces/maxima.py.orig 2017-11-08 08:16:38.516191858 -0500
+++ src/sage/interfaces/maxima.py 2016-08-08 13:32:41.698527697 -0400 +++ src/sage/interfaces/maxima.py 2017-11-08 08:16:54.099192455 -0500
@@ -556,7 +556,7 @@ class Maxima(MaximaAbstract, Expect): @@ -555,7 +555,7 @@ class Maxima(MaximaAbstract, Expect):
Expect.__init__(self, Expect.__init__(self,
name = 'maxima', name = 'maxima',
prompt = '\(\%i[0-9]+\) ', prompt = '\(\%i[0-9]+\) ',
@ -22,7 +22,7 @@ diff -up src/sage/interfaces/maxima.py.orig src/sage/interfaces/maxima.py
script_subdirectory = script_subdirectory, script_subdirectory = script_subdirectory,
restart_on_ctrlc = False, restart_on_ctrlc = False,
verbose_start = False, verbose_start = False,
@@ -623,7 +623,8 @@ class Maxima(MaximaAbstract, Expect): @@ -622,7 +622,8 @@ class Maxima(MaximaAbstract, Expect):
# Remove limit on the max heapsize (since otherwise it defaults # Remove limit on the max heapsize (since otherwise it defaults
# to 256MB with ECL). # to 256MB with ECL).

View file

@ -1,7 +1,7 @@
diff -up src/sage/graphs/graph_generators.py.orig src/sage/graphs/graph_generators.py diff -up src/sage/graphs/graph_generators.py.orig src/sage/graphs/graph_generators.py
--- src/sage/graphs/graph_generators.py.orig 2017-04-11 09:58:45.689268257 -0400 --- src/sage/graphs/graph_generators.py.orig 2017-11-08 08:22:46.174205937 -0500
+++ src/sage/graphs/graph_generators.py 2017-04-11 09:58:53.297268548 -0400 +++ src/sage/graphs/graph_generators.py 2017-11-08 08:22:54.470206255 -0500
@@ -875,7 +875,7 @@ class GraphGenerators(): @@ -882,7 +882,7 @@ class GraphGenerators():
>A geng -d0D3 n=4 e=0-6 >A geng -d0D3 n=4 e=0-6
""" """
import subprocess import subprocess

View file

@ -1,6 +1,6 @@
diff -up src/sage/arith/multi_modular.pyx.orig src/sage/arith/multi_modular.pyx diff -up src/sage/arith/multi_modular.pyx.orig src/sage/arith/multi_modular.pyx
--- src/sage/arith/multi_modular.pyx.orig 2017-03-04 13:36:01.148497224 -0500 --- src/sage/arith/multi_modular.pyx.orig 2017-11-08 08:29:36.259221641 -0500
+++ src/sage/arith/multi_modular.pyx 2017-03-04 13:36:03.202497303 -0500 +++ src/sage/arith/multi_modular.pyx 2017-11-08 08:29:38.843221740 -0500
@@ -172,9 +172,9 @@ cdef class MultiModularBasis_base(object @@ -172,9 +172,9 @@ cdef class MultiModularBasis_base(object
ArithmeticError: The inverse of 6 modulo 10 is not defined. ArithmeticError: The inverse of 6 modulo 10 is not defined.
""" """
@ -23,9 +23,9 @@ diff -up src/sage/arith/multi_modular.pyx.orig src/sage/arith/multi_modular.pyx
cdef Py_ssize_t i cdef Py_ssize_t i
diff -up src/sage/rings/finite_rings/integer_mod.pyx.orig src/sage/rings/finite_rings/integer_mod.pyx diff -up src/sage/rings/finite_rings/integer_mod.pyx.orig src/sage/rings/finite_rings/integer_mod.pyx
--- src/sage/rings/finite_rings/integer_mod.pyx.orig 2017-03-04 13:36:01.155497224 -0500 --- src/sage/rings/finite_rings/integer_mod.pyx.orig 2017-11-08 08:29:14.256220798 -0500
+++ src/sage/rings/finite_rings/integer_mod.pyx 2017-03-04 13:36:03.204497303 -0500 +++ src/sage/rings/finite_rings/integer_mod.pyx 2017-11-08 08:29:38.845221740 -0500
@@ -392,7 +392,7 @@ cdef class IntegerMod_abstract(FiniteRin @@ -391,7 +391,7 @@ cdef class IntegerMod_abstract(FiniteRin
from integer_mod_ring import IntegerModRing from integer_mod_ring import IntegerModRing
R = IntegerModRing(modulus) R = IntegerModRing(modulus)
if (<Element>self)._parent._IntegerModRing_generic__order % R.order(): if (<Element>self)._parent._IntegerModRing_generic__order % R.order():
@ -35,9 +35,9 @@ diff -up src/sage/rings/finite_rings/integer_mod.pyx.orig src/sage/rings/finite_
def is_nilpotent(self): def is_nilpotent(self):
diff -up src/sage/structure/parent.pyx.orig src/sage/structure/parent.pyx diff -up src/sage/structure/parent.pyx.orig src/sage/structure/parent.pyx
--- src/sage/structure/parent.pyx.orig 2017-03-04 13:35:36.771496290 -0500 --- src/sage/structure/parent.pyx.orig 2017-11-08 08:29:14.260220799 -0500
+++ src/sage/structure/parent.pyx 2017-03-04 13:36:03.205497303 -0500 +++ src/sage/structure/parent.pyx 2017-11-08 08:29:38.846221740 -0500
@@ -735,7 +735,7 @@ cdef class Parent(category_object.Catego @@ -714,7 +714,7 @@ cdef class Parent(sage.structure.categor
cdef int init_coerce(self, bint warn=True) except -1: cdef int init_coerce(self, bint warn=True) except -1:
if self._coerce_from_hash is None: if self._coerce_from_hash is None:
if warn: if warn:
@ -47,9 +47,9 @@ diff -up src/sage/structure/parent.pyx.orig src/sage/structure/parent.pyx
self._initial_action_list = [] self._initial_action_list = []
self._initial_convert_list = [] self._initial_convert_list = []
diff -up src/sage/symbolic/ring.pyx.orig src/sage/symbolic/ring.pyx diff -up src/sage/symbolic/ring.pyx.orig src/sage/symbolic/ring.pyx
--- src/sage/symbolic/ring.pyx.orig 2017-03-04 13:35:36.772496290 -0500 --- src/sage/symbolic/ring.pyx.orig 2017-11-08 08:29:14.264220799 -0500
+++ src/sage/symbolic/ring.pyx 2017-03-04 13:36:03.206497303 -0500 +++ src/sage/symbolic/ring.pyx 2017-11-08 08:29:38.847221740 -0500
@@ -379,7 +379,7 @@ cdef class SymbolicRing(CommutativeRing) @@ -376,7 +376,7 @@ cdef class SymbolicRing(CommutativeRing)
from sage.misc.all import prod from sage.misc.all import prod
return prod([SR(p)**e for p,e in x], SR(x.unit())) return prod([SR(p)**e for p,e in x], SR(x.unit()))
else: else:

View file

@ -1,24 +0,0 @@
diff -up src/sage/libs/cypari2/paridecl.pxd.orig src/sage/libs/cypari2/paridecl.pxd
--- src/sage/libs/cypari2/paridecl.pxd.orig 2017-04-18 07:41:28.165058343 -0400
+++ src/sage/libs/cypari2/paridecl.pxd 2017-04-18 07:45:56.847068632 -0400
@@ -84,7 +84,7 @@ cdef extern from *: # PARI headers a
int PARI_SIGINT_block, PARI_SIGINT_pending
void NEXT_PRIME_VIADIFF(long, byteptr)
void PREC_PRIME_VIADIFF(long, byteptr)
- int INIT_JMPm, INIT_SIGm, INIT_DFTm, INIT_noPRIMEm, INIT_noIMTm
+ int INIT_JMPm, INIT_SIGm, INIT_DFTm, INIT_noPRIMEm, INIT_noIMTm, INIT_noINTGMPm
int new_galois_format, factor_add_primes, factor_proven
int precdl
# The "except 0" here is to ensure compatibility with
diff -up src/sage/libs/cypari2/pari_instance.pyx.orig src/sage/libs/cypari2/pari_instance.pyx
--- src/sage/libs/cypari2/pari_instance.pyx.orig 2017-04-18 07:46:04.924068941 -0400
+++ src/sage/libs/cypari2/pari_instance.pyx 2017-04-18 07:46:41.870070356 -0400
@@ -461,7 +461,7 @@ cdef class Pari(Pari_auto):
# Take 1MB as minimal stack. Use maxprime=0, which PARI will
# internally increase to some small value like 65537.
- pari_init_opts(1000000, 0, INIT_DFTm)
+ pari_init_opts(1000000, 0, INIT_DFTm|INIT_noINTGMPm)
# Disable PARI's stack overflow checking which is incompatible
# with multi-threading.

View file

@ -1,6 +1,6 @@
diff -up src/sage/interfaces/qepcad.py.orig src/sage/interfaces/qepcad.py diff -up src/sage/interfaces/qepcad.py.orig src/sage/interfaces/qepcad.py
--- src/sage/interfaces/qepcad.py.orig 2016-08-08 13:58:03.953585989 -0400 --- src/sage/interfaces/qepcad.py.orig 2017-11-08 08:28:33.908219253 -0500
+++ src/sage/interfaces/qepcad.py 2016-08-08 14:00:58.323592666 -0400 +++ src/sage/interfaces/qepcad.py 2017-11-08 08:28:43.336219614 -0500
@@ -530,8 +530,8 @@ TESTS: @@ -530,8 +530,8 @@ TESTS:
Check the qepcad configuration file:: Check the qepcad configuration file::
@ -12,24 +12,24 @@ diff -up src/sage/interfaces/qepcad.py.orig src/sage/interfaces/qepcad.py
Tests related to the not tested examples (nondeterministic order of atoms):: Tests related to the not tested examples (nondeterministic order of atoms)::
@@ -606,7 +606,6 @@ AUTHORS: @@ -607,7 +607,6 @@ from __future__ import print_function
from __future__ import print_function
from __future__ import absolute_import from __future__ import absolute_import
from six import string_types
-from sage.env import SAGE_LOCAL -from sage.env import SAGE_LOCAL
import pexpect import pexpect
import re import re
import sys import sys
@@ -618,6 +617,8 @@ from sage.interfaces.tab_completion impo @@ -620,6 +619,8 @@ from sage.docs.instancedoc import instan
from .expect import Expect, ExpectFunction, AsciiArtString from .expect import Expect, ExpectFunction, AsciiArtString
+QEPCAD_LOCAL = "/usr/share/qepcad" +QEPCAD_LOCAL = "/usr/share/qepcad"
+ +
def _qepcad_atoms(formula): def _qepcad_atoms(formula):
r""" r"""
Return the atoms of a qepcad quantifier-free formula, as a set of strings. Return the atoms of a qepcad quantifier-free formula, as a set of strings.
@@ -647,17 +648,17 @@ def _qepcad_cmd(memcells=None): @@ -649,17 +650,17 @@ def _qepcad_cmd(memcells=None):
sage: from sage.interfaces.qepcad import _qepcad_cmd sage: from sage.interfaces.qepcad import _qepcad_cmd
sage: s = _qepcad_cmd() sage: s = _qepcad_cmd()
@ -50,7 +50,7 @@ diff -up src/sage/interfaces/qepcad.py.orig src/sage/interfaces/qepcad.py
_command_info_cache = None _command_info_cache = None
@@ -682,7 +683,7 @@ def _update_command_info(): @@ -684,7 +685,7 @@ def _update_command_info():
cache = {} cache = {}

View file

@ -1,7 +1,7 @@
diff -up src/sage/all.py.orig src/sage/all.py diff -up src/sage/all.py.orig src/sage/all.py
--- src/sage/all.py.orig 2017-04-11 09:56:17.559262584 -0400 --- src/sage/all.py.orig 2017-11-08 08:16:05.331190588 -0500
+++ src/sage/all.py 2017-04-11 09:56:25.743262897 -0400 +++ src/sage/all.py 2017-11-08 08:16:14.195190927 -0500
@@ -298,11 +298,11 @@ def _write_started_file(): @@ -295,11 +295,11 @@ def _write_started_file():
Check that the file exists when Sage is running:: Check that the file exists when Sage is running::

View file

@ -1,6 +1,6 @@
diff -up src/module_list.py.orig src/module_list.py diff -up src/module_list.py.orig src/module_list.py
--- src/module_list.py.orig 2017-03-04 13:14:34.197447942 -0500 --- src/module_list.py.orig 2017-11-08 06:16:18.175915367 -0500
+++ src/module_list.py 2017-03-04 13:14:58.646448878 -0500 +++ src/module_list.py 2017-11-08 06:16:29.412915797 -0500
@@ -3,7 +3,7 @@ from glob import glob @@ -3,7 +3,7 @@ from glob import glob
from distutils.extension import Extension from distutils.extension import Extension
from sage.env import SAGE_LOCAL from sage.env import SAGE_LOCAL
@ -11,9 +11,9 @@ diff -up src/module_list.py.orig src/module_list.py
######################################################### #########################################################
### pkg-config setup ### pkg-config setup
diff -up src/sage/misc/cython.py.orig src/sage/misc/cython.py diff -up src/sage/misc/cython.py.orig src/sage/misc/cython.py
--- src/sage/misc/cython.py.orig 2017-03-04 13:15:11.022449352 -0500 --- src/sage/misc/cython.py.orig 2017-11-08 06:16:39.095916168 -0500
+++ src/sage/misc/cython.py 2017-03-04 13:15:43.031450578 -0500 +++ src/sage/misc/cython.py 2017-11-08 06:17:35.580918331 -0500
@@ -432,7 +432,7 @@ extra_compile_args = %s @@ -497,7 +497,7 @@ extra_compile_args = %s
ext_modules = [Extension('%s', sources=['%s.%s', %s], ext_modules = [Extension('%s', sources=['%s.%s', %s],
libraries=%s, libraries=%s,
@ -23,12 +23,12 @@ diff -up src/sage/misc/cython.py.orig src/sage/misc/cython.py
language = '%s' )] language = '%s' )]
diff -up src/setup.py.orig src/setup.py diff -up src/setup.py.orig src/setup.py
--- src/setup.py.orig 2017-03-04 13:15:50.884450879 -0500 --- src/setup.py.orig 2017-11-08 06:17:50.231918892 -0500
+++ src/setup.py 2017-03-04 13:18:14.831456391 -0500 +++ src/setup.py 2017-11-08 06:18:48.924921139 -0500
@@ -412,9 +412,8 @@ class sage_build_ext(build_ext): @@ -422,9 +422,8 @@ class sage_build_cython(Command):
# Debugging # Debugging
gdb_debug=debug, gdb_debug=self.debug,
output_dir=SAGE_CYTHONIZED, output_dir=self.build_dir,
- # Disable Cython caching, which is currently too broken to - # Disable Cython caching, which is currently too broken to
- # use reliably: http://trac.sagemath.org/ticket/17851 - # use reliably: http://trac.sagemath.org/ticket/17851
- cache=False, - cache=False,
@ -36,18 +36,18 @@ diff -up src/setup.py.orig src/setup.py
+ cache=True, + cache=True,
) )
open(version_file, 'w').write(version_stamp) log.info("Finished Cythonizing, time: %.2f seconds." % (time.time() - t))
@@ -699,9 +698,6 @@ class sage_install(install): @@ -850,9 +849,6 @@ class sage_install(install):
install.run(self) install.run(self)
self.install_kernel_spec() self.install_kernel_spec()
log.warn('Cleaning up stale installed files....') log.info('Cleaning up stale installed files....')
- t = time.time() - t = time.time()
- self.clean_stale_files() - self.clean_stale_files()
- log.warn('Finished cleaning, time: %.2f seconds.' % (time.time() - t)) - log.info('Finished cleaning, time: %.2f seconds.' % (time.time() - t))
def install_kernel_spec(self): def install_kernel_spec(self):
""" """
@@ -715,42 +711,6 @@ class sage_install(install): @@ -866,40 +862,6 @@ class sage_install(install):
from sage.repl.ipython_kernel.install import SageKernelSpec from sage.repl.ipython_kernel.install import SageKernelSpec
SageKernelSpec.update() SageKernelSpec.update()
@ -61,10 +61,8 @@ diff -up src/setup.py.orig src/setup.py
- ``build/lib-*`` and from the install directory ``site-packages``. - ``build/lib-*`` and from the install directory ``site-packages``.
- """ - """
- dist = self.distribution - dist = self.distribution
- cmd_build_py = dist.get_command_obj("build_py") - cmd_build_py = self.get_finalized_command("build_py")
- cmd_build_py.ensure_finalized() - cmd_build_cython = self.get_finalized_command("build_cython")
- cmd_build_ext = dist.get_command_obj("build_ext")
- cmd_build_ext.ensure_finalized()
- -
- # Determine all Python modules inside all packages - # Determine all Python modules inside all packages
- py_modules = [] - py_modules = []
@ -80,12 +78,12 @@ diff -up src/setup.py.orig src/setup.py
- output_dirs = [self.install_purelib, self.install_platlib, self.build_lib] - output_dirs = [self.install_purelib, self.install_platlib, self.build_lib]
- from sage_setup.clean import clean_install_dir - from sage_setup.clean import clean_install_dir
- for output_dir in set(output_dirs): - for output_dir in set(output_dirs):
- log.warn('- cleaning {0}'.format(output_dir)) - log.info('- cleaning {0}'.format(output_dir))
- clean_install_dir(output_dir, - clean_install_dir(output_dir,
- dist.packages, - dist.packages,
- py_modules, - py_modules,
- dist.ext_modules, - dist.ext_modules,
- cmd_build_ext.cythonized_files) - cmd_build_cython.get_cythonized_package_files())
- -
######################################################### #########################################################

View file

@ -1,6 +1,6 @@
diff -up src/doc/common/conf.py.orig src/doc/common/conf.py diff -up src/doc/common/conf.py.orig src/doc/common/conf.py
--- src/doc/common/conf.py.orig 2017-04-11 09:55:23.607260518 -0400 --- src/doc/common/conf.py.orig 2017-11-08 08:08:07.554172292 -0500
+++ src/doc/common/conf.py 2017-04-11 09:55:52.327261618 -0400 +++ src/doc/common/conf.py 2017-11-08 08:08:33.656173291 -0500
@@ -220,7 +220,7 @@ if (os.environ.get('SAGE_DOC_MATHJAX', ' @@ -220,7 +220,7 @@ if (os.environ.get('SAGE_DOC_MATHJAX', '
html_theme_options['mathjax_macros'] = sage_mathjax_macros() html_theme_options['mathjax_macros'] = sage_mathjax_macros()
@ -11,9 +11,9 @@ diff -up src/doc/common/conf.py.orig src/doc/common/conf.py
# It would be really nice if sphinx would copy the entire mathjax directory, # It would be really nice if sphinx would copy the entire mathjax directory,
diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py
--- src/sage/doctest/control.py.orig 2017-04-11 09:55:23.610260518 -0400 --- src/sage/doctest/control.py.orig 2017-11-08 08:08:44.186173695 -0500
+++ src/sage/doctest/control.py 2017-04-11 09:55:52.330261618 -0400 +++ src/sage/doctest/control.py 2017-11-08 08:09:24.904175254 -0500
@@ -95,7 +95,6 @@ class DocTestDefaults(SageObject): @@ -96,7 +96,6 @@ class DocTestDefaults(SageObject):
self.valgrind = False self.valgrind = False
self.massif = False self.massif = False
self.cachegrind = False self.cachegrind = False
@ -21,7 +21,7 @@ diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py
self.failed = False self.failed = False
self.new = False self.new = False
self.show_skipped = False self.show_skipped = False
@@ -270,7 +269,7 @@ class DocTestController(SageObject): @@ -285,7 +284,7 @@ class DocTestController(SageObject):
if options.gdb or options.debug: if options.gdb or options.debug:
# Interactive debuggers: "infinite" timeout # Interactive debuggers: "infinite" timeout
options.timeout = 0 options.timeout = 0
@ -30,7 +30,7 @@ diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py
# Non-interactive debuggers: 48 hours # Non-interactive debuggers: 48 hours
options.timeout = int(os.getenv('SAGE_TIMEOUT_VALGRIND', 48 * 60 * 60)) options.timeout = int(os.getenv('SAGE_TIMEOUT_VALGRIND', 48 * 60 * 60))
elif options.long: elif options.long:
@@ -1034,13 +1033,8 @@ class DocTestController(SageObject): @@ -1049,13 +1048,8 @@ class DocTestController(SageObject):
elif opt.cachegrind: elif opt.cachegrind:
toolname = "cachegrind" toolname = "cachegrind"
flags = os.getenv("SAGE_CACHEGRIND_FLAGS", "") flags = os.getenv("SAGE_CACHEGRIND_FLAGS", "")
@ -44,7 +44,7 @@ diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py
if "%s" in flags: if "%s" in flags:
flags %= toolname + ".%p" # replace %s with toolname flags %= toolname + ".%p" # replace %s with toolname
cmd += flags + sage_cmd cmd += flags + sage_cmd
@@ -1100,10 +1094,10 @@ class DocTestController(SageObject): @@ -1115,10 +1109,10 @@ class DocTestController(SageObject):
0 0
""" """
opt = self.options opt = self.options
@ -58,9 +58,9 @@ diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py
return self.run_val_gdb() return self.run_val_gdb()
else: else:
diff -up src/sage/interfaces/singular.py.orig src/sage/interfaces/singular.py diff -up src/sage/interfaces/singular.py.orig src/sage/interfaces/singular.py
--- src/sage/interfaces/singular.py.orig 2017-04-11 09:55:50.260261539 -0400 --- src/sage/interfaces/singular.py.orig 2017-11-08 08:09:36.306175691 -0500
+++ src/sage/interfaces/singular.py 2017-04-11 09:55:52.332261618 -0400 +++ src/sage/interfaces/singular.py 2017-11-08 08:09:57.144176489 -0500
@@ -2291,7 +2291,7 @@ def generate_docstring_dictionary(): @@ -2287,7 +2287,7 @@ def generate_docstring_dictionary():
nodes.clear() nodes.clear()
node_names.clear() node_names.clear()
@ -70,9 +70,9 @@ diff -up src/sage/interfaces/singular.py.orig src/sage/interfaces/singular.py
new_node = re.compile("File: singular\.hlp, Node: ([^,]*),.*") new_node = re.compile("File: singular\.hlp, Node: ([^,]*),.*")
new_lookup = re.compile("\* ([^:]*):*([^.]*)\..*") new_lookup = re.compile("\* ([^:]*):*([^.]*)\..*")
diff -up src/sage_setup/docbuild/ext/multidocs.py.orig src/sage_setup/docbuild/ext/multidocs.py diff -up src/sage_setup/docbuild/ext/multidocs.py.orig src/sage_setup/docbuild/ext/multidocs.py
--- src/sage_setup/docbuild/ext/multidocs.py.orig 2017-04-11 09:55:23.612260518 -0400 --- src/sage_setup/docbuild/ext/multidocs.py.orig 2017-11-08 08:10:07.010176866 -0500
+++ src/sage_setup/docbuild/ext/multidocs.py 2017-04-11 09:55:52.332261618 -0400 +++ src/sage_setup/docbuild/ext/multidocs.py 2017-11-08 08:10:30.319177759 -0500
@@ -84,8 +84,11 @@ def merge_environment(app, env): @@ -82,8 +82,11 @@ def merge_environment(app, env):
for ind in newalldoc: for ind in newalldoc:
# treat subdocument source as orphaned file and don't complain # treat subdocument source as orphaned file and don't complain
md = env.metadata.get(ind, dict()) md = env.metadata.get(ind, dict())
@ -85,10 +85,10 @@ diff -up src/sage_setup/docbuild/ext/multidocs.py.orig src/sage_setup/docbuild/e
+ env.metadata[ind] = {'orphan'} + env.metadata[ind] = {'orphan'}
# merge the citations # merge the citations
newcite = {} newcite = {}
for ind, (path, tag) in six.iteritems(docenv.citations): for ind, (path, tag) in six.iteritems(docenv.domaindata["std"]["citations"]):
diff -up src/sage_setup/docbuild/__init__.py.orig src/sage_setup/docbuild/__init__.py diff -up src/sage_setup/docbuild/__init__.py.orig src/sage_setup/docbuild/__init__.py
--- src/sage_setup/docbuild/__init__.py.orig 2017-04-11 09:55:50.272261539 -0400 --- src/sage_setup/docbuild/__init__.py.orig 2017-11-08 08:10:41.962178205 -0500
+++ src/sage_setup/docbuild/__init__.py 2017-04-11 09:55:52.333261618 -0400 +++ src/sage_setup/docbuild/__init__.py 2017-11-08 08:11:16.448179525 -0500
@@ -248,13 +248,14 @@ if NUM_THREADS > 1: @@ -248,13 +248,14 @@ if NUM_THREADS > 1:
# map_async handles KeyboardInterrupt correctly. Plain map and # map_async handles KeyboardInterrupt correctly. Plain map and
# apply_async does not, so don't use it. # apply_async does not, so don't use it.

View file

@ -1,16 +1,16 @@
diff -up build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig build/pkgs/sagenb/src/sagenb/flask_version/base.py diff -up build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig build/pkgs/sagenb/src/sagenb/flask_version/base.py
--- build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig 2016-08-15 06:09:20.786276308 -0400 --- build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig 2017-11-08 08:11:53.546180946 -0500
+++ build/pkgs/sagenb/src/sagenb/flask_version/base.py 2016-08-15 06:09:23.074276396 -0400 +++ build/pkgs/sagenb/src/sagenb/flask_version/base.py 2017-11-08 08:13:13.400184004 -0500
@@ -4,8 +4,6 @@ from functools import partial @@ -7,8 +7,6 @@ from functools import partial
from flask import Flask, Module, url_for, request, session, redirect, g, make_response, current_app, render_template from flask import Flask, Blueprint, url_for, request, session, redirect, g, make_response, current_app, render_template
from decorators import login_required, guest_or_login_required, with_lock from .decorators import login_required, guest_or_login_required, with_lock
from decorators import global_lock from .decorators import global_lock
-# Make flask use the old session foo from <=flask-0.9 -# Make flask use the old session foo from <=flask-0.9
-from flask_oldsessions import OldSecureCookieSessionInterface -from flask_oldsessions import OldSecureCookieSessionInterface
from flask.ext.autoindex import AutoIndex from flask.ext.autoindex import AutoIndex
from sage.env import SAGE_SRC, SAGE_DOC from sage.env import SAGE_SRC, SAGE_DOC
@@ -25,7 +23,6 @@ class SageNBFlask(Flask): @@ -28,7 +26,6 @@ class SageNBFlask(Flask):
def __init__(self, *args, **kwds): def __init__(self, *args, **kwds):
self.startup_token = kwds.pop('startup_token', None) self.startup_token = kwds.pop('startup_token', None)
Flask.__init__(self, *args, **kwds) Flask.__init__(self, *args, **kwds)
@ -18,29 +18,31 @@ diff -up build/pkgs/sagenb/src/sagenb/flask_version/base.py.orig build/pkgs/sage
self.config['SESSION_COOKIE_HTTPONLY'] = False self.config['SESSION_COOKIE_HTTPONLY'] = False
@@ -36,12 +33,12 @@ class SageNBFlask(Flask): @@ -39,13 +36,13 @@ class SageNBFlask(Flask):
self.add_static_path('/javascript', DATA) self.add_static_path('/javascript', DATA)
self.add_static_path('/static', DATA) self.add_static_path('/static', DATA)
self.add_static_path('/java', DATA) self.add_static_path('/java', DATA)
- self.add_static_path('/java/jmol', os.path.join(os.environ["SAGE_ROOT"],"local","share","jmol")) - self.add_static_path('/java/jmol', os.path.join(os.environ["SAGE_SHARE"],"jmol"))
- self.add_static_path('/jsmol', os.path.join(os.environ["SAGE_ROOT"],"local","share","jsmol")) - self.add_static_path('/jsmol', os.path.join(os.environ["SAGE_SHARE"],"jsmol"))
- self.add_static_path('/jsmol/js', os.path.join(os.environ["SAGE_ROOT"],"local","share","jsmol","js")) - self.add_static_path('/jsmol/js', os.path.join(os.environ["SAGE_SHARE"],"jsmol","js"))
- self.add_static_path('/j2s', os.path.join(os.environ["SAGE_ROOT"],"local","share","jsmol","j2s")) - self.add_static_path('/j2s', os.path.join(os.environ["SAGE_SHARE"],"jsmol","j2s"))
- self.add_static_path('/jsmol/j2s', os.path.join(os.environ["SAGE_ROOT"],"local","share","jsmol","j2s")) - self.add_static_path('/jsmol/j2s', os.path.join(os.environ["SAGE_SHARE"],"jsmol","j2s"))
- self.add_static_path('/j2s/core', os.path.join(os.environ["SAGE_ROOT"],"local","share","jsmol","j2s","core")) - self.add_static_path('/j2s/core', os.path.join(os.environ["SAGE_SHARE"],"jsmol","j2s","core"))
- self.add_static_path('/threejs', os.path.join(os.environ["SAGE_SHARE"],"threejs"))
+ self.add_static_path('/java/jmol', os.path.join(os.environ["SAGE_ROOT"],"share","jmol")) + self.add_static_path('/java/jmol', os.path.join(os.environ["SAGE_ROOT"],"share","jmol"))
+ self.add_static_path('/jsmol', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol")) + self.add_static_path('/jsmol', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol"))
+ self.add_static_path('/jsmol/js', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol","js")) + self.add_static_path('/jsmol/js', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol","js"))
+ self.add_static_path('/j2s', os.path.join(os.environ["SAGE_ROOT"],"jsmol","j2s")) + self.add_static_path('/j2s', os.path.join(os.environ["SAGE_ROOT"],"jsmol","j2s"))
+ self.add_static_path('/jsmol/j2s', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol","j2s")) + self.add_static_path('/jsmol/j2s', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol","j2s"))
+ self.add_static_path('/j2s/core', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol","j2s","core")) + self.add_static_path('/j2s/core', os.path.join(os.environ["SAGE_ROOT"],"share","jsmol","j2s","core"))
+ self.add_static_path('/threejs', os.path.join(os.environ["SAGE_ROOT"],"share","threejs"))
import mimetypes import mimetypes
mimetypes.add_type('text/plain','.jmol') mimetypes.add_type('text/plain','.jmol')
diff -up build/pkgs/sagenb/src/sagenb/misc/misc.py.orig build/pkgs/sagenb/src/sagenb/misc/misc.py diff -up build/pkgs/sagenb/src/sagenb/misc/misc.py.orig build/pkgs/sagenb/src/sagenb/misc/misc.py
--- build/pkgs/sagenb/src/sagenb/misc/misc.py.orig 2016-08-15 06:09:20.792276308 -0400 --- build/pkgs/sagenb/src/sagenb/misc/misc.py.orig 2017-11-08 08:13:24.162184416 -0500
+++ build/pkgs/sagenb/src/sagenb/misc/misc.py 2016-08-15 06:09:23.076276396 -0400 +++ build/pkgs/sagenb/src/sagenb/misc/misc.py 2017-11-08 08:13:41.928185096 -0500
@@ -176,7 +176,8 @@ def pad_zeros(s, size=3): @@ -184,7 +184,8 @@ def pad_zeros(s, size=3):
SAGENB_ROOT = os.path.split(resource_filename(__name__, ''))[0] SAGENB_ROOT = os.path.split(resource_filename(__name__, ''))[0]
@ -48,12 +50,12 @@ diff -up build/pkgs/sagenb/src/sagenb/misc/misc.py.orig build/pkgs/sagenb/src/sa
+import sage.env +import sage.env
+DATA = os.path.join(sage.env.SAGE_SRC, 'sagenb', 'data') +DATA = os.path.join(sage.env.SAGE_SRC, 'sagenb', 'data')
if os.environ.has_key('DOT_SAGENB'): if 'DOT_SAGENB' in os.environ:
DOT_SAGENB = os.environ['DOT_SAGENB'] DOT_SAGENB = os.environ['DOT_SAGENB']
diff -up build/pkgs/sagenb/src/sagenb/notebook/cell.py.orig build/pkgs/sagenb/src/sagenb/notebook/cell.py diff -up build/pkgs/sagenb/src/sagenb/notebook/cell.py.orig build/pkgs/sagenb/src/sagenb/notebook/cell.py
--- build/pkgs/sagenb/src/sagenb/notebook/cell.py.orig 2016-08-15 06:09:20.800276309 -0400 --- build/pkgs/sagenb/src/sagenb/notebook/cell.py.orig 2017-11-08 08:13:51.658185469 -0500
+++ build/pkgs/sagenb/src/sagenb/notebook/cell.py 2016-08-15 06:09:23.077276396 -0400 +++ build/pkgs/sagenb/src/sagenb/notebook/cell.py 2017-11-08 08:14:22.016186631 -0500
@@ -2350,8 +2350,8 @@ class Cell(Cell_generic): @@ -2384,8 +2384,8 @@ class Cell(Cell_generic):
with open(jmol_name, 'r') as f: with open(jmol_name, 'r') as f:
jmol_script = f.read() jmol_script = f.read()
jmol_script = jmol_script.replace( jmol_script = jmol_script.replace(
@ -65,9 +67,9 @@ diff -up build/pkgs/sagenb/src/sagenb/notebook/cell.py.orig build/pkgs/sagenb/sr
f.write(jmol_script) f.write(jmol_script)
diff -up build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py.orig build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py diff -up build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py.orig build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py
--- build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py.orig 2016-08-15 06:09:20.806276309 -0400 --- build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py.orig 2017-11-08 08:14:30.274186948 -0500
+++ build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py 2016-08-15 06:10:30.060278961 -0400 +++ build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py 2017-11-08 08:15:04.624188263 -0500
@@ -46,12 +46,11 @@ sagenb.notebook.misc.DIR = %(cwd)r #We s @@ -49,12 +49,11 @@ sagenb.notebook.misc.DIR = %(cwd)r #We s
# Flask # # Flask #
######### #########
import os, sys, random import os, sys, random
@ -83,4 +85,4 @@ diff -up build/pkgs/sagenb/src/sagenb/notebook/run_notebook.py.orig build/pkgs/s
+flask_app = flask_base.create_app(%(notebook_opts)s, startup_token=startup_token) +flask_app = flask_base.create_app(%(notebook_opts)s, startup_token=startup_token)
def save_notebook(notebook): def save_notebook(notebook):
print "Quitting all running worksheets..." print("Quitting all running worksheets...")

View file

@ -1,6 +1,6 @@
diff -up src/bin/sage.orig src/bin/sage diff -up src/bin/sage.orig src/bin/sage
--- src/bin/sage.orig 2017-04-11 09:46:27.981240007 -0400 --- src/bin/sage.orig 2017-11-08 06:04:08.687887432 -0500
+++ src/bin/sage 2017-04-11 09:53:04.143255178 -0400 +++ src/bin/sage 2017-11-08 06:10:52.452902893 -0500
@@ -1,5 +1,16 @@ @@ -1,5 +1,16 @@
#!/usr/bin/env bash #!/usr/bin/env bash
@ -18,7 +18,7 @@ diff -up src/bin/sage.orig src/bin/sage
help_banner() { help_banner() {
sage_banner | grep -v 'Type' sage_banner | grep -v 'Type'
echo echo
@@ -13,20 +24,16 @@ usage() { @@ -13,13 +24,10 @@ usage() {
echo " file.[sage|py|spyx] -- run given .sage, .py or .spyx file" echo " file.[sage|py|spyx] -- run given .sage, .py or .spyx file"
echo " -advanced -- list all command line options" echo " -advanced -- list all command line options"
echo " -c <cmd> -- Evaluates cmd as sage code" echo " -c <cmd> -- Evaluates cmd as sage code"
@ -32,14 +32,15 @@ diff -up src/bin/sage.orig src/bin/sage
echo " -inotebook [...] -- start the *insecure* Sage notebook (deprecated)" echo " -inotebook [...] -- start the *insecure* Sage notebook (deprecated)"
echo " -maxima [...] -- run Sage's Maxima with given arguments" echo " -maxima [...] -- run Sage's Maxima with given arguments"
echo " -mwrank [...] -- run Sage's mwrank with given arguments" echo " -mwrank [...] -- run Sage's mwrank with given arguments"
echo " --notebook=[...] -- start the Sage notebook (valid options are" @@ -27,7 +35,6 @@ usage() {
echo " 'default', 'sagenb', 'jupyter', and 'export')" echo " 'default', 'sagenb', 'jupyter', and 'export')"
echo " Current default is 'export' from sagenb to jupyter"
echo " -n, --notebook -- shortcut for --notebook=default" echo " -n, --notebook -- shortcut for --notebook=default"
- echo " -optional -- list all optional packages that can be installed" - echo " -optional -- list all optional packages that can be installed"
echo " -python [...] -- run the Python interpreter" echo " -python [...] -- run the Python 2 interpreter"
echo " -python3 [...] -- run the Python 3 interpreter"
echo " -R [...] -- run Sage's R with given arguments" echo " -R [...] -- run Sage's R with given arguments"
echo " -singular [...] -- run Sage's singular with given arguments" @@ -44,10 +51,6 @@ usage() {
@@ -42,10 +49,6 @@ usage() {
echo " --optional - controls which optional tests are run" echo " --optional - controls which optional tests are run"
echo " --sagenb - test all sagenb files" echo " --sagenb - test all sagenb files"
echo " --help - show all testing options" echo " --help - show all testing options"
@ -50,7 +51,7 @@ diff -up src/bin/sage.orig src/bin/sage
echo " -v, -version -- display Sage version information" echo " -v, -version -- display Sage version information"
exit 0 exit 0
} }
@@ -64,11 +67,8 @@ usage_advanced() { @@ -66,11 +69,8 @@ usage_advanced() {
echo " -preparse <file.sage> -- preparse file.sage and produce corresponding file.sage.py" echo " -preparse <file.sage> -- preparse file.sage and produce corresponding file.sage.py"
echo " -q -- quiet; start with no banner" echo " -q -- quiet; start with no banner"
echo " -root -- print the Sage root directory" echo " -root -- print the Sage root directory"
@ -62,7 +63,7 @@ diff -up src/bin/sage.orig src/bin/sage
echo echo
#### 1.......................26..................................................78 #### 1.......................26..................................................78
@@ -79,8 +79,6 @@ usage_advanced() { @@ -82,8 +82,6 @@ usage_advanced() {
echo " See the output of sage --notebook --help" echo " See the output of sage --notebook --help"
echo " for more details and examples of how to pass" echo " for more details and examples of how to pass"
echo " optional arguments" echo " optional arguments"
@ -71,25 +72,26 @@ diff -up src/bin/sage.orig src/bin/sage
echo " -inotebook [...] -- start the *insecure* Sage notebook (deprecated)" echo " -inotebook [...] -- start the *insecure* Sage notebook (deprecated)"
echo " -n, -notebook [...] -- start the default Sage notebook (options are the" echo " -n, -notebook [...] -- start the default Sage notebook (options are the"
echo " same as for the notebook command in Sage). See the" echo " same as for the notebook command in Sage). See the"
@@ -99,17 +97,13 @@ usage_advanced() { @@ -102,18 +100,11 @@ usage_advanced() {
echo " -gp [...] -- run Sage's PARI/GP calculator with given arguments" echo " -gp [...] -- run Sage's PARI/GP calculator with given arguments"
echo " -ipython [...] -- run Sage's IPython using the default environment (not" echo " -ipython [...] -- run Sage's IPython using the default environment (not"
echo " Sage), passing additional options to IPython" echo " Sage), passing additional options to IPython"
- echo " -kash [...] -- run Sage's Kash with given arguments" - echo " -kash [...] -- run Sage's Kash with given arguments"
- command -v kash &>/dev/null || \ - command -v kash &>/dev/null || \
echo " (not installed currently, run sage -i kash)" - echo " (not installed currently, run sage -i kash)"
echo " -lisp [...] -- run Lisp interpreter included with Sage" echo " -lisp [...] -- run Lisp interpreter included with Sage"
echo " -M2 [...] -- run Sage's Macaulay2 with given arguments" echo " -M2 [...] -- run Sage's Macaulay2 with given arguments"
- command -v M2 &>/dev/null || \ - command -v M2 &>/dev/null || \
echo " (not installed currently, run sage -i macaulay2)" - echo " (not installed currently, run sage -i macaulay2)"
echo " -maxima [...] -- run Sage's Maxima with given arguments" echo " -maxima [...] -- run Sage's Maxima with given arguments"
echo " -mwrank [...] -- run Sage's mwrank with given arguments" echo " -mwrank [...] -- run Sage's mwrank with given arguments"
echo " -polymake [...] -- run Sage's Polymake with given arguments" echo " -polymake [...] -- run Sage's Polymake with given arguments"
- command -v polymake &>/dev/null || \ - command -v polymake &>/dev/null || \
echo " (not installed currently, run sage -i polymake)" - echo " (not installed currently, run sage -i polymake)"
echo " -python [...] -- run the Python interpreter" echo " -python [...] -- run the Python interpreter"
echo " -R [...] -- run Sage's R with given arguments" echo " -R [...] -- run Sage's R with given arguments"
@@ -122,55 +116,7 @@ usage_advanced() { echo " -scons [...] -- run Sage's scons"
@@ -125,55 +116,7 @@ usage_advanced() {
echo echo
#### 1.......................26..................................................78 #### 1.......................26..................................................78
#### |.....................--.|...................................................| #### |.....................--.|...................................................|
@ -146,7 +148,7 @@ diff -up src/bin/sage.orig src/bin/sage
echo " -startuptime [module] -- display how long each component of Sage takes to" echo " -startuptime [module] -- display how long each component of Sage takes to"
echo " start up; optionally specify a module to get more" echo " start up; optionally specify a module to get more"
echo " details about that particular module" echo " details about that particular module"
@@ -200,7 +146,6 @@ usage_advanced() { @@ -203,7 +146,6 @@ usage_advanced() {
echo " -coverage <files> -- give info about doctest coverage of files" echo " -coverage <files> -- give info about doctest coverage of files"
echo " -coverageall -- give summary info about doctest coverage of all" echo " -coverageall -- give summary info about doctest coverage of all"
echo " files in the Sage library" echo " files in the Sage library"
@ -154,7 +156,7 @@ diff -up src/bin/sage.orig src/bin/sage
echo " -search_src <string> -- search through all the Sage library code for string" echo " -search_src <string> -- search through all the Sage library code for string"
echo " -search_doc <string> -- search through the Sage documentation for string" echo " -search_doc <string> -- search through the Sage documentation for string"
echo " -grep <string> -- same as -search_src" echo " -grep <string> -- same as -search_src"
@@ -222,16 +167,6 @@ usage_advanced() { @@ -225,16 +167,6 @@ usage_advanced() {
echo echo
#### 1.......................26..................................................78 #### 1.......................26..................................................78
#### |.....................--.|...................................................| #### |.....................--.|...................................................|
@ -171,7 +173,7 @@ diff -up src/bin/sage.orig src/bin/sage
echo "Valgrind memory debugging:" echo "Valgrind memory debugging:"
echo " -cachegrind -- run Sage using Valgrind's cachegrind tool. The log" echo " -cachegrind -- run Sage using Valgrind's cachegrind tool. The log"
echo " files are named sage-cachegrind.PID can be found in" echo " files are named sage-cachegrind.PID can be found in"
@@ -245,9 +180,6 @@ usage_advanced() { @@ -248,9 +180,6 @@ usage_advanced() {
echo " -memcheck -- run Sage using Valgrind's memcheck tool. The log" echo " -memcheck -- run Sage using Valgrind's memcheck tool. The log"
echo " files are named sage-memcheck.PID can be found in" echo " files are named sage-memcheck.PID can be found in"
echo " $DOT_SAGE" echo " $DOT_SAGE"
@ -181,7 +183,7 @@ diff -up src/bin/sage.orig src/bin/sage
echo " -valgrind -- this is an alias for -memcheck" echo " -valgrind -- this is an alias for -memcheck"
echo echo
echo "You can also use -- before a long option, e.g., 'sage --optional'." echo "You can also use -- before a long option, e.g., 'sage --optional'."
@@ -256,121 +188,6 @@ usage_advanced() { @@ -259,121 +188,6 @@ usage_advanced() {
} }
@ -303,12 +305,15 @@ diff -up src/bin/sage.orig src/bin/sage
if [ $# -gt 0 ]; then if [ $# -gt 0 ]; then
if [ "$1" = '-h' -o "$1" = '-?' -o "$1" = '-help' -o "$1" = '--help' ]; then if [ "$1" = '-h' -o "$1" = '-?' -o "$1" = '-help' -o "$1" = '--help' ]; then
usage usage
@@ -382,23 +199,9 @@ fi @@ -383,25 +197,12 @@ if [ $# -gt 0 ]; then
fi
fi
+
# Prepare for running Sage, either interactively or non-interactively. # Prepare for running Sage, either interactively or non-interactively.
sage_setup() { sage_setup() {
- # Check that we're not in a source tarball which hasn't been built yet (#13561). - # Check that we're not in a source tarball which hasn't been built yet (#13561).
- if [ ! -d "$SAGE_LOCAL/lib/python/site-packages/sage" ]; then - if [ ! -x "$SAGE_LOCAL/bin/sage" ]; then
- echo >&2 '************************************************************************' - echo >&2 '************************************************************************'
- echo >&2 'It seems that you are attempting to run Sage from an unpacked source' - echo >&2 'It seems that you are attempting to run Sage from an unpacked source'
- echo >&2 'tarball, but you have not compiled it yet (or maybe the build has not' - echo >&2 'tarball, but you have not compiled it yet (or maybe the build has not'
@ -319,7 +324,7 @@ diff -up src/bin/sage.orig src/bin/sage
- exit 1 - exit 1
- fi - fi
- -
# Display the startup banner (unless SAGE_BANNER is explictly "no") # Display the startup banner (unless SAGE_BANNER is explicitly "no")
sage_banner sage_banner
- maybe_sage_location - maybe_sage_location
@ -327,7 +332,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [ ! -d "$IPYTHONDIR" ]; then if [ ! -d "$IPYTHONDIR" ]; then
# make sure that $DOT_SAGE exists so that ipython will happily # make sure that $DOT_SAGE exists so that ipython will happily
# create its config directories there. If DOT_SAGE doesn't # create its config directories there. If DOT_SAGE doesn't
@@ -409,20 +212,6 @@ sage_setup() { @@ -412,20 +213,6 @@ sage_setup() {
} }
@ -348,7 +353,7 @@ diff -up src/bin/sage.orig src/bin/sage
# Start an interactive Sage session, this function never returns. # Start an interactive Sage session, this function never returns.
interactive_sage() { interactive_sage() {
sage_setup sage_setup
@@ -527,16 +316,6 @@ if [ "$1" = '-lisp' -o "$1" = '--lisp' ] @@ -530,16 +317,6 @@ if [ "$1" = '-lisp' -o "$1" = '--lisp' ]
exec ecl "$@" exec ecl "$@"
fi fi
@ -365,7 +370,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [ "$1" = '-maxima' -o "$1" = '--maxima' ]; then if [ "$1" = '-maxima' -o "$1" = '--maxima' ]; then
shift shift
exec maxima "$@" exec maxima "$@"
@@ -562,11 +341,6 @@ if [ "$1" = '-pip' -o "$1" = '--pip' ]; @@ -565,11 +342,6 @@ if [ "$1" = '-pip' -o "$1" = '--pip' ];
exec pip "$@" exec pip "$@"
fi fi
@ -377,7 +382,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [ "$1" = '-python' -o "$1" = '--python' ]; then if [ "$1" = '-python' -o "$1" = '--python' ]; then
shift shift
exec python "$@" exec python "$@"
@@ -582,16 +356,6 @@ if [ "$1" = '-ipython' -o "$1" = '--ipyt @@ -595,16 +367,6 @@ if [ "$1" = '-ipython' -o "$1" = '--ipyt
exec ipython "$@" exec ipython "$@"
fi fi
@ -394,7 +399,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [ "$1" = '-sh' -o "$1" = '--sh' ]; then if [ "$1" = '-sh' -o "$1" = '--sh' ]; then
# AUTHORS: # AUTHORS:
# - Carl Witty and William Stein: initial version # - Carl Witty and William Stein: initial version
@@ -711,20 +475,6 @@ EOF @@ -724,20 +486,6 @@ EOF
fi fi
##################################################################### #####################################################################
@ -415,7 +420,7 @@ diff -up src/bin/sage.orig src/bin/sage
# File conversion # File conversion
##################################################################### #####################################################################
@@ -747,11 +497,6 @@ fi @@ -760,11 +508,6 @@ fi
# Run Sage's versions of the standard Algebra/Geometry etc. software # Run Sage's versions of the standard Algebra/Geometry etc. software
##################################################################### #####################################################################
@ -427,7 +432,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [[ "$1" =~ ^--notebook=.* || "$1" =~ ^-n=.* || "$1" =~ ^-notebook=.* ]] ; then if [[ "$1" =~ ^--notebook=.* || "$1" =~ ^-n=.* || "$1" =~ ^-notebook=.* ]] ; then
sage-cleaner &>/dev/null & sage-cleaner &>/dev/null &
exec sage-notebook "$@" exec sage-notebook "$@"
@@ -762,13 +507,6 @@ if [ "$1" = "-notebook" -o "$1" = '--not @@ -775,13 +518,6 @@ if [ "$1" = "-notebook" -o "$1" = '--not
exec sage-notebook "$@" exec sage-notebook "$@"
fi fi
@ -441,7 +446,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [ "$1" = "-inotebook" -o "$1" = '--inotebook' ]; then if [ "$1" = "-inotebook" -o "$1" = '--inotebook' ]; then
shift shift
sage-cleaner &>/dev/null & sage-cleaner &>/dev/null &
@@ -787,38 +525,19 @@ if [ "$1" = '-grepdoc' -o "$1" = "--grep @@ -800,34 +536,15 @@ if [ "$1" = '-grepdoc' -o "$1" = "--grep
exit 0 exit 0
fi fi
@ -471,10 +476,6 @@ diff -up src/bin/sage.orig src/bin/sage
- build_sage - build_sage
- fi - fi
+if [ "$1" = '-t' -o "$1" = '-tp' ]; then +if [ "$1" = '-t' -o "$1" = '-tp' ]; then
if [ ! -f "$DOT_SAGE"/init.sage ]; then
echo >&2 "init.sage does not exist ... creating"
touch "$DOT_SAGE"/init.sage
fi
SAGE_BANNER=no sage_setup SAGE_BANNER=no sage_setup
export PYTHONIOENCODING="utf-8" # Fix encoding for doctests export PYTHONIOENCODING="utf-8" # Fix encoding for doctests
- if [ "$1" = '-tp' -o "$1" = '-btp' ]; then - if [ "$1" = '-tp' -o "$1" = '-btp' ]; then
@ -482,7 +483,7 @@ diff -up src/bin/sage.orig src/bin/sage
shift shift
exec sage-runtests -p "$@" exec sage-runtests -p "$@"
else else
@@ -827,16 +546,6 @@ if [ "$1" = '-t' -o "$1" = '-bt' -o "$1" @@ -836,10 +553,7 @@ if [ "$1" = '-t' -o "$1" = '-bt' -o "$1"
fi fi
fi fi
@ -490,16 +491,11 @@ diff -up src/bin/sage.orig src/bin/sage
- if [ "$1" = '-btnew' ]; then - if [ "$1" = '-btnew' ]; then
- build_sage - build_sage
- fi - fi
- shift +if [ "$1" = '-tnew' ]; then
- SAGE_BANNER=no sage_setup
- export PYTHONIOENCODING="utf-8" # Fix encoding for doctests
- exec sage-runtests --new "$@"
-fi
-
if [ "$1" = '-testall' -o "$1" = "--testall" ]; then
shift shift
SAGE_BANNER=no sage_setup SAGE_BANNER=no sage_setup
@@ -851,119 +560,6 @@ if [ "$1" = '-c' ]; then export PYTHONIOENCODING="utf-8" # Fix encoding for doctests
@@ -860,119 +574,6 @@ if [ "$1" = '-c' ]; then
exec sage-eval "$@" exec sage-eval "$@"
fi fi
@ -619,7 +615,7 @@ diff -up src/bin/sage.orig src/bin/sage
if [ "$1" = '-gdb' -o "$1" = "--gdb" ]; then if [ "$1" = '-gdb' -o "$1" = "--gdb" ]; then
shift shift
sage_setup sage_setup
@@ -1014,12 +610,6 @@ if [ "$1" = '-callgrind' -o "$1" = "--ca @@ -1023,12 +624,6 @@ if [ "$1" = '-callgrind' -o "$1" = "--ca
exec sage-callgrind "$@" exec sage-callgrind "$@"
fi fi
@ -632,35 +628,23 @@ diff -up src/bin/sage.orig src/bin/sage
if [ "$1" = '-startuptime' -o "$1" = '--startuptime' ]; then if [ "$1" = '-startuptime' -o "$1" = '--startuptime' ]; then
exec sage-startuptime.py "$@" exec sage-startuptime.py "$@"
fi fi
@@ -1030,11 +620,6 @@ if [ "$1" = '-gthread' -o "$1" = '-qthre
fi
if [ $# -ge 1 ]; then
- T=`echo "$1" | sed -e "s/.*\.//"`
- if [ "$T" = "spkg" ]; then
- install "$@"
- fi
- SAGE_BANNER=no sage_setup
unset TERM # See Trac #12263
exec sage-run "$@"
fi
diff -up src/bin/sage-runtests.orig src/bin/sage-runtests diff -up src/bin/sage-runtests.orig src/bin/sage-runtests
--- src/bin/sage-runtests.orig 2017-04-11 09:53:17.222255678 -0400 --- src/bin/sage-runtests.orig 2017-11-08 06:11:02.679903285 -0500
+++ src/bin/sage-runtests 2017-04-11 09:53:31.631256230 -0400 +++ src/bin/sage-runtests 2017-11-08 06:11:18.876903905 -0500
@@ -56,10 +56,6 @@ if __name__ == "__main__": @@ -64,10 +64,6 @@ if __name__ == "__main__":
help="run doctests using Valgrind's cachegrind tool. The log " help="run doctests using Valgrind's cachegrind tool. The log "
"files are named sage-cachegrind.PID and can be found in " + "files are named sage-cachegrind.PID and can be found in " +
os.path.join(os.environ["DOT_SAGE"], "valgrind")) os.path.join(DOT_SAGE, "valgrind"))
- parser.add_option("--omega", action="store_true", default=False, - parser.add_option("--omega", action="store_true", default=False,
- help="run doctests using Valgrind's omega tool. The log " - help="run doctests using Valgrind's omega tool. The log "
- "files are named sage-omega.PID and can be found in " + - "files are named sage-omega.PID and can be found in " +
- os.path.join(os.environ["DOT_SAGE"], "valgrind")) - os.path.join(DOT_SAGE, "valgrind"))
parser.add_option("-f", "--failed", action="store_true", default=False, parser.add_option("-f", "--failed", action="store_true", default=False,
help="doctest only those files that failed in the previous run") help="doctest only those files that failed in the previous run")
diff -up src/bin/sage-valgrind.orig src/bin/sage-valgrind diff -up src/bin/sage-valgrind.orig src/bin/sage-valgrind
--- src/bin/sage-valgrind.orig 2017-04-11 09:53:45.006256742 -0400 --- src/bin/sage-valgrind.orig 2017-11-08 06:11:27.655904241 -0500
+++ src/bin/sage-valgrind 2017-04-11 09:54:05.879257542 -0400 +++ src/bin/sage-valgrind 2017-11-08 06:11:40.964904751 -0500
@@ -1,16 +1,6 @@ @@ -1,16 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash

View file

@ -1,35 +0,0 @@
diff -up src/sage/libs/singular/decl.pxd.orig src/sage/libs/singular/decl.pxd
--- src/sage/libs/singular/decl.pxd.orig 2017-03-29 14:40:18.119445065 -0400
+++ src/sage/libs/singular/decl.pxd 2017-03-29 14:42:36.153450351 -0400
@@ -484,8 +484,8 @@ cdef extern from "singular/Singular/libs
ring *rDefault(int char , int nvars, char **names)
ring *rDefault(const n_Procs_s* cf, int nvars, char **names)
- ring *rDefault(int ch , int nvars, char **names,int ord_size, int *ord, int *block0, int *block1, int **wvhdl)
- ring *rDefault(const n_Procs_s* cf, int nvars, char **names,int ord_size, int *ord, int *block0, int *block1, int **wvhdl)
+ ring *rDefault(int ch , int nvars, char **names,int ord_size, rRingOrder_t *ord, int *block0, int *block1, int **wvhdl)
+ ring *rDefault(const n_Procs_s* cf, int nvars, char **names,int ord_size, rRingOrder_t *ord, int *block0, int *block1, int **wvhdl)
diff -up src/sage/libs/singular/ring.pyx.orig src/sage/libs/singular/ring.pyx
--- src/sage/libs/singular/ring.pyx.orig 2017-03-29 14:40:24.767445320 -0400
+++ src/sage/libs/singular/ring.pyx 2017-03-29 14:43:38.593452742 -0400
@@ -21,7 +21,7 @@ from sage.libs.gmp.mpz cimport mpz_init_
from sage.libs.singular.decl cimport number, poly, ring, currRing
from sage.libs.singular.decl cimport rChangeCurrRing, rCopy0, rComplete, rDelete, idInit
from sage.libs.singular.decl cimport omAlloc0, omStrDup, omAlloc, omAlloc0Bin, sip_sring_bin, rnumber_bin
-from sage.libs.singular.decl cimport ringorder_dp, ringorder_Dp, ringorder_lp, ringorder_rp, ringorder_ds, ringorder_Ds, ringorder_ls, ringorder_M, ringorder_C, ringorder_wp, ringorder_Wp, ringorder_ws, ringorder_Ws, ringorder_a
+from sage.libs.singular.decl cimport rRingOrder_t, ringorder_dp, ringorder_Dp, ringorder_lp, ringorder_rp, ringorder_ds, ringorder_Ds, ringorder_ls, ringorder_M, ringorder_C, ringorder_wp, ringorder_Wp, ringorder_ws, ringorder_Ws, ringorder_a
from sage.libs.singular.decl cimport p_Copy, prCopyR
from sage.libs.singular.decl cimport n_unknown, n_Zp, n_Q, n_R, n_GF, n_long_R, n_algExt,n_transExt,n_long_C, n_Z, n_Zn, n_Znm, n_Z2m, n_CF
from sage.libs.singular.decl cimport n_coeffType, cfInitCharProc
@@ -165,7 +165,7 @@ cdef ring *singular_ring_new(base_ring,
## q q : GF(q=p^n) *names TRUE (todo)
_wvhdl = <int **>omAlloc0((nblcks + 2) * sizeof(int *))
- _order = <int *>omAlloc0((nblcks + 2) * sizeof(int))
+ _order = <rRingOrder_t *>omAlloc0((nblcks + 2) * sizeof(rRingOrder_t))
_block0 = <int *>omAlloc0((nblcks + 2) * sizeof(int))
_block1 = <int *>omAlloc0((nblcks + 2) * sizeof(int))

View file

@ -1,7 +1,7 @@
diff -up src/sage/env.py.orig src/sage/env.py diff -up src/sage/env.py.orig src/sage/env.py
--- src/sage/env.py.orig 2016-10-20 08:14:08.087552003 -0400 --- src/sage/env.py.orig 2017-11-08 08:27:50.523217592 -0500
+++ src/sage/env.py 2016-10-20 08:14:40.929553260 -0400 +++ src/sage/env.py 2017-11-08 08:27:58.147217884 -0500
@@ -89,7 +89,7 @@ _add_variable_or_fallback('HOSTNAME', @@ -90,7 +90,7 @@ _add_variable_or_fallback('HOSTNAME',
_add_variable_or_fallback('LOCAL_IDENTIFIER','$HOSTNAME.%s'%os.getpid()) _add_variable_or_fallback('LOCAL_IDENTIFIER','$HOSTNAME.%s'%os.getpid())
# bunch of sage directories and files # bunch of sage directories and files
@ -10,7 +10,7 @@ diff -up src/sage/env.py.orig src/sage/env.py
_add_variable_or_fallback('SAGE_LOCAL', None) _add_variable_or_fallback('SAGE_LOCAL', None)
_add_variable_or_fallback('SAGE_ETC', opj('$SAGE_LOCAL', 'etc')) _add_variable_or_fallback('SAGE_ETC', opj('$SAGE_LOCAL', 'etc'))
_add_variable_or_fallback('SAGE_INC', opj('$SAGE_LOCAL', 'include')) _add_variable_or_fallback('SAGE_INC', opj('$SAGE_LOCAL', 'include'))
@@ -115,7 +115,7 @@ _add_variable_or_fallback('SAGE_PKGS', o @@ -116,7 +116,7 @@ _add_variable_or_fallback('SAGE_PKGS', o
_add_variable_or_fallback('SAGE_EXTCODE', opj('$SAGE_SHARE', 'sage', 'ext')) _add_variable_or_fallback('SAGE_EXTCODE', opj('$SAGE_SHARE', 'sage', 'ext'))
_add_variable_or_fallback('SAGE_LOGS', opj('$SAGE_ROOT', 'logs', 'pkgs')) _add_variable_or_fallback('SAGE_LOGS', opj('$SAGE_ROOT', 'logs', 'pkgs'))
_add_variable_or_fallback('SAGE_SPKG_INST', opj('$SAGE_LOCAL', 'var', 'lib', 'sage', 'installed')) _add_variable_or_fallback('SAGE_SPKG_INST', opj('$SAGE_LOCAL', 'var', 'lib', 'sage', 'installed'))

View file

@ -1,9 +1,7 @@
%global __provides_exclude_from .*/site-packages/.*\\.so %global __provides_exclude_from .*/site-packages/.*\\.so
%bcond_with bundled_pari
%bcond_with bundled_pexpect %bcond_with bundled_pexpect
%bcond_without bundled_ipython %bcond_with bundled_ipython
%bcond_with bundled_cysignals
%bcond_without install_hack %bcond_without install_hack
# for faster full rpm test builds # for faster full rpm test builds
@ -33,27 +31,21 @@
%global SAGE_TIMEOUT 60 %global SAGE_TIMEOUT 60
%global SAGE_TIMEOUT_LONG 180 %global SAGE_TIMEOUT_LONG 180
%global conway_polynomials_pkg conway_polynomials-0.4 %global conway_polynomials_pkg conway_polynomials-0.5
%if %{with bundled_cysignals}
%global cysignals_pkg cysignals-1.3.2
%endif
%global elliptic_curves_pkg elliptic_curves-0.8 %global elliptic_curves_pkg elliptic_curves-0.8
%global flintqs_pkg flintqs-1.0 %global flintqs_pkg flintqs-1.0
%global graphs_pkg graphs-20161026 %global graphs_pkg graphs-20161026
%if %{with bundled_ipython} %if %{with bundled_ipython}
%global ipython_pkg ipython-5.1.0 %global ipython_pkg ipython-5.1.0
%endif %endif
%if %{with bundled_pari}
%global pari_pkg pari-2.9.1
%endif
%if %{with bundled_pexpect} %if %{with bundled_pexpect}
%global pexpect_pkg pexpect-4.1.0 %global pexpect_pkg pexpect-4.1.0
%endif %endif
%global polytopes_db_pkg polytopes_db-20120220 %global polytopes_db_pkg polytopes_db-20120220
%global rubiks_pkg rubiks-20070912 %global rubiks_pkg rubiks-20070912
%global sagenb_pkg sagenb-0.13 %global sagenb_pkg sagenb-1.0.1
%global sagetex_pkg sagetex-3.0 %global sagetex_pkg sagetex-3.0
%global Sphinx_pkg Sphinx-1.4.4 %global Sphinx_pkg Sphinx-1.5.3
%global SAGE_ROOT %{_libdir}/sagemath %global SAGE_ROOT %{_libdir}/sagemath
%global SAGE_LOCAL %{SAGE_ROOT}/local %global SAGE_LOCAL %{SAGE_ROOT}/local
@ -67,8 +59,8 @@
Name: sagemath Name: sagemath
Group: Applications/Engineering Group: Applications/Engineering
Summary: A free open-source mathematics software system Summary: A free open-source mathematics software system
Version: 7.6 Version: 8.0
Release: 6%{?dist} Release: 1%{?dist}
# The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file # The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file
# Additionally, every $files section has a comment with the license name # Additionally, every $files section has a comment with the license name
# before files with that license # before files with that license
@ -114,82 +106,72 @@ Patch8: %{name}-maxima.patch
# execute 4ti2 programs in $PATH not in $SAGE_ROOT/local/bin # execute 4ti2 programs in $PATH not in $SAGE_ROOT/local/bin
Patch9: %{name}-4ti2.patch Patch9: %{name}-4ti2.patch
# http://trac.sagemath.org/sage_trac/ticket/12992
# http://pari.math.u-bordeaux.fr/cgi-bin/bugreport.cgi?bug=1317
Patch10: %{name}-pari.patch
# use jmol itself to export preview images # use jmol itself to export preview images
# FIXME besides not using X and told so, fails if DISPLAY is not set # FIXME besides not using X and told so, fails if DISPLAY is not set
Patch11: %{name}-jmol.patch Patch10: %{name}-jmol.patch
# only cremona mini database built and installed # only cremona mini database built and installed
# FIXME add a package with the full cremona database # FIXME add a package with the full cremona database
# FIXME actually it should be already available in pari-elldata # FIXME actually it should be already available in pari-elldata
Patch12: %{name}-cremona.patch Patch11: %{name}-cremona.patch
# lrslib is a requires # lrslib is a requires
Patch13: %{name}-lrslib.patch Patch12: %{name}-lrslib.patch
# correct path to the nauty geng program # correct path to the nauty geng program
# http://cs.anu.edu.au/~bdm/nauty/ # http://cs.anu.edu.au/~bdm/nauty/
# http://pallini.di.uniroma1.it/ # http://pallini.di.uniroma1.it/
Patch14: %{name}-nauty.patch Patch13: %{name}-nauty.patch
# gap hap package not (yet) available # gap hap package not (yet) available
# http://www-gap.mcs.st-and.ac.uk/Packages/hap.html # http://www-gap.mcs.st-and.ac.uk/Packages/hap.html
Patch15: %{name}-gap-hap.patch Patch14: %{name}-gap-hap.patch
# correct path to Lfunction include # correct path to Lfunction include
Patch16: %{name}-lcalc.patch Patch15: %{name}-lcalc.patch
# avoid assertion in coin backend # avoid assertion in coin backend
Patch17: %{name}-cbc.patch Patch16: %{name}-cbc.patch
# Use system gap directories # Use system gap directories
Patch18: %{name}-libgap.patch Patch17: %{name}-libgap.patch
# Build fes # Build fes
Patch19: %{name}-fes-build.patch Patch18: %{name}-fes-build.patch
# Disable fes # Disable fes
Patch20: %{name}-fes.patch Patch19: %{name}-fes.patch
# Side effect of using distro packages # Side effect of using distro packages
# https://bugzilla.redhat.com/show_bug.cgi?id=974769 # https://bugzilla.redhat.com/show_bug.cgi?id=974769
Patch21: %{name}-sympy.patch Patch20: %{name}-sympy.patch
# Fix a name clash with NTL # Fix a name clash with NTL
Patch22: %{name}-ntl.patch Patch21: %{name}-ntl.patch
# Correct unable to start QEPCAD within sage # Correct unable to start QEPCAD within sage
# https://bugzilla.redhat.com/show_bug.cgi?id=1243590 # https://bugzilla.redhat.com/show_bug.cgi?id=1243590
Patch23: %{name}-qepcad.patch Patch22: %{name}-qepcad.patch
# Correct path to arb headers # Correct path to arb headers
Patch24: %{name}-arb.patch Patch23: %{name}-arb.patch
# Adapt to header file changes in givaro 4 and linbox 1.4 # Adapt to header file changes in givaro 4 and linbox 1.4
Patch25: %{name}-givaro.patch Patch24: %{name}-givaro.patch
# No support for f" notation # No support for f" notation
Patch26: %{name}-nofstring.patch Patch25: %{name}-nofstring.patch
# Add missing include paths # Add missing include paths
Patch27: %{name}-includes.patch Patch26: %{name}-includes.patch
# https://trac.sagemath.org/ticket/20926 # https://trac.sagemath.org/ticket/20926
# #error This file requires compiler and library support for the ISO C++ \ # #error This file requires compiler and library support for the ISO C++ \
# 2011 standard. This support must be enabled with the -std=c++11 \ # 2011 standard. This support must be enabled with the -std=c++11 \
# or -std=gnu++11 compiler options. # or -std=gnu++11 compiler options.
Patch28: %{name}-gcc6.patch Patch27: %{name}-gcc6.patch
# Use atlas blas # Use atlas blas
Patch29: %{name}-atlas.patch Patch28: %{name}-atlas.patch
# Update for python-flask-0.11.1
Patch30: %{name}-flask.patch
# Minor adaptation to latest singular
Patch31: %{name}-singular.patch
BuildRequires: 4ti2 BuildRequires: 4ti2
BuildRequires: arb-devel BuildRequires: arb-devel
@ -198,7 +180,7 @@ BuildRequires: brial-devel
BuildRequires: cddlib-tools BuildRequires: cddlib-tools
BuildRequires: cliquer-devel BuildRequires: cliquer-devel
BuildRequires: coin-or-Cbc-devel BuildRequires: coin-or-Cbc-devel
BuildRequires: cryptominisat-devel #BuildRequires: cryptominisat-devel
BuildRequires: Cython >= 0.24.1 BuildRequires: Cython >= 0.24.1
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: dos2unix BuildRequires: dos2unix
@ -247,19 +229,14 @@ BuildRequires: nauty
BuildRequires: ntl-devel BuildRequires: ntl-devel
BuildRequires: numpy BuildRequires: numpy
BuildRequires: palp BuildRequires: palp
%if %{with bundled_pari}
BuildConflicts: pari-devel
%else
BuildRequires: pari-devel BuildRequires: pari-devel
BuildRequires: pari-gp BuildRequires: pari-gp
%endif
BuildRequires: planarity-devel BuildRequires: planarity-devel
BuildRequires: ppl-devel BuildRequires: ppl-devel
BuildRequires: pynac-devel BuildRequires: pynac-devel
BuildRequires: python2-devel BuildRequires: python2-devel
%if %{without bundled_cysignals} BuildRequires: python-cypari2-devel
BuildRequires: python-cysignals-devel BuildRequires: python-cysignals-devel
%endif
BuildRequires: python-flask-autoindex BuildRequires: python-flask-autoindex
BuildRequires: python-flask-babel BuildRequires: python-flask-babel
BuildRequires: python-flask-openid BuildRequires: python-flask-openid
@ -324,9 +301,7 @@ Requires: nauty
Requires: palp Requires: palp
Requires: pari-gp Requires: pari-gp
Requires: python-brial Requires: python-brial
%if %{without bundled_cysignals}
Requires: python-cysignals Requires: python-cysignals
%endif
Requires: python-crypto Requires: python-crypto
Requires: python-cvxopt Requires: python-cvxopt
Requires: python-docutils Requires: python-docutils
@ -608,18 +583,6 @@ computations, and plots from the Sage mathematics software suite
%prep %prep
%setup -q -n sage-%{version} %setup -q -n sage-%{version}
%if %{with bundled_cysignals}
pushd build/pkgs/cysignals
tar jxf ../../../upstream/%{cysignals_pkg}.tar.bz2
mv %{cysignals_pkg} src
if [ %{__isa_bits} = "64" ]; then
for file in $(find . -name cysignals-CSI); do
sed -i "s/'lib'/'%{_lib}'/" $file
done
fi
popd
%endif
pushd build/pkgs/conway_polynomials pushd build/pkgs/conway_polynomials
tar jxf ../../../upstream/%{conway_polynomials_pkg}.tar.bz2 tar jxf ../../../upstream/%{conway_polynomials_pkg}.tar.bz2
mv %{conway_polynomials_pkg} src mv %{conway_polynomials_pkg} src
@ -647,20 +610,6 @@ pushd build/pkgs/ipython
popd popd
%endif %endif
%if %{with bundled_pari}
pushd build/pkgs/pari
tar zxf ../../../upstream/%{pari_pkg}.tar.gz
mv %{pari_pkg} src
pushd src
for diff in ../patches/*.patch; do
patch -p1 < $diff
done
# Temporary workaround: redefining GCC_VERSION kills the build
sed -i 's/GCC_VERSION/PARI_&/' config/paricfg.h.SH
popd
popd
%endif
%if %{with bundled_pexpect} %if %{with bundled_pexpect}
pushd build/pkgs/pexpect pushd build/pkgs/pexpect
tar zxf ../../../upstream/%{pexpect_pkg}.tar.gz tar zxf ../../../upstream/%{pexpect_pkg}.tar.gz
@ -721,11 +670,7 @@ popd
%patch7 %patch7
%patch8 %patch8
%patch9 %patch9
%if %{without bundled_pari}
%patch10 %patch10
%endif
%patch11 %patch11
%patch12 %patch12
%patch13 %patch13
@ -733,38 +678,29 @@ popd
%patch15 %patch15
%patch16 %patch16
%patch17 %patch17
%patch18
%if %{with fes} %if %{with fes}
%patch19 %patch18
%else %else
%patch20 %patch19
%endif %endif
%patch20
%patch21 %patch21
%patch22 %patch22
%patch23 %patch23
%patch24 %patch24
%patch25 %patch25
%patch26 %patch26
%patch27 %patch27
%patch28 %patch28
%patch29
%patch30
%patch31
sed -e 's|@@SAGE_ROOT@@|%{SAGE_ROOT}|' \ sed -e 's|@@SAGE_ROOT@@|%{SAGE_ROOT}|' \
-e 's|@@SAGE_DOC@@|%{SAGE_DOC}|' \ -e 's|@@SAGE_DOC@@|%{SAGE_DOC}|' \
-i src/sage/env.py -i src/sage/env.py
%if %{with bundled_cysignals}
sed -e 's|@@CYSIGNALS@@|%{_builddir}%{python_sitearch}/cysignals|' \
-i src/setup.py
%else
sed -e 's|@@CYSIGNALS@@|%{python_sitearch}/cysignals|' \ sed -e 's|@@CYSIGNALS@@|%{python_sitearch}/cysignals|' \
-i src/setup.py -i src/setup.py
%endif
sed -e "s|, 'flask-oldsessions>=0.10'||" \ sed -e "s|, 'flask-oldsessions>=0.10'||" \
-e "s|'http://github.com/mitsuhiko/flask-oldsessions/tarball/master#egg=flask-oldsessions-0.10'||" \ -e "s|'http://github.com/mitsuhiko/flask-oldsessions/tarball/master#egg=flask-oldsessions-0.10'||" \
@ -829,41 +765,6 @@ pushd build/pkgs/ipython/src
popd popd
%endif %endif
%if %{with bundled_pari}
# Build bundled pari-2.8
pushd build/pkgs/pari/src
./Configure --prefix=%{_builddir} \
--without-readline --with-gmp \
--kernel=gmp --graphic=none
sed -i 's|%{_builddir}|%{_prefix}|g' Olinux-*/paricfg.h
make %{?_smp_mflags} gp
make install DESTDIR=""
cp -p src/language/anal.h %{_builddir}/include/pari/anal.h
popd
%endif
# Generate pari interface
pushd src
%__python2 -c "from sage_setup.autogen.interpreters import rebuild; rebuild('sage/ext/interpreters')"
%__python2 -c "from sage_setup.autogen.pari import rebuild; rebuild()"
popd
%if %{with bundled_pari}
# Make temporary headers and static library visible
sed -i 's|\(^ include_directories = \[SAGE_INC,\)|\1 "%{_builddir}/include",|' \
src/sage/env.py
sed -i 's|\(^extra_link_args = \[\) \]|\1"-L%{_builddir}/lib"\]|' \
src/setup.py
%endif
%if %{with bundled_cysignals}
pushd build/pkgs/cysignals/src
%__python2 setup.py build
%__python2 setup.py install --root %{_builddir}
popd
export PYTHONPATH=%{_builddir}%{python_sitearch}:$PYTHONPATH
%endif
%if %{with cython_hack} %if %{with cython_hack}
cp -far %{python_sitearch}/Cython %{_builddir}%{python_sitearch} cp -far %{python_sitearch}/Cython %{_builddir}%{python_sitearch}
BASE=$PWD/build/pkgs/cython/patches/ BASE=$PWD/build/pkgs/cython/patches/
@ -927,9 +828,6 @@ export SAGE_ETC=%{buildroot}%{SAGE_ETC}
export SAGE_EXTCODE=%{buildroot}%{SAGE_ETC} export SAGE_EXTCODE=%{buildroot}%{SAGE_ETC}
export SAGE_DOC=%{buildroot}%{SAGE_DOC} export SAGE_DOC=%{buildroot}%{SAGE_DOC}
export SAGE_PYTHONPATH=%{buildroot}%{SAGE_PYTHONPATH} export SAGE_PYTHONPATH=%{buildroot}%{SAGE_PYTHONPATH}
%if %{with bundled_pari}
export LD_LIBRARY_PATH=%{_builddir}/lib:$LD_LIBRARY_PATH
%endif
export DESTDIR=%{buildroot} export DESTDIR=%{buildroot}
export SAGE_DEBUG=no export SAGE_DEBUG=no
export DOT_SAGE=/tmp/sage$$ export DOT_SAGE=/tmp/sage$$
@ -950,17 +848,6 @@ ln -sf %{_libdir} $SAGE_LOCAL/lib
ln -sf %{_includedir} $SAGE_LOCAL/include ln -sf %{_includedir} $SAGE_LOCAL/include
ln -sf %{_datadir} $SAGE_LOCAL/share ln -sf %{_datadir} $SAGE_LOCAL/share
#------------------------------------------------------------------------
%if %{with bundled_cysignals}
pushd build/pkgs/cysignals/src
pushd docs
%__make html
popd
%__python2 setup.py install --root %{buildroot}
mv %{buildroot}%{_bindir}/cysignals* $SAGE_LOCAL/bin
popd
%endif
#------------------------------------------------------------------------ #------------------------------------------------------------------------
pushd src/ext pushd src/ext
mkdir -p $SAGE_ETC mkdir -p $SAGE_ETC
@ -996,13 +883,6 @@ pushd src
%endif %endif
popd popd
%if %{with bundled_pari}
# Revert change to make temporary headers and static library visible
# Making it search for the installed sagemath path
sed -i 's|\(^ include_directories = \[SAGE_INC,\).*|\1|' \
%{buildroot}%{SAGE_SRC}/sage/env.py
%endif
#------------------------------------------------------------------------ #------------------------------------------------------------------------
pushd build/pkgs/sagenb/src pushd build/pkgs/sagenb/src
rm -f %{buildroot}%{python_sitearch}/sagenb/data/sage3d/sage3d rm -f %{buildroot}%{python_sitearch}/sagenb/data/sage3d/sage3d
@ -1035,9 +915,7 @@ pushd src/bin
ln -sf %{_bindir}/jmol jmol ln -sf %{_bindir}/jmol jmol
ln -sf %{_bindir}/python sage.bin ln -sf %{_bindir}/python sage.bin
ln -sf %{_bindir}/python python ln -sf %{_bindir}/python python
%if %{without bundled_pari}
ln -sf %{_bindir}/gp sage_pari ln -sf %{_bindir}/gp sage_pari
%endif
ln -sf %{_bindir}/gap gap_stamp ln -sf %{_bindir}/gap gap_stamp
ln -sf %{_bindir}/gmp-ecm ecm ln -sf %{_bindir}/gmp-ecm ecm
popd popd
@ -1281,10 +1159,6 @@ perl -pi -e 's|%{buildroot}||g;' \
# Script was used to build documentation # Script was used to build documentation
perl -pi -e 's|%{buildroot}||g;s|^##||g;' %{buildroot}%{_bindir}/sage perl -pi -e 's|%{buildroot}||g;s|^##||g;' %{buildroot}%{_bindir}/sage
%if %{with bundled_cysignals}
perl -pi -e 's|%{buildroot}||;' \
%{buildroot}%{python_sitearch}/cysignals/__init__.pxd
%endif
#------------------------------------------------------------------------ #------------------------------------------------------------------------
# Fix links # Fix links
@ -1351,23 +1225,6 @@ rm -r %{buildroot}%{python_sitearch}/sagenb/data/sage3d
[ -d %{buildroot}%{SAGE_SRC}/build ] && [ -d %{buildroot}%{SAGE_SRC}/build ] &&
rm -r %{buildroot}%{SAGE_SRC}/build rm -r %{buildroot}%{SAGE_SRC}/build
%if %{with bundled_pari}
install -D -m 755 %{_builddir}/bin/gp-2.8 %{buildroot}%{SAGE_LOCAL}/bin/gp-2.8
for dest in gp sage_pari; do
ln -sf gp-2.8 %{buildroot}%{SAGE_LOCAL}/bin/$dest
done
install -D -m 755 %{_builddir}/lib/libpari-gmp-2.8.so.0.0.0 \
%{buildroot}%{SAGE_ROOT}/lib/libpari-gmp-2.8.so.0.0.0
ln -s libpari-gmp-2.8.so.0.0.0 \
%{buildroot}%{SAGE_ROOT}/lib/libpari-gmp-2.8.so.0
install -D -m 644 %{_builddir}/share/pari/pari.desc \
%{buildroot}%{SAGE_LOCAL}/pari.desc
# make sure pari is in link path
ln -s libpari-gmp-2.8.so.0.0.0 %{buildroot}%{SAGE_ROOT}/lib/libpari.so
perl -pi -e 's|(libdirs = cblas_library_dirs)|$1 + \["%{SAGE_ROOT}/lib"\]|;' %{buildroot}%{python_sitearch}/sage/misc/cython.py
%endif
%if %{without install_hack} %if %{without install_hack}
# remove sage_setup # remove sage_setup
rm -r %{buildroot}%{python_sitearch}/sage_setup rm -r %{buildroot}%{python_sitearch}/sage_setup
@ -1412,8 +1269,8 @@ chmod +x %{buildroot}%{SAGE_LOCAL}/bin/sage-list-packages
#------------------------------------------------------------------------ #------------------------------------------------------------------------
%if %{with docs} %if %{with docs}
# do not install symlink to '.' rm %{buildroot}%{SAGE_DOC}/doctrees
rm %{buildroot}%{SAGE_DOC}/output rm %{buildroot}%{SAGE_DOC}/inventory
%endif %endif
# last install command # last install command
@ -1481,9 +1338,6 @@ exit 0
%{SAGE_LOCAL}/bin/QuadraticSieve %{SAGE_LOCAL}/bin/QuadraticSieve
%{SAGE_LOCAL}/bin/ecm %{SAGE_LOCAL}/bin/ecm
%{SAGE_LOCAL}/bin/gap_stamp %{SAGE_LOCAL}/bin/gap_stamp
%if %{with bundled_pari}
%{SAGE_LOCAL}/bin/gp*
%endif
%{SAGE_LOCAL}/bin/jmol %{SAGE_LOCAL}/bin/jmol
%if %{with bundled_ipython} %if %{with bundled_ipython}
%{SAGE_LOCAL}/bin/ip* %{SAGE_LOCAL}/bin/ip*
@ -1506,26 +1360,15 @@ exit 0
%{_bindir}/sage %{_bindir}/sage
%{_datadir}/pixmaps/%{name}.png %{_datadir}/pixmaps/%{name}.png
%{_datadir}/applications/%{name}.desktop %{_datadir}/applications/%{name}.desktop
%if %{with bundled_pari}
%{SAGE_ROOT}/lib
%{SAGE_LOCAL}/pari.desc
%endif
%{SAGE_SPKG_INST} %{SAGE_SPKG_INST}
#------------------------------------------------------------------------ #------------------------------------------------------------------------
%files core %files core
# GPLv2+ # GPLv2+
%if %{with bundled_cysignals}
%{SAGE_LOCAL}/bin/cysignals*
%endif
%{python_sitearch}/sage %{python_sitearch}/sage
%if %{without install_hack} %if %{without install_hack}
%{python_sitearch}/sage-*.egg-info %{python_sitearch}/sage-*.egg-info
%endif %endif
%if %{with bundled_cysignals}
%{python_sitearch}/cysignals
%{python_sitearch}/cysignals-*.egg-info
%endif
%if %{with bundled_ipython} %if %{with bundled_ipython}
%{SAGE_PYTHONPATH}/IPython %{SAGE_PYTHONPATH}/IPython
%endif %endif
@ -1722,6 +1565,16 @@ exit 0
######################################################################## ########################################################################
%changelog %changelog
* Fri Nov 10 2017 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 8.0-1
- Update to sagemath 8.0
- Remove cryptominisat build requires
- Remove no longer needed -singular patch (upstream updated)
- Remove no longer -flask patch (upstream updated)
- Remove no longer -pari patch (used now by cypari2)
- Disable option to use bundled cysignals
- Disable option to use bundled pari
- Use system ipython
* Sat Sep 30 2017 Jerry James <loganjerry@gmail.com> - 7.6-6 * Sat Sep 30 2017 Jerry James <loganjerry@gmail.com> - 7.6-6
- Rebuild for arb 2.11.1, eclib 20170815, and libfplll 5.1.0 - Rebuild for arb 2.11.1, eclib 20170815, and libfplll 5.1.0

View file

@ -1 +1 @@
SHA512 (sage-7.6.tar.gz) = d700a4e501f8883222b2456134c4983197c7d4216e88d94b6c01e94042baad9345c8a8383a08701c09b4fcad1b3b506413e406da3dad340428a76b6048500df3 SHA512 (sage-8.0.tar.gz) = f0a7aaf9fc157b031ceba2d298d74a56bb38f6be5ae4350f91058a24360273f2599c1d50dfe8941e7c462d0a1bf436090da859256fc8e687097e6c419345c493