Package: mayavi2
Version: 4.7.1-2+b2
Severity: important
X-Debbugs-Cc: schampail...@skynet.be


Dear Maintainer,

Running mayavi2 from the console leads to a crash:

stefan@debian:~$ mayavi2
Exception occurred in traits notification handler.
Please check the log file for details.
Exception occurred in traits notification handler for object: 
<mayavi.plugins.mayavi_ui_plugin.MayaviUIPlugin object at 0x7f2115a2ff40>, 
trait: application, old value: None, new value: 
<mayavi.plugins.mayavi_workbench_application.MayaviWorkbenchApplication object 
at 0x7f2114d75ae0>
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/traits/trait_notifiers.py", line 654, in 
_dispatch_change_event
    self.dispatch(handler, *args)
  File "/usr/lib/python3/dist-packages/traits/trait_notifiers.py", line 553, in 
dispatch
    handler(*args)
  File "/usr/lib/python3/dist-packages/traits/traits_listener.py", line 498, in 
handle_simple
    self.next.register(new)
  File "/usr/lib/python3/dist-packages/traits/traits_listener.py", line 464, in 
register
    value = getattr(self, type)(new, name, False)
  File "/usr/lib/python3/dist-packages/traits/traits_listener.py", line 738, in 
_register_simple
    return next.register(getattr(object, name))
  File 
"/usr/lib/python3/dist-packages/envisage/ui/workbench/workbench_application.py",
 line 140, in _gui_default
    return GUI(splash_screen=self.splash_screen)
  File 
"/usr/lib/python3/dist-packages/mayavi/plugins/mayavi_workbench_application.py",
 line 118, in _splash_screen_default
    splash_screen = SplashScreen(
  File "/usr/lib/python3/dist-packages/pyface/base_toolkit.py", line 178, in 
__init__
    raise NotImplementedError(msg % (toolkit, package, name))
NotImplementedError: the null pyface.ui.null backend doesn't implement 
splash_screen:SplashScreen

I didn't investigate the exact origin of the crash but found a work around. 
According to :

https://github.com/enthought/mayavi/issues/838

doing this before running seems to solve the bug:

export ETS_TOOLKIT=qt
export QT_API=pyqt5

After those exports, I can run mayavi2 correctly.

Maybe one could write a small wrapper around mayavi2 commands that
detects the appropriate setup to create to run it ?

Best regards,

Stéphane


-- System Information:
Debian Release: 11.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-9-amd64 (SMP w/2 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_FIRMWARE_WORKAROUND, 
TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages mayavi2 depends on:
ii  libc6                               2.31-13+deb11u2
ii  libjs-jquery                        3.5.1+dfsg+~3.5.5-7
ii  python3                             3.9.2-3
ii  python3-apptools                    4.5.0-1.1
ii  python3-configobj                   5.0.6-4
ii  python3-envisage                    4.9.0-2.1
ii  python3-numpy [python3-numpy-abi9]  1:1.19.5-1
ii  python3-pkg-resources               52.0.0-4
ii  python3-pyface                      6.1.2-2
ii  python3-pygments                    2.7.1+dfsg-2.1
ii  python3-traits                      5.2.0-2+b3
ii  python3-traitsui                    6.1.3-3
ii  python3-vtk7                        7.1.1+dfsg2-8

mayavi2 recommends no packages.

Versions of packages mayavi2 suggests:
pn  ipython3       <none>
pn  python3-scipy  <none>

-- no debconf information

Reply via email to