enthought / envisage

Envisage is a Python-based framework for building applications whose functionalities can be extended by adding "plug-ins".
http://docs.enthought.com/envisage/
Other
82 stars 26 forks source link

test suite fails with ipykernel 6 #448

Closed bnavigator closed 1 year ago

bnavigator commented 3 years ago

Trying to build envisage 6.0.1 on openSUSE Tumbleweed:

Building python-envisage.spec for openSUSE_Tumbleweed/x86_64
...
[    5s] python39-ipykernel-6.3.0-0            ########################################
...
[   25s] + python3.9 -m unittest -v
...
======================================================================
[   26s] ERROR: test_init_ipkernel_with_explicit_gui_backend (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 252, in test_init_ipkernel_with_explicit_gui_backend
[   26s]     kernel.init_ipkernel(gui_backend="qt4")
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 638, in initialize
[   26s]     self.log_connection_info()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/kernelapp.py", line 124, in log_connection_info
[   26s]     self.ports = dict(
[   26s] AttributeError: can't set attribute
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_initial_namespace (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 80, in test_initial_namespace
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_initialize_twice (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 221, in test_initialize_twice
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_io_pub_thread_stopped (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 159, in test_io_pub_thread_stopped
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_ipykernel_live_objects (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 200, in test_ipykernel_live_objects
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_ipython_util_io_globals_restored (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 132, in test_ipython_util_io_globals_restored
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_ipython_util_io_globals_restored_if_they_dont_exist (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 149, in test_ipython_util_io_globals_restored_if_they_dont_exist
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_lifecycle (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 66, in test_lifecycle
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_no_new_atexit_handlers (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 184, in test_no_new_atexit_handlers
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_no_threads_leaked (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 166, in test_no_threads_leaked
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_shutdown_closes_console_pipes (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 119, in test_shutdown_closes_console_pipes
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_shutdown_restores_displayhook_and_excepthook (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 105, in test_shutdown_restores_displayhook_and_excepthook
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_shutdown_restores_output_streams (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 90, in test_shutdown_restores_output_streams
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_shutdown_restores_sys_modules_main (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 98, in test_shutdown_restores_sys_modules_main
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_shutdown_restores_sys_path (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 113, in test_shutdown_restores_sys_path
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_zmq_sockets_closed (envisage.plugins.ipython_kernel.tests.test_internal_ipkernel.TestInternalIPKernel)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 192, in test_zmq_sockets_closed
[   26s]     self.create_and_destroy_kernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 280, in create_and_destroy_kernel
[   26s]     kernel.init_ipkernel(gui_backend=None)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_get_service_twice (envisage.plugins.ipython_kernel.tests.test_ipython_kernel_plugin.TestIPythonKernelPlugin)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_ipython_kernel_plugin.py", line 105, in test_get_service_twice
[   26s]     kernel1 = app.get_service(IPYTHON_KERNEL_PROTOCOL)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/application.py", line 365, in get_service
[   26s]     service = self.service_registry.get_service(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 87, in get_service
[   26s]     services = self.get_services(protocol, query, minimize, maximize)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 123, in get_services
[   26s]     obj = self._resolve_factory(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 265, in _resolve_factory
[   26s]     obj = obj(**properties)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/ipython_kernel_plugin.py", line 102, in _create_kernel
[   26s]     kernel.init_ipkernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_kernel_namespace_extension_point (envisage.plugins.ipython_kernel.tests.test_ipython_kernel_plugin.TestIPythonKernelPlugin)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_ipython_kernel_plugin.py", line 99, in test_kernel_namespace_extension_point
[   26s]     kernel = app.get_service(IPYTHON_KERNEL_PROTOCOL)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/application.py", line 365, in get_service
[   26s]     service = self.service_registry.get_service(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 87, in get_service
[   26s]     services = self.get_services(protocol, query, minimize, maximize)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 123, in get_services
[   26s]     obj = self._resolve_factory(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 265, in _resolve_factory
[   26s]     obj = obj(**properties)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/ipython_kernel_plugin.py", line 102, in _create_kernel
[   26s]     kernel.init_ipkernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_kernel_service (envisage.plugins.ipython_kernel.tests.test_ipython_kernel_plugin.TestIPythonKernelPlugin)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_ipython_kernel_plugin.py", line 78, in test_kernel_service
[   26s]     kernel = app.get_service(IPYTHON_KERNEL_PROTOCOL)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/application.py", line 365, in get_service
[   26s]     service = self.service_registry.get_service(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 87, in get_service
[   26s]     services = self.get_services(protocol, query, minimize, maximize)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 123, in get_services
[   26s]     obj = self._resolve_factory(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 265, in _resolve_factory
[   26s]     obj = obj(**properties)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/ipython_kernel_plugin.py", line 102, in _create_kernel
[   26s]     kernel.init_ipkernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ======================================================================
[   26s] FAIL: test_service_used (envisage.plugins.ipython_kernel.tests.test_ipython_kernel_plugin.TestIPythonKernelPlugin)
[   26s] ----------------------------------------------------------------------
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/tests/test_ipython_kernel_plugin.py", line 154, in test_service_used
[   26s]     app.get_service(IPYTHON_KERNEL_PROTOCOL)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/application.py", line 365, in get_service
[   26s]     service = self.service_registry.get_service(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 87, in get_service
[   26s]     services = self.get_services(protocol, query, minimize, maximize)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 123, in get_services
[   26s]     obj = self._resolve_factory(
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/service_registry.py", line 265, in _resolve_factory
[   26s]     obj = obj(**properties)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/ipython_kernel_plugin.py", line 102, in _create_kernel
[   26s]     kernel.init_ipkernel()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 103, in init_ipkernel
[   26s]     self.ipkernel = _gui_kernel(gui_backend)
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 42, in _gui_kernel
[   26s]     kernel.initialize(argv)
[   26s]   File "/usr/lib/python3.9/site-packages/decorator.py", line 232, in fun
[   26s]     return caller(func, *(extras + args), **kw)
[   26s]   File "/usr/lib/python3.9/site-packages/traitlets/config/application.py", line 87, in catch_config_error
[   26s]     return method(app, *args, **kwargs)
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 632, in initialize
[   26s]     self.init_sockets()
[   26s]   File "/usr/lib/python3.9/site-packages/ipykernel/kernelapp.py", line 276, in init_sockets
[   26s]     assert self.context is None, "init_sockets cannot be called twice!"
[   26s] AssertionError: init_sockets cannot be called twice!
[   26s] 
[   26s] ----------------------------------------------------------------------
[   26s] Ran 229 tests in 0.712s
[   26s] 
[   26s] FAILED (failures=19, errors=1, skipped=4)
[   26s] Error in atexit._run_exitfuncs:
[   26s] Traceback (most recent call last):
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/kernelapp.py", line 188, in close
[   26s]     self.close_shell()
[   26s]   File "/home/abuild/rpmbuild/BUILD/envisage-6.0.1/envisage/plugins/ipython_kernel/kernelapp.py", line 205, in close_shell
[   26s]     shell = self.kernel.shell
[   26s] AttributeError: 'NoneType' object has no attribute 'shell'
mdickinson commented 3 years ago

Thanks for the report! Looks like this is going to take some digging to fix.

mdickinson commented 3 years ago

In the (likely) scenario that this is an involved fix, we should at a minimum update the setup.py to require ipykernel < 6 until we have time to solve this.

opoplawski commented 2 years ago

We're starting to hit this in Fedora Rawhide as well.

opoplawski commented 2 years ago

Ping - any progress here?

mdickinson commented 2 years ago

Ping - any progress here?

Getting Envisage working with ipykernel >= 6 isn't on our roadmap any time soon, I'm afraid: it's a complex and time-consuming task that requires digging into the ipykernel internals. Priorities for Enthought employees are mostly driven by internal needs, and this isn't (currently) something we need internally. If there are external users who need this, PRs would be welcome.

What we can and should do to aid packagers is make sure that the test suite passes in an environment with ipykernel >= 6 installed (simply by skipping the relevant tests). I'll open a separate issue for that. We also need to get a release out at some point in the near future.

mdickinson commented 2 years ago

Opened #456.

mdickinson commented 2 years ago

We also need to avoid the recently-released IPython 8. I've updated the PR #457 accordingly.

mdickinson commented 2 years ago

Some debugging notes, in case I get called away and don't return for a while:

Here are tracebacks for the socket creation:

Creating socket 11
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/__main__.py", line 18, in <module>
    main(module=None)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/main.py", line 101, in __init__
    self.runTests()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/main.py", line 271, in runTests
    self.result = testRunner.run(self.test)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/runner.py", line 184, in run
    test(result)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 84, in __call__
    return self.run(*args, **kwds)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 122, in run
    test(result)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 84, in __call__
    return self.run(*args, **kwds)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 122, in run
    test(result)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/case.py", line 650, in __call__
    return self.run(*args, **kwds)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/case.py", line 591, in run
    self._callTestMethod(testMethod)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/case.py", line 549, in _callTestMethod
    method()
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 142, in test_shutdown_restores_sys_path
    self.create_and_destroy_kernel()
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 318, in create_and_destroy_kernel
    kernel.init_ipkernel(gui_backend=None)
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 104, in init_ipkernel
    self.ipkernel = _gui_kernel(gui_backend)
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 43, in _gui_kernel
    kernel.initialize(argv)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/traitlets/config/application.py", line 88, in inner
    return method(app, *args, **kwargs)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/ipykernel/kernelapp.py", line 632, in initialize
    self.init_sockets()
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/ipykernel/kernelapp.py", line 297, in init_sockets
    self.init_control(context)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/ipykernel/kernelapp.py", line 306, in init_control
    self.debugpy_socket = context.socket(zmq.STREAM)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/zmq/sugar/context.py", line 264, in socket
    import traceback; traceback.print_stack()
Created socket <zmq.Socket(zmq.STREAM) at 0x1090ed4e0>
Creating socket 5
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/__main__.py", line 18, in <module>
    main(module=None)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/main.py", line 101, in __init__
    self.runTests()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/main.py", line 271, in runTests
    self.result = testRunner.run(self.test)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/runner.py", line 184, in run
    test(result)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 84, in __call__
    return self.run(*args, **kwds)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 122, in run
    test(result)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 84, in __call__
    return self.run(*args, **kwds)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/suite.py", line 122, in run
    test(result)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/case.py", line 650, in __call__
    return self.run(*args, **kwds)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/case.py", line 591, in run
    self._callTestMethod(testMethod)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/unittest/case.py", line 549, in _callTestMethod
    method()
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 142, in test_shutdown_restores_sys_path
    self.create_and_destroy_kernel()
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/tests/test_internal_ipkernel.py", line 318, in create_and_destroy_kernel
    kernel.init_ipkernel(gui_backend=None)
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 104, in init_ipkernel
    self.ipkernel = _gui_kernel(gui_backend)
  File "/Users/mdickinson/Enthought/ETS/envisage/envisage/plugins/ipython_kernel/internal_ipkernel.py", line 43, in _gui_kernel
    kernel.initialize(argv)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/traitlets/config/application.py", line 88, in inner
    return method(app, *args, **kwargs)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/ipykernel/kernelapp.py", line 632, in initialize
    self.init_sockets()
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/ipykernel/kernelapp.py", line 297, in init_sockets
    self.init_control(context)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/ipykernel/kernelapp.py", line 309, in init_control
    self.debug_shell_socket = context.socket(zmq.DEALER)
  File "/Users/mdickinson/.venvs/envisage/lib/python3.10/site-packages/zmq/sugar/context.py", line 264, in socket
    import traceback; traceback.print_stack()
Created socket <zmq.Socket(zmq.XREQ) at 0x1090ed5a0>

Looks like this is the relevant source, in ipykernel/kernelapp.py

        self.debugpy_socket = context.socket(zmq.STREAM)
        self.debugpy_socket.linger = 1000

        self.debug_shell_socket = context.socket(zmq.DEALER)
        self.debug_shell_socket.linger = 1000
mdickinson commented 2 years ago

Here's the upstream PR that introduced the relevant new machinery: https://github.com/ipython/ipykernel/pull/597

mdickinson commented 1 year ago

Closing: IPython components have been removed from Envisage.