mirror of
https://src.fedoraproject.org/rpms/sagemath.git
synced 2025-04-22 11:45:56 -04:00
Update to sagemath 7.4
This commit is contained in:
parent
6b381937c4
commit
807c53b3b6
21 changed files with 299 additions and 2458 deletions
|
@ -1,25 +1,17 @@
|
|||
diff -up src/sage/libs/pari/handle_error.pxd.orig src/sage/libs/pari/handle_error.pxd
|
||||
--- src/sage/libs/pari/handle_error.pxd.orig 2015-10-11 17:43:43.037782565 -0300
|
||||
+++ src/sage/libs/pari/handle_error.pxd 2015-10-11 17:46:28.004788882 -0300
|
||||
--- src/sage/libs/pari/handle_error.pxd.orig 2016-10-20 08:06:47.720535139 -0400
|
||||
+++ src/sage/libs/pari/handle_error.pxd 2016-10-20 08:07:01.459535665 -0400
|
||||
@@ -1,5 +1,5 @@
|
||||
include 'sage/libs/pari/decl.pxi'
|
||||
from .types cimport GEN
|
||||
|
||||
cdef void _pari_init_error_handling()
|
||||
-cdef int _pari_err_handle(GEN E) except 0
|
||||
+cdef int _pari_handle_exception(long errnum_unused) except 0
|
||||
cdef void _pari_err_recover(long errnum)
|
||||
diff -up src/sage/libs/pari/handle_error.pyx.orig src/sage/libs/pari/handle_error.pyx
|
||||
--- src/sage/libs/pari/handle_error.pyx.orig 2015-10-11 17:43:43.023782564 -0300
|
||||
+++ src/sage/libs/pari/handle_error.pyx 2015-10-11 17:45:11.844785966 -0300
|
||||
@@ -131,13 +131,13 @@ cdef void _pari_init_error_handling():
|
||||
sage: pari('warning("test")')
|
||||
*** user warning: test
|
||||
"""
|
||||
- global cb_pari_err_handle
|
||||
+ global cb_pari_handle_exception
|
||||
global cb_pari_err_recover
|
||||
- cb_pari_err_handle = _pari_err_handle
|
||||
+ cb_pari_handle_exception = _pari_handle_exception
|
||||
--- src/sage/libs/pari/handle_error.pyx.orig 2016-10-20 08:07:12.336536082 -0400
|
||||
+++ src/sage/libs/pari/handle_error.pyx 2016-10-20 08:08:23.089538791 -0400
|
||||
@@ -139,7 +139,7 @@ cdef void _pari_init_error_handling():
|
||||
cb_pari_err_recover = _pari_err_recover
|
||||
|
||||
|
||||
|
@ -28,34 +20,35 @@ diff -up src/sage/libs/pari/handle_error.pyx.orig src/sage/libs/pari/handle_erro
|
|||
"""
|
||||
Convert a PARI error into a Sage exception, unless the error was
|
||||
a stack overflow, in which case we enlarge the stack.
|
||||
@@ -156,6 +156,7 @@ cdef int _pari_err_handle(GEN E) except
|
||||
@@ -158,11 +158,11 @@ cdef int _pari_err_handle(GEN E) except
|
||||
PariError: impossible inverse in gdiv: 0
|
||||
|
||||
"""
|
||||
+ cdef GEN E = pari_err_last()
|
||||
cdef long errnum = E[1]
|
||||
if errnum == e_STACK:
|
||||
# PARI is out of memory. We double the size of the PARI stack
|
||||
@@ -165,15 +166,10 @@ cdef int _pari_err_handle(GEN E) except
|
||||
|
||||
sig_block()
|
||||
cdef char* errstr
|
||||
- cdef char* s
|
||||
try:
|
||||
errstr = pari_err2str(E)
|
||||
pari_error_string = errstr.decode('ascii')
|
||||
|
||||
if errnum == e_STACK:
|
||||
# Custom error message for PARI stack overflow
|
||||
@@ -173,11 +173,6 @@ cdef int _pari_err_handle(GEN E) except
|
||||
errstr = pari_err2str(E)
|
||||
pari_error_string = errstr.decode('ascii')
|
||||
pari_free(errstr)
|
||||
-
|
||||
- s = closure_func_err()
|
||||
- if s is not NULL:
|
||||
- pari_error_string = s.decode('ascii') + ": " + pari_error_string
|
||||
-
|
||||
raise PariError(errnum, pari_error_string, pari_instance.new_gen_noclear(E))
|
||||
finally:
|
||||
pari_free(errstr)
|
||||
sig_unblock()
|
||||
diff -up src/sage/libs/pari/pari_instance.pxd.orig src/sage/libs/pari/pari_instance.pxd
|
||||
--- src/sage/libs/pari/pari_instance.pxd.orig 2015-10-11 17:43:43.028782564 -0300
|
||||
+++ src/sage/libs/pari/pari_instance.pxd 2015-10-11 17:45:37.884786963 -0300
|
||||
@@ -7,6 +7,10 @@ cimport cython
|
||||
--- src/sage/libs/pari/pari_instance.pxd.orig 2016-10-20 08:08:33.152539177 -0400
|
||||
+++ src/sage/libs/pari/pari_instance.pxd 2016-10-20 08:08:51.209539868 -0400
|
||||
@@ -5,6 +5,10 @@ cimport cython
|
||||
|
||||
from sage.libs.pari.gen cimport gen
|
||||
|
||||
|
@ -64,21 +57,21 @@ diff -up src/sage/libs/pari/pari_instance.pxd.orig src/sage/libs/pari/pari_insta
|
|||
+ cdef void mp_set_memory_functions(void*, void*, void*)
|
||||
+
|
||||
cpdef long prec_bits_to_words(unsigned long prec_in_bits)
|
||||
|
||||
cdef class PariInstance_auto(ParentWithBase):
|
||||
cpdef long prec_words_to_bits(long prec_in_words)
|
||||
cpdef long default_bitprec()
|
||||
diff -up src/sage/libs/pari/pari_instance.pyx.orig src/sage/libs/pari/pari_instance.pyx
|
||||
--- src/sage/libs/pari/pari_instance.pyx.orig 2015-10-11 17:43:43.032782565 -0300
|
||||
+++ src/sage/libs/pari/pari_instance.pyx 2015-10-11 17:46:14.596788369 -0300
|
||||
@@ -429,7 +429,12 @@ cdef class PariInstance(PariInstance_aut
|
||||
# The size here doesn't really matter, because we will allocate
|
||||
# our own stack anyway. We ask PARI not to set up signal and
|
||||
# error handlers.
|
||||
--- src/sage/libs/pari/pari_instance.pyx.orig 2016-10-20 08:09:05.632540421 -0400
|
||||
+++ src/sage/libs/pari/pari_instance.pyx 2016-10-20 08:10:25.322543472 -0400
|
||||
@@ -475,7 +475,12 @@ cdef class PariInstance(PariInstance_aut
|
||||
from sage.misc.memory_info import MemoryInfo
|
||||
mem = MemoryInfo()
|
||||
|
||||
+ cdef void *_gmp_malloc
|
||||
+ cdef void *_gmp_realloc
|
||||
+ cdef void *_gmp_free
|
||||
+ mp_get_memory_functions(&_gmp_malloc, &_gmp_realloc, &_gmp_free)
|
||||
pari_init_opts(10000, maxprime, INIT_DFTm)
|
||||
pari_init_opts(size, maxprime, INIT_DFTm)
|
||||
+ mp_set_memory_functions(_gmp_malloc, _gmp_realloc, _gmp_free)
|
||||
|
||||
sizemax = mem.virtual_memory_limit() // 4
|
||||
|
||||
# Disable PARI's stack overflow checking which is incompatible
|
||||
# with multi-threading.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue