Hi all,
as indicated in the crash message, I email you the crash report.
Cheers,
***************************************************************************
IPython post-mortem report
{'commit_hash': u'b467d487e',
'commit_source': 'installation',
'default_encoding': 'UTF-8',
'ipython_path': '/usr/lib/python2.7/dist-packages/IPython',
'ipython_version': '5.5.0',
'os_name': 'posix',
'platform': 'Linux-4.17.0-1-amd64-x86_64-with-debian-buster-sid',
'sys_executable': '/usr/bin/python',
'sys_platform': 'linux2',
'sys_version': '2.7.15 (default, Jul 28 2018, 11:29:29) \n[GCC 8.1.0]'}
***************************************************************************
***************************************************************************
Crash traceback:
---------------------------------------------------------------------------
---------------------------------------------------------------------------
SignalError Python 2.7.15: /usr/bin/python
Fri Aug 17 00:43:20 2018
A problem occurred executing Python code. Here is the sequence of function
calls leading up to the error, with the most recent (innermost) call last.
/usr/share/sagemath/bin/sage-ipython in <module>()
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 """
4 Sage IPython startup script.
5 """
6
7 from sage.repl.interpreter import SageTerminalApp
8
9 app = SageTerminalApp.instance()
---> 10 app.initialize()
global app.initialize = <bound method SageTerminalApp.initialize of
<sage.repl.interpreter.SageTerminalApp object at 0x7f0bc1b41310>>
11 app.start()
<decorator-gen-110> in
initialize(self=<sage.repl.interpreter.SageTerminalApp object>, argv=None)
/usr/lib/python2.7/dist-packages/traitlets/config/application.pyc in
catch_config_error(method=<function initialize>,
app=<sage.repl.interpreter.SageTerminalApp object>, *args=(None,),
**kwargs={})
72 TRAITLETS_APPLICATION_RAISE_CONFIG_FILE_ERROR = False
73 else:
74 raise ValueError("Unsupported value for environment variable:
'TRAITLETS_APPLICATION_RAISE_CONFIG_FILE_ERROR' is set to '%s' which is
none of {'0', '1', 'false', 'true', ''}."% _envvar )
75
76
77 @decorator
78 def catch_config_error(method, app, *args, **kwargs):
79 """Method decorator for catching invalid config
(Trait/ArgumentErrors) during init.
80
81 On a TraitError (generally caused by bad config), this will
print the trait's
82 message, and exit the app.
83
84 For use on init methods, to prevent invoking excepthook on
invalid input.
85 """
86 try:
---> 87 return method(app, *args, **kwargs)
method = <function initialize at 0x7f0bbfe81de8>
app = <sage.repl.interpreter.SageTerminalApp object at
0x7f0bc1b41310>
args = (None,)
kwargs = {}
88 except (TraitError, ArgumentError) as e:
89 app.print_help()
90 app.log.fatal("Bad config encountered during
initialization:")
91 app.log.fatal(str(e))
92 app.log.debug("Config at the time: %s", app.config)
93 app.exit(1)
94
95
96 class ApplicationError(Exception):
97 pass
98
99
100 class LevelFormatter(logging.Formatter):
101 """Formatter with additional `highlevel` record
102
/usr/lib/python2.7/dist-packages/IPython/terminal/ipapp.pyc in
initialize(self=<sage.repl.interpreter.SageTerminalApp object>, argv=None)
301
302 return super(TerminalIPythonApp,
self).parse_command_line(argv)
303
304 @catch_config_error
305 def initialize(self, argv=None):
306 """Do actions after construct, but before starting the
app."""
307 super(TerminalIPythonApp, self).initialize(argv)
308 if self.subapp is not None:
309 # don't bother initializing further, starting subapp
310 return
311 # print self.extra_args
312 if self.extra_args and not self.something_to_run:
313 self.file_to_run = self.extra_args[0]
314 self.init_path()
315 # create the shell
--> 316 self.init_shell()
self.init_shell = <bound method SageTerminalApp.init_shell of
<sage.repl.interpreter.SageTerminalApp object at 0x7f0bc1b41310>>
317 # and draw the banner
318 self.init_banner()
319 # Now a variety of things that happen after the banner is
printed.
320 self.init_gui_pylab()
321 self.init_extensions()
322 self.init_code()
323
324 def init_shell(self):
325 """initialize the InteractiveShell instance"""
326 # Create an InteractiveShell instance.
327 # shell.display_banner should always be False for the
terminal
328 # based app, because we call shell.show_banner() by hand
below
329 # so the banner shows *before* all extension loading stuff.
330 self.shell =
self.interactive_shell_class.instance(parent=self,
331 profile_dir=self.profile_dir,
/usr/lib/python2.7/dist-packages/sage/repl/interpreter.pyc in
init_shell(self=<sage.repl.interpreter.SageTerminalApp object>)
747 self.shell.has_sage_extensions = SAGE_EXTENSION in
self.extensions
748
749 # Load the %lprun extension if available
750 try:
751 import line_profiler
752 except ImportError:
753 pass
754 else:
755 self.extensions.append('line_profiler')
756
757 if self.shell.has_sage_extensions:
758 self.extensions.remove(SAGE_EXTENSION)
759
760 # load sage extension here to get a crash if
761 # something is wrong with the sage library
--> 762
self.shell.extension_manager.load_extension(SAGE_EXTENSION)
self.shell.extension_manager.load_extension = <bound method
ExtensionManager.load_extension of
<IPython.core.extensions.ExtensionManager object at 0x7f0bc1a85590>>
global SAGE_EXTENSION = 'sage'
763
764
/usr/lib/python2.7/dist-packages/IPython/core/extensions.pyc in
load_extension(self=<IPython.core.extensions.ExtensionManager object>,
module_str='sage')
70
71 Returns the string "already loaded" if the extension is
already loaded,
72 "no load function" if the module doesn't have a
load_ipython_extension
73 function, or None if it succeeded.
74 """
75 if module_str in self.loaded:
76 return "already loaded"
77
78 from IPython.utils.syspathcontext import
prepended_to_syspath
79
80 with self.shell.builtin_trap:
81 if module_str not in sys.modules:
82 with
prepended_to_syspath(self.ipython_extension_dir):
83 __import__(module_str)
84 mod = sys.modules[module_str]
---> 85 if self._call_load_ipython_extension(mod):
self._call_load_ipython_extension = <bound method
ExtensionManager._call_load_ipython_extension of
<IPython.core.extensions.ExtensionManager object at 0x7f0bc1a85590>>
mod = <module 'sage' from
'/usr/lib/python2.7/dist-packages/sage/__init__.pyc'>
86 self.loaded.add(module_str)
87 else:
88 return "no load function"
89
90 def unload_extension(self, module_str):
91 """Unload an IPython extension by its module name.
92
93 This function looks up the extension's name in
``sys.modules`` and
94 simply calls ``mod.unload_ipython_extension(self)``.
95
96 Returns the string "no unload function" if the extension
doesn't define
97 a function to unload itself, "not loaded" if the extension
isn't loaded,
98 otherwise None.
99 """
100 if module_str not in self.loaded:
/usr/lib/python2.7/dist-packages/IPython/core/extensions.pyc in
_call_load_ipython_extension(self=<IPython.core.extensions.ExtensionManager
object>, mod=<module 'sage' from
'/usr/lib/python2.7/dist-packages/sage/__init__.pyc'>)
117 """
118 from IPython.utils.syspathcontext import
prepended_to_syspath
119
120 if (module_str in self.loaded) and (module_str in
sys.modules):
121 self.unload_extension(module_str)
122 mod = sys.modules[module_str]
123 with prepended_to_syspath(self.ipython_extension_dir):
124 reload(mod)
125 if self._call_load_ipython_extension(mod):
126 self.loaded.add(module_str)
127 else:
128 self.load_extension(module_str)
129
130 def _call_load_ipython_extension(self, mod):
131 if hasattr(mod, 'load_ipython_extension'):
--> 132 mod.load_ipython_extension(self.shell)
mod.load_ipython_extension = <function load_ipython_extension at
0x7f0bc1d626e0>
self.shell = <sage.repl.interpreter.SageTerminalInteractiveShell
object at 0x7f0bbfedda10>
133 return True
134
135 def _call_unload_ipython_extension(self, mod):
136 if hasattr(mod, 'unload_ipython_extension'):
137 mod.unload_ipython_extension(self.shell)
138 return True
139
140 def install_extension(self, url, filename=None):
141 """Download and install an IPython extension.
142
143 If filename is given, the file will be so named (inside the
extension
144 directory). Otherwise, the name from the URL will be used.
The file must
145 have a .py or .zip extension; otherwise, a ValueError will
be raised.
146
147 Returns the full path to the installed file.
/usr/lib/python2.7/dist-packages/sage/__init__.pyc in
load_ipython_extension(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell
object>,))
1 __all__ = ['all']
2
3 # Make sure that the correct zlib library is loaded. This is needed
4 # to prevent the system zlib to be loaded instead of the Sage one.
5 # See https://trac.sagemath.org/ticket/23122
6 import zlib
7
8 # IPython calls this when starting up
9 def load_ipython_extension(*args):
10 import sage.repl.ipython_extension
---> 11 sage.repl.ipython_extension.load_ipython_extension(*args)
sage.repl.ipython_extension.load_ipython_extension = <function
load_ipython_extension at 0x7f0bbea62938>
args = (<sage.repl.interpreter.SageTerminalInteractiveShell object
at 0x7f0bbfedda10>,)
12
13
14 # Monkey-patch inspect.isfunction() to support Cython functions.
15 def isfunction(obj):
16 """
17 Check whether something is a function.
18
19 We assume that anything which has a genuine ``__code__``
20 attribute (not using ``__getattr__`` overrides) is a function.
21 This is meant to support Cython functions.
22
23 EXAMPLES::
24
25 sage: from inspect import isfunction
26 sage: def f(): pass
27 sage: isfunction(f)
28 True
29 sage: isfunction(lambda x:x)
30 True
31 sage: from sage.categories.coercion_methods import
_mul_parent
/usr/lib/python2.7/dist-packages/sage/repl/ipython_extension.pyc in
wrapper(*args=(<sage.repl.interpreter.SageTerminalInteractiveShell
object>,), **kwargs={})
546 ....: if work:
547 ....: return 'foo worked'
548 ....: raise RuntimeError("foo didn't work")
549 sage: foo(False)
550 Traceback (most recent call last):
551 ...
552 RuntimeError: foo didn't work
553 sage: foo(True)
554 'foo worked'
555 sage: foo(False)
556 sage: foo(True)
557 """
558 @wraps(func)
559 def wrapper(*args, **kwargs):
560 if not wrapper.has_run:
--> 561 result = func(*args, **kwargs)
result = undefined
global func = undefined
args = (<sage.repl.interpreter.SageTerminalInteractiveShell object
at 0x7f0bbfedda10>,)
kwargs = {}
562 wrapper.has_run = True
563 return result
564 wrapper.has_run = False
565 return wrapper
566
567
568 @run_once
569 def load_ipython_extension(ip):
570 """
571 Load the extension in IPython.
572 """
573 # this modifies ip
574 SageCustomizations(shell=ip)
/usr/lib/python2.7/dist-packages/sage/repl/ipython_extension.pyc in
load_ipython_extension(ip=<sage.repl.interpreter.SageTerminalInteractiveShell
object>)
559 def wrapper(*args, **kwargs):
560 if not wrapper.has_run:
561 result = func(*args, **kwargs)
562 wrapper.has_run = True
563 return result
564 wrapper.has_run = False
565 return wrapper
566
567
568 @run_once
569 def load_ipython_extension(ip):
570 """
571 Load the extension in IPython.
572 """
573 # this modifies ip
--> 574 SageCustomizations(shell=ip)
global SageCustomizations = <class
'sage.repl.ipython_extension.SageCustomizations'>
global shell = undefined
ip = <sage.repl.interpreter.SageTerminalInteractiveShell object at
0x7f0bbfedda10>
/usr/lib/python2.7/dist-packages/sage/repl/ipython_extension.pyc in
__init__(self=<sage.repl.ipython_extension.SageCustomizations object>,
shell=<sage.repl.interpreter.SageTerminalInteractiveShell object>)
417 def __init__(self, shell=None):
418 """
419 Initialize the Sage plugin.
420 """
421 self.shell = shell
422
423 self.auto_magics = SageMagics(shell)
424 self.shell.register_magics(self.auto_magics)
425
426 import sage.misc.edit_module as edit_module
427 self.shell.set_hook('editor', edit_module.edit_devel)
428
429 self.init_inspector()
430 self.init_line_transforms()
431
--> 432 import sage.all # until sage's import hell is fixed
sage.all = undefined
433
434 self.shell.verbose_quit = True
435 self.set_quit_hook()
436
437 self.register_interface_magics()
438
439 if SAGE_IMPORTALL == 'yes':
440 self.init_environment()
441
442 def register_interface_magics(self):
443 """
444 Register magics for each of the Sage interfaces
445 """
446 from sage.repl.interface_magic import InterfaceMagic
447 InterfaceMagic.register_all(self.shell)
/usr/lib/python2.7/dist-packages/sage/all.py in <module>()
87 from sage.misc.all import * # takes a while
88 from sage.typeset.all import *
89 from sage.repl.all import *
90
91 from sage.misc.sh import sh
92
93 from sage.libs.all import *
94 from sage.data_structures.all import *
95 from sage.doctest.all import *
96
97 from sage.structure.all import *
98 from sage.rings.all import *
99 from sage.arith.all import *
100 from sage.matrix.all import *
101
--> 102 from sage.symbolic.all import *
global sage.symbolic.all = undefined
103 from sage.modules.all import *
104 from sage.monoids.all import *
105 from sage.algebras.all import *
106 from sage.modular.all import *
107 from sage.sat.all import *
108 from sage.schemes.all import *
109 from sage.graphs.all import *
110 from sage.groups.all import *
111 from sage.databases.all import *
112 from sage.categories.all import *
113 from sage.sets.all import *
114 from sage.probability.all import *
115 from sage.interfaces.all import *
116
117 from sage.functions.all import *
/usr/lib/python2.7/dist-packages/sage/symbolic/all.py in <module>()
1 from __future__ import absolute_import
2
----> 3 from sage.libs.pynac.pynac import I
global sage.libs.pynac.pynac = undefined
global I = undefined
4 i = I
5
6 from .ring import SR
7 from .constants import (pi, e, NaN, golden_ratio, log2,
euler_gamma, catalan,
8 khinchin, twinprime, mertens, glaisher)
9 from .expression import Expression, solve_diophantine, hold
10 from .callable import CallableSymbolicExpressionRing
11
12 from sage.symbolic.relation import solve, solve_mod, solve_ineq
13 from sage.symbolic.assumptions import assume, forget, assumptions,
assuming
14
15 from .units import units
sage/libs/pynac/pynac.pyx in init sage.libs.pynac.pynac()
sage/libs/pynac/pynac.pyx in sage.libs.pynac.pynac.init_pynac_I
(build/cythonized/sage/libs/pynac/pynac.cpp:28269)()
/usr/lib/python2.7/dist-packages/sage/rings/number_field/number_field.pyc
in QuadraticField(D=-1, name='I', check=True, embedding=1.00000000000000*I,
latex_name='i', **args={})
912 False
913 """
914 D = QQ(D)
915 if check:
916 if D.is_square():
917 raise ValueError("D must not be a perfect square.")
918 R = QQ['x']
919 f = R([-D, 0, 1])
920 if embedding is True:
921 if D > 0:
922 embedding = RLF(D).sqrt()
923 else:
924 embedding = CLF(D).sqrt()
925 if latex_name == 'sqrt':
926 latex_name = r'\sqrt{%s}' % D
--> 927 return NumberField(f, name, check=False, embedding=embedding,
latex_name=latex_name, **args)
global NumberField = <function NumberField at 0x7f0afabd75f0>
f = x^2 + 1
name = 'I'
check = True
global False = undefined
embedding = 1.00000000000000*I
latex_name = 'i'
args = {}
928
929 def is_AbsoluteNumberField(x):
930 """
931 Return True if x is an absolute number field.
932
933 EXAMPLES::
934
935 sage: from sage.rings.number_field.number_field import
is_AbsoluteNumberField
936 sage: is_AbsoluteNumberField(NumberField(x^2+1,'a'))
937 True
938 sage: is_AbsoluteNumberField(NumberField([x^3 + 17,
x^2+1],'a'))
939 False
940
941 The rationals are a number field, but they're not of the
absolute
942 number field class.
/usr/lib/python2.7/dist-packages/sage/rings/number_field/number_field.pyc
in NumberField(polynomial=x^2 + 1, name='I', check=False, names=None,
embedding=1.00000000000000*I, latex_name='i', assume_disc_small=False,
maximize_at_primes=None, structure=None)
514 (2,)
515
516 It is an error not to specify the generator::
517
518 sage: K = NumberField(x^2-2)
519 Traceback (most recent call last):
520 ...
521 TypeError: You must specify the name of the generator.
522
523 """
524 if names is not None:
525 name = names
526 if isinstance(polynomial, (list,tuple)):
527 return NumberFieldTower(polynomial, names=name,
check=check, embeddings=embedding, latex_names=latex_name,
assume_disc_small=assume_disc_small, maximize_at_primes=maximize_at_primes,
structures=structure)
528
--> 529 return NumberField_version2(polynomial=polynomial, name=name,
check=check, embedding=embedding, latex_name=latex_name,
assume_disc_small=assume_disc_small, maximize_at_primes=maximize_at_primes,
structure=structure)
global NumberField_version2 = <class
'sage.rings.number_field.number_field.NumberFieldFactory'>
polynomial = x^2 + 1
name = 'I'
check = False
embedding = 1.00000000000000*I
latex_name = 'i'
assume_disc_small = False
maximize_at_primes = None
structure = None
530
531 class NumberFieldFactory(UniqueFactory):
532 r"""
533 Factory for number fields.
534
535 This should usually not be called directly, use
:meth:`NumberField`
536 instead.
537
538 INPUT:
539
540 - ``polynomial`` - a polynomial over `\QQ` or a number
field.
541 - ``name`` - a string (default: ``'a'``), the name of the
generator
542 - ``check`` - a boolean (default: ``True``); do type
checking and
543 irreducibility checking.
544 - ``embedding`` - ``None`` or an element, the images of the
generator
sage/structure/factory.pyx in sage.structure.factory.UniqueFactory.__call__
(build/cythonized/sage/structure/factory.c:1894)()
sage/structure/factory.pyx in
sage.structure.factory.UniqueFactory.get_object
(build/cythonized/sage/structure/factory.c:2083)()
sage/misc/weak_dict.pyx in
sage.misc.weak_dict.WeakValueDictionary.__getitem__
(build/cythonized/sage/misc/weak_dict.c:3520)()
sage/cpython/dict_del_by_value.pyx in
sage.cpython.dict_del_by_value.PyDict_GetItemWithError
(build/cythonized/sage/cpython/dict_del_by_value.c:1093)()
sage/rings/real_lazy.pyx in sage.rings.real_lazy.LazyFieldElement.__hash__
(build/cythonized/sage/rings/real_lazy.c:9293)()
sage/rings/real_lazy.pyx in
sage.rings.real_lazy.LazyFieldElement.__complex__
(build/cythonized/sage/rings/real_lazy.c:10057)()
sage/rings/real_lazy.pyx in sage.rings.real_lazy.LazyAlgebraic.eval
(build/cythonized/sage/rings/real_lazy.c:18610)()
sage/rings/real_lazy.pyx in sage.rings.real_lazy.LazyAlgebraic.eval
(build/cythonized/sage/rings/real_lazy.c:18767)()
sage/rings/polynomial/polynomial_element.pyx in
sage.rings.polynomial.polynomial_element.Polynomial.roots
(build/cythonized/sage/rings/polynomial/polynomial_element.c:69593)()
/usr/lib/python2.7/dist-packages/sage/rings/polynomial/complex_roots.pyc in
complex_roots(p=x^2 + 1, skip_squarefree=False, retval='algebraic',
min_prec=0)
243 if skip_squarefree:
244 factors = [(p, 1)]
245 else:
246 factors = p.squarefree_decomposition()
247
248 prec = 53
249 while True:
250 CC = ComplexField(prec)
251 CCX = CC['x']
252
253 all_rts = []
254 ok = True
255
256 for (factor, exp) in factors:
257 cfac = CCX(factor)
--> 258 rts = cfac.roots(multiplicities=False)
rts = undefined
cfac.roots = <built-in method roots of
PolynomialRing_field_with_category.element_class object at 0x7f0aeaaaf360>
global multiplicities = undefined
global False = undefined
259 # Make sure the number of roots we found is the degree.
If
260 # we don't find that many roots, it's because the
261 # precision isn't big enough and though the (possibly
262 # exact) polynomial "factor" is squarefree, it is not
263 # squarefree as an element of CCX.
264 if len(rts) < factor.degree():
265 ok = False
266 break
267 irts = interval_roots(factor, rts, max(prec, min_prec))
268 if irts is None:
269 ok = False
270 break
271 if retval != 'interval':
272 factor = QQbar.common_polynomial(factor)
273 for irt in irts:
sage/rings/polynomial/polynomial_element.pyx in
sage.rings.polynomial.polynomial_element.Polynomial.roots
(build/cythonized/sage/rings/polynomial/polynomial_element.c:66301)()
sage/rings/polynomial/polynomial_element.pyx in
sage.rings.polynomial.polynomial_element.Polynomial.__pari__
(build/cythonized/sage/rings/polynomial/polynomial_element.c:53869)()
sage/rings/polynomial/polynomial_element.pyx in
sage.rings.polynomial.polynomial_element.Polynomial._pari_with_name
(build/cythonized/sage/rings/polynomial/polynomial_element.c:54334)()
sage/rings/complex_number.pyx in
sage.rings.complex_number.ComplexNumber.__pari__
(build/cythonized/sage/rings/complex_number.c:7220)()
sage/rings/real_mpfr.pyx in sage.rings.real_mpfr.RealNumber.__pari__
(build/cythonized/sage/rings/real_mpfr.c:22904)()
SignalError: Segmentation fault
*********************************************************
Laurent.
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.