This allowed the Kernel to load config from ipython_qtconsole_config.py or ipython_notebook_config.py, depending on the parent that started the kernel. This is of limited usefulness, and can add weird, unexpected side effects.
We may not actually want to remove this feature, but it's just another bit of config complexity that I think we don't need, so I thought it was worth proposing.
Although it doesn't work entirely reliably, and we've always said kernel code shouldn't know about frontends, I know that pandas does use this to display different reprs to the notebook and the Qt console (specifically, it doesn't display the HTML reprs if parent_appname indicates that the kernel was started by the Qt console). So I think we'd need to give it a deprecation cycle if we do want to remove it.
Makes sense. Marking as 3.0 at the earliest.
Need a rebase.
Maybe this could be done at the same time than multi kernels.
I am +1 for this change. We need to discuss how to handle it with pandas though. Adding to dev meeting topics.
I've looked at the pandas code, and while they do check for notebook, they never actually use the answer. They do rely on the answer for the qtconsole, but only to workaround a bug that doesn't affect IPython 3.
My PR to deprecate the use of this in pandas (pandas-dev/pandas#7499) was accepted, and the existing pandas code won't break with the removal of this (though in_qtconsole and in_ipnb will always return False). So I think we're ready to merge this. It does need a rebase, though, @minrk
This allowed the Kernel to load config from ipython_qtconsole_config.py
or ipython_notebook_config.py, depending on the parent that started the kernel.
This is of limited usefulness, and can add weird, unexpected side effects.