##// END OF EJS Templates
Backport PR #9955: Catch UnicodeDecodeError from file lying about its encoding...
Backport PR #9955: Catch UnicodeDecodeError from file lying about its encoding Closes gh-9954 I'd like to show a more useful error, but we're several layers away from the code that knows the filename, and I don't want to duplicate a load of code from the traceback module. This prevents it from crashing IPython, at least.

File last commit:

r21515:2c9013e4
r22896:c86e43f8
Show More
__init__.py
35 lines | 1.1 KiB | text/x-python | PythonLexer
"""
Shim to maintain backwards compatibility with old IPython.kernel imports.
"""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
import sys
from warnings import warn
from IPython.utils.shimmodule import ShimModule, ShimWarning
warn("The `IPython.kernel` package has been deprecated. "
"You should import from ipykernel or jupyter_client instead.", ShimWarning)
# zmq subdir is gone
sys.modules['IPython.kernel.zmq.session'] = ShimModule(
src='IPython.kernel.zmq.session', mirror='jupyter_client.session')
sys.modules['IPython.kernel.zmq'] = ShimModule(
src='IPython.kernel.zmq', mirror='ipykernel')
for pkg in ('comm', 'inprocess'):
src = 'IPython.kernel.%s' % pkg
sys.modules[src] = ShimModule(src=src, mirror='ipykernel.%s' % pkg)
for pkg in ('ioloop', 'blocking'):
src = 'IPython.kernel.%s' % pkg
sys.modules[src] = ShimModule(src=src, mirror='jupyter_client.%s' % pkg)
# required for `from IPython.kernel import PKG`
from ipykernel import comm, inprocess
from jupyter_client import ioloop, blocking
# public API
from ipykernel.connect import *
from jupyter_client import *