diff --git a/sagemath-flask.patch b/sagemath-flask.patch new file mode 100644 index 0000000..f8053dc --- /dev/null +++ b/sagemath-flask.patch @@ -0,0 +1,130 @@ +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/') +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): diff --git a/sagemath.spec b/sagemath.spec index cc6f2da..eb65475 100644 --- a/sagemath.spec +++ b/sagemath.spec @@ -59,7 +59,7 @@ Name: sagemath Group: Applications/Engineering Summary: A free open-source mathematics software system Version: 7.3 -Release: 1%{?dist} +Release: 2%{?dist} # The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file # Additionally, every $files section has a comment with the license name # before files with that license @@ -183,6 +183,9 @@ Patch31: %{name}-atlas.patch # Correct side effect of sagemath-ipython3 patch Patch32: %{name}-is_in_terminal.patch +# Update for python-flask-0.11.1 +Patch33: %{name}-flask.patch + BuildRequires: 4ti2 BuildRequires: arb-devel BuildRequires: atlas-devel @@ -695,6 +698,7 @@ popd %patch30 %patch31 %patch32 +%patch33 sed -e 's|@@SAGE_ROOT@@|%{SAGE_ROOT}|' \ -e 's|@@SAGE_DOC@@|%{SAGE_DOC}|' \ @@ -1581,6 +1585,9 @@ exit 0 ######################################################################## %changelog +* Wed Aug 24 2016 pcpa - 7.3-2 +- Make notebook functional with python-flask-0.11.1 + * Sat Aug 20 2016 pcpa - 7.3-1 - Update to sagemath 7.3 - Switch from polybori to brial