Hi Dima.
I installed from package on Mint 19.3. I'm happy to run whatever is
needed to help diagnose. For context, I have installed python 2.7.17 and
the package pulled sage 8.1. I'm not sure why the packages didn't pull the
most up to date. Is there a PPA I need to add?
Best,
Lance
On Saturday, April 4, 2020 at 9:49:09 PM UTC-5, Dima Pasechnik wrote:
>
> On Sun, Apr 5, 2020 at 7:44 AM Lance Edward Miller <[email protected]
> <javascript:>> wrote:
> >
> > After install on Linux Mint 19.3, I got the following crash report. Any
> help is appreciated.
>
> What exactly have you installed?
> A binary installation, or done a build from sources?
>
> >
> >
> ***************************************************************************
> >
> > 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-5.3.0-40-generic-x86_64-with-LinuxMint-19.3-tricia',
> > 'sys_executable': '/usr/bin/python',
> > 'sys_platform': 'linux2',
> > 'sys_version': '2.7.17 (default, Nov 7 2019, 10:07:09) \n[GCC 7.4.0]'}
> >
> >
> ***************************************************************************
> >
> >
> >
> >
> ***************************************************************************
> >
> > Crash traceback:
> >
> >
> ---------------------------------------------------------------------------
> >
> ---------------------------------------------------------------------------
> > ImportError Python 2.7.17:
> /usr/bin/python
> > Sat Apr 4 18:39:09
> 2020
> > 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 0x7f76836e7150>>
> > 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 0x7f76806919d0>
> > app = <sage.repl.interpreter.SageTerminalApp object at
> 0x7f76836e7150>
> > 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 0x7f76836e7150>>
> > 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>)
> > 730 This code is based on
> > 731 :meth:`TerminalIPythonApp.init_shell`.
> > 732
> > 733 EXAMPLES::
> > 734
> > 735 sage: from sage.repl.interpreter import
> SageTerminalApp
> > 736 sage: app = SageTerminalApp.instance()
> > 737 sage: app.shell
> > 738 <sage.repl.interpreter.SageTestShell object at
> 0x...>
> > 739 """
> > 740 # Shell initialization
> > 741 self.shell = self.shell_class.instance(
> > 742 parent=self,
> > 743 config=self.config,
> > 744 profile_dir=self.profile_dir,
> > --> 745 ipython_dir=self.ipython_dir)
> > global ipython_dir = undefined
> > self.ipython_dir = u'/home/lmiller/.ipython'
> > 746 self.shell.configurables.append(self)
> > 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
> >
> > /usr/lib/python2.7/dist-packages/traitlets/config/configurable.pyc in
> instance(cls=<class 'sage.repl.interpreter.SageTerminalInteractiveShell'>,
> *args=(), **kwargs={'config': {'InteractiveShell': {'term_title': True,
> 'color...ue}, 'SageTerminalApp': {'force_interact': True}}, 'ipython_dir':
> u'/home/lmiller/.ipython', 'parent': <sage.repl.interpreter.SageTerminalApp
> object>, 'profile_dir': <IPython.core.profiledir.ProfileDir object>})
> > 397 >>> class Foo(SingletonConfigurable): pass
> > 398 >>> foo = Foo.instance()
> > 399 >>> foo == Foo.instance()
> > 400 True
> > 401
> > 402 Create a subclass that is retrived using the base class
> instance::
> > 403
> > 404 >>> class Bar(SingletonConfigurable): pass
> > 405 >>> class Bam(Bar): pass
> > 406 >>> bam = Bam.instance()
> > 407 >>> bam == Bar.instance()
> > 408 True
> > 409 """
> > 410 # Create and save the instance
> > 411 if cls._instance is None:
> > --> 412 inst = cls(*args, **kwargs)
> > inst = undefined
> > cls = <class
> 'sage.repl.interpreter.SageTerminalInteractiveShell'>
> > args = ()
> > kwargs = {'ipython_dir': u'/home/lmiller/.ipython',
> 'profile_dir': <IPython.core.profiledir.ProfileDir object at
> 0x7f76806b4d50>, 'config': {'InteractiveShell': {'term_title': True,
> 'colors': 'LightBG', 'confirm_exit': False, 'prompts_class': <class
> 'sage.repl.prompts.SagePrompts'>, 'separate_in': '',
> 'ast_node_interactivity': 'all', 'simple_prompt': False},
> 'InteractiveShellApp': {'extensions': ['sage']}, 'TerminalIPythonApp':
> {'shell_class': <class
> 'sage.repl.interpreter.SageTerminalInteractiveShell'>, 'display_banner':
> False, 'test_shell': False, 'verbose_crash': True}, 'SageTerminalApp':
> {'force_interact': True}}, 'parent': <sage.repl.interpreter.SageTerminalApp
> object at 0x7f76836e7150>}
> > 413 # Now make sure that the instance will also be
> returned by
> > 414 # parent classes' _instance attribute.
> > 415 for subclass in cls._walk_mro():
> > 416 subclass._instance = inst
> > 417
> > 418 if isinstance(cls._instance, cls):
> > 419 return cls._instance
> > 420 else:
> > 421 raise MultipleInstanceError(
> > 422 'Multiple incompatible subclass instances of '
> > 423 '%s are being created.' % cls.__name__
> > 424 )
> > 425
> > 426 @classmethod
> > 427 def initialized(cls):
> >
> > /usr/lib/python2.7/dist-packages/IPython/terminal/interactiveshell.pyc
> in __init__(self=<sage.repl.interpreter.SageTerminalInteractiveShell
> object>, *args=(), **kwargs={'config': {'InteractiveShell': {'term_title':
> True, 'color...ue}, 'SageTerminalApp': {'force_interact': True}},
> 'ipython_dir': u'/home/lmiller/.ipython', 'parent':
> <sage.repl.interpreter.SageTerminalApp object>, 'profile_dir':
> <IPython.core.profiledir.ProfileDir object>})
> > 423
> > 424 def init_alias(self):
> > 425 # The parent class defines aliases that can be safely
> used with any
> > 426 # frontend.
> > 427 super(TerminalInteractiveShell, self).init_alias()
> > 428
> > 429 # Now define aliases that only make sense on the
> terminal, because they
> > 430 # need direct access to the console in a way that we
> can't emulate in
> > 431 # GUI or web frontend
> > 432 if os.name == 'posix':
> > 433 for cmd in ['clear', 'more', 'less', 'man']:
> > 434 self.alias_manager.soft_define_alias(cmd, cmd)
> > 435
> > 436
> > 437 def __init__(self, *args, **kwargs):
> > --> 438 super(TerminalInteractiveShell, self).__init__(*args,
> **kwargs)
> > global super = undefined
> > global TerminalInteractiveShell = <class
> 'IPython.terminal.interactiveshell.TerminalInteractiveShell'>
> > self.__init__ = <bound method
> SageTerminalInteractiveShell.__init__ of
> <sage.repl.interpreter.SageTerminalInteractiveShell object at
> 0x7f76806b4910>>
> > args = ()
> > kwargs = {'profile_dir': <IPython.core.profiledir.ProfileDir
> object at 0x7f76806b4d50>, 'config': {'InteractiveShell': {'term_title':
> True, 'colors': 'LightBG', 'confirm_exit': False, 'prompts_class': <class
> 'sage.repl.prompts.SagePrompts'>, 'separate_in': '',
> 'ast_node_interactivity': 'all', 'simple_prompt': False},
> 'InteractiveShellApp': {'extensions': ['sage']}, 'TerminalIPythonApp':
> {'shell_class': <class
> 'sage.repl.interpreter.SageTerminalInteractiveShell'>, 'display_banner':
> False, 'test_shell': False, 'verbose_crash': True}, 'SageTerminalApp':
> {'force_interact': True}}, 'ipython_dir': u'/home/lmiller/.ipython',
> 'parent': <sage.repl.interpreter.SageTerminalApp object at 0x7f76836e7150>}
> > 439 self.init_prompt_toolkit_cli()
> > 440 self.init_term_title()
> > 441 self.keep_running = True
> > 442
> > 443 self.debugger_history = InMemoryHistory()
> > 444
> > 445 def ask_exit(self):
> > 446 self.keep_running = False
> > 447
> > 448 rl_next_input = None
> > 449
> > 450 def pre_prompt(self):
> > 451 if self.rl_next_input:
> > 452 # We can't set the buffer here, because it will be
> reset just after
> > 453 # this. Adding a callable to pre_run_callables does
> what we need
> >
> > /usr/lib/python2.7/dist-packages/IPython/core/interactiveshell.pyc in
> __init__(self=<sage.repl.interpreter.SageTerminalInteractiveShell object>,
> ipython_dir=u'/home/lmiller/.ipython',
> profile_dir=<IPython.core.profiledir.ProfileDir object>, user_module=None,
> user_ns=None, custom_exceptions=((), None), **kwargs={'config':
> {'InteractiveShell': {'term_title': True, 'color...ue}, 'SageTerminalApp':
> {'force_interact': True}}, 'parent': <sage.repl.interpreter.SageTerminalApp
> object>})
> > 488 self.init_builtins()
> > 489
> > 490 # The following was in post_config_initialization
> > 491 self.init_inspector()
> > 492 if py3compat.PY3:
> > 493 self.raw_input_original = input
> > 494 else:
> > 495 self.raw_input_original = raw_input
> > 496 self.init_completer()
> > 497 # TODO: init_io() needs to happen before init_traceback
> handlers
> > 498 # because the traceback handlers hardcode the
> stdout/stderr streams.
> > 499 # This logic in in debugger.Pdb and should eventually be
> changed.
> > 500 self.init_io()
> > 501 self.init_traceback_handlers(custom_exceptions)
> > 502 self.init_prompts()
> > --> 503 self.init_display_formatter()
> > self.init_display_formatter = <bound method
> SageTerminalInteractiveShell.init_display_formatter of
> <sage.repl.interpreter.SageTerminalInteractiveShell object at
> 0x7f76806b4910>>
> > 504 self.init_display_pub()
> > 505 self.init_data_pub()
> > 506 self.init_displayhook()
> > 507 self.init_magics()
> > 508 self.init_alias()
> > 509 self.init_logstart()
> > 510 self.init_pdb()
> > 511 self.init_extension_manager()
> > 512 self.init_payload()
> > 513 self.init_deprecation_warnings()
> > 514 self.hooks.late_startup_hook()
> > 515 self.events.trigger('shell_initialized', self)
> > 516 atexit.register(self.atexit_operations)
> > 517
> > 518 def get_ipython(self):
> >
> > /usr/lib/python2.7/dist-packages/sage/repl/interpreter.pyc in
> init_display_formatter(self=<sage.repl.interpreter.SageTerminalInteractiveShell
>
> object>)
> > 245
> > 246 sage: from sage.repl.interpreter import
> SageTerminalInteractiveShell
> > 247 sage: SageTerminalInteractiveShell() # not tested
> > 248 <sage.repl.interpreter.SageNotebookInteractiveShell
> object at 0x...>
> > 249 """
> > 250
> > 251 def init_display_formatter(self):
> > 252 """
> > 253 Switch to the Sage IPython commandline rich output
> backend
> > 254
> > 255 EXAMPLES::
> > 256
> > 257 sage: from sage.repl.interpreter import
> SageTerminalInteractiveShell
> > 258 sage:
> SageTerminalInteractiveShell().init_display_formatter() # not tested
> > 259 """
> > --> 260 from sage.repl.rich_output.backend_ipython import
> BackendIPythonCommandline
> > global sage.repl.rich_output.backend_ipython = undefined
> > BackendIPythonCommandline = undefined
> > 261 backend = BackendIPythonCommandline()
> > 262 backend.get_display_manager().switch_backend(backend,
> shell=self)
> > 263
> > 264
> > 265 class SageTestShell(SageShellOverride,
> TerminalInteractiveShell):
> > 266 """
> > 267 Test Shell
> > 268
> > 269 Care must be taken in these doctests to quit the test shell
> in
> > 270 order to switch back the rich output display backend to the
> > 271 doctest backend.
> > 272
> > 273 EXAMPLES::
> > 274
> > 275 sage: from sage.repl.interpreter import get_test_shell
> >
> > /usr/lib/python2.7/dist-packages/sage/repl/rich_output/__init__.py in
> <module>()
> > 1 # -*- encoding: utf-8 -*-
> > 2
> > ----> 3 from .display_manager import get_display_manager
> > global display_manager = undefined
> > global get_display_manager = undefined
> > 4 from .pretty_print import pretty_print
> > 5
> > 6
> >
> >
> /usr/lib/python2.7/dist-packages/sage/repl/rich_output/display_manager.py
> in <module>()
> > 24 The Sage display manager using the doctest backend
> > 25 """
> > 26
> > 27
> #*****************************************************************************
>
>
> > 28 # Copyright (C) 2015 Volker Braun <[email protected]
> <javascript:>>
> > 29 #
> > 30 # Distributed under the terms of the GNU General Public License
> (GPL)
> > 31 # as published by the Free Software Foundation; either version
> 2 of
> > 32 # the License, or (at your option) any later version.
> > 33 # http://www.gnu.org/licenses/
> > 34
> #*****************************************************************************
>
>
> > 35
> > 36
> > 37 import warnings
> > 38
> > ---> 39 from sage.structure.sage_object import SageObject
> > global sage.structure.sage_object = undefined
> > global SageObject = undefined
> > 40 from sage.repl.rich_output.output_basic import (
> > 41 OutputPlainText, OutputAsciiArt, OutputUnicodeArt,
> OutputLatex,
> > 42 )
> > 43 from sage.repl.rich_output.preferences import DisplayPreferences
> > 44
> > 45
> > 46 class DisplayException(Exception):
> > 47 """
> > 48 Base exception for all rich output-related exceptions.
> > 49
> > 50 EXAMPLES::
> > 51
> > 52 sage: from sage.repl.rich_output.display_manager import
> DisplayException
> > 53 sage: raise DisplayException('foo')
> > 54 Traceback (most recent call last):
> >
> > ImportError: No module named sage_object
> >
> >
> ***************************************************************************
> >
> > --
> > 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] <javascript:>.
> > To view this discussion on the web visit
> https://groups.google.com/d/msgid/sage-support/CAPEqHYnjo432OyGqYztMZAXwew8KVaK72ZYYZL9e2ed%3DfZJoFw%40mail.gmail.com.
>
>
>
--
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 view this discussion on the web visit
https://groups.google.com/d/msgid/sage-support/defa3f57-b723-42d5-8be9-159ad5aa1d04%40googlegroups.com.