##// END OF EJS Templates
Merge pull request #2959 from takluyver/history-trim...
Merge pull request #2959 from takluyver/history-trim Add command to trim the history database.

File last commit:

r9782:377bb314
r9783:6b0455a6 merge
Show More
development.txt
40 lines | 1.9 KiB | text/plain | TextLexer
=====================
Development version
=====================
This document describes in-flight development work.
The CodeMirror js library has been updated fron 2.23 to 2.32
this might induce a few changes in behavior of keymaps in the notebook,
especially intenting/deindenting blocks that is now bound to Ctrl+] and ctr+[
* Exception types can now be displayed with a custom traceback, by defining a
``_render_traceback_()`` method which returns a list of strings, each
containing one line of the traceback.
* A new command, ``ipython history trim`` can be used to delete everything but
the last 1000 entries in the history database.
In-process kernels
------------------
The Python-language frontends, particularly the Qt console, may now communicate
with in-process kernels, in addition to the traditional out-of-process
kernels. An in-process kernel permits direct access to the kernel namespace,
which is necessary in some applications. It should be understood, however, that
the in-process kernel is not robust to bad user input and will block the main
(GUI) thread while executing. Developers must decide on a case-by-case basis
whether this tradeoff is appropriate for their application.
Backwards incompatible changes
------------------------------
* Calling :meth:`InteractiveShell.prefilter` will no longer perform static
transformations - the processing of escaped commands such as ``%magic`` and
``!system``, and stripping input prompts from code blocks. This functionality
was duplicated in :mod:`IPython.core.inputsplitter`, and the latter version
was already what IPython relied on. A new API to transform input will be ready
before release.
* Functions from :mod:`IPython.lib.inputhook` to control integration with GUI
event loops are no longer exposed in the top level of :mod:`IPython.lib`.
Code calling these should make sure to import them from
:mod:`IPython.lib.inputhook`.