##// END OF EJS Templates
Backport PR #11054: MAINT: Update locate_profile import to avoid warning...
Backport PR #11054: MAINT: Update locate_profile import to avoid warning Description Currently `IPython.core.history.HistoryAccessor` throws a `UserWarning` upon creation due to an import of `locate_profile`. I realize I can silence the warning in my application but figured this deserved a quick fix. ``` UserWarning: locate_profile has moved to the IPython.paths module since IPython 4.0. return os.path.join(locate_profile(profile), 'history.sqlite') ``` Signed-off-by: Thomas Kluyver <thomas@kluyver.me.uk>

File last commit:

r23401:a2a4465d
r24226:d77d07c9
Show More
frontend.py
29 lines | 1.1 KiB | text/x-python | PythonLexer
"""
Shim to maintain backwards compatibility with old frontend imports.
We have moved all contents of the old `frontend` subpackage into top-level
subpackages (`html`, `qt` and `terminal`), and flattened the notebook into
just `IPython.html`, formerly `IPython.frontend.html.notebook`.
This will let code that was making `from IPython.frontend...` calls continue
working, though a warning will be printed.
"""
# 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 top-level `frontend` package has been deprecated since IPython 1.0. "
"All its subpackages have been moved to the top `IPython` level.", ShimWarning)
# Unconditionally insert the shim into sys.modules so that further import calls
# trigger the custom attribute access above
sys.modules['IPython.frontend.html.notebook'] = ShimModule(
src='IPython.frontend.html.notebook', mirror='IPython.html')
sys.modules['IPython.frontend'] = ShimModule(
src='IPython.frontend', mirror='IPython')