##// END OF EJS Templates
Backport PR #10589 on branch 5.x...
Thomas Kluyver -
Show More
@@ -1,302 +1,343 b''
1 ============
1 ============
2 5.x Series
2 5.x Series
3 ============
3 ============
4
4
5 IPython 5.4
5 IPython 5.4
6 ===========
6 ===========
7
7
8 IPython 5.4-LTS is the first release of IPython after the release of the 6.x
9 series which is Python 3 only. It backports most of the new exposed API
10 additions made in IPython 6.0 and 6.1 and avoid having to write conditional
11 logics depending of the version of IPython.
12
13 Please upgrade to pip 9 or greater before upgrading IPython.
14 Failing to do so on Python 2 may lead to a broken IPython install.
15
8 Configurable TerminalInteractiveShell
16 Configurable TerminalInteractiveShell
9 -------------------------------------
17 -------------------------------------
10
18
11 Backported from the 6.x branch as an exceptional new feature. See
19 Backported from the 6.x branch as an exceptional new feature. See
12 :ghpull:`10373` and :ghissue:`10364`
20 :ghpull:`10373` and :ghissue:`10364`
13
21
14 IPython gained a new ``c.TerminalIPythonApp.interactive_shell_class`` option
22 IPython gained a new ``c.TerminalIPythonApp.interactive_shell_class`` option
15 that allow to customize the class used to start the terminal frontend. This
23 that allow to customize the class used to start the terminal frontend. This
16 should allow user to use custom interfaces, like reviving the former readline
24 should allow user to use custom interfaces, like reviving the former readline
17 interface which is now a separate package not maintained by the core team.
25 interface which is now a separate package not maintained by the core team.
18
26
27 Define ``_repr_mimebundle_``
28 ----------------------------
29
30 Object can now define `_repr_mimebundle_` in place of multiple `_repr_*_`
31 methods and return a full mimebundle. This greatly simplify many implementation
32 and allow to publish custom mimetypes (like geojson, plotly, dataframes....).
33 See the ``Cutom Display Logic`` example notebook for more informations.
34
35 Execution Heuristics
36 --------------------
37
38 The heuristic for execution in the command line interface is now more biased
39 toward executing for single statement. While in IPython 4.x and before a single
40 line would be executed when enter is pressed, IPython 5.x would insert a new
41 line. For single line statement this is not true anymore and if a single line is
42 valid Python, IPython will execute it regardless of the cursor position. Use
43 :kbd:`Ctrl-O` to insert a new line. :ghpull:`10489`
44
45
46 Implement Display IDs
47 ---------------------
48
49 Implement display id and ability to update a given display. This should greatly
50 simplify a lot of code by removing the need for widgets and allow other frontend
51 to implement things like progress-bars. See :ghpull:`10048`
52
53 Miscs
54 -----
19
55
56 * ``_mp_main_`` is not reloaded which fixes issues with multiprocessing.
57 :ghpull:`10523`
58 * Use user colorscheme in Pdb as well :ghpull:`10479`
59 * Faster shutdown. :ghpull:`10408`
60 * Fix a crash in reverse search. :ghpull:`10371`
20 * added ``Completer.backslash_combining_completions`` boolean option to
61 * added ``Completer.backslash_combining_completions`` boolean option to
21 deactivate backslash-tab completion that may conflict with windows path.
62 deactivate backslash-tab completion that may conflict with windows path.
22
63
23 IPython 5.3
64 IPython 5.3
24 ===========
65 ===========
25
66
26 Released on February 24th, 2017. Remarkable changes and fixes:
67 Released on February 24th, 2017. Remarkable changes and fixes:
27
68
28 * Fix a bug in ``set_next_input`` leading to a crash of terminal IPython.
69 * Fix a bug in ``set_next_input`` leading to a crash of terminal IPython.
29 :ghpull:`10231`, :ghissue:`10296`, :ghissue:`10229`
70 :ghpull:`10231`, :ghissue:`10296`, :ghissue:`10229`
30 * Always wait for editor inputhook for terminal IPython :ghpull:`10239`,
71 * Always wait for editor inputhook for terminal IPython :ghpull:`10239`,
31 :ghpull:`10240`
72 :ghpull:`10240`
32 * Disable ``_ipython_display_`` in terminal :ghpull:`10249`, :ghpull:`10274`
73 * Disable ``_ipython_display_`` in terminal :ghpull:`10249`, :ghpull:`10274`
33 * Update terminal colors to be more visible by default on windows
74 * Update terminal colors to be more visible by default on windows
34 :ghpull:`10260`, :ghpull:`10238`, :ghissue:`10281`
75 :ghpull:`10260`, :ghpull:`10238`, :ghissue:`10281`
35 * Add Ctrl-Z shortcut (suspend) in terminal debugger :ghpull:`10254`,
76 * Add Ctrl-Z shortcut (suspend) in terminal debugger :ghpull:`10254`,
36 :ghissue:`10273`
77 :ghissue:`10273`
37 * Indent on new line by looking at the text before the cursor :ghpull:`10264`,
78 * Indent on new line by looking at the text before the cursor :ghpull:`10264`,
38 :ghpull:`10275`, :ghissue:`9283`
79 :ghpull:`10275`, :ghissue:`9283`
39 * Update QtEventloop integration to fix some matplotlib integration issues
80 * Update QtEventloop integration to fix some matplotlib integration issues
40 :ghpull:`10201`, :ghpull:`10311`, :ghissue:`10201`
81 :ghpull:`10201`, :ghpull:`10311`, :ghissue:`10201`
41 * Respect completions display style in terminal debugger :ghpull:`10305`,
82 * Respect completions display style in terminal debugger :ghpull:`10305`,
42 :ghpull:`10313`
83 :ghpull:`10313`
43 * Add a config option ``TerminalInteractiveShell.extra_open_editor_shortcuts``
84 * Add a config option ``TerminalInteractiveShell.extra_open_editor_shortcuts``
44 to enable extra shortcuts to open the input in an editor. These are :kbd:`v`
85 to enable extra shortcuts to open the input in an editor. These are :kbd:`v`
45 in vi mode, and :kbd:`C-X C-E` in emacs mode (:ghpull:`10330`).
86 in vi mode, and :kbd:`C-X C-E` in emacs mode (:ghpull:`10330`).
46 The :kbd:`F2` shortcut is always enabled.
87 The :kbd:`F2` shortcut is always enabled.
47
88
48 IPython 5.2.2
89 IPython 5.2.2
49 =============
90 =============
50
91
51 * Fix error when starting with ``IPCompleter.limit_to__all__`` configured.
92 * Fix error when starting with ``IPCompleter.limit_to__all__`` configured.
52
93
53 IPython 5.2.1
94 IPython 5.2.1
54 =============
95 =============
55
96
56 * Fix tab completion in the debugger. :ghpull:`10223`
97 * Fix tab completion in the debugger. :ghpull:`10223`
57
98
58 IPython 5.2
99 IPython 5.2
59 ===========
100 ===========
60
101
61 Released on January 29th, 2017. Remarkable changes and fixes:
102 Released on January 29th, 2017. Remarkable changes and fixes:
62
103
63 * restore IPython's debugger to raise on quit. :ghpull:`10009`
104 * restore IPython's debugger to raise on quit. :ghpull:`10009`
64 * The configuration value ``c.TerminalInteractiveShell.highlighting_style`` can
105 * The configuration value ``c.TerminalInteractiveShell.highlighting_style`` can
65 now directly take a class argument for custom color style. :ghpull:`9848`
106 now directly take a class argument for custom color style. :ghpull:`9848`
66 * Correctly handle matplotlib figures dpi :ghpull:`9868`
107 * Correctly handle matplotlib figures dpi :ghpull:`9868`
67 * Deprecate ``-e`` flag for the ``%notebook`` magic that had no effects.
108 * Deprecate ``-e`` flag for the ``%notebook`` magic that had no effects.
68 :ghpull:`9872`
109 :ghpull:`9872`
69 * You can now press F2 while typing at a terminal prompt to edit the contents
110 * You can now press F2 while typing at a terminal prompt to edit the contents
70 in your favourite terminal editor. Set the :envvar:`EDITOR` environment
111 in your favourite terminal editor. Set the :envvar:`EDITOR` environment
71 variable to pick which editor is used. :ghpull:`9929`
112 variable to pick which editor is used. :ghpull:`9929`
72 * sdists will now only be ``.tar.gz`` as per upstream PyPI requirements.
113 * sdists will now only be ``.tar.gz`` as per upstream PyPI requirements.
73 :ghpull:`9925`
114 :ghpull:`9925`
74 * :any:`IPython.core.debugger` have gained a ``set_trace()`` method for
115 * :any:`IPython.core.debugger` have gained a ``set_trace()`` method for
75 convenience. :ghpull:`9947`
116 convenience. :ghpull:`9947`
76 * The 'smart command mode' added to the debugger in 5.0 was removed, as more
117 * The 'smart command mode' added to the debugger in 5.0 was removed, as more
77 people preferred the previous behaviour. Therefore, debugger commands such as
118 people preferred the previous behaviour. Therefore, debugger commands such as
78 ``c`` will act as debugger commands even when ``c`` is defined as a variable.
119 ``c`` will act as debugger commands even when ``c`` is defined as a variable.
79 :ghpull:`10050`
120 :ghpull:`10050`
80 * Fixes OS X event loop issues at startup, :ghpull:`10150`
121 * Fixes OS X event loop issues at startup, :ghpull:`10150`
81 * Deprecate the ``%autoindent`` magic. :ghpull:`10176`
122 * Deprecate the ``%autoindent`` magic. :ghpull:`10176`
82 * Emit a :any:`DeprecationWarning` when setting the deprecated
123 * Emit a :any:`DeprecationWarning` when setting the deprecated
83 ``limit_to_all`` option of the completer. :ghpull:`10198`
124 ``limit_to_all`` option of the completer. :ghpull:`10198`
84 * The :cellmagic:`capture` magic can now capture the result of a cell (from an
125 * The :cellmagic:`capture` magic can now capture the result of a cell (from an
85 expression on the last line), as well as printed and displayed output.
126 expression on the last line), as well as printed and displayed output.
86 :ghpull:`9851`.
127 :ghpull:`9851`.
87
128
88
129
89 Changes of behavior to :any:`InteractiveShellEmbed`.
130 Changes of behavior to :any:`InteractiveShellEmbed`.
90
131
91 :any:`InteractiveShellEmbed` interactive behavior have changed a bit in between
132 :any:`InteractiveShellEmbed` interactive behavior have changed a bit in between
92 5.1 and 5.2. By default ``%kill_embedded`` magic will prevent further invocation
133 5.1 and 5.2. By default ``%kill_embedded`` magic will prevent further invocation
93 of the current ``call location`` instead of preventing further invocation of
134 of the current ``call location`` instead of preventing further invocation of
94 the current instance creation location. For most use case this will not change
135 the current instance creation location. For most use case this will not change
95 much for you, though previous behavior was confusing and less consistent with
136 much for you, though previous behavior was confusing and less consistent with
96 previous IPython versions.
137 previous IPython versions.
97
138
98 You can now deactivate instances by using ``%kill_embedded --instance`` flag,
139 You can now deactivate instances by using ``%kill_embedded --instance`` flag,
99 (or ``-i`` in short). The ``%kill_embedded`` magic also gained a
140 (or ``-i`` in short). The ``%kill_embedded`` magic also gained a
100 ``--yes``/``-y`` option which skip confirmation step, and ``-x``/``--exit``
141 ``--yes``/``-y`` option which skip confirmation step, and ``-x``/``--exit``
101 which also exit the current embedded call without asking for confirmation.
142 which also exit the current embedded call without asking for confirmation.
102
143
103 See :ghpull:`10207`.
144 See :ghpull:`10207`.
104
145
105
146
106
147
107 IPython 5.1
148 IPython 5.1
108 ===========
149 ===========
109
150
110 * Broken ``%timeit`` on Python2 due to the use of ``__qualname__``. :ghpull:`9804`
151 * Broken ``%timeit`` on Python2 due to the use of ``__qualname__``. :ghpull:`9804`
111 * Restore ``%gui qt`` to create and return a ``QApplication`` if necessary. :ghpull:`9789`
152 * Restore ``%gui qt`` to create and return a ``QApplication`` if necessary. :ghpull:`9789`
112 * Don't set terminal title by default. :ghpull:`9801`
153 * Don't set terminal title by default. :ghpull:`9801`
113 * Preserve indentation when inserting newlines with ``Ctrl-O``. :ghpull:`9770`
154 * Preserve indentation when inserting newlines with ``Ctrl-O``. :ghpull:`9770`
114 * Restore completion in debugger. :ghpull:`9785`
155 * Restore completion in debugger. :ghpull:`9785`
115 * Deprecate ``IPython.core.debugger.Tracer()`` in favor of simpler, newer, APIs. :ghpull:`9731`
156 * Deprecate ``IPython.core.debugger.Tracer()`` in favor of simpler, newer, APIs. :ghpull:`9731`
116 * Restore ``NoOpContext`` context manager removed by mistake, and add `DeprecationWarning`. :ghpull:`9765`
157 * Restore ``NoOpContext`` context manager removed by mistake, and add `DeprecationWarning`. :ghpull:`9765`
117 * Add option allowing ``Prompt_toolkit`` to use 24bits colors. :ghpull:`9736`
158 * Add option allowing ``Prompt_toolkit`` to use 24bits colors. :ghpull:`9736`
118 * Fix for closing interactive matplotlib windows on OS X. :ghpull:`9854`
159 * Fix for closing interactive matplotlib windows on OS X. :ghpull:`9854`
119 * An embedded interactive shell instance can be used more than once. :ghpull:`9843`
160 * An embedded interactive shell instance can be used more than once. :ghpull:`9843`
120 * More robust check for whether IPython is in a terminal. :ghpull:`9833`
161 * More robust check for whether IPython is in a terminal. :ghpull:`9833`
121 * Better pretty-printing of dicts on PyPy. :ghpull:`9827`
162 * Better pretty-printing of dicts on PyPy. :ghpull:`9827`
122 * Some coloured output now looks better on dark background command prompts in Windows.
163 * Some coloured output now looks better on dark background command prompts in Windows.
123 :ghpull:`9838`
164 :ghpull:`9838`
124 * Improved tab completion of paths on Windows . :ghpull:`9826`
165 * Improved tab completion of paths on Windows . :ghpull:`9826`
125 * Fix tkinter event loop integration on Python 2 with ``future`` installed. :ghpull:`9824`
166 * Fix tkinter event loop integration on Python 2 with ``future`` installed. :ghpull:`9824`
126 * Restore ``Ctrl-\`` as a shortcut to quit IPython.
167 * Restore ``Ctrl-\`` as a shortcut to quit IPython.
127 * Make ``get_ipython()`` accessible when modules are imported by startup files. :ghpull:`9818`
168 * Make ``get_ipython()`` accessible when modules are imported by startup files. :ghpull:`9818`
128 * Add support for running directories containing a ``__main__.py`` file with the
169 * Add support for running directories containing a ``__main__.py`` file with the
129 ``ipython`` command. :ghpull:`9813`
170 ``ipython`` command. :ghpull:`9813`
130
171
131
172
132 True Color feature
173 True Color feature
133 ------------------
174 ------------------
134
175
135 ``prompt_toolkit`` uses pygments styles for syntax highlighting. By default, the
176 ``prompt_toolkit`` uses pygments styles for syntax highlighting. By default, the
136 colors specified in the style are approximated using a standard 256-color
177 colors specified in the style are approximated using a standard 256-color
137 palette. ``prompt_toolkit`` also supports 24bit, a.k.a. "true", a.k.a. 16-million
178 palette. ``prompt_toolkit`` also supports 24bit, a.k.a. "true", a.k.a. 16-million
138 color escape sequences which enable compatible terminals to display the exact
179 color escape sequences which enable compatible terminals to display the exact
139 colors specified instead of an approximation. This true_color option exposes
180 colors specified instead of an approximation. This true_color option exposes
140 that capability in prompt_toolkit to the IPython shell.
181 that capability in prompt_toolkit to the IPython shell.
141
182
142 Here is a good source for the current state of true color support in various
183 Here is a good source for the current state of true color support in various
143 terminal emulators and software projects: https://gist.github.com/XVilka/8346728
184 terminal emulators and software projects: https://gist.github.com/XVilka/8346728
144
185
145
186
146
187
147 IPython 5.0
188 IPython 5.0
148 ===========
189 ===========
149
190
150 Released July 7, 2016
191 Released July 7, 2016
151
192
152 New terminal interface
193 New terminal interface
153 ----------------------
194 ----------------------
154
195
155 IPython 5 features a major upgrade to the terminal interface, bringing live
196 IPython 5 features a major upgrade to the terminal interface, bringing live
156 syntax highlighting as you type, proper multiline editing and multiline paste,
197 syntax highlighting as you type, proper multiline editing and multiline paste,
157 and tab completions that don't clutter up your history.
198 and tab completions that don't clutter up your history.
158
199
159 .. image:: ../_images/ptshell_features.png
200 .. image:: ../_images/ptshell_features.png
160 :alt: New terminal interface features
201 :alt: New terminal interface features
161 :align: center
202 :align: center
162 :target: ../_images/ptshell_features.png
203 :target: ../_images/ptshell_features.png
163
204
164 These features are provided by the Python library `prompt_toolkit
205 These features are provided by the Python library `prompt_toolkit
165 <http://python-prompt-toolkit.readthedocs.io/en/stable/>`__, which replaces
206 <http://python-prompt-toolkit.readthedocs.io/en/stable/>`__, which replaces
166 ``readline`` throughout our terminal interface.
207 ``readline`` throughout our terminal interface.
167
208
168 Relying on this pure-Python, cross platform module also makes it simpler to
209 Relying on this pure-Python, cross platform module also makes it simpler to
169 install IPython. We have removed dependencies on ``pyreadline`` for Windows and
210 install IPython. We have removed dependencies on ``pyreadline`` for Windows and
170 ``gnureadline`` for Mac.
211 ``gnureadline`` for Mac.
171
212
172 Backwards incompatible changes
213 Backwards incompatible changes
173 ------------------------------
214 ------------------------------
174
215
175 - The ``%install_ext`` magic function, deprecated since 4.0, has now been deleted.
216 - The ``%install_ext`` magic function, deprecated since 4.0, has now been deleted.
176 You can distribute and install extensions as packages on PyPI.
217 You can distribute and install extensions as packages on PyPI.
177 - Callbacks registered while an event is being handled will now only be called
218 - Callbacks registered while an event is being handled will now only be called
178 for subsequent events; previously they could be called for the current event.
219 for subsequent events; previously they could be called for the current event.
179 Similarly, callbacks removed while handling an event *will* always get that
220 Similarly, callbacks removed while handling an event *will* always get that
180 event. See :ghissue:`9447` and :ghpull:`9453`.
221 event. See :ghissue:`9447` and :ghpull:`9453`.
181 - Integration with pydb has been removed since pydb development has been stopped
222 - Integration with pydb has been removed since pydb development has been stopped
182 since 2012, and pydb is not installable from PyPI.
223 since 2012, and pydb is not installable from PyPI.
183 - The ``autoedit_syntax`` option has apparently been broken for many years.
224 - The ``autoedit_syntax`` option has apparently been broken for many years.
184 It has been removed.
225 It has been removed.
185
226
186 New terminal interface
227 New terminal interface
187 ~~~~~~~~~~~~~~~~~~~~~~
228 ~~~~~~~~~~~~~~~~~~~~~~
188
229
189 The overhaul of the terminal interface will probably cause a range of minor
230 The overhaul of the terminal interface will probably cause a range of minor
190 issues for existing users.
231 issues for existing users.
191 This is inevitable for such a significant change, and we've done our best to
232 This is inevitable for such a significant change, and we've done our best to
192 minimise these issues.
233 minimise these issues.
193 Some changes that we're aware of, with suggestions on how to handle them:
234 Some changes that we're aware of, with suggestions on how to handle them:
194
235
195 IPython no longer uses readline configuration (``~/.inputrc``). We hope that
236 IPython no longer uses readline configuration (``~/.inputrc``). We hope that
196 the functionality you want (e.g. vi input mode) will be available by configuring
237 the functionality you want (e.g. vi input mode) will be available by configuring
197 IPython directly (see :doc:`/config/options/terminal`).
238 IPython directly (see :doc:`/config/options/terminal`).
198 If something's missing, please file an issue.
239 If something's missing, please file an issue.
199
240
200 The ``PromptManager`` class has been removed, and the prompt machinery simplified.
241 The ``PromptManager`` class has been removed, and the prompt machinery simplified.
201 See :ref:`custom_prompts` to customise prompts with the new machinery.
242 See :ref:`custom_prompts` to customise prompts with the new machinery.
202
243
203 :mod:`IPython.core.debugger` now provides a plainer interface.
244 :mod:`IPython.core.debugger` now provides a plainer interface.
204 :mod:`IPython.terminal.debugger` contains the terminal debugger using
245 :mod:`IPython.terminal.debugger` contains the terminal debugger using
205 prompt_toolkit.
246 prompt_toolkit.
206
247
207 There are new options to configure the colours used in syntax highlighting.
248 There are new options to configure the colours used in syntax highlighting.
208 We have tried to integrate them with our classic ``--colors`` option and
249 We have tried to integrate them with our classic ``--colors`` option and
209 ``%colors`` magic, but there's a mismatch in possibilities, so some configurations
250 ``%colors`` magic, but there's a mismatch in possibilities, so some configurations
210 may produce unexpected results. See :ref:`termcolour` for more information.
251 may produce unexpected results. See :ref:`termcolour` for more information.
211
252
212 The new interface is not compatible with Emacs 'inferior-shell' feature. To
253 The new interface is not compatible with Emacs 'inferior-shell' feature. To
213 continue using this, add the ``--simple-prompt`` flag to the command Emacs
254 continue using this, add the ``--simple-prompt`` flag to the command Emacs
214 runs. This flag disables most IPython features, relying on Emacs to provide
255 runs. This flag disables most IPython features, relying on Emacs to provide
215 things like tab completion.
256 things like tab completion.
216
257
217 Provisional Changes
258 Provisional Changes
218 -------------------
259 -------------------
219
260
220 Provisional changes are experimental functionality that may, or may not, make
261 Provisional changes are experimental functionality that may, or may not, make
221 it into a future version of IPython, and which API may change without warnings.
262 it into a future version of IPython, and which API may change without warnings.
222 Activating these features and using these API are at your own risk, and may have
263 Activating these features and using these API are at your own risk, and may have
223 security implication for your system, especially if used with the Jupyter notebook,
264 security implication for your system, especially if used with the Jupyter notebook,
224
265
225 When running via the Jupyter notebook interfaces, or other compatible client,
266 When running via the Jupyter notebook interfaces, or other compatible client,
226 you can enable rich documentation experimental functionality:
267 you can enable rich documentation experimental functionality:
227
268
228 When the ``docrepr`` package is installed setting the boolean flag
269 When the ``docrepr`` package is installed setting the boolean flag
229 ``InteractiveShell.sphinxify_docstring`` to ``True``, will process the various
270 ``InteractiveShell.sphinxify_docstring`` to ``True``, will process the various
230 object through sphinx before displaying them (see the ``docrepr`` package
271 object through sphinx before displaying them (see the ``docrepr`` package
231 documentation for more information.
272 documentation for more information.
232
273
233 You need to also enable the IPython pager display rich HTML representation
274 You need to also enable the IPython pager display rich HTML representation
234 using the ``InteractiveShell.enable_html_pager`` boolean configuration option.
275 using the ``InteractiveShell.enable_html_pager`` boolean configuration option.
235 As usual you can set these configuration options globally in your configuration
276 As usual you can set these configuration options globally in your configuration
236 files, alternatively you can turn them on dynamically using the following
277 files, alternatively you can turn them on dynamically using the following
237 snippet:
278 snippet:
238
279
239 .. code-block:: python
280 .. code-block:: python
240
281
241 ip = get_ipython()
282 ip = get_ipython()
242 ip.sphinxify_docstring = True
283 ip.sphinxify_docstring = True
243 ip.enable_html_pager = True
284 ip.enable_html_pager = True
244
285
245
286
246 You can test the effect of various combinations of the above configuration in
287 You can test the effect of various combinations of the above configuration in
247 the Jupyter notebook, with things example like :
288 the Jupyter notebook, with things example like :
248
289
249 .. code-block:: ipython
290 .. code-block:: ipython
250
291
251 import numpy as np
292 import numpy as np
252 np.histogram?
293 np.histogram?
253
294
254
295
255 This is part of an effort to make Documentation in Python richer and provide in
296 This is part of an effort to make Documentation in Python richer and provide in
256 the long term if possible dynamic examples that can contain math, images,
297 the long term if possible dynamic examples that can contain math, images,
257 widgets... As stated above this is nightly experimental feature with a lot of
298 widgets... As stated above this is nightly experimental feature with a lot of
258 (fun) problem to solve. We would be happy to get your feedback and expertise on
299 (fun) problem to solve. We would be happy to get your feedback and expertise on
259 it.
300 it.
260
301
261
302
262
303
263 Deprecated Features
304 Deprecated Features
264 -------------------
305 -------------------
265
306
266 Some deprecated features are listed in this section. Don't forget to enable
307 Some deprecated features are listed in this section. Don't forget to enable
267 ``DeprecationWarning`` as an error if you are using IPython in a Continuous
308 ``DeprecationWarning`` as an error if you are using IPython in a Continuous
268 Integration setup or in your testing in general:
309 Integration setup or in your testing in general:
269
310
270 .. code-block:: python
311 .. code-block:: python
271
312
272 import warnings
313 import warnings
273 warnings.filterwarnings('error', '.*', DeprecationWarning, module='yourmodule.*')
314 warnings.filterwarnings('error', '.*', DeprecationWarning, module='yourmodule.*')
274
315
275
316
276 - ``hooks.fix_error_editor`` seems unused and is pending deprecation.
317 - ``hooks.fix_error_editor`` seems unused and is pending deprecation.
277 - `IPython/core/excolors.py:ExceptionColors` is deprecated.
318 - `IPython/core/excolors.py:ExceptionColors` is deprecated.
278 - `IPython.core.InteractiveShell:write()` is deprecated; use `sys.stdout` instead.
319 - `IPython.core.InteractiveShell:write()` is deprecated; use `sys.stdout` instead.
279 - `IPython.core.InteractiveShell:write_err()` is deprecated; use `sys.stderr` instead.
320 - `IPython.core.InteractiveShell:write_err()` is deprecated; use `sys.stderr` instead.
280 - The `formatter` keyword argument to `Inspector.info` in `IPython.core.oinspec` has no effect.
321 - The `formatter` keyword argument to `Inspector.info` in `IPython.core.oinspec` has no effect.
281 - The `global_ns` keyword argument of IPython Embed was deprecated, and has no effect. Use `module` keyword argument instead.
322 - The `global_ns` keyword argument of IPython Embed was deprecated, and has no effect. Use `module` keyword argument instead.
282
323
283
324
284 Known Issues:
325 Known Issues:
285 -------------
326 -------------
286
327
287 - ``<Esc>`` Key does not dismiss the completer and does not clear the current
328 - ``<Esc>`` Key does not dismiss the completer and does not clear the current
288 buffer. This is an on purpose modification due to current technical
329 buffer. This is an on purpose modification due to current technical
289 limitation. Cf :ghpull:`9572`. Escape the control character which is used
330 limitation. Cf :ghpull:`9572`. Escape the control character which is used
290 for other shortcut, and there is no practical way to distinguish. Use Ctr-G
331 for other shortcut, and there is no practical way to distinguish. Use Ctr-G
291 or Ctrl-C as an alternative.
332 or Ctrl-C as an alternative.
292
333
293 - Cannot use ``Shift-Enter`` and ``Ctrl-Enter`` to submit code in terminal. cf
334 - Cannot use ``Shift-Enter`` and ``Ctrl-Enter`` to submit code in terminal. cf
294 :ghissue:`9587` and :ghissue:`9401`. In terminal there is no practical way to
335 :ghissue:`9587` and :ghissue:`9401`. In terminal there is no practical way to
295 distinguish these key sequences from a normal new line return.
336 distinguish these key sequences from a normal new line return.
296
337
297 - ``PageUp`` and ``pageDown`` do not move through completion menu.
338 - ``PageUp`` and ``pageDown`` do not move through completion menu.
298
339
299 - Color styles might not adapt to terminal emulator themes. This will need new
340 - Color styles might not adapt to terminal emulator themes. This will need new
300 version of Pygments to be released, and can be mitigated with custom themes.
341 version of Pygments to be released, and can be mitigated with custom themes.
301
342
302
343
General Comments 0
You need to be logged in to leave comments. Login now