summaryrefslogtreecommitdiff
path: root/libre/sagemath/sagemath-cython0.25.patch
blob: 6c88fc0b5b3e9261e3c0e330e8b12d8ef2a0450e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
From 77eb8e2a40d97d49df24793736a8d9feef485322 Mon Sep 17 00:00:00 2001
From: Jeroen Demeyer <jdemeyer@cage.ugent.be>
Date: Tue, 13 Sep 2016 14:47:46 +0200
Subject: [PATCH 1/2] Move old_style_globals to individual modules

---
 src/sage/calculus/var.pyx                   | 2 ++
 src/sage/ext/interactive_constructors_c.pyx | 1 +
 src/sage/misc/citation.pyx                  | 5 ++++-
 src/sage/misc/fpickle.pyx                   | 1 +
 src/sage/misc/reset.pyx                     | 5 ++++-
 src/sage/misc/sage_timeit_class.pyx         | 4 ++--
 src/sage/structure/category_object.pyx      | 1 +
 src/sage/structure/sage_object.pyx          | 1 +
 src/setup.py                                | 4 ----
 9 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/sage/calculus/var.pyx b/src/sage/calculus/var.pyx
index b11b111..0a18f68 100644
--- a/src/sage/calculus/var.pyx
+++ b/src/sage/calculus/var.pyx
@@ -1,6 +1,8 @@
+# cython: old_style_globals=True
 """
 Symbolic variables
 """
+
 from sage.symbolic.function_factory import function as new_function
 from sage.symbolic.ring import SR
 
diff --git a/src/sage/ext/interactive_constructors_c.pyx b/src/sage/ext/interactive_constructors_c.pyx
index 321e368..a9b9bea 100644
--- a/src/sage/ext/interactive_constructors_c.pyx
+++ b/src/sage/ext/interactive_constructors_c.pyx
@@ -1,3 +1,4 @@
+# cython: old_style_globals=True
 r"""
 Constructors that automatically inject variables into the global module scope
 """
diff --git a/src/sage/misc/citation.pyx b/src/sage/misc/citation.pyx
index 77454aa..2053074 100644
--- a/src/sage/misc/citation.pyx
+++ b/src/sage/misc/citation.pyx
@@ -1,4 +1,7 @@
-"Dependency usage tracking for citations"
+# cython: old_style_globals=True
+"""
+Dependency usage tracking for citations
+"""
 
 from sage.misc.all import tmp_filename
 from sage.env import SAGE_ROOT
diff --git a/src/sage/misc/fpickle.pyx b/src/sage/misc/fpickle.pyx
index 79520b1..c6d0d74 100644
--- a/src/sage/misc/fpickle.pyx
+++ b/src/sage/misc/fpickle.pyx
@@ -1,3 +1,4 @@
+# cython: old_style_globals=True
 """
 Function pickling
 
diff --git a/src/sage/misc/reset.pyx b/src/sage/misc/reset.pyx
index bd6bc78..bd7c94b 100644
--- a/src/sage/misc/reset.pyx
+++ b/src/sage/misc/reset.pyx
@@ -1,4 +1,7 @@
-"Interpreter reset"
+# cython: old_style_globals=True
+"""
+Interpreter reset
+"""
 
 import sys
 
diff --git a/src/sage/misc/sage_timeit_class.pyx b/src/sage/misc/sage_timeit_class.pyx
index 4c369f8..82f421f 100644
--- a/src/sage/misc/sage_timeit_class.pyx
+++ b/src/sage/misc/sage_timeit_class.pyx
@@ -1,3 +1,5 @@
+# This is here in Cython so we can access the interpreter globals
+# cython: old_style_globals=True
 """
 The ``timeit`` command
 
@@ -5,8 +7,6 @@ This uses the function :func:`~sage.misc.sage_timeit.sage_timeit`.
 """
 from __future__ import absolute_import
 
-# This is here in Cython so we can get the interpreter globals
-
 from . import sage_timeit
 
 
diff --git a/src/sage/structure/category_object.pyx b/src/sage/structure/category_object.pyx
index d9ef9c5..97930d3 100644
--- a/src/sage/structure/category_object.pyx
+++ b/src/sage/structure/category_object.pyx
@@ -1,3 +1,4 @@
+# cython: old_style_globals=True
 r"""
 Base class for objects of a category
 
diff --git a/src/sage/structure/sage_object.pyx b/src/sage/structure/sage_object.pyx
index c931a64..4caf4ae 100644
--- a/src/sage/structure/sage_object.pyx
+++ b/src/sage/structure/sage_object.pyx
@@ -1,4 +1,5 @@
 # -*- encoding: utf-8 -*-
+# cython: old_style_globals=True
 r"""
 Abstract base class for Sage objects
 """
diff --git a/src/setup.py b/src/setup.py
index c26639d..f094700 100755
--- a/src/setup.py	2016-11-05 19:34:44.701025334 +0000
+++ b/src/setup.py	2016-11-05 19:46:00.706210289 +0000
@@ -562,16 +562,6 @@
     import Cython.Compiler.Options
     import Cython.Compiler.Main
 
-    # Sage uses these directives (mostly for historical reasons).
-    Cython.Compiler.Options.embed_pos_in_docstring = True
-    Cython.Compiler.Options.directive_defaults['autotestdict'] = False
-    Cython.Compiler.Options.directive_defaults['cdivision'] = True
-    Cython.Compiler.Options.directive_defaults['fast_getattr'] = True
-    # The globals() builtin in Cython was fixed to return to the current scope,
-    # but Sage relies on the broken behavior of returning to the nearest
-    # enclosing Python scope (e.g. to perform variable injection).
-    Cython.Compiler.Options.old_style_globals = True
-
     debug = False
     if os.environ.get('SAGE_DEBUG', None) != 'no':
         print('Enabling Cython debugging support')
@@ -608,7 +598,10 @@
         force=force,
         aliases=aliases,
         compiler_directives={
+            'autotestdict': False,
+            'cdivision': True,
             'embedsignature': True,
+            'fast_getattr': True,
             'profile': profile,
         })