##// END OF EJS Templates
misc doc fixes
Matthias Bussonnier -
Show More
@@ -1,173 +1,173 b''
1 1 .. _integrating:
2 2
3 3 =====================================
4 4 Integrating your objects with IPython
5 5 =====================================
6 6
7 7 Tab completion
8 8 ==============
9 9
10 10 To change the attributes displayed by tab-completing your object, define a
11 11 ``__dir__(self)`` method for it. For more details, see the documentation of the
12 12 built-in `dir() function <http://docs.python.org/library/functions.html#dir>`_.
13 13
14 14 You can also customise key completions for your objects, e.g. pressing tab after
15 15 ``obj["a``. To do so, define a method ``_ipython_key_completions_()``, which
16 16 returns a list of objects which are possible keys in a subscript expression
17 17 ``obj[key]``.
18 18
19 19 .. versionadded:: 5.0
20 20 Custom key completions
21 21
22 22 .. _integrating_rich_display:
23 23
24 24 Rich display
25 25 ============
26 26
27 27 Custom methods
28 28 ----------------------
29 29 IPython can display richer representations of objects.
30 30 To do this, you can define ``_ipython_display_()``, or any of a number of
31 31 ``_repr_*_()`` methods.
32 32 Note that these are surrounded by single, not double underscores.
33 33
34 34 .. list-table:: Supported ``_repr_*_`` methods
35 35 :widths: 20 15 15 15
36 36 :header-rows: 1
37 37
38 38 * - Format
39 39 - REPL
40 40 - Notebook
41 41 - Qt Console
42 42 * - ``_repr_pretty_``
43 43 - yes
44 44 - yes
45 45 - yes
46 46 * - ``_repr_svg_``
47 47 - no
48 48 - yes
49 49 - yes
50 50 * - ``_repr_png_``
51 51 - no
52 52 - yes
53 53 - yes
54 54 * - ``_repr_jpeg_``
55 55 - no
56 56 - yes
57 57 - yes
58 58 * - ``_repr_html_``
59 59 - no
60 60 - yes
61 61 - no
62 62 * - ``_repr_javascript_``
63 63 - no
64 64 - yes
65 65 - no
66 66 * - ``_repr_markdown_``
67 67 - no
68 68 - yes
69 69 - no
70 70 * - ``_repr_latex_``
71 71 - no
72 72 - yes
73 73 - no
74 74 * - ``_repr_mimebundle_``
75 75 - no
76 76 - ?
77 77 - ?
78 78
79 79 If the methods don't exist, or return ``None``, the standard ``repr()`` is used.
80 80
81 81 For example::
82 82
83 83 class Shout(object):
84 84 def __init__(self, text):
85 85 self.text = text
86 86
87 87 def _repr_html_(self):
88 88 return "<h1>" + self.text + "</h1>"
89 89
90 90
91 91 Special methods
92 92 ^^^^^^^^^^^^^^^
93 93
94 94 Pretty printing
95 95 """""""""""""""
96 96
97 97 To customize how your object is pretty-printed, add a ``_repr_pretty_`` method
98 98 to the class.
99 99 The method should accept a pretty printer, and a boolean that indicates whether
100 100 the printer detected a cycle.
101 101 The method should act on the printer to produce your customized pretty output.
102 102 Here is an example::
103 103
104 104 class MyObject(object):
105 105
106 106 def _repr_pretty_(self, p, cycle):
107 107 if cycle:
108 108 p.text('MyObject(...)')
109 109 else:
110 110 p.text('MyObject[...]')
111 111
112 112 For details on how to use the pretty printer, see :py:mod:`IPython.lib.pretty`.
113 113
114 114 More powerful methods
115 115 """""""""""""""""""""
116 116
117 117 .. class:: MyObject
118 118
119 119 .. method:: _repr_mimebundle_(include=None, exclude=None)
120 120
121 121 Should return a dictionary of multiple formats, keyed by mimetype, or a tuple
122 122 of two dictionaries: *data, metadata* (see :ref:`Metadata`).
123 123 If this returns something, other ``_repr_*_`` methods are ignored.
124 124 The method should take keyword arguments ``include`` and ``exclude``, though
125 125 it is not required to respect them.
126 126
127 127 .. method:: _ipython_display_()
128 128
129 129 Displays the object as a side effect; the return value is ignored. If this
130 130 is defined, all other display methods are ignored.
131 131 This method is ignored in the REPL.
132 132
133 133
134 134 Metadata
135 135 ^^^^^^^^
136 136
137 137 We often want to provide frontends with guidance on how to display the data. To
138 support this, ``_repr_*_()`` methods (except `_repr_pretty_``?) can also return a ``(data, metadata)``
138 support this, ``_repr_*_()`` methods (except ``_repr_pretty_``?) can also return a ``(data, metadata)``
139 139 tuple where ``metadata`` is a dictionary containing arbitrary key-value pairs for
140 140 the frontend to interpret. An example use case is ``_repr_jpeg_()``, which can
141 141 be set to return a jpeg image and a ``{'height': 400, 'width': 600}`` dictionary
142 142 to inform the frontend how to size the image.
143 143
144 144
145 145
146 146 Formatters for third-party types
147 147 --------------------------------
148 148
149 149 The user can also register formatters for types without modifying the class::
150 150
151 151 from bar.baz import Foo
152 152
153 153 def foo_html(obj):
154 154 return '<marquee>Foo object %s</marquee>' % obj.name
155 155
156 156 html_formatter = get_ipython().display_formatter.formatters['text/html']
157 157 html_formatter.for_type(Foo, foo_html)
158 158
159 159 # Or register a type without importing it - this does the same as above:
160 160 html_formatter.for_type_by_name('bar.baz', 'Foo', foo_html)
161 161
162 162 Custom exception tracebacks
163 163 ===========================
164 164
165 165 Rarely, you might want to display a custom traceback when reporting an
166 166 exception. To do this, define the custom traceback using
167 167 `_render_traceback_(self)` method which returns a list of strings, one string
168 168 for each line of the traceback. For example, the `ipyparallel
169 169 <https://ipyparallel.readthedocs.io/>`__ a parallel computing framework for
170 170 IPython, does this to display errors from multiple engines.
171 171
172 172 Please be conservative in using this feature; by replacing the default traceback
173 173 you may hide important information from the user.
@@ -1,116 +1,116 b''
1 1 .. _introduction:
2 2
3 3 =====================
4 4 IPython Documentation
5 5 =====================
6 6
7 7 .. only:: html
8 8
9 9 :Release: |release|
10 10 :Date: |today|
11 11
12 12 Welcome to the official IPython documentation.
13 13
14 14 IPython provides a rich toolkit to help you make the most of using Python
15 15 interactively. Its main components are:
16 16
17 17 * A powerful interactive Python shell.
18 18
19 19
20 .. image:: ./_images/ipython-6-screenshot.png
21 :alt: Screenshot of IPython 6.0
22 :align: center
20 .. image:: ./_images/ipython-6-screenshot.png
21 :alt: Screenshot of IPython 6.0
22 :align: center
23 23
24 24
25 25 * A `Jupyter <https://jupyter.org/>`_ kernel to work with Python code in Jupyter
26 26 notebooks and other interactive frontends.
27 27
28 28 The enhanced interactive Python shells and kernel have the following main
29 29 features:
30 30
31 31 * Comprehensive object introspection.
32 32
33 33 * Input history, persistent across sessions.
34 34
35 35 * Caching of output results during a session with automatically generated
36 36 references.
37 37
38 38 * Extensible tab completion, with support by default for completion of python
39 39 variables and keywords, filenames and function keywords.
40 40
41 41 * Extensible system of 'magic' commands for controlling the environment and
42 42 performing many tasks related to IPython or the operating system.
43 43
44 44 * A rich configuration system with easy switching between different setups
45 45 (simpler than changing ``$PYTHONSTARTUP`` environment variables every time).
46 46
47 47 * Session logging and reloading.
48 48
49 49 * Extensible syntax processing for special purpose situations.
50 50
51 51 * Access to the system shell with user-extensible alias system.
52 52
53 53 * Easily embeddable in other Python programs and GUIs.
54 54
55 55 * Integrated access to the pdb debugger and the Python profiler.
56 56
57 57
58 58 The Command line interface inherits the above functionality and adds
59 59
60 60 * real multi-line editing thanks to `prompt_toolkit <https://python-prompt-toolkit.readthedocs.io/en/stable/>`_.
61 61
62 62 * syntax highlighting as you type.
63 63
64 64 * integration with command line editor for a better workflow.
65 65
66 66 The kernel also has its share of features. When used with a compatible frontend,
67 67 it allows:
68 68
69 69 * the object to create a rich display of Html, Images, Latex, Sound and
70 70 Video.
71 71
72 72 * interactive widgets with the use of the `ipywidgets <https://ipywidgets.readthedocs.io/en/stable/>`_ package.
73 73
74 74
75 75 This documentation will walk you through most of the features of the IPython
76 76 command line and kernel, as well as describe the internal mechanisms in order
77 77 to improve your Python workflow.
78 78
79 79 You can find the table of content for this documentation in the left
80 80 sidebar, allowing you to come back to previous sections or skip ahead, if needed.
81 81
82 82
83 83 The latest development version is always available from IPython's `GitHub
84 84 repository <http://github.com/ipython/ipython>`_.
85 85
86 86
87 87 .. toctree::
88 88 :maxdepth: 1
89 89 :hidden:
90 90
91 91 self
92 92 overview
93 93 whatsnew/index
94 94 install/index
95 95 interactive/index
96 96 config/index
97 97 development/index
98 98 coredev/index
99 99 api/index
100 100 sphinxext
101 101 about/index
102 102
103 103 .. seealso::
104 104
105 105 `Jupyter documentation <https://jupyter.readthedocs.io/en/latest/>`__
106 106 The Jupyter documentation provides information about the Notebook code and other Jupyter sub-projects.
107 107 `ipyparallel documentation <https://ipyparallel.readthedocs.io/en/latest/>`__
108 108 Formerly ``IPython.parallel``.
109 109
110 110
111 111 .. only:: html
112 112
113 113 * :ref:`genindex`
114 114 * :ref:`modindex`
115 115 * :ref:`search`
116 116
@@ -1,528 +1,528 b''
1 1 .. _issues_list_011:
2 2
3 3 Issues closed in the 0.11 development cycle
4 4 ===========================================
5 5
6 6 In this cycle, we closed a total of 511 issues, 226 pull requests and 285
7 7 regular issues; this is the full list (generated with the script
8 8 `tools/github_stats.py`). We should note that a few of these were made on the
9 9 0.10.x series, but we have no automatic way of filtering the issues by branch,
10 10 so this reflects all of our development over the last two years, including work
11 11 already released in 0.10.2:
12 12
13 13 Pull requests (226):
14 14
15 15 * `620 <https://github.com/ipython/ipython/issues/620>`_: Release notes and updates to GUI support docs for 0.11
16 16 * `642 <https://github.com/ipython/ipython/issues/642>`_: fix typo in docs/examples/vim/README.rst
17 17 * `631 <https://github.com/ipython/ipython/issues/631>`_: two-way vim-ipython integration
18 18 * `637 <https://github.com/ipython/ipython/issues/637>`_: print is a function, this allows to properly exit ipython
19 19 * `635 <https://github.com/ipython/ipython/issues/635>`_: support html representations in the notebook frontend
20 20 * `639 <https://github.com/ipython/ipython/issues/639>`_: Updating the credits file
21 21 * `628 <https://github.com/ipython/ipython/issues/628>`_: import pexpect from IPython.external in irunner
22 22 * `596 <https://github.com/ipython/ipython/issues/596>`_: Irunner
23 23 * `598 <https://github.com/ipython/ipython/issues/598>`_: Fix templates for CrashHandler
24 24 * `590 <https://github.com/ipython/ipython/issues/590>`_: Desktop
25 25 * `600 <https://github.com/ipython/ipython/issues/600>`_: Fix bug with non-ascii reprs inside pretty-printed lists.
26 26 * `618 <https://github.com/ipython/ipython/issues/618>`_: I617
27 27 * `599 <https://github.com/ipython/ipython/issues/599>`_: Gui Qt example and docs
28 28 * `619 <https://github.com/ipython/ipython/issues/619>`_: manpage update
29 29 * `582 <https://github.com/ipython/ipython/issues/582>`_: Updating sympy profile to match the exec_lines of isympy.
30 30 * `578 <https://github.com/ipython/ipython/issues/578>`_: Check to see if correct source for decorated functions can be displayed
31 31 * `589 <https://github.com/ipython/ipython/issues/589>`_: issue 588
32 32 * `591 <https://github.com/ipython/ipython/issues/591>`_: simulate shell expansion on %run arguments, at least tilde expansion
33 33 * `576 <https://github.com/ipython/ipython/issues/576>`_: Show message about %paste magic on an IndentationError
34 34 * `574 <https://github.com/ipython/ipython/issues/574>`_: Getcwdu
35 35 * `565 <https://github.com/ipython/ipython/issues/565>`_: don't move old config files, keep nagging the user
36 36 * `575 <https://github.com/ipython/ipython/issues/575>`_: Added more docstrings to IPython.zmq.session.
37 37 * `567 <https://github.com/ipython/ipython/issues/567>`_: fix trailing whitespace from resetting indentation
38 38 * `564 <https://github.com/ipython/ipython/issues/564>`_: Command line args in docs
39 39 * `560 <https://github.com/ipython/ipython/issues/560>`_: reorder qt support in kernel
40 40 * `561 <https://github.com/ipython/ipython/issues/561>`_: command-line suggestions
41 41 * `556 <https://github.com/ipython/ipython/issues/556>`_: qt_for_kernel: use matplotlib rcParams to decide between PyQt4 and PySide
42 42 * `557 <https://github.com/ipython/ipython/issues/557>`_: Update usage.py to newapp
43 43 * `555 <https://github.com/ipython/ipython/issues/555>`_: Rm default old config
44 44 * `552 <https://github.com/ipython/ipython/issues/552>`_: update parallel code for py3k
45 45 * `504 <https://github.com/ipython/ipython/issues/504>`_: Updating string formatting
46 46 * `551 <https://github.com/ipython/ipython/issues/551>`_: Make pylab import all configurable
47 47 * `496 <https://github.com/ipython/ipython/issues/496>`_: Qt editing keybindings
48 48 * `550 <https://github.com/ipython/ipython/issues/550>`_: Support v2 PyQt4 APIs and PySide in kernel's GUI support
49 49 * `546 <https://github.com/ipython/ipython/issues/546>`_: doc update
50 50 * `548 <https://github.com/ipython/ipython/issues/548>`_: Fix sympy profile to work with sympy 0.7.
51 51 * `542 <https://github.com/ipython/ipython/issues/542>`_: issue 440
52 52 * `533 <https://github.com/ipython/ipython/issues/533>`_: Remove unused configobj and validate libraries from externals.
53 53 * `538 <https://github.com/ipython/ipython/issues/538>`_: fix various tests on Windows
54 * `540 <https://github.com/ipython/ipython/issues/540>`_: support `-pylab` flag with deprecation warning
54 * `540 <https://github.com/ipython/ipython/issues/540>`_: support ``-pylab`` flag with deprecation warning
55 55 * `537 <https://github.com/ipython/ipython/issues/537>`_: Docs update
56 * `536 <https://github.com/ipython/ipython/issues/536>`_: `setup.py install` depends on setuptools on Windows
56 * `536 <https://github.com/ipython/ipython/issues/536>`_: ``setup.py install`` depends on setuptools on Windows
57 57 * `480 <https://github.com/ipython/ipython/issues/480>`_: Get help mid-command
58 58 * `462 <https://github.com/ipython/ipython/issues/462>`_: Str and Bytes traitlets
59 59 * `534 <https://github.com/ipython/ipython/issues/534>`_: Handle unicode properly in IPython.zmq.iostream
60 60 * `527 <https://github.com/ipython/ipython/issues/527>`_: ZMQ displayhook
61 61 * `526 <https://github.com/ipython/ipython/issues/526>`_: Handle asynchronous output in Qt console
62 62 * `528 <https://github.com/ipython/ipython/issues/528>`_: Do not import deprecated functions from external decorators library.
63 63 * `454 <https://github.com/ipython/ipython/issues/454>`_: New BaseIPythonApplication
64 64 * `532 <https://github.com/ipython/ipython/issues/532>`_: Zmq unicode
65 65 * `531 <https://github.com/ipython/ipython/issues/531>`_: Fix Parallel test
66 66 * `525 <https://github.com/ipython/ipython/issues/525>`_: fallback on lsof if otool not found in libedit detection
67 67 * `517 <https://github.com/ipython/ipython/issues/517>`_: Merge IPython.parallel.streamsession into IPython.zmq.session
68 68 * `521 <https://github.com/ipython/ipython/issues/521>`_: use dict.get(key) instead of dict[key] for safety from KeyErrors
69 69 * `492 <https://github.com/ipython/ipython/issues/492>`_: add QtConsoleApp using newapplication
70 70 * `485 <https://github.com/ipython/ipython/issues/485>`_: terminal IPython with newapp
71 71 * `486 <https://github.com/ipython/ipython/issues/486>`_: Use newapp in parallel code
72 72 * `511 <https://github.com/ipython/ipython/issues/511>`_: Add a new line before displaying multiline strings in the Qt console.
73 73 * `509 <https://github.com/ipython/ipython/issues/509>`_: i508
74 74 * `501 <https://github.com/ipython/ipython/issues/501>`_: ignore EINTR in channel loops
75 75 * `495 <https://github.com/ipython/ipython/issues/495>`_: Better selection of Qt bindings when QT_API is not specified
76 76 * `498 <https://github.com/ipython/ipython/issues/498>`_: Check for .pyd as extension for binary files.
77 77 * `494 <https://github.com/ipython/ipython/issues/494>`_: QtConsole zoom adjustments
78 78 * `490 <https://github.com/ipython/ipython/issues/490>`_: fix UnicodeEncodeError writing SVG string to .svg file, fixes #489
79 79 * `491 <https://github.com/ipython/ipython/issues/491>`_: add QtConsoleApp using newapplication
80 80 * `479 <https://github.com/ipython/ipython/issues/479>`_: embed() doesn't load default config
81 81 * `483 <https://github.com/ipython/ipython/issues/483>`_: Links launchpad -> github
82 82 * `419 <https://github.com/ipython/ipython/issues/419>`_: %xdel magic
83 83 * `477 <https://github.com/ipython/ipython/issues/477>`_: Add \n to lines in the log
84 84 * `459 <https://github.com/ipython/ipython/issues/459>`_: use os.system for shell.system in Terminal frontend
85 85 * `475 <https://github.com/ipython/ipython/issues/475>`_: i473
86 86 * `471 <https://github.com/ipython/ipython/issues/471>`_: Add test decorator onlyif_unicode_paths.
87 87 * `474 <https://github.com/ipython/ipython/issues/474>`_: Fix support for raw GTK and WX matplotlib backends.
88 88 * `472 <https://github.com/ipython/ipython/issues/472>`_: Kernel event loop is robust against random SIGINT.
89 89 * `460 <https://github.com/ipython/ipython/issues/460>`_: Share code for magic_edit
90 90 * `469 <https://github.com/ipython/ipython/issues/469>`_: Add exit code when running all tests with iptest.
91 91 * `464 <https://github.com/ipython/ipython/issues/464>`_: Add home directory expansion to IPYTHON_DIR environment variables.
92 92 * `455 <https://github.com/ipython/ipython/issues/455>`_: Bugfix with logger
93 93 * `448 <https://github.com/ipython/ipython/issues/448>`_: Separate out skip_doctest decorator
94 94 * `453 <https://github.com/ipython/ipython/issues/453>`_: Draft of new main BaseIPythonApplication.
95 95 * `452 <https://github.com/ipython/ipython/issues/452>`_: Use list/tuple/dict/set subclass's overridden __repr__ instead of the pretty
96 96 * `398 <https://github.com/ipython/ipython/issues/398>`_: allow toggle of svg/png inline figure format
97 97 * `381 <https://github.com/ipython/ipython/issues/381>`_: Support inline PNGs of matplotlib plots
98 98 * `413 <https://github.com/ipython/ipython/issues/413>`_: Retries and Resubmit (#411 and #412)
99 99 * `370 <https://github.com/ipython/ipython/issues/370>`_: Fixes to the display system
100 100 * `449 <https://github.com/ipython/ipython/issues/449>`_: Fix issue 447 - inspecting old-style classes.
101 101 * `423 <https://github.com/ipython/ipython/issues/423>`_: Allow type checking on elements of List,Tuple,Set traits
102 102 * `400 <https://github.com/ipython/ipython/issues/400>`_: Config5
103 103 * `421 <https://github.com/ipython/ipython/issues/421>`_: Generalise mechanism to put text at the next prompt in the Qt console.
104 104 * `443 <https://github.com/ipython/ipython/issues/443>`_: pinfo code duplication
105 105 * `429 <https://github.com/ipython/ipython/issues/429>`_: add check_pid, and handle stale PID info in ipcluster.
106 106 * `431 <https://github.com/ipython/ipython/issues/431>`_: Fix error message in test_irunner
107 107 * `427 <https://github.com/ipython/ipython/issues/427>`_: handle different SyntaxError messages in test_irunner
108 108 * `424 <https://github.com/ipython/ipython/issues/424>`_: Irunner test failure
109 109 * `430 <https://github.com/ipython/ipython/issues/430>`_: Small parallel doc typo
110 110 * `422 <https://github.com/ipython/ipython/issues/422>`_: Make ipython-qtconsole a GUI script
111 111 * `420 <https://github.com/ipython/ipython/issues/420>`_: Permit kernel std* to be redirected
112 112 * `408 <https://github.com/ipython/ipython/issues/408>`_: History request
113 113 * `388 <https://github.com/ipython/ipython/issues/388>`_: Add Emacs-style kill ring to Qt console
114 114 * `414 <https://github.com/ipython/ipython/issues/414>`_: Warn on old config files
115 115 * `415 <https://github.com/ipython/ipython/issues/415>`_: Prevent prefilter from crashing IPython
116 116 * `418 <https://github.com/ipython/ipython/issues/418>`_: Minor configuration doc fixes
117 117 * `407 <https://github.com/ipython/ipython/issues/407>`_: Update What's new documentation
118 118 * `410 <https://github.com/ipython/ipython/issues/410>`_: Install notebook frontend
119 119 * `406 <https://github.com/ipython/ipython/issues/406>`_: install IPython.zmq.gui
120 120 * `393 <https://github.com/ipython/ipython/issues/393>`_: ipdir unicode
121 121 * `397 <https://github.com/ipython/ipython/issues/397>`_: utils.io.Term.cin/out/err -> utils.io.stdin/out/err
122 122 * `389 <https://github.com/ipython/ipython/issues/389>`_: DB fixes and Scheduler HWM
123 123 * `374 <https://github.com/ipython/ipython/issues/374>`_: Various Windows-related fixes to IPython.parallel
124 124 * `362 <https://github.com/ipython/ipython/issues/362>`_: fallback on defaultencoding if filesystemencoding is None
125 125 * `382 <https://github.com/ipython/ipython/issues/382>`_: Shell's reset method clears namespace from last %run command.
126 126 * `385 <https://github.com/ipython/ipython/issues/385>`_: Update iptest exclusions (fix #375)
127 127 * `383 <https://github.com/ipython/ipython/issues/383>`_: Catch errors in querying readline which occur with pyreadline.
128 128 * `373 <https://github.com/ipython/ipython/issues/373>`_: Remove runlines etc.
129 129 * `364 <https://github.com/ipython/ipython/issues/364>`_: Single output
130 130 * `372 <https://github.com/ipython/ipython/issues/372>`_: Multiline input push
131 131 * `363 <https://github.com/ipython/ipython/issues/363>`_: Issue 125
132 132 * `361 <https://github.com/ipython/ipython/issues/361>`_: don't rely on setuptools for readline dependency check
133 133 * `349 <https://github.com/ipython/ipython/issues/349>`_: Fix %autopx magic
134 134 * `355 <https://github.com/ipython/ipython/issues/355>`_: History save thread
135 135 * `356 <https://github.com/ipython/ipython/issues/356>`_: Usability improvements to history in Qt console
136 136 * `357 <https://github.com/ipython/ipython/issues/357>`_: Exit autocall
137 137 * `353 <https://github.com/ipython/ipython/issues/353>`_: Rewrite quit()/exit()/Quit()/Exit() calls as magic
138 138 * `354 <https://github.com/ipython/ipython/issues/354>`_: Cell tweaks
139 139 * `345 <https://github.com/ipython/ipython/issues/345>`_: Attempt to address (partly) issue ipython/#342 by rewriting quit(), exit(), etc.
140 140 * `352 <https://github.com/ipython/ipython/issues/352>`_: #342: Try to recover as intelligently as possible if user calls magic().
141 141 * `346 <https://github.com/ipython/ipython/issues/346>`_: Dedent prefix bugfix + tests: #142
142 142 * `348 <https://github.com/ipython/ipython/issues/348>`_: %reset doesn't reset prompt number.
143 143 * `347 <https://github.com/ipython/ipython/issues/347>`_: Make ip.reset() work the same in interactive or non-interactive code.
144 144 * `343 <https://github.com/ipython/ipython/issues/343>`_: make readline a dependency on OSX
145 145 * `344 <https://github.com/ipython/ipython/issues/344>`_: restore auto debug behavior
146 146 * `339 <https://github.com/ipython/ipython/issues/339>`_: fix for issue 337: incorrect/phantom tooltips for magics
147 147 * `254 <https://github.com/ipython/ipython/issues/254>`_: newparallel branch (add zmq.parallel submodule)
148 148 * `334 <https://github.com/ipython/ipython/issues/334>`_: Hard reset
149 149 * `316 <https://github.com/ipython/ipython/issues/316>`_: Unicode win process
150 150 * `332 <https://github.com/ipython/ipython/issues/332>`_: AST splitter
151 151 * `325 <https://github.com/ipython/ipython/issues/325>`_: Removetwisted
152 152 * `330 <https://github.com/ipython/ipython/issues/330>`_: Magic pastebin
153 153 * `309 <https://github.com/ipython/ipython/issues/309>`_: Bug tests for GH Issues 238, 284, 306, 307. Skip module machinery if not installed. Known failures reported as 'K'
154 154 * `331 <https://github.com/ipython/ipython/issues/331>`_: Tweak config loader for PyPy compatibility.
155 155 * `319 <https://github.com/ipython/ipython/issues/319>`_: Rewrite code to restore readline history after an action
156 156 * `329 <https://github.com/ipython/ipython/issues/329>`_: Do not store file contents in history when running a .ipy file.
157 157 * `179 <https://github.com/ipython/ipython/issues/179>`_: Html notebook
158 158 * `323 <https://github.com/ipython/ipython/issues/323>`_: Add missing external.pexpect to packages
159 159 * `295 <https://github.com/ipython/ipython/issues/295>`_: Magic local scope
160 160 * `315 <https://github.com/ipython/ipython/issues/315>`_: Unicode magic args
161 161 * `310 <https://github.com/ipython/ipython/issues/310>`_: allow Unicode Command-Line options
162 162 * `313 <https://github.com/ipython/ipython/issues/313>`_: Readline shortcuts
163 163 * `311 <https://github.com/ipython/ipython/issues/311>`_: Qtconsole exit
164 164 * `312 <https://github.com/ipython/ipython/issues/312>`_: History memory
165 165 * `294 <https://github.com/ipython/ipython/issues/294>`_: Issue 290
166 166 * `292 <https://github.com/ipython/ipython/issues/292>`_: Issue 31
167 167 * `252 <https://github.com/ipython/ipython/issues/252>`_: Unicode issues
168 168 * `235 <https://github.com/ipython/ipython/issues/235>`_: Fix history magic command's bugs wrt to full history and add -O option to display full history
169 169 * `236 <https://github.com/ipython/ipython/issues/236>`_: History minus p flag
170 170 * `261 <https://github.com/ipython/ipython/issues/261>`_: Adapt magic commands to new history system.
171 171 * `282 <https://github.com/ipython/ipython/issues/282>`_: SQLite history
172 172 * `191 <https://github.com/ipython/ipython/issues/191>`_: Unbundle external libraries
173 173 * `199 <https://github.com/ipython/ipython/issues/199>`_: Magic arguments
174 174 * `204 <https://github.com/ipython/ipython/issues/204>`_: Emacs completion bugfix
175 175 * `293 <https://github.com/ipython/ipython/issues/293>`_: Issue 133
176 176 * `249 <https://github.com/ipython/ipython/issues/249>`_: Writing unicode characters to a log file. (IPython 0.10.2.git)
177 177 * `283 <https://github.com/ipython/ipython/issues/283>`_: Support for 256-color escape sequences in Qt console
178 178 * `281 <https://github.com/ipython/ipython/issues/281>`_: Refactored and improved Qt console's HTML export facility
179 179 * `237 <https://github.com/ipython/ipython/issues/237>`_: Fix185 (take two)
180 180 * `251 <https://github.com/ipython/ipython/issues/251>`_: Issue 129
181 181 * `278 <https://github.com/ipython/ipython/issues/278>`_: add basic XDG_CONFIG_HOME support
182 182 * `275 <https://github.com/ipython/ipython/issues/275>`_: inline pylab cuts off labels on log plots
183 183 * `280 <https://github.com/ipython/ipython/issues/280>`_: Add %precision magic
184 184 * `259 <https://github.com/ipython/ipython/issues/259>`_: Pyside support
185 185 * `193 <https://github.com/ipython/ipython/issues/193>`_: Make ipython cProfile-able
186 186 * `272 <https://github.com/ipython/ipython/issues/272>`_: Magic examples
187 187 * `219 <https://github.com/ipython/ipython/issues/219>`_: Doc magic pycat
188 188 * `221 <https://github.com/ipython/ipython/issues/221>`_: Doc magic alias
189 189 * `230 <https://github.com/ipython/ipython/issues/230>`_: Doc magic edit
190 190 * `224 <https://github.com/ipython/ipython/issues/224>`_: Doc magic cpaste
191 191 * `229 <https://github.com/ipython/ipython/issues/229>`_: Doc magic pdef
192 192 * `273 <https://github.com/ipython/ipython/issues/273>`_: Docs build
193 193 * `228 <https://github.com/ipython/ipython/issues/228>`_: Doc magic who
194 194 * `233 <https://github.com/ipython/ipython/issues/233>`_: Doc magic cd
195 195 * `226 <https://github.com/ipython/ipython/issues/226>`_: Doc magic pwd
196 196 * `218 <https://github.com/ipython/ipython/issues/218>`_: Doc magic history
197 197 * `231 <https://github.com/ipython/ipython/issues/231>`_: Doc magic reset
198 198 * `225 <https://github.com/ipython/ipython/issues/225>`_: Doc magic save
199 199 * `222 <https://github.com/ipython/ipython/issues/222>`_: Doc magic timeit
200 200 * `223 <https://github.com/ipython/ipython/issues/223>`_: Doc magic colors
201 201 * `203 <https://github.com/ipython/ipython/issues/203>`_: Small typos in zmq/blockingkernelmanager.py
202 202 * `227 <https://github.com/ipython/ipython/issues/227>`_: Doc magic logon
203 203 * `232 <https://github.com/ipython/ipython/issues/232>`_: Doc magic profile
204 204 * `264 <https://github.com/ipython/ipython/issues/264>`_: Kernel logging
205 205 * `220 <https://github.com/ipython/ipython/issues/220>`_: Doc magic edit
206 206 * `268 <https://github.com/ipython/ipython/issues/268>`_: PyZMQ >= 2.0.10
207 207 * `267 <https://github.com/ipython/ipython/issues/267>`_: GitHub Pages (again)
208 208 * `266 <https://github.com/ipython/ipython/issues/266>`_: OSX-specific fixes to the Qt console
209 209 * `255 <https://github.com/ipython/ipython/issues/255>`_: Gitwash typo
210 210 * `265 <https://github.com/ipython/ipython/issues/265>`_: Fix string input2
211 211 * `260 <https://github.com/ipython/ipython/issues/260>`_: Kernel crash with empty history
212 212 * `243 <https://github.com/ipython/ipython/issues/243>`_: New display system
213 213 * `242 <https://github.com/ipython/ipython/issues/242>`_: Fix terminal exit
214 214 * `250 <https://github.com/ipython/ipython/issues/250>`_: always use Session.send
215 215 * `239 <https://github.com/ipython/ipython/issues/239>`_: Makefile command & script for GitHub Pages
216 216 * `244 <https://github.com/ipython/ipython/issues/244>`_: My exit
217 217 * `234 <https://github.com/ipython/ipython/issues/234>`_: Timed history save
218 218 * `217 <https://github.com/ipython/ipython/issues/217>`_: Doc magic lsmagic
219 219 * `215 <https://github.com/ipython/ipython/issues/215>`_: History fix
220 220 * `195 <https://github.com/ipython/ipython/issues/195>`_: Formatters
221 221 * `192 <https://github.com/ipython/ipython/issues/192>`_: Ready colorize bug
222 222 * `198 <https://github.com/ipython/ipython/issues/198>`_: Windows workdir
223 223 * `174 <https://github.com/ipython/ipython/issues/174>`_: Whitespace cleanup
224 224 * `188 <https://github.com/ipython/ipython/issues/188>`_: Version info: update our version management system to use git.
225 225 * `158 <https://github.com/ipython/ipython/issues/158>`_: Ready for merge
226 226 * `187 <https://github.com/ipython/ipython/issues/187>`_: Resolved Print shortcut collision with ctrl-P emacs binding
227 227 * `183 <https://github.com/ipython/ipython/issues/183>`_: cleanup of exit/quit commands for qt console
228 228 * `184 <https://github.com/ipython/ipython/issues/184>`_: Logo added to sphinx docs
229 229 * `180 <https://github.com/ipython/ipython/issues/180>`_: Cleanup old code
230 230 * `171 <https://github.com/ipython/ipython/issues/171>`_: Expose Pygments styles as options
231 231 * `170 <https://github.com/ipython/ipython/issues/170>`_: HTML Fixes
232 232 * `172 <https://github.com/ipython/ipython/issues/172>`_: Fix del method exit test
233 233 * `164 <https://github.com/ipython/ipython/issues/164>`_: Qt frontend shutdown behavior fixes and enhancements
234 234 * `167 <https://github.com/ipython/ipython/issues/167>`_: Added HTML export
235 235 * `163 <https://github.com/ipython/ipython/issues/163>`_: Execution refactor
236 236 * `159 <https://github.com/ipython/ipython/issues/159>`_: Ipy3 preparation
237 237 * `155 <https://github.com/ipython/ipython/issues/155>`_: Ready startup fix
238 238 * `152 <https://github.com/ipython/ipython/issues/152>`_: 0.10.1 sge
239 239 * `151 <https://github.com/ipython/ipython/issues/151>`_: mk_object_info -> object_info
240 240 * `149 <https://github.com/ipython/ipython/issues/149>`_: Simple bug-fix
241 241
242 242 Regular issues (285):
243 243
244 244 * `630 <https://github.com/ipython/ipython/issues/630>`_: new.py in pwd prevents ipython from starting
245 245 * `623 <https://github.com/ipython/ipython/issues/623>`_: Execute DirectView commands while running LoadBalancedView tasks
246 246 * `437 <https://github.com/ipython/ipython/issues/437>`_: Users should have autocompletion in the notebook
247 247 * `583 <https://github.com/ipython/ipython/issues/583>`_: update manpages
248 248 * `594 <https://github.com/ipython/ipython/issues/594>`_: irunner command line options defer to file extensions
249 249 * `603 <https://github.com/ipython/ipython/issues/603>`_: Users should see colored text in tracebacks and the pager
250 250 * `597 <https://github.com/ipython/ipython/issues/597>`_: UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2
251 251 * `608 <https://github.com/ipython/ipython/issues/608>`_: Organize and layout buttons in the notebook panel sections
252 252 * `609 <https://github.com/ipython/ipython/issues/609>`_: Implement controls in the Kernel panel section
253 253 * `611 <https://github.com/ipython/ipython/issues/611>`_: Add kernel status widget back to notebook
254 254 * `610 <https://github.com/ipython/ipython/issues/610>`_: Implement controls in the Cell section panel
255 255 * `612 <https://github.com/ipython/ipython/issues/612>`_: Implement Help panel section
256 256 * `621 <https://github.com/ipython/ipython/issues/621>`_: [qtconsole] on windows xp, cannot PageUp more than once
257 257 * `616 <https://github.com/ipython/ipython/issues/616>`_: Store exit status of last command
258 258 * `605 <https://github.com/ipython/ipython/issues/605>`_: Users should be able to open different notebooks in the cwd
259 259 * `302 <https://github.com/ipython/ipython/issues/302>`_: Users should see a consistent behavior in the Out prompt in the html notebook
260 260 * `435 <https://github.com/ipython/ipython/issues/435>`_: Notebook should not import anything by default
261 261 * `595 <https://github.com/ipython/ipython/issues/595>`_: qtconsole command issue
262 262 * `588 <https://github.com/ipython/ipython/issues/588>`_: ipython-qtconsole uses 100% CPU
263 263 * `586 <https://github.com/ipython/ipython/issues/586>`_: ? + plot() Command B0rks QTConsole Strangely
264 264 * `585 <https://github.com/ipython/ipython/issues/585>`_: %pdoc throws Errors for classes without __init__ or docstring
265 265 * `584 <https://github.com/ipython/ipython/issues/584>`_: %pdoc throws TypeError
266 266 * `580 <https://github.com/ipython/ipython/issues/580>`_: Client instantiation AssertionError
267 267 * `569 <https://github.com/ipython/ipython/issues/569>`_: UnicodeDecodeError during startup
268 268 * `572 <https://github.com/ipython/ipython/issues/572>`_: Indented command hits error
269 269 * `573 <https://github.com/ipython/ipython/issues/573>`_: -wthread breaks indented top-level statements
270 270 * `570 <https://github.com/ipython/ipython/issues/570>`_: "--pylab inline" vs. "--pylab=inline"
271 271 * `566 <https://github.com/ipython/ipython/issues/566>`_: Can't use exec_file in config file
272 272 * `562 <https://github.com/ipython/ipython/issues/562>`_: update docs to reflect '--args=values'
273 273 * `558 <https://github.com/ipython/ipython/issues/558>`_: triple quote and %s at beginning of line
274 274 * `554 <https://github.com/ipython/ipython/issues/554>`_: Update 0.11 docs to explain Qt console and how to do a clean install
275 275 * `553 <https://github.com/ipython/ipython/issues/553>`_: embed() fails if config files not installed
276 276 * `8 <https://github.com/ipython/ipython/issues/8>`_: Ensure %gui qt works with new Mayavi and pylab
277 277 * `269 <https://github.com/ipython/ipython/issues/269>`_: Provide compatibility api for IPython.Shell().start().mainloop()
278 278 * `66 <https://github.com/ipython/ipython/issues/66>`_: Update the main What's New document to reflect work on 0.11
279 279 * `549 <https://github.com/ipython/ipython/issues/549>`_: Don't check for 'linux2' value in sys.platform
280 280 * `505 <https://github.com/ipython/ipython/issues/505>`_: Qt windows created within imported functions won't show()
281 281 * `545 <https://github.com/ipython/ipython/issues/545>`_: qtconsole ignores exec_lines
282 282 * `371 <https://github.com/ipython/ipython/issues/371>`_: segfault in qtconsole when kernel quits
283 283 * `377 <https://github.com/ipython/ipython/issues/377>`_: Failure: error (nothing to repeat)
284 284 * `544 <https://github.com/ipython/ipython/issues/544>`_: Ipython qtconsole pylab config issue.
285 285 * `543 <https://github.com/ipython/ipython/issues/543>`_: RuntimeError in completer
286 286 * `440 <https://github.com/ipython/ipython/issues/440>`_: %run filename autocompletion "The kernel heartbeat has been inactive ... " error
287 287 * `541 <https://github.com/ipython/ipython/issues/541>`_: log_level is broken in the ipython Application
288 288 * `369 <https://github.com/ipython/ipython/issues/369>`_: windows source install doesn't create scripts correctly
289 289 * `351 <https://github.com/ipython/ipython/issues/351>`_: Make sure that the Windows installer handles the top-level IPython scripts.
290 290 * `512 <https://github.com/ipython/ipython/issues/512>`_: Two displayhooks in zmq
291 291 * `340 <https://github.com/ipython/ipython/issues/340>`_: Make sure that the Windows HPC scheduler support is working for 0.11
292 292 * `98 <https://github.com/ipython/ipython/issues/98>`_: Should be able to get help on an object mid-command
293 293 * `529 <https://github.com/ipython/ipython/issues/529>`_: unicode problem in qtconsole for windows
294 294 * `476 <https://github.com/ipython/ipython/issues/476>`_: Separate input area in Qt Console
295 295 * `175 <https://github.com/ipython/ipython/issues/175>`_: Qt console needs configuration support
296 296 * `156 <https://github.com/ipython/ipython/issues/156>`_: Key history lost when debugging program crash
297 297 * `470 <https://github.com/ipython/ipython/issues/470>`_: decorator: uses deprecated features
298 298 * `30 <https://github.com/ipython/ipython/issues/30>`_: readline in OS X does not have correct key bindings
299 299 * `503 <https://github.com/ipython/ipython/issues/503>`_: merge IPython.parallel.streamsession and IPython.zmq.session
300 300 * `456 <https://github.com/ipython/ipython/issues/456>`_: pathname in document punctuated by dots not slashes
301 301 * `451 <https://github.com/ipython/ipython/issues/451>`_: Allow switching the default image format for inline mpl backend
302 302 * `79 <https://github.com/ipython/ipython/issues/79>`_: Implement more robust handling of config stages in Application
303 303 * `522 <https://github.com/ipython/ipython/issues/522>`_: Encoding problems
304 304 * `524 <https://github.com/ipython/ipython/issues/524>`_: otool should not be unconditionally called on osx
305 305 * `523 <https://github.com/ipython/ipython/issues/523>`_: Get profile and config file inheritance working
306 306 * `519 <https://github.com/ipython/ipython/issues/519>`_: qtconsole --pure: "TypeError: string indices must be integers, not str"
307 307 * `516 <https://github.com/ipython/ipython/issues/516>`_: qtconsole --pure: "KeyError: 'ismagic'"
308 308 * `520 <https://github.com/ipython/ipython/issues/520>`_: qtconsole --pure: "TypeError: string indices must be integers, not str"
309 309 * `450 <https://github.com/ipython/ipython/issues/450>`_: resubmitted tasks sometimes stuck as pending
310 310 * `518 <https://github.com/ipython/ipython/issues/518>`_: JSON serialization problems with ObjectId type (MongoDB)
311 311 * `178 <https://github.com/ipython/ipython/issues/178>`_: Channels should be named for their function, not their socket type
312 312 * `515 <https://github.com/ipython/ipython/issues/515>`_: [ipcluster] termination on os x
313 313 * `510 <https://github.com/ipython/ipython/issues/510>`_: qtconsole: indentation problem printing numpy arrays
314 314 * `508 <https://github.com/ipython/ipython/issues/508>`_: "AssertionError: Missing message part." in ipython-qtconsole --pure
315 315 * `499 <https://github.com/ipython/ipython/issues/499>`_: "ZMQError: Interrupted system call" when saving inline figure
316 316 * `426 <https://github.com/ipython/ipython/issues/426>`_: %edit magic fails in qtconsole
317 317 * `497 <https://github.com/ipython/ipython/issues/497>`_: Don't show info from .pyd files
318 318 * `493 <https://github.com/ipython/ipython/issues/493>`_: QFont::setPointSize: Point size <= 0 (0), must be greater than 0
319 319 * `489 <https://github.com/ipython/ipython/issues/489>`_: UnicodeEncodeError in qt.svg.save_svg
320 320 * `458 <https://github.com/ipython/ipython/issues/458>`_: embed() doesn't load default config
321 321 * `488 <https://github.com/ipython/ipython/issues/488>`_: Using IPython with RubyPython leads to problems with IPython.parallel.client.client.Client.__init()
322 322 * `401 <https://github.com/ipython/ipython/issues/401>`_: Race condition when running lbview.apply() fast multiple times in loop
323 323 * `168 <https://github.com/ipython/ipython/issues/168>`_: Scrub Launchpad links from code, docs
324 324 * `141 <https://github.com/ipython/ipython/issues/141>`_: garbage collection problem (revisited)
325 325 * `59 <https://github.com/ipython/ipython/issues/59>`_: test_magic.test_obj_del fails on win32
326 326 * `457 <https://github.com/ipython/ipython/issues/457>`_: Backgrounded Tasks not Allowed? (but easy to slip by . . .)
327 327 * `297 <https://github.com/ipython/ipython/issues/297>`_: Shouldn't use pexpect for subprocesses in in-process terminal frontend
328 328 * `110 <https://github.com/ipython/ipython/issues/110>`_: magic to return exit status
329 329 * `473 <https://github.com/ipython/ipython/issues/473>`_: OSX readline detection fails in the debugger
330 330 * `466 <https://github.com/ipython/ipython/issues/466>`_: tests fail without unicode filename support
331 331 * `468 <https://github.com/ipython/ipython/issues/468>`_: iptest script has 0 exit code even when tests fail
332 332 * `465 <https://github.com/ipython/ipython/issues/465>`_: client.db_query() behaves different with SQLite and MongoDB
333 333 * `467 <https://github.com/ipython/ipython/issues/467>`_: magic_install_default_config test fails when there is no .ipython directory
334 334 * `463 <https://github.com/ipython/ipython/issues/463>`_: IPYTHON_DIR (and IPYTHONDIR) don't expand tilde to '~' directory
335 335 * `446 <https://github.com/ipython/ipython/issues/446>`_: Test machinery is imported at normal runtime
336 336 * `438 <https://github.com/ipython/ipython/issues/438>`_: Users should be able to use Up/Down for cell navigation
337 337 * `439 <https://github.com/ipython/ipython/issues/439>`_: Users should be able to copy notebook input and output
338 338 * `291 <https://github.com/ipython/ipython/issues/291>`_: Rename special display methods and put them lower in priority than display functions
339 339 * `447 <https://github.com/ipython/ipython/issues/447>`_: Instantiating classes without __init__ function causes kernel to crash
340 340 * `444 <https://github.com/ipython/ipython/issues/444>`_: Ctrl + t in WxIPython Causes Unexpected Behavior
341 341 * `445 <https://github.com/ipython/ipython/issues/445>`_: qt and console Based Startup Errors
342 342 * `428 <https://github.com/ipython/ipython/issues/428>`_: ipcluster doesn't handle stale pid info well
343 343 * `434 <https://github.com/ipython/ipython/issues/434>`_: 10.0.2 seg fault with rpy2
344 344 * `441 <https://github.com/ipython/ipython/issues/441>`_: Allow running a block of code in a file
345 345 * `432 <https://github.com/ipython/ipython/issues/432>`_: Silent request fails
346 346 * `409 <https://github.com/ipython/ipython/issues/409>`_: Test failure in IPython.lib
347 347 * `402 <https://github.com/ipython/ipython/issues/402>`_: History section of messaging spec is incorrect
348 348 * `88 <https://github.com/ipython/ipython/issues/88>`_: Error when inputting UTF8 CJK characters
349 349 * `366 <https://github.com/ipython/ipython/issues/366>`_: Ctrl-K should kill line and store it, so that Ctrl-y can yank it back
350 350 * `425 <https://github.com/ipython/ipython/issues/425>`_: typo in %gui magic help
351 351 * `304 <https://github.com/ipython/ipython/issues/304>`_: Persistent warnings if old configuration files exist
352 352 * `216 <https://github.com/ipython/ipython/issues/216>`_: crash of ipython when alias is used with %s and echo
353 353 * `412 <https://github.com/ipython/ipython/issues/412>`_: add support to automatic retry of tasks
354 354 * `411 <https://github.com/ipython/ipython/issues/411>`_: add support to continue tasks
355 355 * `417 <https://github.com/ipython/ipython/issues/417>`_: IPython should display things unsorted if it can't sort them
356 356 * `416 <https://github.com/ipython/ipython/issues/416>`_: wrong encode when printing unicode string
357 357 * `376 <https://github.com/ipython/ipython/issues/376>`_: Failing InputsplitterTest
358 358 * `405 <https://github.com/ipython/ipython/issues/405>`_: TraitError in traitlets.py(332) on any input
359 359 * `392 <https://github.com/ipython/ipython/issues/392>`_: UnicodeEncodeError on start
360 360 * `137 <https://github.com/ipython/ipython/issues/137>`_: sys.getfilesystemencoding return value not checked
361 361 * `300 <https://github.com/ipython/ipython/issues/300>`_: Users should be able to manage kernels and kernel sessions from the notebook UI
362 362 * `301 <https://github.com/ipython/ipython/issues/301>`_: Users should have access to working Kernel, Tabs, Edit, Help menus in the notebook
363 363 * `396 <https://github.com/ipython/ipython/issues/396>`_: cursor move triggers a lot of IO access
364 364 * `379 <https://github.com/ipython/ipython/issues/379>`_: Minor doc nit: --paging argument
365 365 * `399 <https://github.com/ipython/ipython/issues/399>`_: Add task queue limit in engine when load-balancing
366 366 * `78 <https://github.com/ipython/ipython/issues/78>`_: StringTask won't take unicode code strings
367 367 * `391 <https://github.com/ipython/ipython/issues/391>`_: MongoDB.add_record() does not work in 0.11dev
368 368 * `365 <https://github.com/ipython/ipython/issues/365>`_: newparallel on Windows
369 369 * `386 <https://github.com/ipython/ipython/issues/386>`_: FAIL: test that pushed functions have access to globals
370 370 * `387 <https://github.com/ipython/ipython/issues/387>`_: Interactively defined functions can't access user namespace
371 371 * `118 <https://github.com/ipython/ipython/issues/118>`_: Snow Leopard ipy_vimserver POLL error
372 372 * `394 <https://github.com/ipython/ipython/issues/394>`_: System escape interpreted in multi-line string
373 373 * `26 <https://github.com/ipython/ipython/issues/26>`_: find_job_cmd is too hasty to fail on Windows
374 374 * `368 <https://github.com/ipython/ipython/issues/368>`_: Installation instructions in dev docs are completely wrong
375 375 * `380 <https://github.com/ipython/ipython/issues/380>`_: qtconsole pager RST - HTML not happening consistently
376 376 * `367 <https://github.com/ipython/ipython/issues/367>`_: Qt console doesn't support ibus input method
377 377 * `375 <https://github.com/ipython/ipython/issues/375>`_: Missing libraries cause ImportError in tests
378 378 * `71 <https://github.com/ipython/ipython/issues/71>`_: temp file errors in iptest IPython.core
379 379 * `350 <https://github.com/ipython/ipython/issues/350>`_: Decide how to handle displayhook being triggered multiple times
380 380 * `360 <https://github.com/ipython/ipython/issues/360>`_: Remove `runlines` method
381 381 * `125 <https://github.com/ipython/ipython/issues/125>`_: Exec lines in config should not contribute to line numbering or history
382 382 * `20 <https://github.com/ipython/ipython/issues/20>`_: Robust readline support on OS X's builtin Python
383 383 * `147 <https://github.com/ipython/ipython/issues/147>`_: On Windows, %page is being too restrictive to split line by \r\n only
384 384 * `326 <https://github.com/ipython/ipython/issues/326>`_: Update docs and examples for parallel stuff to reflect movement away from Twisted
385 385 * `341 <https://github.com/ipython/ipython/issues/341>`_: FIx Parallel Magics for newparallel
386 386 * `338 <https://github.com/ipython/ipython/issues/338>`_: Usability improvements to Qt console
387 387 * `142 <https://github.com/ipython/ipython/issues/142>`_: unexpected auto-indenting when variables names that start with 'pass'
388 388 * `296 <https://github.com/ipython/ipython/issues/296>`_: Automatic PDB via %pdb doesn't work
389 389 * `337 <https://github.com/ipython/ipython/issues/337>`_: exit( and quit( in Qt console produces phantom signature/docstring popup, even though quit() or exit() raises NameError
390 390 * `318 <https://github.com/ipython/ipython/issues/318>`_: %debug broken in master: invokes missing save_history() method
391 391 * `307 <https://github.com/ipython/ipython/issues/307>`_: lines ending with semicolon should not go to cache
392 392 * `104 <https://github.com/ipython/ipython/issues/104>`_: have ipengine run start-up scripts before registering with the controller
393 393 * `33 <https://github.com/ipython/ipython/issues/33>`_: The skip_doctest decorator is failing to work on Shell.MatplotlibShellBase.magic_run
394 394 * `336 <https://github.com/ipython/ipython/issues/336>`_: Missing figure development/figs/iopubfade.png for docs
395 395 * `49 <https://github.com/ipython/ipython/issues/49>`_: %clear should also delete _NN references and Out[NN] ones
396 396 * `335 <https://github.com/ipython/ipython/issues/335>`_: using setuptools installs every script twice
397 397 * `306 <https://github.com/ipython/ipython/issues/306>`_: multiline strings at end of input cause noop
398 398 * `327 <https://github.com/ipython/ipython/issues/327>`_: PyPy compatibility
399 399 * `328 <https://github.com/ipython/ipython/issues/328>`_: %run script.ipy raises "ERROR! Session/line number was not unique in database."
400 400 * `7 <https://github.com/ipython/ipython/issues/7>`_: Update the changes doc to reflect the kernel config work
401 401 * `303 <https://github.com/ipython/ipython/issues/303>`_: Users should be able to scroll a notebook w/o moving the menu/buttons
402 402 * `322 <https://github.com/ipython/ipython/issues/322>`_: Embedding an interactive IPython shell
403 403 * `321 <https://github.com/ipython/ipython/issues/321>`_: %debug broken in master
404 404 * `287 <https://github.com/ipython/ipython/issues/287>`_: Crash when using %macros in sqlite-history branch
405 405 * `55 <https://github.com/ipython/ipython/issues/55>`_: Can't edit files whose names begin with numbers
406 406 * `284 <https://github.com/ipython/ipython/issues/284>`_: In variable no longer works in 0.11
407 407 * `92 <https://github.com/ipython/ipython/issues/92>`_: Using multiprocessing module crashes parallel IPython
408 408 * `262 <https://github.com/ipython/ipython/issues/262>`_: Fail to recover history after force-kill.
409 409 * `320 <https://github.com/ipython/ipython/issues/320>`_: Tab completing re.search objects crashes IPython
410 410 * `317 <https://github.com/ipython/ipython/issues/317>`_: IPython.kernel: parallel map issues
411 411 * `197 <https://github.com/ipython/ipython/issues/197>`_: ipython-qtconsole unicode problem in magic ls
412 412 * `305 <https://github.com/ipython/ipython/issues/305>`_: more readline shortcuts in qtconsole
413 413 * `314 <https://github.com/ipython/ipython/issues/314>`_: Multi-line, multi-block cells can't be executed.
414 414 * `308 <https://github.com/ipython/ipython/issues/308>`_: Test suite should set sqlite history to work in :memory:
415 415 * `202 <https://github.com/ipython/ipython/issues/202>`_: Matplotlib native 'MacOSX' backend broken in '-pylab' mode
416 416 * `196 <https://github.com/ipython/ipython/issues/196>`_: IPython can't deal with unicode file name.
417 417 * `25 <https://github.com/ipython/ipython/issues/25>`_: unicode bug - encoding input
418 418 * `290 <https://github.com/ipython/ipython/issues/290>`_: try/except/else clauses can't be typed, code input stops too early.
419 419 * `43 <https://github.com/ipython/ipython/issues/43>`_: Implement SSH support in ipcluster
420 420 * `6 <https://github.com/ipython/ipython/issues/6>`_: Update the Sphinx docs for the new ipcluster
421 421 * `9 <https://github.com/ipython/ipython/issues/9>`_: Getting "DeadReferenceError: Calling Stale Broker" after ipcontroller restart
422 422 * `132 <https://github.com/ipython/ipython/issues/132>`_: Ipython prevent south from working
423 423 * `27 <https://github.com/ipython/ipython/issues/27>`_: generics.complete_object broken
424 424 * `60 <https://github.com/ipython/ipython/issues/60>`_: Improve absolute import management for iptest.py
425 425 * `31 <https://github.com/ipython/ipython/issues/31>`_: Issues in magic_whos code
426 426 * `52 <https://github.com/ipython/ipython/issues/52>`_: Document testing process better
427 427 * `44 <https://github.com/ipython/ipython/issues/44>`_: Merge history from multiple sessions
428 428 * `182 <https://github.com/ipython/ipython/issues/182>`_: ipython q4thread in version 10.1 not starting properly
429 429 * `143 <https://github.com/ipython/ipython/issues/143>`_: Ipython.gui.wx.ipython_view.IPShellWidget: ignores user*_ns arguments
430 430 * `127 <https://github.com/ipython/ipython/issues/127>`_: %edit does not work on filenames consisted of pure numbers
431 431 * `126 <https://github.com/ipython/ipython/issues/126>`_: Can't transfer command line argument to script
432 432 * `28 <https://github.com/ipython/ipython/issues/28>`_: Offer finer control for initialization of input streams
433 433 * `58 <https://github.com/ipython/ipython/issues/58>`_: ipython change char '0xe9' to 4 spaces
434 434 * `68 <https://github.com/ipython/ipython/issues/68>`_: Problems with Control-C stopping ipcluster on Windows/Python2.6
435 435 * `24 <https://github.com/ipython/ipython/issues/24>`_: ipcluster does not start all the engines
436 436 * `240 <https://github.com/ipython/ipython/issues/240>`_: Incorrect method displayed in %psource
437 437 * `120 <https://github.com/ipython/ipython/issues/120>`_: inspect.getsource fails for functions defined on command line
438 438 * `212 <https://github.com/ipython/ipython/issues/212>`_: IPython ignores exceptions in the first evaulation of class attrs
439 439 * `108 <https://github.com/ipython/ipython/issues/108>`_: ipython disables python logger
440 440 * `100 <https://github.com/ipython/ipython/issues/100>`_: Overzealous introspection
441 441 * `18 <https://github.com/ipython/ipython/issues/18>`_: %cpaste freeze sync frontend
442 442 * `200 <https://github.com/ipython/ipython/issues/200>`_: Unicode error when starting ipython in a folder with non-ascii path
443 443 * `130 <https://github.com/ipython/ipython/issues/130>`_: Deadlock when importing a module that creates an IPython client
444 444 * `134 <https://github.com/ipython/ipython/issues/134>`_: multline block scrolling
445 445 * `46 <https://github.com/ipython/ipython/issues/46>`_: Input to %timeit is not preparsed
446 446 * `285 <https://github.com/ipython/ipython/issues/285>`_: ipcluster local -n 4 fails
447 447 * `205 <https://github.com/ipython/ipython/issues/205>`_: In the Qt console, Tab should insert 4 spaces when not completing
448 448 * `145 <https://github.com/ipython/ipython/issues/145>`_: Bug on MSW systems: idle can not be set as default IPython editor. Fix Suggested.
449 449 * `77 <https://github.com/ipython/ipython/issues/77>`_: ipython oops in cygwin
450 450 * `121 <https://github.com/ipython/ipython/issues/121>`_: If plot windows are closed via window controls, no more plotting is possible.
451 451 * `111 <https://github.com/ipython/ipython/issues/111>`_: Iterator version of TaskClient.map() that returns results as they become available
452 452 * `109 <https://github.com/ipython/ipython/issues/109>`_: WinHPCLauncher is a hard dependency that causes errors in the test suite
453 453 * `86 <https://github.com/ipython/ipython/issues/86>`_: Make IPython work with multiprocessing
454 454 * `15 <https://github.com/ipython/ipython/issues/15>`_: Implement SGE support in ipcluster
455 455 * `3 <https://github.com/ipython/ipython/issues/3>`_: Implement PBS support in ipcluster
456 456 * `53 <https://github.com/ipython/ipython/issues/53>`_: Internal Python error in the inspect module
457 457 * `74 <https://github.com/ipython/ipython/issues/74>`_: Manager() [from multiprocessing module] hangs ipythonx but not ipython
458 458 * `51 <https://github.com/ipython/ipython/issues/51>`_: Out not working with ipythonx
459 459 * `201 <https://github.com/ipython/ipython/issues/201>`_: use session.send throughout zmq code
460 460 * `115 <https://github.com/ipython/ipython/issues/115>`_: multiline specials not defined in 0.11 branch
461 461 * `93 <https://github.com/ipython/ipython/issues/93>`_: when looping, cursor appears at leftmost point in newline
462 462 * `133 <https://github.com/ipython/ipython/issues/133>`_: whitespace after Source introspection
463 463 * `50 <https://github.com/ipython/ipython/issues/50>`_: Ctrl-C with -gthread on Windows, causes uncaught IOError
464 464 * `65 <https://github.com/ipython/ipython/issues/65>`_: Do not use .message attributes in exceptions, deprecated in 2.6
465 465 * `76 <https://github.com/ipython/ipython/issues/76>`_: syntax error when raise is inside except process
466 466 * `107 <https://github.com/ipython/ipython/issues/107>`_: bdist_rpm causes traceback looking for a non-existant file
467 467 * `113 <https://github.com/ipython/ipython/issues/113>`_: initial magic ? (question mark) fails before wildcard
468 468 * `128 <https://github.com/ipython/ipython/issues/128>`_: Pdb instance has no attribute 'curframe'
469 469 * `139 <https://github.com/ipython/ipython/issues/139>`_: running with -pylab pollutes namespace
470 470 * `140 <https://github.com/ipython/ipython/issues/140>`_: malloc error during tab completion of numpy array member functions starting with 'c'
471 471 * `153 <https://github.com/ipython/ipython/issues/153>`_: ipy_vimserver traceback on Windows
472 472 * `154 <https://github.com/ipython/ipython/issues/154>`_: using ipython in Slicer3 show how os.environ['HOME'] is not defined
473 473 * `185 <https://github.com/ipython/ipython/issues/185>`_: show() blocks in pylab mode with ipython 0.10.1
474 474 * `189 <https://github.com/ipython/ipython/issues/189>`_: Crash on tab completion
475 475 * `274 <https://github.com/ipython/ipython/issues/274>`_: bashism in sshx.sh
476 476 * `276 <https://github.com/ipython/ipython/issues/276>`_: Calling `sip.setapi` does not work if app has already imported from PyQt4
477 477 * `277 <https://github.com/ipython/ipython/issues/277>`_: matplotlib.image imgshow from 10.1 segfault
478 478 * `288 <https://github.com/ipython/ipython/issues/288>`_: Incorrect docstring in zmq/kernelmanager.py
479 479 * `286 <https://github.com/ipython/ipython/issues/286>`_: Fix IPython.Shell compatibility layer
480 480 * `99 <https://github.com/ipython/ipython/issues/99>`_: blank lines in history
481 481 * `129 <https://github.com/ipython/ipython/issues/129>`_: psearch: TypeError: expected string or buffer
482 482 * `190 <https://github.com/ipython/ipython/issues/190>`_: Add option to format float point output
483 483 * `246 <https://github.com/ipython/ipython/issues/246>`_: Application not conforms XDG Base Directory Specification
484 484 * `48 <https://github.com/ipython/ipython/issues/48>`_: IPython should follow the XDG Base Directory spec for configuration
485 485 * `176 <https://github.com/ipython/ipython/issues/176>`_: Make client-side history persistence readline-independent
486 486 * `279 <https://github.com/ipython/ipython/issues/279>`_: Backtraces when using ipdb do not respect -colour LightBG setting
487 487 * `119 <https://github.com/ipython/ipython/issues/119>`_: Broken type filter in magic_who_ls
488 488 * `271 <https://github.com/ipython/ipython/issues/271>`_: Intermittent problem with print output in Qt console.
489 489 * `270 <https://github.com/ipython/ipython/issues/270>`_: Small typo in IPython developer’s guide
490 490 * `166 <https://github.com/ipython/ipython/issues/166>`_: Add keyboard accelerators to Qt close dialog
491 491 * `173 <https://github.com/ipython/ipython/issues/173>`_: asymmetrical ctrl-A/ctrl-E behavior in multiline
492 492 * `45 <https://github.com/ipython/ipython/issues/45>`_: Autosave history for robustness
493 493 * `162 <https://github.com/ipython/ipython/issues/162>`_: make command history persist in ipythonqt
494 494 * `161 <https://github.com/ipython/ipython/issues/161>`_: make ipythonqt exit without dialog when exit() is called
495 495 * `263 <https://github.com/ipython/ipython/issues/263>`_: [ipython + numpy] Some test errors
496 496 * `256 <https://github.com/ipython/ipython/issues/256>`_: reset docstring ipython 0.10
497 497 * `258 <https://github.com/ipython/ipython/issues/258>`_: allow caching to avoid matplotlib object references
498 498 * `248 <https://github.com/ipython/ipython/issues/248>`_: Can't open and read files after upgrade from 0.10 to 0.10.0
499 499 * `247 <https://github.com/ipython/ipython/issues/247>`_: ipython + Stackless
500 500 * `245 <https://github.com/ipython/ipython/issues/245>`_: Magic save and macro missing newlines, line ranges don't match prompt numbers.
501 501 * `241 <https://github.com/ipython/ipython/issues/241>`_: "exit" hangs on terminal version of IPython
502 502 * `213 <https://github.com/ipython/ipython/issues/213>`_: ipython -pylab no longer plots interactively on 0.10.1
503 503 * `4 <https://github.com/ipython/ipython/issues/4>`_: wx frontend don't display well commands output
504 504 * `5 <https://github.com/ipython/ipython/issues/5>`_: ls command not supported in ipythonx wx frontend
505 505 * `1 <https://github.com/ipython/ipython/issues/1>`_: Document winhpcjob.py and launcher.py
506 506 * `83 <https://github.com/ipython/ipython/issues/83>`_: Usage of testing.util.DeferredTestCase should be replace with twisted.trial.unittest.TestCase
507 507 * `117 <https://github.com/ipython/ipython/issues/117>`_: Redesign how Component instances are tracked and queried
508 508 * `47 <https://github.com/ipython/ipython/issues/47>`_: IPython.kernel.client cannot be imported inside an engine
509 509 * `105 <https://github.com/ipython/ipython/issues/105>`_: Refactor the task dependencies system
510 510 * `210 <https://github.com/ipython/ipython/issues/210>`_: 0.10.1 doc mistake - New IPython Sphinx directive error
511 511 * `209 <https://github.com/ipython/ipython/issues/209>`_: can't activate IPython parallel magics
512 512 * `206 <https://github.com/ipython/ipython/issues/206>`_: Buggy linewrap in Mac OSX Terminal
513 513 * `194 <https://github.com/ipython/ipython/issues/194>`_: !sudo <command> displays password in plain text
514 514 * `186 <https://github.com/ipython/ipython/issues/186>`_: %edit issue under OS X 10.5 - IPython 0.10.1
515 515 * `11 <https://github.com/ipython/ipython/issues/11>`_: Create a daily build PPA for ipython
516 516 * `144 <https://github.com/ipython/ipython/issues/144>`_: logo missing from sphinx docs
517 517 * `181 <https://github.com/ipython/ipython/issues/181>`_: cls command does not work on windows
518 518 * `169 <https://github.com/ipython/ipython/issues/169>`_: Kernel can only be bound to localhost
519 519 * `36 <https://github.com/ipython/ipython/issues/36>`_: tab completion does not escape ()
520 520 * `177 <https://github.com/ipython/ipython/issues/177>`_: Report tracebacks of interactively entered input
521 521 * `148 <https://github.com/ipython/ipython/issues/148>`_: dictionary having multiple keys having frozenset fails to print on IPython
522 522 * `160 <https://github.com/ipython/ipython/issues/160>`_: magic_gui throws TypeError when gui magic is used
523 523 * `150 <https://github.com/ipython/ipython/issues/150>`_: History entries ending with parentheses corrupt command line on OS X 10.6.4
524 524 * `146 <https://github.com/ipython/ipython/issues/146>`_: -ipythondir - using an alternative .ipython dir for rc type stuff
525 525 * `114 <https://github.com/ipython/ipython/issues/114>`_: Interactive strings get mangled with "_ip.magic"
526 526 * `135 <https://github.com/ipython/ipython/issues/135>`_: crash on invalid print
527 527 * `69 <https://github.com/ipython/ipython/issues/69>`_: Usage of "mycluster" profile in docs and examples
528 528 * `37 <https://github.com/ipython/ipython/issues/37>`_: Fix colors in output of ResultList on Windows
@@ -1,1607 +1,1607 b''
1 1 .. _issues_list_200:
2 2
3 3 Issues closed in the 2.x development cycle
4 4 ==========================================
5 5
6 6 Issues closed in 2.4.1
7 7 ----------------------
8 8
9 9 GitHub stats for 2014/11/01 - 2015/01/30
10 10
11 11 .. note::
12 12
13 13 IPython 2.4.0 was released without a few of the backports listed below.
14 14 2.4.1 has the correct patches intended for 2.4.0.
15 15
16 16 These lists are automatically generated, and may be incomplete or contain duplicates.
17 17
18 18 The following 7 authors contributed 35 commits.
19 19
20 20 * Benjamin Ragan-Kelley
21 21 * Carlos Cordoba
22 22 * Damon Allen
23 23 * Jessica B. Hamrick
24 24 * Mateusz Paprocki
25 25 * Peter WΓΌrtz
26 26 * Thomas Kluyver
27 27
28 28 We closed 10 issues and merged 6 pull requests;
29 29 this is the full list (generated with the script
30 30 :file:`tools/github_stats.py`):
31 31
32 32 Pull Requests (10):
33 33
34 34 * :ghpull:`7106`: Changed the display order of rich output in the live notebook.
35 35 * :ghpull:`6878`: Update pygments monkeypatch for compatibility with Pygments 2.0
36 36 * :ghpull:`6778`: backport nbformat v4 to 2.x
37 37 * :ghpull:`6761`: object_info_reply field is oname, not name
38 38 * :ghpull:`6653`: Fix IPython.utils.ansispan() to ignore stray [0m
39 39 * :ghpull:`6706`: Correctly display prompt numbers that are ``None``
40 40 * :ghpull:`6634`: don't use contains in SelectWidget item_query
41 41 * :ghpull:`6593`: note how to start the qtconsole
42 42 * :ghpull:`6281`: more minor fixes to release scripts
43 43 * :ghpull:`5458`: Add support for PyQt5.
44 44
45 45 Issues (6):
46 46
47 47 * :ghissue:`7272`: qtconsole problems with pygments
48 48 * :ghissue:`7049`: Cause TypeError: 'NoneType' object is not callable in qtconsole
49 49 * :ghissue:`6877`: Qt console doesn't work with pygments 2.0rc1
50 50 * :ghissue:`6689`: Problem with string containing two or more question marks
51 51 * :ghissue:`6702`: Cell numbering after ``ClearOutput`` preprocessor
52 52 * :ghissue:`6633`: selectwidget doesn't display 1 as a selection choice when passed in as a member of values list
53 53
54 54
55 55 Issues closed in 2.3.1
56 56 ----------------------
57 57
58 58 Just one bugfix: fixed bad CRCRLF line-endings in notebooks on Windows
59 59
60 60 Pull Requests (1):
61 61
62 62 * :ghpull:`6911`: don't use text mode in mkstemp
63 63
64 64 Issues (1):
65 65
66 66 * :ghissue:`6599`: Notebook.ipynb CR+LF turned into CR+CR+LF
67 67
68 68
69 69 Issues closed in 2.3.0
70 70 ----------------------
71 71
72 72 GitHub stats for 2014/08/06 - 2014/10/01
73 73
74 74 These lists are automatically generated, and may be incomplete or contain duplicates.
75 75
76 76 The following 6 authors contributed 31 commits.
77 77
78 78 * Benjamin Ragan-Kelley
79 79 * David Hirschfeld
80 80 * Eric Firing
81 81 * Jessica B. Hamrick
82 82 * Matthias Bussonnier
83 83 * Thomas Kluyver
84 84
85 85 We closed 16 issues and merged 9 pull requests;
86 86 this is the full list (generated with the script
87 87 :file:`tools/github_stats.py`):
88 88
89 89 Pull Requests (16):
90 90
91 91 * :ghpull:`6587`: support ``%matplotlib qt5`` and ``%matplotlib nbagg``
92 92 * :ghpull:`6583`: Windows symlink test fixes
93 93 * :ghpull:`6585`: fixes :ghissue:`6473`
94 94 * :ghpull:`6581`: Properly mock winreg functions for test
95 95 * :ghpull:`6556`: Use some more informative asserts in inprocess kernel tests
96 96 * :ghpull:`6514`: Fix for copying metadata flags
97 97 * :ghpull:`6453`: Copy file metadata in atomic save
98 98 * :ghpull:`6480`: only compare host:port in Websocket.check_origin
99 99 * :ghpull:`6483`: Trim anchor link in heading cells, fixes :ghissue:`6324`
100 100 * :ghpull:`6410`: Fix relative import in appnope
101 101 * :ghpull:`6395`: update mathjax CDN url in nbconvert template
102 102 * :ghpull:`6269`: Implement atomic save
103 103 * :ghpull:`6374`: Rename ``abort_queues`` --> ``_abort_queues``
104 104 * :ghpull:`6321`: Use appnope in qt and wx gui support from the terminal; closes :ghissue:`6189`
105 105 * :ghpull:`6318`: use write_error instead of get_error_html
106 106 * :ghpull:`6303`: Fix error message when failing to load a notebook
107 107
108 108 Issues (9):
109 109
110 110 * :ghissue:`6057`: ``%matplotlib`` + qt5
111 111 * :ghissue:`6518`: Test failure in atomic save on Windows
112 112 * :ghissue:`6473`: Switching between "Raw Cell Format" and "Edit Metadata" does not work
113 113 * :ghissue:`6405`: Creating a notebook should respect directory permissions; saving should respect prior permissions
114 114 * :ghissue:`6324`: Anchors in Heading don't work.
115 115 * :ghissue:`6409`: No module named '_dummy'
116 116 * :ghissue:`6392`: Mathjax library link broken
117 117 * :ghissue:`6329`: IPython Notebook Server URL now requires "tree" at the end of the URL? (version 2.2)
118 118 * :ghissue:`6189`: ipython console freezes for increasing no of seconds in %pylab mode
119 119
120 120 Issues closed in 2.2.0
121 121 ----------------------
122 122
123 123 GitHub stats for 2014/05/21 - 2014/08/06 (tag: rel-2.1.0)
124 124
125 125 These lists are automatically generated, and may be incomplete or contain duplicates.
126 126
127 127 The following 13 authors contributed 36 commits.
128 128
129 129 * Adam Hodgen
130 130 * Benjamin Ragan-Kelley
131 131 * BjΓΆrn GrΓΌning
132 132 * Dara Adib
133 133 * Eric Galloway
134 134 * Jonathan Frederic
135 135 * Kyle Kelley
136 136 * Matthias Bussonnier
137 137 * Paul Ivanov
138 138 * Shayne Hodge
139 139 * Steven Anton
140 140 * Thomas Kluyver
141 141 * Zahari
142 142
143 143 We closed 23 issues and merged 11 pull requests;
144 144 this is the full list (generated with the script
145 145 :file:`tools/github_stats.py`):
146 146
147 147 Pull Requests (23):
148 148
149 149 * :ghpull:`6279`: minor updates to release scripts
150 150 * :ghpull:`6273`: Upgrade default mathjax version.
151 151 * :ghpull:`6249`: always use HTTPS getting mathjax from CDN
152 152 * :ghpull:`6114`: update hmac signature comparison
153 153 * :ghpull:`6195`: Close handle on new temporary files before returning filename
154 154 * :ghpull:`6143`: pin tornado to < 4 on travis js tests
155 155 * :ghpull:`6134`: remove rackcdn https workaround for mathjax cdn
156 156 * :ghpull:`6120`: Only allow iframe embedding on same origin.
157 157 * :ghpull:`6117`: Remove / from route of TreeRedirectHandler.
158 158 * :ghpull:`6105`: only set allow_origin_pat if defined
159 159 * :ghpull:`6102`: Add newline if missing to end of script magic cell
160 160 * :ghpull:`6077`: allow unicode keys in dicts in json_clean
161 161 * :ghpull:`6061`: make CORS configurable
162 162 * :ghpull:`6081`: don’t modify dict keys while iterating through them
163 163 * :ghpull:`5803`: unify visual line handling
164 164 * :ghpull:`6005`: Changed right arrow key movement function to mirror left arrow key
165 165 * :ghpull:`6029`: add pickleutil.PICKLE_PROTOCOL
166 166 * :ghpull:`6003`: Set kernel_id before checking websocket
167 167 * :ghpull:`5994`: Fix ssh tunnel for Python3
168 168 * :ghpull:`5973`: Do not create checkpoint_dir relative to current dir
169 169 * :ghpull:`5933`: fix qt_loader import hook signature
170 170 * :ghpull:`5944`: Markdown rendering bug fix.
171 171 * :ghpull:`5917`: use shutil.move instead of os.rename
172 172
173 173 Issues (11):
174 174
175 175 * :ghissue:`6246`: Include MathJax by default or access the CDN over a secure connection
176 176 * :ghissue:`5525`: Websocket origin check fails when used with Apache WS proxy
177 177 * :ghissue:`5901`: 2 test failures in Python 3.4 in parallel group
178 178 * :ghissue:`5926`: QT console: text selection cannot be made from left to right with keyboard
179 179 * :ghissue:`5998`: use_dill does not work in Python 3.4
180 180 * :ghissue:`5964`: Traceback on Qt console exit
181 181 * :ghissue:`5787`: Error in Notebook-Generated latex (nbconvert)
182 182 * :ghissue:`5950`: qtconsole truncates help
183 183 * :ghissue:`5943`: 2.x: notebook fails to load when using HTML comments
184 184 * :ghissue:`5932`: Qt ImportDenier Does Not Adhere to PEP302
185 185 * :ghissue:`5898`: OSError when moving configuration file
186 186
187 187 Issues closed in 2.1.0
188 188 ----------------------
189 189
190 190 GitHub stats for 2014/04/02 - 2014/05/21 (since 2.0.0)
191 191
192 192 These lists are automatically generated, and may be incomplete or contain duplicates.
193 193
194 194 The following 35 authors contributed 145 commits.
195 195
196 196 * Adrian Price-Whelan
197 197 * Aron Ahmadia
198 198 * Benjamin Ragan-Kelley
199 199 * Benjamin Schultz
200 200 * BjΓΆrn Linse
201 201 * Blake Griffith
202 202 * chebee7i
203 203 * DamiΓ‘n Avila
204 204 * Dav Clark
205 205 * dexterdev
206 206 * Erik Tollerud
207 207 * Grzegorz RoΕΌniecki
208 208 * Jakob Gager
209 209 * jdavidheiser
210 210 * Jessica B. Hamrick
211 211 * Jim Garrison
212 212 * Jonathan Frederic
213 213 * Matthias Bussonnier
214 214 * Maximilian Albert
215 215 * Mohan Raj Rajamanickam
216 216 * ncornette
217 217 * Nikolay Koldunov
218 218 * Nile Geisinger
219 219 * Pankaj Pandey
220 220 * Paul Ivanov
221 221 * Pierre Haessig
222 222 * Raffaele De Feo
223 223 * Renaud Richardet
224 224 * Spencer Nelson
225 225 * Steve Chan
226 226 * sunny
227 227 * Susan Tan
228 228 * Thomas Kluyver
229 229 * Yaroslav Halchenko
230 230 * zah
231 231
232 232 We closed a total of 129 issues, 92 pull requests and 37 regular issues;
233 233 this is the full list (generated with the script
234 234 :file:`tools/github_stats.py --milestone 2.1`):
235 235
236 236 Pull Requests (92):
237 237
238 238 * :ghpull:`5871`: specify encoding in msgpack.unpackb
239 239 * :ghpull:`5869`: Catch more errors from clipboard access on Windows
240 240 * :ghpull:`5866`: Make test robust against differences in line endings
241 241 * :ghpull:`5605`: Two cell toolbar fixes.
242 242 * :ghpull:`5843`: remove Firefox-specific CSS workaround
243 243 * :ghpull:`5845`: Pass Windows interrupt event to kernels as an environment variable
244 244 * :ghpull:`5835`: fix typo in v2 convert
245 245 * :ghpull:`5841`: Fix writing history with output to a file in Python 2
246 246 * :ghpull:`5842`: fix typo in nbconvert help
247 247 * :ghpull:`5846`: Fix typos in Cython example
248 248 * :ghpull:`5839`: Close graphics dev in finally clause
249 249 * :ghpull:`5837`: pass on install docs
250 250 * :ghpull:`5832`: Fixed example to work with python3
251 251 * :ghpull:`5826`: allow notebook tour instantiation to fail
252 252 * :ghpull:`5560`: Minor expansion of Cython example
253 253 * :ghpull:`5818`: interpret any exception in getcallargs as not callable
254 254 * :ghpull:`5816`: Add output to IPython directive when in verbatim mode.
255 255 * :ghpull:`5822`: Don't overwrite widget description in interact
256 256 * :ghpull:`5782`: Silence exception thrown by completer when dir() does not return a list
257 257 * :ghpull:`5807`: Drop log level to info for Qt console shutdown
258 258 * :ghpull:`5814`: Remove -i options from mv, rm and cp aliases
259 259 * :ghpull:`5812`: Fix application name when printing subcommand help.
260 260 * :ghpull:`5804`: remove an inappropriate ``!``
261 261 * :ghpull:`5805`: fix engine startup files
262 262 * :ghpull:`5806`: Don't auto-move .config/ipython if symbolic link
263 263 * :ghpull:`5716`: Add booktabs package to latex base.tplx
264 264 * :ghpull:`5669`: allows threadsafe sys.stdout.flush from background threads
265 265 * :ghpull:`5668`: allow async output on the most recent request
266 266 * :ghpull:`5768`: fix cursor keys in long lines wrapped in markdown
267 267 * :ghpull:`5788`: run cells with ``silent=True`` in ``%run nb.ipynb``
268 268 * :ghpull:`5715`: log all failed ajax API requests
269 269 * :ghpull:`5769`: Don't urlescape the text that goes into a title tag
270 270 * :ghpull:`5762`: Fix check for pickling closures
271 271 * :ghpull:`5766`: View.map with empty sequence should return empty list
272 272 * :ghpull:`5758`: Applied bug fix: using fc and ec did not properly set the figure canvas ...
273 273 * :ghpull:`5754`: Format command name into subcommand_description at run time, not import
274 274 * :ghpull:`5744`: Describe using PyPI/pip to distribute & install extensions
275 275 * :ghpull:`5712`: monkeypatch inspect.findsource only when we use it
276 276 * :ghpull:`5708`: create checkpoints dir in notebook subdirectories
277 277 * :ghpull:`5714`: log error message when API requests fail
278 278 * :ghpull:`5732`: Quick typo fix in nbformat/convert.py
279 279 * :ghpull:`5713`: Fix a NameError in IPython.parallel
280 280 * :ghpull:`5704`: Update nbconvertapp.py
281 281 * :ghpull:`5534`: cleanup some ``pre`` css inheritance
282 282 * :ghpull:`5699`: don't use common names in require decorators
283 283 * :ghpull:`5692`: Update notebook.rst fixing broken reference to notebook examples readme
284 284 * :ghpull:`5693`: Update parallel_intro.rst to fix a broken link to examples
285 285 * :ghpull:`5486`: disambiguate to location when no IPs can be determined
286 286 * :ghpull:`5574`: Remove the outdated keyboard shortcuts from notebook docs
287 287 * :ghpull:`5568`: Use ``__qualname__`` in pretty reprs for Python 3
288 288 * :ghpull:`5678`: Fix copy & paste error in docstring of ImageWidget class
289 289 * :ghpull:`5677`: Fix %bookmark -l for Python 3
290 290 * :ghpull:`5670`: nbconvert: Fix CWD imports
291 291 * :ghpull:`5647`: Mention git hooks in install documentation
292 292 * :ghpull:`5671`: Fix blank slides issue in Reveal slideshow pdf export
293 293 * :ghpull:`5657`: use 'localhost' as default for the notebook server
294 294 * :ghpull:`5584`: more semantic icons
295 295 * :ghpull:`5594`: update components with marked-0.3.2
296 296 * :ghpull:`5500`: check for Python 3.2
297 297 * :ghpull:`5582`: reset readline after running PYTHONSTARTUP
298 298 * :ghpull:`5630`: Fixed Issue :ghissue:`4012` Added Help menubar link to Github markdown doc
299 299 * :ghpull:`5613`: Fixing bug :ghissue:`5607`
300 300 * :ghpull:`5633`: Provide more help if lessc is not found.
301 301 * :ghpull:`5620`: fixed a typo in IPython.core.formatters
302 302 * :ghpull:`5619`: Fix typo in storemagic module docstring
303 303 * :ghpull:`5592`: add missing ``browser`` to notebook_aliases list
304 304 * :ghpull:`5506`: Fix ipconfig regex pattern
305 305 * :ghpull:`5581`: Fix rmagic for cells ending in comment.
306 306 * :ghpull:`5576`: only process cr if it's found
307 307 * :ghpull:`5478`: Add git-hooks install script. Update README.md
308 308 * :ghpull:`5546`: do not shutdown notebook if 'n' is part of answer
309 309 * :ghpull:`5527`: Don't remove upload items from nav tree unless explicitly requested.
310 310 * :ghpull:`5501`: remove inappropriate wheel tag override
311 311 * :ghpull:`5548`: FileNotebookManager: Use shutil.move() instead of os.rename()
312 312 * :ghpull:`5524`: never use ``for (var i in array)``
313 313 * :ghpull:`5459`: Fix interact animation page jump FF
314 314 * :ghpull:`5559`: Minor typo fix in "Cython Magics.ipynb"
315 315 * :ghpull:`5507`: Fix typo in interactive widgets examples index notebook
316 316 * :ghpull:`5554`: Make HasTraits pickleable
317 317 * :ghpull:`5535`: fix n^2 performance issue in coalesce_streams preprocessor
318 318 * :ghpull:`5522`: fix iteration over Client
319 319 * :ghpull:`5488`: Added missing require and jquery from cdn.
320 320 * :ghpull:`5516`: ENH: list generated config files in generated, and rm them upon clean
321 321 * :ghpull:`5493`: made a minor fix to one of the widget examples
322 322 * :ghpull:`5512`: Update tooltips to refer to shift-tab
323 323 * :ghpull:`5505`: Make backport_pr work on Python 3
324 324 * :ghpull:`5503`: check explicitly for 'dev' before adding the note to docs
325 325 * :ghpull:`5498`: use milestones to indicate backport
326 326 * :ghpull:`5492`: Polish whatsnew docs
327 327 * :ghpull:`5495`: Fix various broken things in docs
328 328 * :ghpull:`5496`: Exclude whatsnew/pr directory from docs builds
329 329 * :ghpull:`5489`: Fix required Python versions
330 330
331 331 Issues (37):
332 332
333 333 * :ghissue:`5364`: Horizontal scrollbar hides cell's last line on Firefox
334 334 * :ghissue:`5192`: horisontal scrollbar overlaps output or touches next cell
335 335 * :ghissue:`5840`: Third-party Windows kernels don't get interrupt signal
336 336 * :ghissue:`2412`: print history to file using qtconsole and notebook
337 337 * :ghissue:`5703`: Notebook doesn't render with "ask me every time" cookie setting in Firefox
338 338 * :ghissue:`5817`: calling mock object in IPython 2.0.0 under Python 3.4.0 raises AttributeError
339 339 * :ghissue:`5499`: Error running widgets nbconvert example
340 340 * :ghissue:`5654`: Broken links from ipython documentation
341 341 * :ghissue:`5019`: print in QT event callback doesn't show up in ipython notebook.
342 342 * :ghissue:`5800`: Only last In prompt number set ?
343 343 * :ghissue:`5801`: startup_command specified in ipengine_config.py is not executed
344 344 * :ghissue:`5690`: ipython 2.0.0 and pandoc 1.12.2.1 problem
345 345 * :ghissue:`5408`: Add checking/flushing of background output from kernel in mainloop
346 346 * :ghissue:`5407`: clearing message handlers on status=idle loses async output
347 347 * :ghissue:`5467`: Incorrect behavior of up/down keyboard arrows in code cells on wrapped lines
348 348 * :ghissue:`3085`: nicer notebook error message when lacking permissions
349 349 * :ghissue:`5765`: map_sync over empty list raises IndexError
350 350 * :ghissue:`5553`: Notebook matplotlib inline backend: can't set figure facecolor
351 351 * :ghissue:`5710`: inspect.findsource monkeypatch raises wrong exception for C extensions
352 352 * :ghissue:`5706`: Multi-Directory notebooks overwrite each other's checkpoints
353 353 * :ghissue:`5698`: can't require a function named ``f``
354 354 * :ghissue:`5569`: Keyboard shortcuts in documentation are out of date
355 355 * :ghissue:`5566`: Function name printing should use ``__qualname__`` instead of ``__name__`` (Python 3)
356 356 * :ghissue:`5676`: "bookmark -l" not working in ipython 2.0
357 357 * :ghissue:`5555`: Differentiate more clearly between Notebooks and Folders in new UI
358 358 * :ghissue:`5590`: Marked double escape
359 359 * :ghissue:`5514`: import tab-complete fail with ipython 2.0 shell
360 360 * :ghissue:`4012`: Notebook: link to markdown formatting reference
361 361 * :ghissue:`5611`: Typo in 'storemagic' documentation
362 362 * :ghissue:`5589`: Kernel start fails when using --browser argument
363 363 * :ghissue:`5491`: Bug in Windows ipconfig ip address regular expression
364 364 * :ghissue:`5579`: rmagic extension throws 'Error while parsing the string.' when last line is comment
365 365 * :ghissue:`5518`: Ipython2 will not open ipynb in example directory
366 366 * :ghissue:`5561`: New widget documentation has missing notebook link
367 367 * :ghissue:`5128`: Page jumping when output from widget interaction replaced
368 368 * :ghissue:`5519`: IPython.parallel.Client behavior as iterator
369 369 * :ghissue:`5510`: Tab-completion for function argument list
370 370
371 371
372 372 Issues closed in 2.0.0
373 373 ----------------------
374 374
375 375
376 376 GitHub stats for 2013/08/09 - 2014/04/01 (since 1.0.0)
377 377
378 378 These lists are automatically generated, and may be incomplete or contain duplicates.
379 379
380 380 The following 94 authors contributed 3949 commits.
381 381
382 382 * Aaron Meurer
383 383 * Abhinav Upadhyay
384 384 * Adam Riggall
385 385 * Alex Rudy
386 386 * Andrew Mark
387 387 * Angus Griffith
388 388 * Antony Lee
389 389 * Aron Ahmadia
390 390 * Arun Persaud
391 391 * Benjamin Ragan-Kelley
392 392 * Bing Xia
393 393 * Blake Griffith
394 394 * Bouke van der Bijl
395 395 * Bradley M. Froehle
396 396 * Brian E. Granger
397 397 * Carlos Cordoba
398 398 * chapmanb
399 399 * chebee7i
400 400 * Christoph Gohlke
401 401 * Christophe Pradal
402 402 * Cyrille Rossant
403 403 * DamiΓ‘n Avila
404 404 * Daniel B. Vasquez
405 405 * Dav Clark
406 406 * David Hirschfeld
407 407 * David P. Sanders
408 408 * David Wyde
409 409 * David Γ–sterberg
410 410 * Doug Blank
411 411 * Dražen Lučanin
412 412 * epifanio
413 413 * Fernando Perez
414 414 * Gabriel Becker
415 415 * Geert Barentsen
416 416 * Hans Meine
417 417 * Ingolf Becker
418 418 * Jake Vanderplas
419 419 * Jakob Gager
420 420 * James Porter
421 421 * Jason Grout
422 422 * Jeffrey Tratner
423 423 * Jonah Graham
424 424 * Jonathan Frederic
425 425 * Joris Van den Bossche
426 426 * Juergen Hasch
427 427 * Julian Taylor
428 428 * Katie Silverio
429 429 * Kevin Burke
430 430 * Kieran O'Mahony
431 431 * Konrad Hinsen
432 432 * Kyle Kelley
433 433 * Lawrence Fu
434 434 * Marc Molla
435 435 * MartΓ­n GaitΓ‘n
436 436 * Matt Henderson
437 437 * Matthew Brett
438 438 * Matthias Bussonnier
439 439 * Michael Droettboom
440 440 * Mike McKerns
441 441 * Nathan Goldbaum
442 442 * Pablo de Oliveira
443 443 * Pankaj Pandey
444 444 * Pascal Schetelat
445 445 * Paul Ivanov
446 446 * Paul Moore
447 447 * Pere Vilas
448 448 * Peter Davis
449 449 * Philippe Mallet-Ladeira
450 450 * Preston Holmes
451 451 * Puneeth Chaganti
452 452 * Richard Everson
453 453 * Roberto Bonvallet
454 454 * Samuel Ainsworth
455 455 * Sean Vig
456 456 * Shashi Gowda
457 457 * Skipper Seabold
458 458 * Stephan Rave
459 459 * Steve Fox
460 460 * Steven Silvester
461 461 * stonebig
462 462 * Susan Tan
463 463 * Sylvain Corlay
464 464 * Takeshi Kanmae
465 465 * Ted Drain
466 466 * Thomas A Caswell
467 467 * Thomas Kluyver
468 468 * ThΓ©ophile Studer
469 469 * Volker Braun
470 470 * Wieland Hoffmann
471 471 * Yaroslav Halchenko
472 472 * Yoval P.
473 473 * Yung Siang Liau
474 474 * Zachary Sailer
475 475 * zah
476 476
477 477
478 478 We closed a total of 1121 issues, 687 pull requests and 434 regular issues;
479 479 this is the full list (generated with the script
480 480 :file:`tools/github_stats.py`):
481 481
482 482 Pull Requests (687):
483 483
484 484 * :ghpull:`5487`: remove weird unicode space in the new copyright header
485 485 * :ghpull:`5476`: For 2.0: Fix links in Notebook Help Menu
486 486 * :ghpull:`5337`: Examples reorganization
487 487 * :ghpull:`5436`: CodeMirror shortcuts in QuickHelp
488 488 * :ghpull:`5444`: Fix numeric verification for Int and Float text widgets.
489 489 * :ghpull:`5449`: Stretch keyboard shortcut dialog
490 490 * :ghpull:`5473`: Minor corrections of git-hooks setup instructions
491 491 * :ghpull:`5471`: Add coding magic comment to nbconvert Python template
492 492 * :ghpull:`5452`: print_figure returns unicode for svg
493 493 * :ghpull:`5450`: proposal: remove codename
494 494 * :ghpull:`5462`: DOC : fixed minor error in using topological sort
495 495 * :ghpull:`5463`: make spin_thread tests more forgiving of slow VMs
496 496 * :ghpull:`5464`: Fix starting notebook server with file/directory at command line.
497 497 * :ghpull:`5453`: remove gitwash
498 498 * :ghpull:`5454`: Improve history API docs
499 499 * :ghpull:`5431`: update github_stats and gh_api for 2.0
500 500 * :ghpull:`5290`: Add dual mode JS tests
501 501 * :ghpull:`5451`: check that a handler is actually registered in ShortcutManager.handles
502 502 * :ghpull:`5447`: Add %%python2 cell magic
503 503 * :ghpull:`5439`: Point to the stable SymPy docs, not the dev docs
504 504 * :ghpull:`5437`: Install jquery-ui images
505 505 * :ghpull:`5434`: fix check for empty cells in rst template
506 506 * :ghpull:`5432`: update links in notebook help menu
507 507 * :ghpull:`5435`: Update whatsnew (notebook tour)
508 508 * :ghpull:`5433`: Document extraction of octave and R magics
509 509 * :ghpull:`5428`: Update COPYING.txt
510 510 * :ghpull:`5426`: Separate get_session_info between HistoryAccessor and HistoryManager
511 511 * :ghpull:`5419`: move prompts from margin to main column on small screens
512 512 * :ghpull:`5430`: Make sure `element` is correct in the context of displayed JS
513 513 * :ghpull:`5396`: prevent saving of partially loaded notebooks
514 514 * :ghpull:`5429`: Fix tooltip pager feature
515 515 * :ghpull:`5330`: Updates to shell reference doc
516 516 * :ghpull:`5404`: Fix broken accordion widget
517 517 * :ghpull:`5339`: Don't use fork to start the notebook in js tests
518 518 * :ghpull:`5320`: Fix for Tooltip & completer click focus bug.
519 519 * :ghpull:`5421`: Move configuration of Python test controllers into setup()
520 520 * :ghpull:`5418`: fix typo in ssh launcher send_file
521 521 * :ghpull:`5403`: remove alt-- shortcut
522 522 * :ghpull:`5389`: better log message in deprecated files/ redirect
523 523 * :ghpull:`5333`: Fix filenbmanager.list_dirs fails for Windows user profile directory
524 524 * :ghpull:`5390`: finish PR #5333
525 525 * :ghpull:`5326`: Some gardening on iptest result reporting
526 526 * :ghpull:`5375`: remove unnecessary onload hack from mathjax macro
527 527 * :ghpull:`5368`: Flexbox classes specificity fixes
528 528 * :ghpull:`5331`: fix raw_input CSS
529 529 * :ghpull:`5395`: urlencode images for rst files
530 530 * :ghpull:`5049`: update quickhelp on adding and removing shortcuts
531 531 * :ghpull:`5391`: Fix Gecko (Netscape) keyboard handling
532 532 * :ghpull:`5387`: Respect '\r' characters in nbconvert.
533 533 * :ghpull:`5399`: Revert PR #5388
534 534 * :ghpull:`5388`: Suppress output even when a comment follows ;. Fixes #4525.
535 535 * :ghpull:`5394`: nbconvert doc update
536 536 * :ghpull:`5359`: do not install less sources
537 537 * :ghpull:`5346`: give hint on where to find custom.js
538 538 * :ghpull:`5357`: catch exception in copystat
539 539 * :ghpull:`5380`: Remove DefineShortVerb... line from latex base template
540 540 * :ghpull:`5376`: elide long containers in pretty
541 541 * :ghpull:`5310`: remove raw cell placeholder on focus, closes #5238
542 542 * :ghpull:`5332`: semantic names for indicator icons
543 543 * :ghpull:`5386`: Fix import of socketserver on Python 3
544 544 * :ghpull:`5360`: remove some redundant font-family: monospace
545 545 * :ghpull:`5379`: don't instantiate Application just for default logger
546 546 * :ghpull:`5372`: Don't autoclose strings
547 547 * :ghpull:`5296`: unify keyboard shortcut and codemirror interaction
548 548 * :ghpull:`5349`: Make Hub.registration_timeout configurable
549 549 * :ghpull:`5340`: install bootstrap-tour css
550 550 * :ghpull:`5335`: Update docstring for deepreload module
551 551 * :ghpull:`5321`: Improve assignment regex to match more tuple unpacking syntax
552 552 * :ghpull:`5325`: add NotebookNotary to NotebookApp's class list
553 553 * :ghpull:`5313`: avoid loading preprocessors twice
554 554 * :ghpull:`5308`: fix HTML capitalization in Highlight2HTML
555 555 * :ghpull:`5295`: OutputArea.append_type functions are not prototype methods
556 556 * :ghpull:`5318`: Fix local import of select_figure_formats
557 557 * :ghpull:`5300`: Fix NameError: name '_rl' is not defined
558 558 * :ghpull:`5292`: focus next cell on shift+enter
559 559 * :ghpull:`5291`: debug occasional error in test_queue_status
560 560 * :ghpull:`5289`: Finishing up #5274 (widget paths fixes)
561 561 * :ghpull:`5232`: Make nbconvert html full output like notebook's html.
562 562 * :ghpull:`5288`: Correct initial state of kernel status indicator
563 563 * :ghpull:`5253`: display any output from this session in terminal console
564 564 * :ghpull:`4802`: Tour of the notebook UI (was UI elements inline with highlighting)
565 565 * :ghpull:`5285`: Update signature presentation in pinfo classes
566 566 * :ghpull:`5268`: Refactoring Notebook.command_mode
567 567 * :ghpull:`5226`: Don't run PYTHONSTARTUP file if a file or code is passed
568 568 * :ghpull:`5283`: Remove Widget.closed attribute
569 569 * :ghpull:`5279`: nbconvert: Make sure node is atleast version 0.9.12
570 570 * :ghpull:`5281`: fix a typo introduced by a rebased PR
571 571 * :ghpull:`5280`: append Firefox overflow-x fix
572 572 * :ghpull:`5277`: check that PIL can save JPEG to BytesIO
573 573 * :ghpull:`5044`: Store timestamps for modules to autoreload
574 574 * :ghpull:`5278`: Update whatsnew doc from pr files
575 575 * :ghpull:`5276`: Fix kernel restart in case connection file is deleted.
576 576 * :ghpull:`5272`: allow highlighting language to be set from notebook metadata
577 577 * :ghpull:`5158`: log refusal to serve hidden directories
578 578 * :ghpull:`5188`: New events system
579 579 * :ghpull:`5265`: Missing class def for TimeoutError
580 580 * :ghpull:`5267`: normalize unicode in notebook API tests
581 581 * :ghpull:`5076`: Refactor keyboard handling
582 582 * :ghpull:`5241`: Add some tests for utils
583 583 * :ghpull:`5261`: Don't allow edit mode up arrow to continue past index == 0
584 584 * :ghpull:`5223`: use on-load event to trigger resizable images
585 585 * :ghpull:`5252`: make one strptime call at import of jsonutil
586 586 * :ghpull:`5153`: Dashboard sorting
587 587 * :ghpull:`5169`: Allow custom header
588 588 * :ghpull:`5242`: clear _reply_content cache before using it
589 589 * :ghpull:`5194`: require latex titles to be ascii
590 590 * :ghpull:`5244`: try to avoid EADDRINUSE errors on travis
591 591 * :ghpull:`5245`: support extracted output in HTML template
592 592 * :ghpull:`5209`: make input_area css generic to cells
593 593 * :ghpull:`5246`: less %pylab, more cowbell!
594 594 * :ghpull:`4895`: Improvements to %run completions
595 595 * :ghpull:`5243`: Add Javscript to base display priority list.
596 596 * :ghpull:`5175`: Audit .html() calls take #2
597 597 * :ghpull:`5146`: Dual mode bug fixes.
598 598 * :ghpull:`5207`: Children fire event
599 599 * :ghpull:`5215`: Dashboard "Running" Tab
600 600 * :ghpull:`5240`: Remove unused IPython.nbconvert.utils.console module
601 601 * :ghpull:`5239`: Fix exclusion of tests directories from coverage reports
602 602 * :ghpull:`5203`: capture some logging/warning output in some tests
603 603 * :ghpull:`5216`: fixup positional arg handling in notebook app
604 604 * :ghpull:`5229`: get _ipython_display_ method safely
605 605 * :ghpull:`5234`: DOC : modified docs is HasTraits.traits and HasTraits.class_traits
606 606 * :ghpull:`5221`: Change widget children List to Tuple.
607 607 * :ghpull:`5231`: don't forget base_url when updating address bar in rename
608 608 * :ghpull:`5173`: Moved widget files into static/widgets/*
609 609 * :ghpull:`5222`: Unset PYTHONWARNINGS envvar before running subprocess tests.
610 610 * :ghpull:`5172`: Prevent page breaks when printing notebooks via print-view.
611 611 * :ghpull:`4985`: Add automatic Closebrackets function to Codemirror.
612 612 * :ghpull:`5220`: Make traitlets notify check more robust against classes redefining equality and bool
613 613 * :ghpull:`5197`: If there is an error comparing traitlet values when setting a trait, default to go ahead and notify of the new value.
614 614 * :ghpull:`5210`: fix pyreadline import in rlineimpl
615 615 * :ghpull:`5212`: Wrap nbconvert Markdown/Heading cells in live divs
616 616 * :ghpull:`5200`: Allow to pass option to jinja env
617 617 * :ghpull:`5202`: handle nodejs executable on debian
618 618 * :ghpull:`5112`: band-aid for completion
619 619 * :ghpull:`5187`: handle missing output metadata in nbconvert
620 620 * :ghpull:`5181`: use gnureadline on OS X
621 621 * :ghpull:`5136`: set default value from signature defaults in interact
622 622 * :ghpull:`5132`: remove application/pdf->pdf transform in javascript
623 623 * :ghpull:`5116`: reorganize who knows what about paths
624 624 * :ghpull:`5165`: Don't introspect __call__ for simple callables
625 625 * :ghpull:`5170`: Added msg_throttle sync=True widget traitlet
626 626 * :ghpull:`5191`: Translate markdown link to rst
627 627 * :ghpull:`5037`: FF Fix: alignment and scale of text widget
628 628 * :ghpull:`5179`: remove websocket url
629 629 * :ghpull:`5110`: add InlineBackend.print_figure_kwargs
630 630 * :ghpull:`5147`: Some template URL changes
631 631 * :ghpull:`5100`: remove base_kernel_url
632 632 * :ghpull:`5163`: Simplify implementation of TemporaryWorkingDirectory.
633 633 * :ghpull:`5166`: remove mktemp usage
634 634 * :ghpull:`5133`: don't use combine option on ucs package
635 635 * :ghpull:`5089`: Remove legacy azure nbmanager
636 636 * :ghpull:`5159`: remove append_json reference
637 637 * :ghpull:`5095`: handle image size metadata in nbconvert html
638 638 * :ghpull:`5156`: fix IPython typo, closes #5155
639 639 * :ghpull:`5150`: fix a link that was broken
640 640 * :ghpull:`5114`: use non-breaking space for button with no description
641 641 * :ghpull:`4778`: add APIs for installing notebook extensions
642 642 * :ghpull:`5125`: Fix the display of functions with keyword-only arguments on Python 3.
643 643 * :ghpull:`5097`: minor notebook logging changes
644 644 * :ghpull:`5047`: only validate package_data when it might be used
645 645 * :ghpull:`5121`: fix remove event in KeyboardManager.register_events
646 646 * :ghpull:`5119`: Removed 'list' view from Variable Inspector example
647 647 * :ghpull:`4925`: Notebook manager api fixes
648 648 * :ghpull:`4996`: require print_method to be a bound method
649 649 * :ghpull:`5108`: require specifying the version for gh-pages
650 650 * :ghpull:`5111`: Minor typo in docstring of IPython.parallel DirectView
651 651 * :ghpull:`5098`: mostly debugging changes for IPython.parallel
652 652 * :ghpull:`5087`: trust cells with no output
653 653 * :ghpull:`5059`: Fix incorrect `Patch` logic in widget code
654 654 * :ghpull:`5075`: More flexible box model fixes
655 655 * :ghpull:`5091`: Provide logging messages in ipcluster log when engine or controllers fail to start
656 656 * :ghpull:`5090`: Print a warning when iptest is run from the IPython source directory
657 657 * :ghpull:`5077`: flush replies when entering an eventloop
658 658 * :ghpull:`5055`: Minimal changes to import IPython from IronPython
659 659 * :ghpull:`5078`: Updating JS tests README.md
660 660 * :ghpull:`5083`: don't create js test directories unless they are being used
661 661 * :ghpull:`5062`: adjust some events in nb_roundtrip
662 662 * :ghpull:`5043`: various unicode / url fixes
663 663 * :ghpull:`5066`: remove (almost) all mentions of pylab from our examples
664 664 * :ghpull:`4977`: ensure scp destination directories exist (with mkdir -p)
665 665 * :ghpull:`5053`: Move&rename JS tests
666 666 * :ghpull:`5067`: show traceback in widget handlers
667 667 * :ghpull:`4920`: Adding PDFFormatter and kernel side handling of PDF display data
668 668 * :ghpull:`5048`: Add edit/command mode indicator
669 669 * :ghpull:`5061`: make execute button in menu bar match shift-enter
670 670 * :ghpull:`5052`: Add q to toggle the pager.
671 671 * :ghpull:`5070`: fix flex: auto
672 672 * :ghpull:`5065`: Add example of using annotations in interact
673 673 * :ghpull:`5063`: another pass on Interact example notebooks
674 674 * :ghpull:`5051`: FF Fix: code cell missing hscroll (2)
675 675 * :ghpull:`4960`: Interact/Interactive for widget
676 676 * :ghpull:`5045`: Clear timeout in multi-press keyboard shortcuts.
677 677 * :ghpull:`5060`: Change 'bind' to 'link'
678 678 * :ghpull:`5039`: Expose kernel_info method on inprocess kernel client
679 679 * :ghpull:`5058`: Fix iopubwatcher.py example script.
680 680 * :ghpull:`5035`: FF Fix: code cell missing hscroll
681 681 * :ghpull:`5040`: Polishing some docs
682 682 * :ghpull:`5001`: Add directory navigation to dashboard
683 683 * :ghpull:`5042`: Remove duplicated Channel ABC classes.
684 684 * :ghpull:`5036`: FF Fix: ext link icon same line as link text in help menu
685 685 * :ghpull:`4975`: setup.py changes for 2.0
686 686 * :ghpull:`4774`: emit event on appended element on dom
687 687 * :ghpull:`5023`: Widgets- add ability to pack and unpack arrays on JS side.
688 688 * :ghpull:`5003`: Fix pretty reprs of super() objects
689 689 * :ghpull:`4974`: make paste focus the pasted cell
690 690 * :ghpull:`5012`: Make `SelectionWidget.values` a dict
691 691 * :ghpull:`5018`: Prevent 'iptest IPython' from trying to run.
692 692 * :ghpull:`5025`: citation2latex filter (using HTMLParser)
693 693 * :ghpull:`5027`: pin lessc to 1.4
694 694 * :ghpull:`4952`: Widget test inconsistencies
695 695 * :ghpull:`5014`: Fix command mode & popup view bug
696 696 * :ghpull:`4842`: more subtle kernel indicator
697 697 * :ghpull:`5017`: Add notebook examples link to help menu.
698 698 * :ghpull:`5015`: don't write cell.trusted to disk
699 699 * :ghpull:`5007`: Update whatsnew doc from PR files
700 700 * :ghpull:`5010`: Fixes for widget alignment in FF
701 701 * :ghpull:`4901`: Add a convenience class to sync traitlet attributes
702 702 * :ghpull:`5008`: updated explanation of 'pyin' messages
703 703 * :ghpull:`5004`: Fix widget vslider spacing
704 704 * :ghpull:`4933`: Small Widget inconsistency fixes
705 705 * :ghpull:`4979`: add versioning notes to small message spec changes
706 706 * :ghpull:`4893`: add font-awesome 3.2.1
707 707 * :ghpull:`4982`: Live readout for slider widgets
708 708 * :ghpull:`4813`: make help menu a template
709 709 * :ghpull:`4939`: Embed qtconsole docs (continued)
710 710 * :ghpull:`4964`: remove shift-= merge keyboard shortcut
711 711 * :ghpull:`4504`: Allow input transformers to raise SyntaxError
712 712 * :ghpull:`4929`: Fixing various modal/focus related bugs
713 713 * :ghpull:`4971`: Fixing issues with js tests
714 714 * :ghpull:`4972`: Work around problem in doctest discovery in Python 3.4 with PyQt
715 715 * :ghpull:`4937`: pickle arrays with dtype=object
716 716 * :ghpull:`4934`: `ipython profile create` respects `--ipython-dir`
717 717 * :ghpull:`4954`: generate unicode filename
718 718 * :ghpull:`4845`: Add Origin Checking.
719 719 * :ghpull:`4916`: Fine tuning the behavior of the modal UI
720 720 * :ghpull:`4966`: Ignore sys.argv for NotebookNotary in tests
721 721 * :ghpull:`4967`: Fix typo in warning about web socket being closed
722 722 * :ghpull:`4965`: Remove mention of iplogger from setup.py
723 723 * :ghpull:`4962`: Fixed typos in quick-help text
724 724 * :ghpull:`4953`: add utils.wait_for_idle in js tests
725 725 * :ghpull:`4870`: ipython_directive, report except/warn in block and add :okexcept: :okwarning: options to suppress
726 726 * :ghpull:`4662`: Menu cleanup
727 727 * :ghpull:`4824`: sign notebooks
728 728 * :ghpull:`4943`: Docs shotgun 4
729 729 * :ghpull:`4848`: avoid import of nearby temporary with %edit
730 730 * :ghpull:`4950`: Two fixes for file upload related bugs
731 731 * :ghpull:`4927`: there shouldn't be a 'files/' prefix in FileLink[s]
732 732 * :ghpull:`4928`: use importlib.machinery when available
733 733 * :ghpull:`4949`: Remove the docscrape modules, which are part of numpydoc
734 734 * :ghpull:`4849`: Various unicode fixes (mostly on Windows)
735 735 * :ghpull:`4932`: always point py3compat.input to builtin_mod.input
736 736 * :ghpull:`4807`: Correct handling of ansi colour codes when nbconverting to latex
737 737 * :ghpull:`4922`: Python nbconvert output shouldn't have output
738 738 * :ghpull:`4912`: Skip some Windows io failures
739 739 * :ghpull:`4919`: flush output before showing tracebacks
740 740 * :ghpull:`4915`: ZMQCompleter inherits from IPCompleter
741 741 * :ghpull:`4890`: better cleanup channel FDs
742 742 * :ghpull:`4880`: set profile name from profile_dir
743 743 * :ghpull:`4853`: fix setting image height/width from metadata
744 744 * :ghpull:`4786`: Reduce spacing of heading cells
745 745 * :ghpull:`4680`: Minimal pandoc version warning
746 746 * :ghpull:`4908`: detect builtin docstrings in oinspect
747 747 * :ghpull:`4911`: Don't use `python -m package` on Windows Python 2
748 748 * :ghpull:`4909`: sort dictionary keys before comparison, ordering is not guaranteed
749 749 * :ghpull:`4374`: IPEP 23: Backbone.js Widgets
750 750 * :ghpull:`4903`: use https for all embeds
751 751 * :ghpull:`4894`: Shortcut changes
752 752 * :ghpull:`4897`: More detailed documentation about kernel_cmd
753 753 * :ghpull:`4891`: Squash a few Sphinx warnings from nbconvert.utils.lexers docstrings
754 754 * :ghpull:`4679`: JPG compression for inline pylab
755 755 * :ghpull:`4708`: Fix indent and center
756 756 * :ghpull:`4789`: fix IPython.embed
757 757 * :ghpull:`4655`: prefer marked to pandoc for markdown2html
758 758 * :ghpull:`4876`: don't show tooltip if object is not found
759 759 * :ghpull:`4873`: use 'combine' option to ucs package
760 760 * :ghpull:`4732`: Accents in notebook names and in command-line (nbconvert)
761 761 * :ghpull:`4867`: Update URL for Lawrence Hall of Science webcam image
762 762 * :ghpull:`4868`: Static path fixes
763 763 * :ghpull:`4858`: fix tb_offset when running a file
764 764 * :ghpull:`4826`: some $.html( -> $.text(
765 765 * :ghpull:`4847`: add js kernel_info request
766 766 * :ghpull:`4832`: allow NotImplementedError in formatters
767 767 * :ghpull:`4803`: BUG: fix cython magic support in ipython_directive
768 768 * :ghpull:`4865`: `build` listed twice in .gitignore. Removing one.
769 769 * :ghpull:`4851`: fix tooltip token regex for single-character names
770 770 * :ghpull:`4846`: Remove some leftover traces of irunner
771 771 * :ghpull:`4820`: fix regex for cleaning old logs with ipcluster
772 772 * :ghpull:`4844`: adjustments to notebook app logging
773 773 * :ghpull:`4840`: Error in Session.send_raw()
774 774 * :ghpull:`4819`: update CodeMirror to 3.21
775 775 * :ghpull:`4823`: Minor fixes for typos/inconsistencies in parallel docs
776 776 * :ghpull:`4811`: document code mirror tab and shift-tab
777 777 * :ghpull:`4795`: merge reveal templates
778 778 * :ghpull:`4796`: update components
779 779 * :ghpull:`4806`: Correct order of packages for unicode in nbconvert to LaTeX
780 780 * :ghpull:`4800`: Qt frontend: Handle 'aborted' prompt replies.
781 781 * :ghpull:`4794`: Compatibility fix for Python3 (Issue #4783 )
782 782 * :ghpull:`4799`: minor js test fix
783 783 * :ghpull:`4788`: warn when notebook is started in pylab mode
784 784 * :ghpull:`4772`: Notebook server info files
785 785 * :ghpull:`4797`: be conservative about kernel_info implementation
786 786 * :ghpull:`4787`: non-python kernels run python code with qtconsole
787 787 * :ghpull:`4565`: various display type validations
788 788 * :ghpull:`4703`: Math macro in jinja templates.
789 789 * :ghpull:`4781`: Fix "Source" text for the "Other Syntax" section of the "Typesetting Math" notebook
790 790 * :ghpull:`4776`: Manually document py3compat module.
791 791 * :ghpull:`4533`: propagate display metadata to all mimetypes
792 792 * :ghpull:`4785`: Replacing a for-in loop by an index loop on an array
793 793 * :ghpull:`4780`: Updating CSS for UI example.
794 794 * :ghpull:`3605`: Modal UI
795 795 * :ghpull:`4758`: Python 3.4 fixes
796 796 * :ghpull:`4735`: add some HTML error pages
797 797 * :ghpull:`4775`: Update whatsnew doc from PR files
798 798 * :ghpull:`4760`: Make examples and docs more Python 3 aware
799 799 * :ghpull:`4773`: Don't wait forever for notebook server to launch/die for tests
800 800 * :ghpull:`4768`: Qt console: Fix _prompt_pos accounting on timer flush output.
801 801 * :ghpull:`4727`: Remove Nbconvert template loading magic
802 802 * :ghpull:`4763`: Set numpydoc options to produce fewer Sphinx warnings.
803 803 * :ghpull:`4770`: always define aliases, even if empty
804 804 * :ghpull:`4766`: add `python -m` entry points for everything
805 805 * :ghpull:`4767`: remove manpages for irunner, iplogger
806 806 * :ghpull:`4751`: Added --post-serve explanation into the nbconvert docs.
807 807 * :ghpull:`4762`: whitelist alphanumeric characters for cookie_name
808 808 * :ghpull:`4625`: Deprecate %profile magic
809 809 * :ghpull:`4745`: warn on failed formatter calls
810 810 * :ghpull:`4746`: remove redundant cls alias on Windows
811 811 * :ghpull:`4749`: Fix bug in determination of public ips.
812 812 * :ghpull:`4715`: restore use of tornado static_url in templates
813 813 * :ghpull:`4748`: fix race condition in profiledir creation.
814 814 * :ghpull:`4720`: never use ssh multiplexer in tunnels
815 815 * :ghpull:`4658`: Bug fix for #4643: Regex object needs to be reset between calls in toolt...
816 816 * :ghpull:`4561`: Add Formatter.pop(type)
817 817 * :ghpull:`4712`: Docs shotgun 3
818 818 * :ghpull:`4713`: Fix saving kernel history in Python 2
819 819 * :ghpull:`4744`: don't use lazily-evaluated rc.ids in wait_for_idle
820 820 * :ghpull:`4740`: %env can't set variables
821 821 * :ghpull:`4737`: check every link when detecting virutalenv
822 822 * :ghpull:`4738`: don't inject help into user_ns
823 823 * :ghpull:`4739`: skip html nbconvert tests when their dependencies are missing
824 824 * :ghpull:`4730`: Fix stripping continuation prompts when copying from Qt console
825 825 * :ghpull:`4725`: Doc fixes
826 826 * :ghpull:`4656`: Nbconvert HTTP service
827 827 * :ghpull:`4710`: make @interactive decorator friendlier with dill
828 828 * :ghpull:`4722`: allow purging local results as long as they are not outstanding
829 829 * :ghpull:`4549`: Updated IPython console lexers.
830 830 * :ghpull:`4570`: Update IPython directive
831 831 * :ghpull:`4719`: Fix comment typo in prefilter.py
832 832 * :ghpull:`4575`: make sure to encode URL components for API requests
833 833 * :ghpull:`4718`: Fixed typo in displaypub
834 834 * :ghpull:`4716`: Remove input_prefilter hook
835 835 * :ghpull:`4691`: survive failure to bind to localhost in zmq.iostream
836 836 * :ghpull:`4696`: don't do anything if add_anchor fails
837 837 * :ghpull:`4711`: some typos in the docs
838 838 * :ghpull:`4700`: use if main block in entry points
839 839 * :ghpull:`4692`: setup.py symlink improvements
840 840 * :ghpull:`4265`: JSON configuration file
841 841 * :ghpull:`4505`: Nbconvert latex markdown images2
842 842 * :ghpull:`4608`: transparent background match ... all colors
843 843 * :ghpull:`4678`: allow ipython console to handle text/plain display
844 844 * :ghpull:`4706`: remove irunner, iplogger
845 845 * :ghpull:`4701`: Delete an old dictionary available for selecting the aligment of text.
846 846 * :ghpull:`4702`: Making reveal font-size a relative unit.
847 847 * :ghpull:`4649`: added a quiet option to %cpaste to suppress output
848 848 * :ghpull:`4690`: Option to spew subprocess streams during tests
849 849 * :ghpull:`4688`: Fixed various typos in docstrings.
850 850 * :ghpull:`4645`: CasperJs utility functions.
851 851 * :ghpull:`4670`: Stop bundling the numpydoc Sphinx extension
852 852 * :ghpull:`4675`: common IPython prefix for ModIndex
853 853 * :ghpull:`4672`: Remove unused 'attic' module
854 854 * :ghpull:`4671`: Fix docstrings in utils.text
855 855 * :ghpull:`4669`: add missing help strings to HistoryManager configurables
856 856 * :ghpull:`4668`: Make non-ASCII docstring unicode
857 857 * :ghpull:`4650`: added a note about sharing of nbconvert tempates
858 858 * :ghpull:`4646`: Fixing various output related things:
859 859 * :ghpull:`4665`: check for libedit in readline on OS X
860 860 * :ghpull:`4606`: Make running PYTHONSTARTUP optional
861 861 * :ghpull:`4654`: Fixing left padding of text cells to match that of code cells.
862 862 * :ghpull:`4306`: add raw_mimetype metadata to raw cells
863 863 * :ghpull:`4576`: Tighten up the vertical spacing on cells and make the padding of cells more consistent
864 864 * :ghpull:`4353`: Don't reset the readline completer after each prompt
865 865 * :ghpull:`4567`: Adding prompt area to non-CodeCells to indent content.
866 866 * :ghpull:`4446`: Use SVG plots in OctaveMagic by default due to lack of Ghostscript on Windows Octave
867 867 * :ghpull:`4613`: remove configurable.created
868 868 * :ghpull:`4631`: Use argument lists for command help tests
869 869 * :ghpull:`4633`: Modifies test_get_long_path_name_winr32() to allow for long path names in temp dir
870 870 * :ghpull:`4642`: Allow docs to build without PyQt installed.
871 871 * :ghpull:`4641`: Don't check for wx in the test suite.
872 872 * :ghpull:`4622`: make QtConsole Lexer configurable
873 873 * :ghpull:`4594`: Fixed #2923 Move Save Away from Cut in toolbar
874 874 * :ghpull:`4593`: don't interfere with set_next_input contents in qtconsole
875 875 * :ghpull:`4640`: Support matplotlib's Gtk3 backend in --pylab mode
876 876 * :ghpull:`4639`: Minor import fix to get qtconsole with --pylab=qt working
877 877 * :ghpull:`4637`: Fixed typo in links.txt.
878 878 * :ghpull:`4634`: Fix nbrun in notebooks with non-code cells.
879 879 * :ghpull:`4632`: Restore the ability to run tests from a function.
880 880 * :ghpull:`4624`: Fix crash when $EDITOR is non-ASCII
881 881 * :ghpull:`4453`: Play nice with App Nap
882 882 * :ghpull:`4541`: relax ipconfig matching on Windows
883 883 * :ghpull:`4552`: add pickleutil.use_dill
884 884 * :ghpull:`4590`: Font awesome for IPython slides
885 885 * :ghpull:`4589`: Inherit the width of pre code inside the input code cells.
886 886 * :ghpull:`4588`: Update reveal.js CDN to 2.5.0.
887 887 * :ghpull:`4569`: store cell toolbar preset in notebook metadata
888 888 * :ghpull:`4609`: Fix bytes regex for Python 3.
889 889 * :ghpull:`4581`: Writing unicode to stdout
890 890 * :ghpull:`4591`: Documenting codemirror shorcuts.
891 891 * :ghpull:`4607`: Tutorial doc should link to user config intro
892 892 * :ghpull:`4601`: test that rename fails with 409 if it would clobber
893 893 * :ghpull:`4599`: re-cast int/float subclasses to int/float in json_clean
894 894 * :ghpull:`4542`: new `ipython history clear` subcommand
895 895 * :ghpull:`4568`: don't use lazily-evaluated rc.ids in wait_for_idle
896 896 * :ghpull:`4572`: DOC: %profile docstring should reference %prun
897 897 * :ghpull:`4571`: no longer need 3 suffix on travis, tox
898 898 * :ghpull:`4566`: Fixing cell_type in CodeCell constructor.
899 899 * :ghpull:`4563`: Specify encoding for reading notebook file.
900 900 * :ghpull:`4452`: support notebooks in %run
901 901 * :ghpull:`4546`: fix warning condition on notebook startup
902 902 * :ghpull:`4540`: Apidocs3
903 903 * :ghpull:`4553`: Fix Python 3 handling of urllib
904 904 * :ghpull:`4543`: make hiding of initial namespace optional
905 905 * :ghpull:`4517`: send shutdown_request on exit of `ipython console`
906 906 * :ghpull:`4528`: improvements to bash completion
907 907 * :ghpull:`4532`: Hide dynamically defined metaclass base from Sphinx.
908 908 * :ghpull:`4515`: Spring Cleaning, and Load speedup
909 909 * :ghpull:`4529`: note routing identities needed for input requests
910 910 * :ghpull:`4514`: allow restart in `%run -d`
911 911 * :ghpull:`4527`: add redirect for 1.0-style 'files/' prefix links
912 912 * :ghpull:`4526`: Allow unicode arguments to passwd_check on Python 2
913 913 * :ghpull:`4403`: Global highlight language selection.
914 914 * :ghpull:`4250`: outputarea.js: Wrap inline SVGs inside an iframe
915 915 * :ghpull:`4521`: Read wav files in binary mode
916 916 * :ghpull:`4444`: Css cleaning
917 917 * :ghpull:`4523`: Use username and password for MongoDB on ShiningPanda
918 918 * :ghpull:`4510`: Update whatsnew from PR files
919 * :ghpull:`4441`: add `setup.py jsversion`
919 * :ghpull:`4441`: add ``setup.py jsversion``
920 920 * :ghpull:`4518`: Fix for race condition in url file decoding.
921 921 * :ghpull:`4497`: don't automatically unpack datetime objects in the message spec
922 922 * :ghpull:`4506`: wait for empty queues as well as load-balanced tasks
923 923 * :ghpull:`4492`: Configuration docs refresh
924 924 * :ghpull:`4508`: Fix some uses of map() in Qt console completion code.
925 925 * :ghpull:`4498`: Daemon StreamCapturer
926 926 * :ghpull:`4499`: Skip clipboard test on unix systems if headless.
927 927 * :ghpull:`4460`: Better clipboard handling, esp. with pywin32
928 928 * :ghpull:`4496`: Pass nbformat object to write call to save .py script
929 929 * :ghpull:`4466`: various pandoc latex fixes
930 930 * :ghpull:`4473`: Setup for Python 2/3
931 931 * :ghpull:`4459`: protect against broken repr in lib.pretty
932 932 * :ghpull:`4457`: Use ~/.ipython as default config directory
933 933 * :ghpull:`4489`: check realpath of env in init_virtualenv
934 934 * :ghpull:`4490`: fix possible race condition in test_await_data
935 935 * :ghpull:`4476`: Fix: Remove space added by display(JavaScript) on page reload
936 936 * :ghpull:`4398`: [Notebook] Deactivate tooltip on tab by default.
937 937 * :ghpull:`4480`: Docs shotgun 2
938 938 * :ghpull:`4488`: fix typo in message spec doc
939 939 * :ghpull:`4479`: yet another JS race condition fix
940 940 * :ghpull:`4477`: Allow incremental builds of the html_noapi docs target
941 941 * :ghpull:`4470`: Various Config object cleanups
942 942 * :ghpull:`4410`: make close-and-halt work on new tabs in Chrome
943 943 * :ghpull:`4469`: Python 3 & getcwdu
944 944 * :ghpull:`4451`: fix: allow JS test to run after shutdown test
945 945 * :ghpull:`4456`: Simplify StreamCapturer for subprocess testing
946 946 * :ghpull:`4464`: Correct description for Bytes traitlet type
947 947 * :ghpull:`4465`: Clean up MANIFEST.in
948 948 * :ghpull:`4461`: Correct TypeError message in svg2pdf
949 949 * :ghpull:`4458`: use signalstatus if exit status is undefined
950 950 * :ghpull:`4438`: Single codebase Python 3 support (again)
951 951 * :ghpull:`4198`: Version conversion, support for X to Y even if Y < X (nbformat)
952 952 * :ghpull:`4415`: More tooltips in the Notebook menu
953 953 * :ghpull:`4450`: remove monkey patch for older versions of tornado
954 954 * :ghpull:`4423`: Fix progress bar and scrolling bug.
955 955 * :ghpull:`4435`: raise 404 on not found static file
956 956 * :ghpull:`4442`: fix and add shim for change introduce by #4195
957 957 * :ghpull:`4436`: allow `require("nbextensions/extname")` to load from IPYTHONDIR/nbextensions
958 958 * :ghpull:`4437`: don't compute etags in static file handlers
959 959 * :ghpull:`4427`: notebooks should always have one checkpoint
960 960 * :ghpull:`4425`: fix js pythonisme
961 961 * :ghpull:`4195`: IPEP 21: widget messages
962 962 * :ghpull:`4434`: Fix broken link for Dive Into Python.
963 963 * :ghpull:`4428`: bump minimum tornado version to 3.1.0
964 964 * :ghpull:`4302`: Add an Audio display class
965 965 * :ghpull:`4285`: Notebook javascript test suite using CasperJS
966 966 * :ghpull:`4420`: Allow checking for backports via milestone
967 967 * :ghpull:`4426`: set kernel cwd to notebook's directory
968 968 * :ghpull:`4389`: By default, Magics inherit from Configurable
969 969 * :ghpull:`4393`: Capture output from subprocs during test, and display on failure
970 970 * :ghpull:`4419`: define InlineBackend configurable in its own file
971 971 * :ghpull:`4303`: Multidirectory support for the Notebook
972 972 * :ghpull:`4371`: Restored ipython profile locate dir and fixed typo. (Fixes #3708).
973 973 * :ghpull:`4414`: Specify unicode type properly in rmagic
974 974 * :ghpull:`4413`: don't instantiate IPython shell as class attr
975 975 * :ghpull:`4400`: Remove 5s wait on inactivity on GUI inputhook loops
976 976 * :ghpull:`4412`: Fix traitlet _notify_trait by-ref issue
977 977 * :ghpull:`4378`: split adds new cell above, rather than below
978 978 * :ghpull:`4405`: Bring display of builtin types and functions in line with Py 2
979 979 * :ghpull:`4367`: clean up of documentation files
980 980 * :ghpull:`4401`: Provide a name of the HistorySavingThread
981 981 * :ghpull:`4384`: fix menubar height measurement
982 982 * :ghpull:`4377`: fix tooltip cancel
983 983 * :ghpull:`4293`: Factorise code in tooltip for julia monkeypatching
984 984 * :ghpull:`4292`: improve js-completer logic.
985 985 * :ghpull:`4363`: set_next_input: keep only last input when repeatedly called in a single cell
986 986 * :ghpull:`4382`: Use safe_hasattr in dir2
987 987 * :ghpull:`4379`: fix (CTRL-M -) shortcut for splitting cell in FF
988 988 * :ghpull:`4380`: Test and fixes for localinterfaces
989 989 * :ghpull:`4372`: Don't assume that SyntaxTB is always called with a SyntaxError
990 990 * :ghpull:`4342`: Return value directly from the try block and avoid a variable
991 991 * :ghpull:`4154`: Center LaTeX and figures in markdown
992 992 * :ghpull:`4311`: %load -s to load specific functions or classes
993 993 * :ghpull:`4350`: WinHPC launcher fixes
994 994 * :ghpull:`4345`: Make irunner compatible with upcoming pexpect 3.0 interface
995 995 * :ghpull:`4276`: Support container methods in config
996 996 * :ghpull:`4359`: test_pylabtools also needs to modify matplotlib.rcParamsOrig
997 997 * :ghpull:`4355`: remove hardcoded box-orient
998 998 * :ghpull:`4333`: Add Edit Notebook Metadata to Edit menu
999 999 * :ghpull:`4349`: Script to update What's New file
1000 1000 * :ghpull:`4348`: Call PDF viewer after latex compiling (nbconvert)
1001 1001 * :ghpull:`4346`: getpass() on Windows & Python 2 needs bytes prompt
1002 1002 * :ghpull:`4304`: use netifaces for faster IPython.utils.localinterfaces
1003 1003 * :ghpull:`4305`: Add even more ways to populate localinterfaces
1004 1004 * :ghpull:`4313`: remove strip_math_space
1005 1005 * :ghpull:`4325`: Some changes to improve readability.
1006 1006 * :ghpull:`4281`: Adjust tab completion widget if too close to bottom of page.
1007 1007 * :ghpull:`4347`: Remove pycolor script
1008 1008 * :ghpull:`4322`: Scroll to the top after change of slides in the IPython slides
1009 1009 * :ghpull:`4289`: Fix scrolling output (not working post clear_output changes)
1010 1010 * :ghpull:`4343`: Make parameters for kernel start method more general
1011 1011 * :ghpull:`4237`: Keywords should shadow magic functions
1012 1012 * :ghpull:`4338`: adjust default value of level in sync_imports
1013 1013 * :ghpull:`4328`: Remove unused loop variable.
1014 1014 * :ghpull:`4340`: fix mathjax download url to new GitHub format
1015 1015 * :ghpull:`4336`: use simple replacement rather than string formatting in format_kernel_cmd
1016 1016 * :ghpull:`4264`: catch unicode error listing profiles
1017 1017 * :ghpull:`4314`: catch EACCES when binding notebook app
1018 1018 * :ghpull:`4324`: Remove commented addthis toolbar
1019 1019 * :ghpull:`4327`: Use the with statement to open a file.
1020 1020 * :ghpull:`4318`: fix initial sys.path
1021 1021 * :ghpull:`4315`: Explicitly state what version of Pandoc is supported in docs/install
1022 1022 * :ghpull:`4316`: underscore missing on notebook_p4
1023 1023 * :ghpull:`4295`: Implement boundary option for load magic (#1093)
1024 1024 * :ghpull:`4300`: traits defauts are strings not object
1025 1025 * :ghpull:`4297`: Remove an unreachable return statement.
1026 1026 * :ghpull:`4260`: Use subprocess for system_raw
1027 1027 * :ghpull:`4277`: add nbextensions
1028 1028 * :ghpull:`4294`: don't require tornado 3 in `--post serve`
1029 1029 * :ghpull:`4270`: adjust Scheduler timeout logic
1030 1030 * :ghpull:`4278`: add `-a` to easy_install command in libedit warning
1031 1031 * :ghpull:`4282`: Enable automatic line breaks in MathJax.
1032 1032 * :ghpull:`4279`: Fixing line-height of list items in tree view.
1033 1033 * :ghpull:`4253`: fixes #4039.
1034 1034 * :ghpull:`4131`: Add module's name argument in %%cython magic
1035 1035 * :ghpull:`4269`: Add mathletters option and longtable package to latex_base.tplx
1036 1036 * :ghpull:`4230`: Switch correctly to the user's default matplotlib backend after inline.
1037 1037 * :ghpull:`4271`: Hopefully fix ordering of output on ShiningPanda
1038 1038 * :ghpull:`4239`: more informative error message for bad serialization
1039 1039 * :ghpull:`4263`: Fix excludes for IPython.testing
1040 1040 * :ghpull:`4112`: nbconvert: Latex template refactor
1041 1041 * :ghpull:`4261`: Fixing a formatting error in the custom display example notebook.
1042 1042 * :ghpull:`4259`: Fix Windows test exclusions
1043 1043 * :ghpull:`4229`: Clear_output: Animation & widget related changes.
1044 1044 * :ghpull:`4151`: Refactor alias machinery
1045 1045 * :ghpull:`4153`: make timeit return an object that contains values
1046 1046 * :ghpull:`4258`: to-backport label is now 1.2
1047 1047 * :ghpull:`4242`: Allow passing extra arguments to iptest through for nose
1048 1048 * :ghpull:`4257`: fix unicode argv parsing
1049 1049 * :ghpull:`4166`: avoid executing code in utils.localinterfaces at import time
1050 1050 * :ghpull:`4214`: engine ID metadata should be unicode, not bytes
1051 1051 * :ghpull:`4232`: no highlight if no language specified
1052 1052 * :ghpull:`4218`: Fix display of SyntaxError when .py file is modified
1053 * :ghpull:`4207`: add `setup.py css` command
1053 * :ghpull:`4207`: add ``setup.py css`` command
1054 1054 * :ghpull:`4224`: clear previous callbacks on execute
1055 1055 * :ghpull:`4180`: Iptest refactoring
1056 1056 * :ghpull:`4105`: JS output area misaligned
1057 1057 * :ghpull:`4220`: Various improvements to docs formatting
1058 1058 * :ghpull:`4187`: Select adequate highlighter for cell magic languages
1059 1059 * :ghpull:`4228`: update -dev docs to reflect latest stable version
1060 1060 * :ghpull:`4219`: Drop bundled argparse
1061 1061 * :ghpull:`3851`: Adds an explicit newline for pretty-printing.
1062 1062 * :ghpull:`3622`: Drop fakemodule
1063 1063 * :ghpull:`4080`: change default behavior of database task storage
1064 1064 * :ghpull:`4197`: enable cython highlight in notebook
1065 1065 * :ghpull:`4225`: Updated docstring for core.display.Image
1066 1066 * :ghpull:`4175`: nbconvert: Jinjaless exporter base
1067 1067 * :ghpull:`4208`: Added a lightweight "htmlcore" Makefile entry
1068 1068 * :ghpull:`4209`: Magic doc fixes
1069 1069 * :ghpull:`4217`: avoid importing numpy at the module level
1070 1070 * :ghpull:`4213`: fixed dead link in examples/notebooks readme to Part 3
1071 1071 * :ghpull:`4183`: ESC should be handled by CM if tooltip is not on
1072 1072 * :ghpull:`4193`: Update for #3549: Append Firefox overflow-x fix
1073 1073 * :ghpull:`4205`: use TextIOWrapper when communicating with pandoc subprocess
1074 1074 * :ghpull:`4204`: remove some extraneous print statements from IPython.parallel
1075 1075 * :ghpull:`4201`: HeadingCells cannot be split or merged
1076 1076 * :ghpull:`4048`: finish up speaker-notes PR
1077 1077 * :ghpull:`4079`: trigger `Kernel.status_started` after websockets open
1078 1078 * :ghpull:`4186`: moved DummyMod to proper namespace to enable dill pickling
1079 1079 * :ghpull:`4190`: update version-check message in setup.py and IPython.__init__
1080 1080 * :ghpull:`4188`: Allow user_ns trait to be None
1081 1081 * :ghpull:`4189`: always fire LOCAL_IPS.extend(PUBLIC_IPS)
1082 1082 * :ghpull:`4174`: various issues in markdown and rst templates
1083 1083 * :ghpull:`4178`: add missing data_javascript
1084 1084 * :ghpull:`4168`: Py3 failing tests
1085 1085 * :ghpull:`4181`: nbconvert: Fix, sphinx template not removing new lines from headers
1086 1086 * :ghpull:`4043`: don't 'restore_bytes' in from_JSON
1087 1087 * :ghpull:`4149`: reuse more kernels in kernel tests
1088 1088 * :ghpull:`4163`: Fix for incorrect default encoding on Windows.
1089 1089 * :ghpull:`4136`: catch javascript errors in any output
1090 1090 * :ghpull:`4171`: add nbconvert config file when creating profiles
1091 1091 * :ghpull:`4172`: add ability to check what PRs should be backported in backport_pr
1092 1092 * :ghpull:`4167`: --fast flag for test suite!
1093 1093 * :ghpull:`4125`: Basic exercise of `ipython [subcommand] -h` and help-all
1094 1094 * :ghpull:`4085`: nbconvert: Fix sphinx preprocessor date format string for Windows
1095 1095 * :ghpull:`4159`: don't split `.cell` and `div.cell` CSS
1096 1096 * :ghpull:`4165`: Remove use of parametric tests
1097 1097 * :ghpull:`4158`: generate choices for `--gui` configurable from real mapping
1098 1098 * :ghpull:`4083`: Implement a better check for hidden values for %who etc.
1099 1099 * :ghpull:`4147`: Reference notebook examples, fixes #4146.
1100 1100 * :ghpull:`4065`: do not include specific css in embedable one
1101 1101 * :ghpull:`4092`: nbconvert: Fix for unicode html headers, Windows + Python 2.x
1102 1102 * :ghpull:`4074`: close Client sockets if connection fails
1103 1103 * :ghpull:`4064`: Store default codemirror mode in only 1 place
1104 1104 * :ghpull:`4104`: Add way to install MathJax to a particular profile
1105 1105 * :ghpull:`4161`: Select name when renaming a notebook
1106 1106 * :ghpull:`4160`: Add quotes around ".[notebook]" in readme
1107 1107 * :ghpull:`4144`: help_end transformer shouldn't pick up ? in multiline string
1108 1108 * :ghpull:`4090`: Add LaTeX citation handling to nbconvert
1109 1109 * :ghpull:`4143`: update example custom.js
1110 1110 * :ghpull:`4142`: DOC: unwrap openssl line in public_server doc
1111 1111 * :ghpull:`4126`: update tox.ini
1112 1112 * :ghpull:`4141`: add files with a separate `add` call in backport_pr
1113 1113 * :ghpull:`4137`: Restore autorestore option for storemagic
1114 1114 * :ghpull:`4098`: pass profile-dir instead of profile name to Kernel
1115 1115 * :ghpull:`4120`: support `input` in Python 2 kernels
1116 1116 * :ghpull:`4088`: nbconvert: Fix coalescestreams line with incorrect nesting causing strange behavior
1117 1117 * :ghpull:`4060`: only strip continuation prompts if regular prompts seen first
1118 1118 * :ghpull:`4132`: Fixed name error bug in function safe_unicode in module py3compat.
1119 1119 * :ghpull:`4121`: move test_kernel from IPython.zmq to IPython.kernel
1120 1120 * :ghpull:`4118`: ZMQ heartbeat channel: catch EINTR exceptions and continue.
1121 1121 * :ghpull:`4070`: New changes should go into pr/ folder
1122 1122 * :ghpull:`4054`: use unicode for HTML export
1123 1123 * :ghpull:`4106`: fix a couple of default block values
1124 1124 * :ghpull:`4107`: update parallel magic tests with capture_output API
1125 1125 * :ghpull:`4102`: Fix clashes between debugger tests and coverage.py
1126 1126 * :ghpull:`4115`: Update docs on declaring a magic function
1127 1127 * :ghpull:`4101`: restore accidentally removed EngineError
1128 1128 * :ghpull:`4096`: minor docs changes
1129 1129 * :ghpull:`4094`: Update target branch before backporting PR
1130 1130 * :ghpull:`4069`: Drop monkeypatch for pre-1.0 nose
1131 1131 * :ghpull:`4056`: respect `pylab_import_all` when `--pylab` specified at the command-line
1132 1132 * :ghpull:`4091`: Make Qt console banner configurable
1133 1133 * :ghpull:`4086`: fix missing errno import
1134 1134 * :ghpull:`4084`: Use msvcrt.getwch() for Windows pager.
1135 1135 * :ghpull:`4073`: rename ``post_processors`` submodule to ``postprocessors``
1136 1136 * :ghpull:`4075`: Update supported Python versions in tools/test_pr
1137 1137 * :ghpull:`4068`: minor bug fix, define 'cell' in dialog.js.
1138 1138 * :ghpull:`4044`: rename call methods to transform and postprocess
1139 1139 * :ghpull:`3744`: capture rich output as well as stdout/err in capture_output
1140 1140 * :ghpull:`3969`: "use strict" in most (if not all) our javascript
1141 1141 * :ghpull:`4030`: exclude `.git` in MANIFEST.in
1142 1142 * :ghpull:`4047`: Use istype() when checking if canned object is a dict
1143 1143 * :ghpull:`4031`: don't close_fds on Windows
1144 1144 * :ghpull:`4029`: bson.Binary moved
1145 1145 * :ghpull:`3883`: skip test on unix when x11 not available
1146 1146 * :ghpull:`3863`: Added working speaker notes for slides.
1147 1147 * :ghpull:`4035`: Fixed custom jinja2 templates being ignored when setting template_path
1148 1148 * :ghpull:`4002`: Drop Python 2.6 and 3.2
1149 1149 * :ghpull:`4026`: small doc fix in nbconvert
1150 1150 * :ghpull:`4016`: Fix IPython.start_* functions
1151 1151 * :ghpull:`4021`: Fix parallel.client.View map() on numpy arrays
1152 1152 * :ghpull:`4022`: DOC: fix links to matplotlib, notebook docs
1153 1153 * :ghpull:`4018`: Fix warning when running IPython.kernel tests
1154 1154 * :ghpull:`4017`: Add REPL-like printing of final/return value to %%R cell magic
1155 1155 * :ghpull:`4019`: Test skipping without unicode paths
1156 1156 * :ghpull:`4008`: Transform code before %prun/%%prun runs
1157 1157 * :ghpull:`4014`: Fix typo in ipapp
1158 1158 * :ghpull:`3997`: DOC: typos + rewording in examples/notebooks/Cell Magics.ipynb
1159 1159 * :ghpull:`3914`: nbconvert: Transformer tests
1160 1160 * :ghpull:`3987`: get files list in backport_pr
1161 1161 * :ghpull:`3923`: nbconvert: Writer tests
1162 1162 * :ghpull:`3974`: nbconvert: Fix app tests on Window7 w/ Python 3.3
1163 1163 * :ghpull:`3937`: make tab visible in codemirror and light red background
1164 1164 * :ghpull:`3933`: nbconvert: Post-processor tests
1165 1165 * :ghpull:`3978`: fix `--existing` with non-localhost IP
1166 1166 * :ghpull:`3939`: minor checkpoint cleanup
1167 1167 * :ghpull:`3955`: complete on % for magic in notebook
1168 1168 * :ghpull:`3981`: BF: fix nbconert rst input prompt spacing
1169 1169 * :ghpull:`3960`: Don't make sphinx a dependency for importing nbconvert
1170 1170 * :ghpull:`3973`: logging.Formatter is not new-style in 2.6
1171 1171
1172 1172 Issues (434):
1173 1173
1174 1174 * :ghissue:`5476`: For 2.0: Fix links in Notebook Help Menu
1175 1175 * :ghissue:`5337`: Examples reorganization
1176 1176 * :ghissue:`5436`: CodeMirror shortcuts in QuickHelp
1177 1177 * :ghissue:`5444`: Fix numeric verification for Int and Float text widgets.
1178 1178 * :ghissue:`5443`: Int and Float Widgets don't allow negative signs
1179 1179 * :ghissue:`5449`: Stretch keyboard shortcut dialog
1180 1180 * :ghissue:`5471`: Add coding magic comment to nbconvert Python template
1181 1181 * :ghissue:`5470`: UTF-8 Issue When Converting Notebook to a Script.
1182 1182 * :ghissue:`5369`: FormatterWarning for SVG matplotlib output in notebook
1183 1183 * :ghissue:`5460`: Can't start the notebook server specifying a notebook
1184 1184 * :ghissue:`2918`: CodeMirror related issues.
1185 1185 * :ghissue:`5431`: update github_stats and gh_api for 2.0
1186 1186 * :ghissue:`4887`: Add tests for modal UI
1187 1187 * :ghissue:`5290`: Add dual mode JS tests
1188 1188 * :ghissue:`5448`: Cmd+/ shortcut doesn't work in IPython master
1189 1189 * :ghissue:`5447`: Add %%python2 cell magic
1190 1190 * :ghissue:`5442`: Make a "python2" alias or rename the "python"cell magic.
1191 1191 * :ghissue:`2495`: non-ascii characters in the path
1192 1192 * :ghissue:`4554`: dictDB: Exception due to str to datetime comparission
1193 1193 * :ghissue:`5006`: Comm code is not run in the same context as notebook code
1194 1194 * :ghissue:`5118`: Weird interact behavior
1195 1195 * :ghissue:`5401`: Empty code cells in nbconvert rst output cause problems
1196 1196 * :ghissue:`5434`: fix check for empty cells in rst template
1197 1197 * :ghissue:`4944`: Trouble finding ipynb path in Windows 8
1198 1198 * :ghissue:`4605`: Change the url of Editor Shorcuts in the notebook menu.
1199 1199 * :ghissue:`5425`: Update COPYING.txt
1200 1200 * :ghissue:`5348`: BUG: HistoryAccessor.get_session_info(0) - exception
1201 1201 * :ghissue:`5293`: Javascript("element.append()") looks broken.
1202 1202 * :ghissue:`5363`: Disable saving if notebook has stopped loading
1203 1203 * :ghissue:`5189`: Tooltip pager mode is broken
1204 1204 * :ghissue:`5330`: Updates to shell reference doc
1205 1205 * :ghissue:`5397`: Accordion widget broken
1206 1206 * :ghissue:`5106`: Flexbox CSS specificity bugs
1207 1207 * :ghissue:`5297`: tooltip triggers focus bug
1208 1208 * :ghissue:`5417`: scp checking for existence of directories: directory names are incorrect
1209 1209 * :ghissue:`5302`: Parallel engine registration fails for slow engines
1210 1210 * :ghissue:`5334`: notebook's split-cell shortcut dangerous / incompatible with Neo layout (for instance)
1211 1211 * :ghissue:`5324`: Style of `raw_input` UI is off in notebook
1212 1212 * :ghissue:`5350`: Converting notebooks with spaces in their names to RST gives broken images
1213 1213 * :ghissue:`5049`: update quickhelp on adding and removing shortcuts
1214 1214 * :ghissue:`4941`: Eliminating display of intermediate stages in progress bars
1215 1215 * :ghissue:`5345`: nbconvert to markdown does not use backticks
1216 1216 * :ghissue:`5357`: catch exception in copystat
1217 1217 * :ghissue:`5351`: Notebook saving fails on smb share
1218 1218 * :ghissue:`4946`: TeX produced cannot be converted to PDF
1219 1219 * :ghissue:`5347`: pretty print list too slow
1220 1220 * :ghissue:`5238`: Raw cell placeholder is not removed when you edit the cell
1221 1221 * :ghissue:`5382`: Qtconsole doesn't run in Python 3
1222 1222 * :ghissue:`5378`: Unexpected and new conflict between PyFileConfigLoader and IPythonQtConsoleApp
1223 1223 * :ghissue:`4945`: Heading/cells positioning problem and cell output wrapping
1224 1224 * :ghissue:`5084`: Consistent approach for HTML/JS output on nbviewer
1225 1225 * :ghissue:`4902`: print preview does not work, custom.css not found
1226 1226 * :ghissue:`5336`: TypeError in bootstrap-tour.min.js
1227 1227 * :ghissue:`5303`: Changed Hub.registration_timeout to be a config input.
1228 1228 * :ghissue:`995`: Paste-able mode in terminal
1229 1229 * :ghissue:`5305`: Tuple unpacking for shell escape
1230 1230 * :ghissue:`5232`: Make nbconvert html full output like notebook's html.
1231 1231 * :ghissue:`5224`: Audit nbconvert HTML output
1232 1232 * :ghissue:`5253`: display any output from this session in terminal console
1233 1233 * :ghissue:`5251`: ipython console ignoring some stream messages?
1234 1234 * :ghissue:`4802`: Tour of the notebook UI (was UI elements inline with highlighting)
1235 1235 * :ghissue:`5103`: Moving Constructor definition to the top like a Function definition
1236 1236 * :ghissue:`5264`: Test failures on master with Anaconda
1237 1237 * :ghissue:`4833`: Serve /usr/share/javascript at /_sysassets/javascript/ in notebook
1238 1238 * :ghissue:`5071`: Prevent %pylab from clobbering interactive
1239 1239 * :ghissue:`5282`: Exception in widget __del__ methods in Python 3.4.
1240 1240 * :ghissue:`5280`: append Firefox overflow-x fix
1241 1241 * :ghissue:`5120`: append Firefox overflow-x fix, again
1242 1242 * :ghissue:`4127`: autoreload shouldn't rely on .pyc modification times
1243 1243 * :ghissue:`5272`: allow highlighting language to be set from notebook metadata
1244 1244 * :ghissue:`5050`: Notebook cells truncated with Firefox
1245 1245 * :ghissue:`4839`: Error in Session.send_raw()
1246 1246 * :ghissue:`5188`: New events system
1247 1247 * :ghissue:`5076`: Refactor keyboard handling
1248 1248 * :ghissue:`4886`: Refactor and consolidate different keyboard logic in JavaScript code
1249 1249 * :ghissue:`5002`: the green cell border moving forever in Chrome, when there are many code cells.
1250 1250 * :ghissue:`5259`: Codemirror still active in command mode
1251 1251 * :ghissue:`5219`: Output images appear as small thumbnails (Notebook)
1252 1252 * :ghissue:`4829`: Not able to connect qtconsole in Windows 8
1253 1253 * :ghissue:`5152`: Hide __pycache__ in dashboard directory list
1254 1254 * :ghissue:`5151`: Case-insesitive sort for dashboard list
1255 1255 * :ghissue:`4603`: Warn when overwriting a notebook with upload
1256 1256 * :ghissue:`4895`: Improvements to %run completions
1257 1257 * :ghissue:`3459`: Filename completion when run script with %run
1258 1258 * :ghissue:`5225`: Add JavaScript to nbconvert HTML display priority
1259 1259 * :ghissue:`5034`: Audit the places where we call `.html(something)`
1260 1260 * :ghissue:`5094`: Dancing cells in notebook
1261 1261 * :ghissue:`4999`: Notebook focus effects
1262 1262 * :ghissue:`5149`: Clicking on a TextBoxWidget in FF completely breaks dual mode.
1263 1263 * :ghissue:`5207`: Children fire event
1264 1264 * :ghissue:`5227`: display_method of objects with custom __getattr__
1265 1265 * :ghissue:`5236`: Cursor keys do not work to leave Markdown cell while it's being edited
1266 1266 * :ghissue:`5205`: Use CTuple traitlet for Widget children
1267 1267 * :ghissue:`5230`: notebook rename does not respect url prefix
1268 1268 * :ghissue:`5218`: Test failures with Python 3 and enabled warnings
1269 1269 * :ghissue:`5115`: Page Breaks for Print Preview Broken by display: flex - Simple CSS Fix
1270 1270 * :ghissue:`5024`: Make nbconvert HTML output smart about page breaking
1271 1271 * :ghissue:`4985`: Add automatic Closebrackets function to Codemirror.
1272 1272 * :ghissue:`5184`: print '\xa' crashes the interactive shell
1273 1273 * :ghissue:`5214`: Downloading notebook as Python (.py) fails
1274 1274 * :ghissue:`5211`: AttributeError: 'module' object has no attribute '_outputfile'
1275 1275 * :ghissue:`5206`: [CSS?] Inconsistencies in nbconvert divs and IPython Notebook divs?
1276 1276 * :ghissue:`5201`: node != nodejs within Debian packages
1277 1277 * :ghissue:`5112`: band-aid for completion
1278 1278 * :ghissue:`4860`: Completer As-You-Type Broken
1279 1279 * :ghissue:`5116`: reorganize who knows what about paths
1280 1280 * :ghissue:`4973`: Adding security.js with 1st attempt at is_safe
1281 1281 * :ghissue:`5164`: test_oinspect.test_calltip_builtin failure with python3.4
1282 1282 * :ghissue:`5127`: Widgets: skip intermediate callbacks during throttling
1283 1283 * :ghissue:`5013`: Widget alignment differs between FF and Chrome
1284 1284 * :ghissue:`5141`: tornado error static file
1285 1285 * :ghissue:`5160`: TemporaryWorkingDirectory incompatible with python3.4
1286 1286 * :ghissue:`5140`: WIP: %kernels magic
1287 1287 * :ghissue:`4987`: Widget lifecycle problems
1288 1288 * :ghissue:`5129`: UCS package break latex export on non-ascii
1289 1289 * :ghissue:`4986`: Cell horizontal scrollbar is missing in FF but not in Chrome
1290 1290 * :ghissue:`4685`: nbconvert ignores image size metadata
1291 1291 * :ghissue:`5155`: Notebook logout button does not work (source typo)
1292 1292 * :ghissue:`2678`: Ctrl-m keyboard shortcut clash on Chrome OS
1293 1293 * :ghissue:`5113`: ButtonWidget without caption wrong height.
1294 1294 * :ghissue:`4778`: add APIs for installing notebook extensions
1295 1295 * :ghissue:`5046`: python setup.py failed vs git submodule update worked
1296 1296 * :ghissue:`4925`: Notebook manager api fixes
1297 1297 * :ghissue:`5073`: Cannot align widgets horizontally in the notebook
1298 1298 * :ghissue:`4996`: require print_method to be a bound method
1299 1299 * :ghissue:`4990`: _repr_html_ exception reporting corner case when using type(foo)
1300 1300 * :ghissue:`5099`: Notebook: Changing base_project_url results in failed WebSockets call
1301 1301 * :ghissue:`5096`: Client.map is not fault tolerant
1302 1302 * :ghissue:`4997`: Inconsistent %matplotlib qt behavior
1303 1303 * :ghissue:`5041`: Remove more .html(...) calls.
1304 1304 * :ghissue:`5078`: Updating JS tests README.md
1305 1305 * :ghissue:`4977`: ensure scp destination directories exist (with mkdir -p)
1306 1306 * :ghissue:`3411`: ipython parallel: scp failure.
1307 1307 * :ghissue:`5064`: Errors during interact display at the terminal, not anywhere in the notebook
1308 1308 * :ghissue:`4921`: Add PDF formatter and handling
1309 1309 * :ghissue:`4920`: Adding PDFFormatter and kernel side handling of PDF display data
1310 1310 * :ghissue:`5048`: Add edit/command mode indicator
1311 1311 * :ghissue:`4889`: Add UI element for indicating command/edit modes
1312 1312 * :ghissue:`5052`: Add q to toggle the pager.
1313 1313 * :ghissue:`5000`: Closing pager with keyboard in modal UI
1314 1314 * :ghissue:`5069`: Box model changes broke the Keyboard Shortcuts help modal
1315 1315 * :ghissue:`4960`: Interact/Interactive for widget
1316 1316 * :ghissue:`4883`: Implement interact/interactive for widgets
1317 1317 * :ghissue:`5038`: Fix multiple press keyboard events
1318 1318 * :ghissue:`5054`: UnicodeDecodeError: 'ascii' codec can't decode byte 0xc6 in position 1: ordinal not in range(128)
1319 1319 * :ghissue:`5031`: Bug during integration of IPython console in Qt application
1320 1320 * :ghissue:`5057`: iopubwatcher.py example is broken.
1321 1321 * :ghissue:`4747`: Add event for output_area adding an output
1322 1322 * :ghissue:`5001`: Add directory navigation to dashboard
1323 1323 * :ghissue:`5016`: Help menu external-link icons break layout in FF
1324 1324 * :ghissue:`4885`: Modal UI behavior changes
1325 1325 * :ghissue:`5009`: notebook signatures don't work
1326 1326 * :ghissue:`4975`: setup.py changes for 2.0
1327 1327 * :ghissue:`4774`: emit event on appended element on dom
1328 1328 * :ghissue:`5020`: Python Lists translated to javascript objects in widgets
1329 1329 * :ghissue:`5003`: Fix pretty reprs of super() objects
1330 1330 * :ghissue:`5012`: Make `SelectionWidget.values` a dict
1331 1331 * :ghissue:`4961`: Bug when constructing a selection widget with both values and labels
1332 1332 * :ghissue:`4283`: A `<` in a markdown cell strips cell content when converting to latex
1333 1333 * :ghissue:`4006`: iptest IPython broken
1334 1334 * :ghissue:`4251`: & escaped to &amp; in tex ?
1335 1335 * :ghissue:`5027`: pin lessc to 1.4
1336 1336 * :ghissue:`4323`: Take 2: citation2latex filter (using HTMLParser)
1337 1337 * :ghissue:`4196`: Printing notebook from browser gives 1-page truncated output
1338 1338 * :ghissue:`4842`: more subtle kernel indicator
1339 1339 * :ghissue:`4057`: No path to notebook examples from Help menu
1340 1340 * :ghissue:`5015`: don't write cell.trusted to disk
1341 1341 * :ghissue:`4617`: Changed url link in Help dropdown menu.
1342 1342 * :ghissue:`4976`: Container widget layout broken on Firefox
1343 1343 * :ghissue:`4981`: Vertical slider layout broken
1344 1344 * :ghissue:`4793`: Message spec changes related to `clear_output`
1345 1345 * :ghissue:`4982`: Live readout for slider widgets
1346 1346 * :ghissue:`4813`: make help menu a template
1347 1347 * :ghissue:`4989`: Filename tab completion completely broken
1348 1348 * :ghissue:`1380`: Tab should insert 4 spaces in # comment lines
1349 1349 * :ghissue:`2888`: spaces vs tabs
1350 1350 * :ghissue:`1193`: Allow resizing figures in notebook
1351 1351 * :ghissue:`4504`: Allow input transformers to raise SyntaxError
1352 1352 * :ghissue:`4697`: Problems with height after toggling header and toolbar...
1353 1353 * :ghissue:`4951`: TextWidget to code cell command mode bug.
1354 1354 * :ghissue:`4809`: Arbitrary scrolling (jumping) in clicks in modal UI for notebook
1355 1355 * :ghissue:`4971`: Fixing issues with js tests
1356 1356 * :ghissue:`4972`: Work around problem in doctest discovery in Python 3.4 with PyQt
1357 1357 * :ghissue:`4892`: IPython.qt test failure with python3.4
1358 1358 * :ghissue:`4863`: BUG: cannot create an OBJECT array from memory buffer
1359 1359 * :ghissue:`4704`: Subcommand `profile` ignores --ipython-dir
1360 1360 * :ghissue:`4845`: Add Origin Checking.
1361 1361 * :ghissue:`4870`: ipython_directive, report except/warn in block and add :okexcept: :okwarning: options to suppress
1362 1362 * :ghissue:`4956`: Shift-Enter does not move to next cell
1363 1363 * :ghissue:`4662`: Menu cleanup
1364 1364 * :ghissue:`4824`: sign notebooks
1365 1365 * :ghissue:`4848`: avoid import of nearby temporary with %edit
1366 1366 * :ghissue:`4731`: %edit files mistakenly import modules in /tmp
1367 1367 * :ghissue:`4950`: Two fixes for file upload related bugs
1368 1368 * :ghissue:`4871`: Notebook upload fails after Delete
1369 1369 * :ghissue:`4825`: File Upload URL set incorrectly
1370 1370 * :ghissue:`3867`: display.FileLinks should work in the exported html verion of a notebook
1371 1371 * :ghissue:`4948`: reveal: ipython css overrides reveal themes
1372 1372 * :ghissue:`4947`: reveal: slides that are too big?
1373 1373 * :ghissue:`4051`: Test failures with Python 3 and enabled warnings
1374 1374 * :ghissue:`3633`: outstanding issues over in ipython/nbconvert repo
1375 1375 * :ghissue:`4087`: Sympy printing in the example notebook
1376 1376 * :ghissue:`4627`: Document various QtConsole embedding approaches.
1377 1377 * :ghissue:`4849`: Various unicode fixes (mostly on Windows)
1378 1378 * :ghissue:`3653`: autocompletion in "from package import <tab>"
1379 1379 * :ghissue:`4583`: overwrite? prompt gets EOFError in 2 process
1380 1380 * :ghissue:`4807`: Correct handling of ansi colour codes when nbconverting to latex
1381 1381 * :ghissue:`4611`: Document how to compile .less files in dev docs.
1382 1382 * :ghissue:`4618`: "Editor Shortcuts" link is broken in help menu dropdown notebook
1383 1383 * :ghissue:`4522`: DeprecationWarning: the sets module is deprecated
1384 1384 * :ghissue:`4368`: No symlink from ipython to ipython3 when inside a python3 virtualenv
1385 1385 * :ghissue:`4234`: Math without $$ doesn't show up when converted to slides
1386 1386 * :ghissue:`4194`: config.TerminalIPythonApp.nosep does not work
1387 1387 * :ghissue:`1491`: prefilter not called for multi-line notebook cells
1388 1388 * :ghissue:`4001`: Windows IPython executable /scripts/ipython not working
1389 1389 * :ghissue:`3959`: think more carefully about text wrapping in nbconvert
1390 1390 * :ghissue:`4907`: Test for traceback depth fails on Windows
1391 1391 * :ghissue:`4906`: Test for IPython.embed() fails on Windows
1392 1392 * :ghissue:`4912`: Skip some Windows io failures
1393 1393 * :ghissue:`3700`: stdout/stderr should be flushed printing exception output...
1394 1394 * :ghissue:`1181`: greedy completer bug in terminal console
1395 1395 * :ghissue:`2032`: check for a few places we should be using DEFAULT_ENCODING
1396 1396 * :ghissue:`4882`: Too many files open when starting and stopping kernel repeatedly
1397 1397 * :ghissue:`4880`: set profile name from profile_dir
1398 1398 * :ghissue:`4238`: parallel.Client() not using profile that notebook was run with?
1399 1399 * :ghissue:`4853`: fix setting image height/width from metadata
1400 1400 * :ghissue:`4786`: Reduce spacing of heading cells
1401 1401 * :ghissue:`4680`: Minimal pandoc version warning
1402 1402 * :ghissue:`3707`: nbconvert: Remove IPython magic commands from --format="python" output
1403 1403 * :ghissue:`4130`: PDF figures as links from png or svg figures
1404 1404 * :ghissue:`3919`: Allow --profile to be passed a dir.
1405 1405 * :ghissue:`2136`: Handle hard newlines in pretty printer
1406 1406 * :ghissue:`4790`: Notebook modal UI: "merge cell below" key binding, `shift+=`, does not work with some keyboard layouts
1407 1407 * :ghissue:`4884`: Keyboard shortcut changes
1408 1408 * :ghissue:`1184`: slow handling of keyboard input
1409 1409 * :ghissue:`4913`: Mathjax, Markdown, tex, env* and italic
1410 1410 * :ghissue:`3972`: nbconvert: Template output testing
1411 1411 * :ghissue:`4903`: use https for all embeds
1412 1412 * :ghissue:`4874`: --debug does not work if you set .kernel_cmd
1413 1413 * :ghissue:`4679`: JPG compression for inline pylab
1414 1414 * :ghissue:`4708`: Fix indent and center
1415 1415 * :ghissue:`4789`: fix IPython.embed
1416 1416 * :ghissue:`4759`: Application._load_config_files log parameter default fails
1417 1417 * :ghissue:`3153`: docs / file menu: explain how to exit the notebook
1418 1418 * :ghissue:`4791`: Did updates to ipython_directive bork support for cython magic snippets?
1419 1419 * :ghissue:`4385`: "Part 4 - Markdown Cells.ipynb" nbviewer example seems not well referenced in current online documentation page https://ipython.org/ipython-doc/stable/interactive/notebook.htm
1420 1420 * :ghissue:`4655`: prefer marked to pandoc for markdown2html
1421 1421 * :ghissue:`3441`: Fix focus related problems in the notebook
1422 1422 * :ghissue:`3402`: Feature Request: Save As (latex, html,..etc) as a menu option in Notebook rather than explicit need to invoke nbconvert
1423 1423 * :ghissue:`3224`: Revisit layout of notebook area
1424 1424 * :ghissue:`2746`: rerunning a cell with long output (exception) scrolls to much (html notebook)
1425 1425 * :ghissue:`2667`: can't save opened notebook if accidentally delete the notebook in the dashboard
1426 1426 * :ghissue:`3026`: Reporting errors from _repr_<type>_ methods
1427 1427 * :ghissue:`1844`: Notebook does not exist and permalinks
1428 1428 * :ghissue:`2450`: [closed PR] Prevent jumping of window to input when output is clicked.
1429 1429 * :ghissue:`3166`: IPEP 16: Notebook multi directory dashboard and URL mapping
1430 1430 * :ghissue:`3691`: Slight misalignment of Notebook menu bar with focus box
1431 1431 * :ghissue:`4875`: Empty tooltip with `object_found = false` still being shown
1432 1432 * :ghissue:`4432`: The SSL cert for the MathJax CDN is invalid and URL is not protocol agnostic
1433 1433 * :ghissue:`2633`: Help text should leave current cell active
1434 1434 * :ghissue:`3976`: DOC: Pandas link on the notebook help menu?
1435 1435 * :ghissue:`4082`: /new handler redirect cached by browser
1436 1436 * :ghissue:`4298`: Slow ipython --pylab and ipython notebook startup
1437 1437 * :ghissue:`4545`: %store magic not working
1438 1438 * :ghissue:`4610`: toolbar UI enhancements
1439 1439 * :ghissue:`4782`: New modal UI
1440 1440 * :ghissue:`4732`: Accents in notebook names and in command-line (nbconvert)
1441 1441 * :ghissue:`4752`: link broken in docs/examples
1442 1442 * :ghissue:`4835`: running ipython on python files adds an extra traceback frame
1443 1443 * :ghissue:`4792`: repr_html exception warning on qtconsole with pandas #4745
1444 1444 * :ghissue:`4834`: function tooltip issues
1445 1445 * :ghissue:`4808`: Docstrings in Notebook not displayed properly and introspection
1446 1446 * :ghissue:`4846`: Remove some leftover traces of irunner
1447 1447 * :ghissue:`4810`: ipcluster bug in clean_logs flag
1448 1448 * :ghissue:`4812`: update CodeMirror for the notebook
1449 1449 * :ghissue:`671`: add migration guide for old IPython config
1450 1450 * :ghissue:`4783`: ipython 2dev under windows / (win)python 3.3 experiment
1451 1451 * :ghissue:`4772`: Notebook server info files
1452 1452 * :ghissue:`4765`: missing build script for highlight.js
1453 1453 * :ghissue:`4787`: non-python kernels run python code with qtconsole
1454 1454 * :ghissue:`4703`: Math macro in jinja templates.
1455 1455 * :ghissue:`4595`: ipython notebook XSS vulnerable
1456 1456 * :ghissue:`4776`: Manually document py3compat module.
1457 1457 * :ghissue:`4686`: For-in loop on an array in cell.js
1458 1458 * :ghissue:`3605`: Modal UI
1459 1459 * :ghissue:`4769`: Ipython 2.0 will not startup on py27 on windows
1460 1460 * :ghissue:`4482`: reveal.js converter not including CDN by default?
1461 1461 * :ghissue:`4761`: ipv6 address triggers cookie exception
1462 1462 * :ghissue:`4580`: rename or remove %profile magic
1463 1463 * :ghissue:`4643`: Docstring does not open properly
1464 1464 * :ghissue:`4714`: Static URLs are not auto-versioned
1465 1465 * :ghissue:`2573`: document code mirror keyboard shortcuts
1466 1466 * :ghissue:`4717`: hang in parallel.Client when using SSHAgent
1467 1467 * :ghissue:`4544`: Clarify the requirement for pyreadline on Windows
1468 1468 * :ghissue:`3451`: revisit REST /new handler to avoid systematic crawling.
1469 1469 * :ghissue:`2922`: File => Save as '.py' saves magic as code
1470 1470 * :ghissue:`4728`: Copy/Paste stripping broken in version > 0.13.x in QTConsole
1471 1471 * :ghissue:`4539`: Nbconvert: Latex to PDF conversion fails on notebooks with accented letters
1472 1472 * :ghissue:`4721`: purge_results with jobid crashing - looking for insight
1473 1473 * :ghissue:`4620`: Notebook with ? in title defies autosave, renaming and deletion.
1474 1474 * :ghissue:`4574`: Hash character in notebook name breaks a lot of things
1475 1475 * :ghissue:`4709`: input_prefilter hook not called
1476 1476 * :ghissue:`1680`: qtconsole should support --no-banner and custom banner
1477 1477 * :ghissue:`4689`: IOStream IP address configurable
1478 1478 * :ghissue:`4698`: Missing "if __name__ == '__main__':" check in /usr/bin/ipython
1479 1479 * :ghissue:`4191`: NBConvert: markdown inline and locally referenced files have incorrect file location for latex
1480 1480 * :ghissue:`2865`: %%!? does not display the shell execute docstring
1481 1481 * :ghissue:`1551`: Notebook should be saved before printing
1482 1482 * :ghissue:`4612`: remove `Configurable.created` ?
1483 1483 * :ghissue:`4629`: Lots of tests fail due to space in sys.executable
1484 1484 * :ghissue:`4644`: Fixed URLs for notebooks
1485 1485 * :ghissue:`4621`: IPython 1.1.0 Qtconsole syntax highlighting highlights python 2 only built-ins when using python 3
1486 1486 * :ghissue:`2923`: Move Delete Button Away from Save Button in the HTML notebook toolbar
1487 1487 * :ghissue:`4615`: UnicodeDecodeError
1488 1488 * :ghissue:`4431`: ipython slow in os x mavericks?
1489 1489 * :ghissue:`4538`: DOC: document how to change ipcontroller-engine.json in case controller was started with --ip="*"
1490 1490 * :ghissue:`4551`: Serialize methods and closures
1491 1491 * :ghissue:`4081`: [Nbconvert][reveal] link to font awesome ?
1492 1492 * :ghissue:`4602`: "ipcluster stop" fails after "ipcluster start --daemonize" using python3.3
1493 1493 * :ghissue:`4578`: NBconvert fails with unicode errors when `--stdout` and file redirection is specified and HTML entities are present
1494 1494 * :ghissue:`4600`: Renaming new notebook to an exist name silently deletes the old one
1495 1495 * :ghissue:`4598`: Qtconsole docstring pop-up fails on method containing defaulted enum argument
1496 1496 * :ghissue:`951`: Remove Tornado monkeypatch
1497 1497 * :ghissue:`4564`: Notebook save failure
1498 1498 * :ghissue:`4562`: nbconvert: Default encoding problem on OS X
1499 1499 * :ghissue:`1675`: add file_to_run=file.ipynb capability to the notebook
1500 1500 * :ghissue:`4516`: `ipython console` doesn't send a `shutdown_request`
1501 1501 * :ghissue:`3043`: can't restart pdb session in ipython
1502 1502 * :ghissue:`4524`: Fix bug with non ascii passwords in notebook login
1503 1503 * :ghissue:`1866`: problems rendering an SVG?
1504 1504 * :ghissue:`4520`: unicode error when trying Audio('data/Bach Cello Suite #3.wav')
1505 1505 * :ghissue:`4493`: Qtconsole cannot print an ISO8601 date at nanosecond precision
1506 1506 * :ghissue:`4502`: intermittent parallel test failure test_purge_everything
1507 1507 * :ghissue:`4495`: firefox 25.0: notebooks report "Notebook save failed", .py script save fails, but .ipynb save succeeds
1508 1508 * :ghissue:`4245`: nbconvert latex: code highlighting causes error
1509 1509 * :ghissue:`4486`: Test for whether inside virtualenv does not work if directory is symlinked
1510 1510 * :ghissue:`4485`: Incorrect info in "Messaging in IPython" documentation.
1511 1511 * :ghissue:`4447`: Ipcontroller broken in current HEAD on windows
1512 1512 * :ghissue:`4241`: Audio display object
1513 1513 * :ghissue:`4463`: Error on empty c.Session.key
1514 1514 * :ghissue:`4454`: UnicodeDecodeError when starting Ipython notebook on a directory containing a file with a non-ascii character
1515 1515 * :ghissue:`3801`: Autocompletion: Fix issue #3723 -- ordering of completions for magic commands and variables with same name
1516 1516 * :ghissue:`3723`: Code completion: 'matplotlib' and '%matplotlib'
1517 1517 * :ghissue:`4396`: Always checkpoint al least once ?
1518 1518 * :ghissue:`2524`: [Notebook] Clear kernel queue
1519 1519 * :ghissue:`2292`: Client side tests for the notebook
1520 1520 * :ghissue:`4424`: Dealing with images in multidirectory environment
1521 1521 * :ghissue:`4388`: Make writing configurable magics easier
1522 1522 * :ghissue:`852`: Notebook should be saved before downloading
1523 1523 * :ghissue:`3708`: ipython profile locate should also work
1524 1524 * :ghissue:`1349`: `?` may generate hundreds of cell
1525 1525 * :ghissue:`4381`: Using hasattr for trait_names instead of just looking for it directly/using __dir__?
1526 1526 * :ghissue:`4361`: Crash Ultratraceback/ session history
1527 1527 * :ghissue:`3044`: IPython notebook autocomplete for filename string converts multiple spaces to a single space
1528 1528 * :ghissue:`3346`: Up arrow history search shows duplicates in Qtconsole
1529 1529 * :ghissue:`3496`: Fix import errors when running tests from the source directory
1530 1530 * :ghissue:`4114`: If default profile doesn't exist, can't install mathjax to any location
1531 1531 * :ghissue:`4335`: TestPylabSwitch.test_qt fails
1532 1532 * :ghissue:`4291`: serve like option for nbconvert --to latex
1533 1533 * :ghissue:`1824`: Exception before prompting for password during ssh connection
1534 1534 * :ghissue:`4309`: Error in nbconvert - closing </code> tag is not inserted in HTML under some circumstances
1535 1535 * :ghissue:`4351`: /parallel/apps/launcher.py error
1536 1536 * :ghissue:`3603`: Upcoming issues with nbconvert
1537 1537 * :ghissue:`4296`: sync_imports() fails in python 3.3
1538 1538 * :ghissue:`4339`: local mathjax install doesn't work
1539 1539 * :ghissue:`4334`: NotebookApp.webapp_settings static_url_prefix causes crash
1540 1540 * :ghissue:`4308`: Error when use "ipython notebook" in win7 64 with python2.7.3 64.
1541 1541 * :ghissue:`4317`: Relative imports broken in the notebook (Windows)
1542 1542 * :ghissue:`3658`: Saving Notebook clears "Kernel Busy" status from the page and titlebar
1543 1543 * :ghissue:`4312`: Link broken on ipython-doc stable
1544 1544 * :ghissue:`1093`: Add boundary options to %load
1545 1545 * :ghissue:`3619`: Multi-dir webservice design
1546 1546 * :ghissue:`4299`: Nbconvert, default_preprocessors to list of dotted name not list of obj
1547 1547 * :ghissue:`3210`: IPython.parallel tests seem to hang on ShiningPanda
1548 1548 * :ghissue:`4280`: MathJax Automatic Line Breaking
1549 1549 * :ghissue:`4039`: Celltoolbar example issue
1550 1550 * :ghissue:`4247`: nbconvert --to latex: error when converting greek letter
1551 1551 * :ghissue:`4273`: %%capture not capturing rich objects like plots (IPython 1.1.0)
1552 1552 * :ghissue:`3866`: Vertical offsets in LaTeX output for nbconvert
1553 1553 * :ghissue:`3631`: xkcd mode for the IPython notebook
1554 1554 * :ghissue:`4243`: Test exclusions not working on Windows
1555 1555 * :ghissue:`4256`: IPython no longer handles unicode file names
1556 1556 * :ghissue:`3656`: Audio displayobject
1557 1557 * :ghissue:`4223`: Double output on Ctrl-enter-enter
1558 1558 * :ghissue:`4184`: nbconvert: use r pygmentize backend when highlighting "%%R" cells
1559 1559 * :ghissue:`3851`: Adds an explicit newline for pretty-printing.
1560 1560 * :ghissue:`3622`: Drop fakemodule
1561 1561 * :ghissue:`4122`: Nbconvert [windows]: Inconsistent line endings in markdown cells exported to latex
1562 1562 * :ghissue:`3819`: nbconvert add extra blank line to code block on Windows.
1563 1563 * :ghissue:`4203`: remove spurious print statement from parallel annoted functions
1564 1564 * :ghissue:`4200`: Notebook: merging a heading cell and markdown cell cannot be undone
1565 1565 * :ghissue:`3747`: ipynb -> ipynb transformer
1566 1566 * :ghissue:`4024`: nbconvert markdown issues
1567 1567 * :ghissue:`3903`: on Windows, 'ipython3 nbconvert "C:/blabla/first_try.ipynb" --to slides' gives an unexpected result, and '--post serve' fails
1568 1568 * :ghissue:`4095`: Catch js error in append html in stream/pyerr
1569 1569 * :ghissue:`1880`: Add parallelism to test_pr
1570 1570 * :ghissue:`4085`: nbconvert: Fix sphinx preprocessor date format string for Windows
1571 1571 * :ghissue:`4156`: Specifying --gui=tk at the command line
1572 1572 * :ghissue:`4146`: Having to prepend 'files/' to markdown image paths is confusing
1573 1573 * :ghissue:`3818`: nbconvert can't handle Heading with Chinese characters on Japanese Windows OS.
1574 1574 * :ghissue:`4134`: multi-line parser fails on ''' in comment, qtconsole and notebook.
1575 1575 * :ghissue:`3998`: sample custom.js needs to be updated
1576 1576 * :ghissue:`4078`: StoreMagic.autorestore not working in 1.0.0
1577 1577 * :ghissue:`3990`: Buitlin `input` doesn't work over zmq
1578 1578 * :ghissue:`4015`: nbconvert fails to convert all the content of a notebook
1579 1579 * :ghissue:`4059`: Issues with Ellipsis literal in Python 3
1580 1580 * :ghissue:`2310`: "ZMQError: Interrupted system call" from RichIPythonWidget
1581 1581 * :ghissue:`3807`: qtconsole ipython 0.13.2 - html/xhtml export fails
1582 1582 * :ghissue:`4103`: Wrong default argument of DirectView.clear
1583 1583 * :ghissue:`4100`: parallel.client.client references undefined error.EngineError
1584 1584 * :ghissue:`484`: Drop nosepatch
1585 1585 * :ghissue:`3350`: Added longlist support in ipdb.
1586 1586 * :ghissue:`1591`: Keying 'q' doesn't quit the interactive help in Wins7
1587 1587 * :ghissue:`40`: The tests in test_process fail under Windows
1588 1588 * :ghissue:`3744`: capture rich output as well as stdout/err in capture_output
1589 1589 * :ghissue:`3742`: %%capture to grab rich display outputs
1590 1590 * :ghissue:`3863`: Added working speaker notes for slides.
1591 1591 * :ghissue:`4013`: Iptest fails in dual python installation
1592 1592 * :ghissue:`4005`: IPython.start_kernel doesn't work.
1593 1593 * :ghissue:`4020`: IPython parallel map fails on numpy arrays
1594 1594 * :ghissue:`3914`: nbconvert: Transformer tests
1595 1595 * :ghissue:`3923`: nbconvert: Writer tests
1596 1596 * :ghissue:`3945`: nbconvert: commandline tests fail Win7x64 Py3.3
1597 1597 * :ghissue:`3937`: make tab visible in codemirror and light red background
1598 1598 * :ghissue:`3935`: No feedback for mixed tabs and spaces
1599 1599 * :ghissue:`3933`: nbconvert: Post-processor tests
1600 1600 * :ghissue:`3977`: unable to complete remote connections for two-process
1601 1601 * :ghissue:`3939`: minor checkpoint cleanup
1602 1602 * :ghissue:`3955`: complete on % for magic in notebook
1603 1603 * :ghissue:`3954`: all magics should be listed when completing on %
1604 1604 * :ghissue:`3980`: nbconvert rst output lacks needed blank lines
1605 1605 * :ghissue:`3968`: TypeError: super() argument 1 must be type, not classobj (Python 2.6.6)
1606 1606 * :ghissue:`3880`: nbconvert: R&D remaining tests
1607 1607 * :ghissue:`2440`: IPEP 4: Python 3 Compatibility
@@ -1,283 +1,283 b''
1 1 ========================================
2 2 0.9 series
3 3 ========================================
4 4
5 5 Release 0.9.1
6 6 =============
7 7
8 8 This release was quickly made to restore compatibility with Python 2.4, which
9 9 version 0.9 accidentally broke. No new features were introduced, other than
10 10 some additional testing support for internal use.
11 11
12 12
13 13 Release 0.9
14 14 ===========
15 15
16 16 New features
17 17 ------------
18 18
19 19 * All furl files and security certificates are now put in a read-only
20 20 directory named ~/.ipython/security.
21 21
22 22 * A single function :func:`get_ipython_dir`, in :mod:`IPython.genutils` that
23 23 determines the user's IPython directory in a robust manner.
24 24
25 25 * Laurent's WX application has been given a top-level script called
26 26 ipython-wx, and it has received numerous fixes. We expect this code to be
27 27 architecturally better integrated with Gael's WX 'ipython widget' over the
28 28 next few releases.
29 29
30 30 * The Editor synchronization work by Vivian De Smedt has been merged in. This
31 31 code adds a number of new editor hooks to synchronize with editors under
32 32 Windows.
33 33
34 34 * A new, still experimental but highly functional, WX shell by Gael Varoquaux.
35 35 This work was sponsored by Enthought, and while it's still very new, it is
36 36 based on a more cleanly organized architecture of the various IPython
37 37 components. We will continue to develop this over the next few releases as a
38 38 model for GUI components that use IPython.
39 39
40 40 * Another GUI frontend, Cocoa based (Cocoa is the OSX native GUI framework),
41 41 authored by Barry Wark. Currently the WX and the Cocoa ones have slightly
42 42 different internal organizations, but the whole team is working on finding
43 43 what the right abstraction points are for a unified codebase.
44 44
45 45 * As part of the frontend work, Barry Wark also implemented an experimental
46 46 event notification system that various ipython components can use. In the
47 47 next release the implications and use patterns of this system regarding the
48 48 various GUI options will be worked out.
49 49
50 50 * IPython finally has a full test system, that can test docstrings with
51 51 IPython-specific functionality. There are still a few pieces missing for it
52 52 to be widely accessible to all users (so they can run the test suite at any
53 53 time and report problems), but it now works for the developers. We are
54 54 working hard on continuing to improve it, as this was probably IPython's
55 55 major Achilles heel (the lack of proper test coverage made it effectively
56 56 impossible to do large-scale refactoring). The full test suite can now
57 57 be run using the :command:`iptest` command line program.
58 58
59 59 * The notion of a task has been completely reworked. An `ITask` interface has
60 60 been created. This interface defines the methods that tasks need to
61 61 implement. These methods are now responsible for things like submitting
62 62 tasks and processing results. There are two basic task types:
63 63 :class:`IPython.kernel.task.StringTask` (this is the old `Task` object, but
64 64 renamed) and the new :class:`IPython.kernel.task.MapTask`, which is based on
65 65 a function.
66 66
67 67 * A new interface, :class:`IPython.kernel.mapper.IMapper` has been defined to
68 68 standardize the idea of a `map` method. This interface has a single `map`
69 69 method that has the same syntax as the built-in `map`. We have also defined
70 70 a `mapper` factory interface that creates objects that implement
71 71 :class:`IPython.kernel.mapper.IMapper` for different controllers. Both the
72 72 multiengine and task controller now have mapping capabilities.
73 73
74 74 * The parallel function capabilities have been reworks. The major changes are
75 75 that i) there is now an `@parallel` magic that creates parallel functions,
76 76 ii) the syntax for multiple variable follows that of `map`, iii) both the
77 77 multiengine and task controller now have a parallel function implementation.
78 78
79 79 * All of the parallel computing capabilities from `ipython1-dev` have been
80 80 merged into IPython proper. This resulted in the following new subpackages:
81 81 :mod:`IPython.kernel`, :mod:`IPython.kernel.core`, :mod:`traitlets.config`,
82 82 :mod:`IPython.tools` and :mod:`IPython.testing`.
83 83
84 * As part of merging in the `ipython1-dev` stuff, the `setup.py` script and
84 * As part of merging in the `ipython1-dev` stuff, the ``setup.py`` script and
85 85 friends have been completely refactored. Now we are checking for
86 86 dependencies using the approach that matplotlib uses.
87 87
88 88 * The documentation has been completely reorganized to accept the
89 89 documentation from `ipython1-dev`.
90 90
91 91 * We have switched to using Foolscap for all of our network protocols in
92 92 :mod:`IPython.kernel`. This gives us secure connections that are both
93 93 encrypted and authenticated.
94 94
95 95 * We have a brand new `COPYING.txt` files that describes the IPython license
96 96 and copyright. The biggest change is that we are putting "The IPython
97 97 Development Team" as the copyright holder. We give more details about
98 98 exactly what this means in this file. All developer should read this and use
99 99 the new banner in all IPython source code files.
100 100
101 101 * sh profile: ./foo runs foo as system command, no need to do !./foo anymore
102 102
103 103 * String lists now support ``sort(field, nums = True)`` method (to easily sort
104 104 system command output). Try it with ``a = !ls -l ; a.sort(1, nums=1)``.
105 105
106 106 * '%cpaste foo' now assigns the pasted block as string list, instead of string
107 107
108 108 * The ipcluster script now run by default with no security. This is done
109 109 because the main usage of the script is for starting things on localhost.
110 110 Eventually when ipcluster is able to start things on other hosts, we will put
111 111 security back.
112 112
113 113 * 'cd --foo' searches directory history for string foo, and jumps to that dir.
114 114 Last part of dir name is checked first. If no matches for that are found,
115 115 look at the whole path.
116 116
117 117
118 118 Bug fixes
119 119 ---------
120 120
121 121 * The Windows installer has been fixed. Now all IPython scripts have ``.bat``
122 122 versions created. Also, the Start Menu shortcuts have been updated.
123 123
124 124 * The colors escapes in the multiengine client are now turned off on win32 as
125 125 they don't print correctly.
126 126
127 127 * The :mod:`IPython.kernel.scripts.ipengine` script was exec'ing
128 128 mpi_import_statement incorrectly, which was leading the engine to crash when
129 129 mpi was enabled.
130 130
131 131 * A few subpackages had missing ``__init__.py`` files.
132 132
133 133 * The documentation is only created if Sphinx is found. Previously, the
134 134 ``setup.py`` script would fail if it was missing.
135 135
136 136 * Greedy ``cd`` completion has been disabled again (it was enabled in 0.8.4) as
137 137 it caused problems on certain platforms.
138 138
139 139
140 140 Backwards incompatible changes
141 141 ------------------------------
142 142
143 143 * The ``clusterfile`` options of the :command:`ipcluster` command has been
144 144 removed as it was not working and it will be replaced soon by something much
145 145 more robust.
146 146
147 147 * The :mod:`IPython.kernel` configuration now properly find the user's
148 148 IPython directory.
149 149
150 150 * In ipapi, the :func:`make_user_ns` function has been replaced with
151 151 :func:`make_user_namespaces`, to support dict subclasses in namespace
152 152 creation.
153 153
154 154 * :class:`IPython.kernel.client.Task` has been renamed
155 155 :class:`IPython.kernel.client.StringTask` to make way for new task types.
156 156
157 157 * The keyword argument `style` has been renamed `dist` in `scatter`, `gather`
158 158 and `map`.
159 159
160 160 * Renamed the values that the rename `dist` keyword argument can have from
161 161 `'basic'` to `'b'`.
162 162
163 163 * IPython has a larger set of dependencies if you want all of its capabilities.
164 See the `setup.py` script for details.
164 See the ``setup.py`` script for details.
165 165
166 166 * The constructors for :class:`IPython.kernel.client.MultiEngineClient` and
167 167 :class:`IPython.kernel.client.TaskClient` no longer take the (ip,port) tuple.
168 168 Instead they take the filename of a file that contains the FURL for that
169 169 client. If the FURL file is in your IPYTHONDIR, it will be found automatically
170 170 and the constructor can be left empty.
171 171
172 172 * The asynchronous clients in :mod:`IPython.kernel.asyncclient` are now created
173 173 using the factory functions :func:`get_multiengine_client` and
174 174 :func:`get_task_client`. These return a `Deferred` to the actual client.
175 175
176 176 * The command line options to `ipcontroller` and `ipengine` have changed to
177 177 reflect the new Foolscap network protocol and the FURL files. Please see the
178 178 help for these scripts for details.
179 179
180 180 * The configuration files for the kernel have changed because of the Foolscap
181 181 stuff. If you were using custom config files before, you should delete them
182 182 and regenerate new ones.
183 183
184 184 Changes merged in from IPython1
185 185 -------------------------------
186 186
187 187 New features
188 188 ............
189 189
190 190 * Much improved ``setup.py`` and ``setupegg.py`` scripts. Because Twisted and
191 191 zope.interface are now easy installable, we can declare them as dependencies
192 192 in our setupegg.py script.
193 193
194 194 * IPython is now compatible with Twisted 2.5.0 and 8.x.
195 195
196 196 * Added a new example of how to use :mod:`ipython1.kernel.asynclient`.
197 197
198 198 * Initial draft of a process daemon in :mod:`ipython1.daemon`. This has not
199 199 been merged into IPython and is still in `ipython1-dev`.
200 200
201 201 * The ``TaskController`` now has methods for getting the queue status.
202 202
203 203 * The ``TaskResult`` objects not have information about how long the task
204 204 took to run.
205 205
206 206 * We are attaching additional attributes to exceptions ``(_ipython_*)`` that
207 207 we use to carry additional info around.
208 208
209 209 * New top-level module :mod:`asyncclient` that has asynchronous versions (that
210 210 return deferreds) of the client classes. This is designed to users who want
211 211 to run their own Twisted reactor.
212 212
213 213 * All the clients in :mod:`client` are now based on Twisted. This is done by
214 214 running the Twisted reactor in a separate thread and using the
215 215 :func:`blockingCallFromThread` function that is in recent versions of Twisted.
216 216
217 217 * Functions can now be pushed/pulled to/from engines using
218 218 :meth:`MultiEngineClient.push_function` and
219 219 :meth:`MultiEngineClient.pull_function`.
220 220
221 221 * Gather/scatter are now implemented in the client to reduce the work load
222 222 of the controller and improve performance.
223 223
224 224 * Complete rewrite of the IPython docuementation. All of the documentation
225 225 from the IPython website has been moved into docs/source as restructured
226 226 text documents. PDF and HTML documentation are being generated using
227 227 Sphinx.
228 228
229 229 * New developer oriented documentation: development guidelines and roadmap.
230 230
231 231 * Traditional ``ChangeLog`` has been changed to a more useful ``changes.txt``
232 232 file that is organized by release and is meant to provide something more
233 233 relevant for users.
234 234
235 235 Bug fixes
236 236 .........
237 237
238 238 * Created a proper ``MANIFEST.in`` file to create source distributions.
239 239
240 240 * Fixed a bug in the ``MultiEngine`` interface. Previously, multi-engine
241 241 actions were being collected with a :class:`DeferredList` with
242 242 ``fireononeerrback=1``. This meant that methods were returning
243 243 before all engines had given their results. This was causing extremely odd
244 244 bugs in certain cases. To fix this problem, we have 1) set
245 245 ``fireononeerrback=0`` to make sure all results (or exceptions) are in
246 246 before returning and 2) introduced a :exc:`CompositeError` exception
247 247 that wraps all of the engine exceptions. This is a huge change as it means
248 248 that users will have to catch :exc:`CompositeError` rather than the actual
249 249 exception.
250 250
251 251 Backwards incompatible changes
252 252 ..............................
253 253
254 254 * All names have been renamed to conform to the lowercase_with_underscore
255 255 convention. This will require users to change references to all names like
256 256 ``queueStatus`` to ``queue_status``.
257 257
258 258 * Previously, methods like :meth:`MultiEngineClient.push` and
259 259 :meth:`MultiEngineClient.push` used ``*args`` and ``**kwargs``. This was
260 260 becoming a problem as we weren't able to introduce new keyword arguments into
261 261 the API. Now these methods simple take a dict or sequence. This has also
262 262 allowed us to get rid of the ``*All`` methods like :meth:`pushAll` and
263 263 :meth:`pullAll`. These things are now handled with the ``targets`` keyword
264 264 argument that defaults to ``'all'``.
265 265
266 266 * The :attr:`MultiEngineClient.magicTargets` has been renamed to
267 267 :attr:`MultiEngineClient.targets`.
268 268
269 269 * All methods in the MultiEngine interface now accept the optional keyword
270 270 argument ``block``.
271 271
272 272 * Renamed :class:`RemoteController` to :class:`MultiEngineClient` and
273 273 :class:`TaskController` to :class:`TaskClient`.
274 274
275 275 * Renamed the top-level module from :mod:`api` to :mod:`client`.
276 276
277 277 * Most methods in the multiengine interface now raise a :exc:`CompositeError`
278 278 exception that wraps the user's exceptions, rather than just raising the raw
279 279 user's exception.
280 280
281 281 * Changed the ``setupNS`` and ``resultNames`` in the ``Task`` class to ``push``
282 282 and ``pull``.
283 283
@@ -1,1067 +1,1064 b''
1 1 ============
2 2 8.x Series
3 3 ============
4 4
5 5
6 6 .. _version 8.3.0:
7 7
8 8 IPython 8.3.0
9 9 -------------
10 10
11 11 - :ghpull:`13625`, using ``?``, ``??``, ``*?`` will not call
12 12 ``set_next_input`` as most frontend allow proper multiline editing and it was
13 13 causing issues for many users of multi-cell frontends.
14 14
15 15
16 16 - :ghpull:`13600`, ``pre_run_*``-hooks will now have a ``cell_id`` attribute on
17 17 the info object when frontend provide it.
18 18
19 - :ghpull:`13624`, fixed :kbd:`End` key being broken after accepting an
20 autosuggestion.
21
22 19 .. _version 8.2.0:
23 20
24 21 IPython 8.2.0
25 22 -------------
26 23
27 24 IPython 8.2 mostly bring bugfixes to IPython.
28 25
29 26 - Auto-suggestion can now be elected with the ``end`` key. :ghpull:`13566`
30 27 - Some traceback issues with ``assert etb is not None`` have been fixed. :ghpull:`13588`
31 28 - History is now pulled from the sqitel database and not from in-memory.
32 29 In particular when using the ``%paste`` magic, the content of the pasted text will
33 30 be part of the history and not the verbatim text ``%paste`` anymore. :ghpull:`13592`
34 31 - Fix ``Ctrl-\\`` exit cleanup :ghpull:`13603`
35 32 - Fixes to ``ultratb`` ipdb support when used outside of IPython. :ghpull:`13498`
36 33
37 34
38 35 I am still trying to fix and investigate :ghissue:`13598`, which seem to be
39 36 random, and would appreciate help if you find reproducible minimal case. I've
40 37 tried to make various changes to the codebase to mitigate it, but a proper fix
41 38 will be difficult without understanding the cause.
42 39
43 40
44 41 All the issues on pull-requests for this release can be found in the `8.2
45 42 milestone. <https://github.com/ipython/ipython/milestone/100>`__ . And some
46 43 documentation only PR can be found as part of the `7.33 milestone
47 44 <https://github.com/ipython/ipython/milestone/101>`__ (currently not released).
48 45
49 46 Thanks to the `D. E. Shaw group <https://deshaw.com/>`__ for sponsoring
50 47 work on IPython and related libraries.
51 48
52 49 .. _version 8.1.1:
53 50
54 51 IPython 8.1.1
55 52 -------------
56 53
57 54 Fix an issue with virtualenv and Python 3.8 introduced in 8.1
58 55
59 56 Revert :ghpull:`13537` (fix an issue with symlinks in virtualenv) that raises an
60 57 error in Python 3.8, and fixed in a different way in :ghpull:`13559`.
61 58
62 59 .. _version 8.1:
63 60
64 61 IPython 8.1.0
65 62 -------------
66 63
67 64 IPython 8.1 is the first minor release after 8.0 and fixes a number of bugs and
68 65 Update a few behavior that were problematic with the 8.0 as with many new major
69 66 release.
70 67
71 68 Note that beyond the changes listed here, IPython 8.1.0 also contains all the
72 69 features listed in :ref:`version 7.32`.
73 70
74 71 - Misc and multiple fixes around quotation auto-closing. It is now disabled by
75 72 default. Run with ``TerminalInteractiveShell.auto_match=True`` to re-enabled
76 73 - Require pygments>=2.4.0 :ghpull:`13459`, this was implicit in the code, but
77 74 is now explicit in ``setup.cfg``/``setup.py``
78 75 - Docs improvement of ``core.magic_arguments`` examples. :ghpull:`13433`
79 76 - Multi-line edit executes too early with await. :ghpull:`13424`
80 77
81 78 - ``black`` is back as an optional dependency, and autoformatting disabled by
82 79 default until some fixes are implemented (black improperly reformat magics).
83 80 :ghpull:`13471` Additionally the ability to use ``yapf`` as a code
84 81 reformatter has been added :ghpull:`13528` . You can use
85 82 ``TerminalInteractiveShell.autoformatter="black"``,
86 83 ``TerminalInteractiveShell.autoformatter="yapf"`` to re-enable auto formating
87 84 with black, or switch to yapf.
88 85
89 86 - Fix and issue where ``display`` was not defined.
90 87
91 88 - Auto suggestions are now configurable. Currently only
92 89 ``AutoSuggestFromHistory`` (default) and ``None``. new provider contribution
93 90 welcomed. :ghpull:`13475`
94 91
95 92 - multiple packaging/testing improvement to simplify downstream packaging
96 93 (xfail with reasons, try to not access network...).
97 94
98 95 - Update deprecation. ``InteractiveShell.magic`` internal method has been
99 96 deprecated for many years but did not emit a warning until now.
100 97
101 98 - internal ``appended_to_syspath`` context manager has been deprecated.
102 99
103 100 - fix an issue with symlinks in virtualenv :ghpull:`13537` (Reverted in 8.1.1)
104 101
105 102 - Fix an issue with vim mode, where cursor would not be reset on exit :ghpull:`13472`
106 103
107 104 - ipython directive now remove only known pseudo-decorators :ghpull:`13532`
108 105
109 106 - ``IPython/lib/security`` which used to be used for jupyter notebook has been
110 107 removed.
111 108
112 109 - Fix an issue where ``async with`` would execute on new lines. :ghpull:`13436`
113 110
114 111
115 112 We want to remind users that IPython is part of the Jupyter organisations, and
116 113 thus governed by a Code of Conduct. Some of the behavior we have seen on GitHub is not acceptable.
117 114 Abuse and non-respectful comments on discussion will not be tolerated.
118 115
119 116 Many thanks to all the contributors to this release, many of the above fixed issue and
120 117 new features where done by first time contributors, showing there is still
121 118 plenty of easy contribution possible in IPython
122 119 . You can find all individual contributions
123 120 to this milestone `on github <https://github.com/ipython/ipython/milestone/91>`__.
124 121
125 122 Thanks as well to the `D. E. Shaw group <https://deshaw.com/>`__ for sponsoring
126 123 work on IPython and related libraries. In particular the Lazy autoloading of
127 124 magics that you will find described in the 7.32 release notes.
128 125
129 126
130 127 .. _version 8.0.1:
131 128
132 129 IPython 8.0.1 (CVE-2022-21699)
133 130 ------------------------------
134 131
135 132 IPython 8.0.1, 7.31.1 and 5.11 are security releases that change some default
136 133 values in order to prevent potential Execution with Unnecessary Privileges.
137 134
138 135 Almost all version of IPython looks for configuration and profiles in current
139 136 working directory. Since IPython was developed before pip and environments
140 137 existed it was used a convenient way to load code/packages in a project
141 138 dependant way.
142 139
143 140 In 2022, it is not necessary anymore, and can lead to confusing behavior where
144 141 for example cloning a repository and starting IPython or loading a notebook from
145 142 any Jupyter-Compatible interface that has ipython set as a kernel can lead to
146 143 code execution.
147 144
148 145
149 146 I did not find any standard way for packaged to advertise CVEs they fix, I'm
150 147 thus trying to add a ``__patched_cves__`` attribute to the IPython module that
151 148 list the CVEs that should have been fixed. This attribute is informational only
152 149 as if a executable has a flaw, this value can always be changed by an attacker.
153 150
154 151 .. code::
155 152
156 153 In [1]: import IPython
157 154
158 155 In [2]: IPython.__patched_cves__
159 156 Out[2]: {'CVE-2022-21699'}
160 157
161 158 In [3]: 'CVE-2022-21699' in IPython.__patched_cves__
162 159 Out[3]: True
163 160
164 161 Thus starting with this version:
165 162
166 163 - The current working directory is not searched anymore for profiles or
167 164 configurations files.
168 165 - Added a ``__patched_cves__`` attribute (set of strings) to IPython module that contain
169 166 the list of fixed CVE. This is informational only.
170 167
171 168 Further details can be read on the `GitHub Advisory <https://github.com/ipython/ipython/security/advisories/GHSA-pq7m-3gw7-gq5x>`__
172 169
173 170
174 171 .. _version 8.0:
175 172
176 173 IPython 8.0
177 174 -----------
178 175
179 176 IPython 8.0 is bringing a large number of new features and improvements to both the
180 177 user of the terminal and of the kernel via Jupyter. The removal of compatibility
181 178 with older version of Python is also the opportunity to do a couple of
182 179 performance improvements in particular with respect to startup time.
183 180 The 8.x branch started diverging from its predecessor around IPython 7.12
184 181 (January 2020).
185 182
186 183 This release contains 250+ pull requests, in addition to many of the features
187 184 and backports that have made it to the 7.x branch. Please see the
188 185 `8.0 milestone <https://github.com/ipython/ipython/milestone/73?closed=1>`__ for the full list of pull requests.
189 186
190 187 Please feel free to send pull requests to updates those notes after release,
191 188 I have likely forgotten a few things reviewing 250+ PRs.
192 189
193 190 Dependencies changes/downstream packaging
194 191 -----------------------------------------
195 192
196 193 Most of our building steps have been changed to be (mostly) declarative
197 194 and follow PEP 517. We are trying to completely remove ``setup.py`` (:ghpull:`13238`) and are
198 195 looking for help to do so.
199 196
200 197 - minimum supported ``traitlets`` version is now 5+
201 198 - we now require ``stack_data``
202 199 - minimal Python is now 3.8
203 200 - ``nose`` is not a testing requirement anymore
204 201 - ``pytest`` replaces nose.
205 202 - ``iptest``/``iptest3`` cli entrypoints do not exists anymore.
206 203 - minimum officially support ``numpy`` version has been bumped, but this should
207 204 not have much effect on packaging.
208 205
209 206
210 207 Deprecation and removal
211 208 -----------------------
212 209
213 210 We removed almost all features, arguments, functions, and modules that were
214 211 marked as deprecated between IPython 1.0 and 5.0. As a reminder, 5.0 was released
215 212 in 2016, and 1.0 in 2013. Last release of the 5 branch was 5.10.0, in May 2020.
216 213 The few remaining deprecated features we left have better deprecation warnings
217 214 or have been turned into explicit errors for better error messages.
218 215
219 216 I will use this occasion to add the following requests to anyone emitting a
220 217 deprecation warning:
221 218
222 219 - Please add at least ``stacklevel=2`` so that the warning is emitted into the
223 220 caller context, and not the callee one.
224 221 - Please add **since which version** something is deprecated.
225 222
226 223 As a side note, it is much easier to conditionally compare version
227 224 numbers rather than using ``try/except`` when functionality changes with a version.
228 225
229 226 I won't list all the removed features here, but modules like ``IPython.kernel``,
230 227 which was just a shim module around ``ipykernel`` for the past 8 years, have been
231 228 removed, and so many other similar things that pre-date the name **Jupyter**
232 229 itself.
233 230
234 231 We no longer need to add ``IPython.extensions`` to the PYTHONPATH because that is being
235 232 handled by ``load_extension``.
236 233
237 234 We are also removing ``Cythonmagic``, ``sympyprinting`` and ``rmagic`` as they are now in
238 235 other packages and no longer need to be inside IPython.
239 236
240 237
241 238 Documentation
242 239 -------------
243 240
244 241 The majority of our docstrings have now been reformatted and automatically fixed by
245 242 the experimental `VΓ©lin <https://pypi.org/project/velin/>`_ project to conform
246 243 to numpydoc.
247 244
248 245 Type annotations
249 246 ----------------
250 247
251 248 While IPython itself is highly dynamic and can't be completely typed, many of
252 249 the functions now have type annotations, and part of the codebase is now checked
253 250 by mypy.
254 251
255 252
256 253 Featured changes
257 254 ----------------
258 255
259 256 Here is a features list of changes in IPython 8.0. This is of course non-exhaustive.
260 257 Please note as well that many features have been added in the 7.x branch as well
261 258 (and hence why you want to read the 7.x what's new notes), in particular
262 259 features contributed by QuantStack (with respect to debugger protocol and Xeus
263 260 Python), as well as many debugger features that I was pleased to implement as
264 261 part of my work at QuanSight and sponsored by DE Shaw.
265 262
266 263 Traceback improvements
267 264 ~~~~~~~~~~~~~~~~~~~~~~
268 265
269 266 Previously, error tracebacks for errors happening in code cells were showing a
270 267 hash, the one used for compiling the Python AST::
271 268
272 269 In [1]: def foo():
273 270 ...: return 3 / 0
274 271 ...:
275 272
276 273 In [2]: foo()
277 274 ---------------------------------------------------------------------------
278 275 ZeroDivisionError Traceback (most recent call last)
279 276 <ipython-input-2-c19b6d9633cf> in <module>
280 277 ----> 1 foo()
281 278
282 279 <ipython-input-1-1595a74c32d5> in foo()
283 280 1 def foo():
284 281 ----> 2 return 3 / 0
285 282 3
286 283
287 284 ZeroDivisionError: division by zero
288 285
289 286 The error traceback is now correctly formatted, showing the cell number in which the error happened::
290 287
291 288 In [1]: def foo():
292 289 ...: return 3 / 0
293 290 ...:
294 291
295 292 Input In [2]: foo()
296 293 ---------------------------------------------------------------------------
297 294 ZeroDivisionError Traceback (most recent call last)
298 295 input In [2], in <module>
299 296 ----> 1 foo()
300 297
301 298 Input In [1], in foo()
302 299 1 def foo():
303 300 ----> 2 return 3 / 0
304 301
305 302 ZeroDivisionError: division by zero
306 303
307 304 The ``stack_data`` package has been integrated, which provides smarter information in the traceback;
308 305 in particular it will highlight the AST node where an error occurs which can help to quickly narrow down errors.
309 306
310 307 For example in the following snippet::
311 308
312 309 def foo(i):
313 310 x = [[[0]]]
314 311 return x[0][i][0]
315 312
316 313
317 314 def bar():
318 315 return foo(0) + foo(
319 316 1
320 317 ) + foo(2)
321 318
322 319
323 320 calling ``bar()`` would raise an ``IndexError`` on the return line of ``foo``,
324 321 and IPython 8.0 is capable of telling you where the index error occurs::
325 322
326 323
327 324 IndexError
328 325 Input In [2], in <module>
329 326 ----> 1 bar()
330 327 ^^^^^
331 328
332 329 Input In [1], in bar()
333 330 6 def bar():
334 331 ----> 7 return foo(0) + foo(
335 332 ^^^^
336 333 8 1
337 334 ^^^^^^^^
338 335 9 ) + foo(2)
339 336 ^^^^
340 337
341 338 Input In [1], in foo(i)
342 339 1 def foo(i):
343 340 2 x = [[[0]]]
344 341 ----> 3 return x[0][i][0]
345 342 ^^^^^^^
346 343
347 344 The corresponding locations marked here with ``^`` will show up highlighted in
348 345 the terminal and notebooks.
349 346
350 347 Finally, a colon ``::`` and line number is appended after a filename in
351 348 traceback::
352 349
353 350
354 351 ZeroDivisionError Traceback (most recent call last)
355 352 File ~/error.py:4, in <module>
356 353 1 def f():
357 354 2 1/0
358 355 ----> 4 f()
359 356
360 357 File ~/error.py:2, in f()
361 358 1 def f():
362 359 ----> 2 1/0
363 360
364 361 Many terminals and editors have integrations enabling you to directly jump to the
365 362 relevant file/line when this syntax is used, so this small addition may have a high
366 363 impact on productivity.
367 364
368 365
369 366 Autosuggestions
370 367 ~~~~~~~~~~~~~~~
371 368
372 369 Autosuggestion is a very useful feature available in `fish <https://fishshell.com/>`__, `zsh <https://en.wikipedia.org/wiki/Z_shell>`__, and `prompt-toolkit <https://python-prompt-toolkit.readthedocs.io/en/master/pages/asking_for_input.html#auto-suggestion>`__.
373 370
374 371 `Ptpython <https://github.com/prompt-toolkit/ptpython#ptpython>`__ allows users to enable this feature in
375 372 `ptpython/config.py <https://github.com/prompt-toolkit/ptpython/blob/master/examples/ptpython_config/config.py#L90>`__.
376 373
377 374 This feature allows users to accept autosuggestions with ctrl e, ctrl f,
378 375 or right arrow as described below.
379 376
380 377 1. Start ipython
381 378
382 379 .. image:: ../_images/8.0/auto_suggest_1_prompt_no_text.png
383 380
384 381 2. Run ``print("hello")``
385 382
386 383 .. image:: ../_images/8.0/auto_suggest_2_print_hello_suggest.png
387 384
388 385 3. start typing ``print`` again to see the autosuggestion
389 386
390 387 .. image:: ../_images/8.0/auto_suggest_3_print_hello_suggest.png
391 388
392 389 4. Press ``ctrl-f``, or ``ctrl-e``, or ``right-arrow`` to accept the suggestion
393 390
394 391 .. image:: ../_images/8.0/auto_suggest_4_print_hello.png
395 392
396 393 You can also complete word by word:
397 394
398 395 1. Run ``def say_hello(): print("hello")``
399 396
400 397 .. image:: ../_images/8.0/auto_suggest_second_prompt.png
401 398
402 399 2. Start typing the first letter if ``def`` to see the autosuggestion
403 400
404 401 .. image:: ../_images/8.0/auto_suggest_d_phantom.png
405 402
406 403 3. Press ``alt-f`` (or ``escape`` followed by ``f``), to accept the first word of the suggestion
407 404
408 405 .. image:: ../_images/8.0/auto_suggest_def_phantom.png
409 406
410 407 Importantly, this feature does not interfere with tab completion:
411 408
412 409 1. After running ``def say_hello(): print("hello")``, press d
413 410
414 411 .. image:: ../_images/8.0/auto_suggest_d_phantom.png
415 412
416 413 2. Press Tab to start tab completion
417 414
418 415 .. image:: ../_images/8.0/auto_suggest_d_completions.png
419 416
420 417 3A. Press Tab again to select the first option
421 418
422 419 .. image:: ../_images/8.0/auto_suggest_def_completions.png
423 420
424 421 3B. Press ``alt f`` (``escape``, ``f``) to accept to accept the first word of the suggestion
425 422
426 423 .. image:: ../_images/8.0/auto_suggest_def_phantom.png
427 424
428 425 3C. Press ``ctrl-f`` or ``ctrl-e`` to accept the entire suggestion
429 426
430 427 .. image:: ../_images/8.0/auto_suggest_match_parens.png
431 428
432 429
433 430 Currently, autosuggestions are only shown in the emacs or vi insert editing modes:
434 431
435 432 - The ctrl e, ctrl f, and alt f shortcuts work by default in emacs mode.
436 433 - To use these shortcuts in vi insert mode, you will have to create `custom keybindings in your config.py <https://github.com/mskar/setup/commit/2892fcee46f9f80ef7788f0749edc99daccc52f4/>`__.
437 434
438 435
439 436 Show pinfo information in ipdb using "?" and "??"
440 437 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
441 438
442 439 In IPDB, it is now possible to show the information about an object using "?"
443 440 and "??", in much the same way that it can be done when using the IPython prompt::
444 441
445 442 ipdb> partial?
446 443 Init signature: partial(self, /, *args, **kwargs)
447 444 Docstring:
448 445 partial(func, *args, **keywords) - new function with partial application
449 446 of the given arguments and keywords.
450 447 File: ~/.pyenv/versions/3.8.6/lib/python3.8/functools.py
451 448 Type: type
452 449 Subclasses:
453 450
454 451 Previously, ``pinfo`` or ``pinfo2`` command had to be used for this purpose.
455 452
456 453
457 454 Autoreload 3 feature
458 455 ~~~~~~~~~~~~~~~~~~~~
459 456
460 457 Example: When an IPython session is run with the 'autoreload' extension loaded,
461 458 you will now have the option '3' to select, which means the following:
462 459
463 460 1. replicate all functionality from option 2
464 461 2. autoload all new funcs/classes/enums/globals from the module when they are added
465 462 3. autoload all newly imported funcs/classes/enums/globals from external modules
466 463
467 464 Try ``%autoreload 3`` in an IPython session after running ``%load_ext autoreload``.
468 465
469 466 For more information please see the following unit test : ``extensions/tests/test_autoreload.py:test_autoload_newly_added_objects``
470 467
471 468 Auto formatting with black in the CLI
472 469 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
473 470
474 471 This feature was present in 7.x, but disabled by default.
475 472
476 473 In 8.0, input was automatically reformatted with Black when black was installed.
477 474 This feature has been reverted for the time being.
478 475 You can re-enable it by setting ``TerminalInteractiveShell.autoformatter`` to ``"black"``
479 476
480 477 History Range Glob feature
481 478 ~~~~~~~~~~~~~~~~~~~~~~~~~~
482 479
483 480 Previously, when using ``%history``, users could specify either
484 481 a range of sessions and lines, for example:
485 482
486 483 .. code-block:: python
487 484
488 485 ~8/1-~6/5 # see history from the first line of 8 sessions ago,
489 486 # to the fifth line of 6 sessions ago.``
490 487
491 488 Or users could specify a glob pattern:
492 489
493 490 .. code-block:: python
494 491
495 492 -g <pattern> # glob ALL history for the specified pattern.
496 493
497 494 However users could *not* specify both.
498 495
499 496 If a user *did* specify both a range and a glob pattern,
500 497 then the glob pattern would be used (globbing *all* history) *and the range would be ignored*.
501 498
502 499 With this enhancement, if a user specifies both a range and a glob pattern, then the glob pattern will be applied to the specified range of history.
503 500
504 501 Don't start a multi-line cell with sunken parenthesis
505 502 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
506 503
507 504 From now on, IPython will not ask for the next line of input when given a single
508 505 line with more closing than opening brackets. For example, this means that if
509 506 you (mis)type ``]]`` instead of ``[]``, a ``SyntaxError`` will show up, instead of
510 507 the ``...:`` prompt continuation.
511 508
512 509 IPython shell for ipdb interact
513 510 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
514 511
515 512 The ipdb ``interact`` starts an IPython shell instead of Python's built-in ``code.interact()``.
516 513
517 514 Automatic Vi prompt stripping
518 515 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
519 516
520 517 When pasting code into IPython, it will strip the leading prompt characters if
521 518 there are any. For example, you can paste the following code into the console -
522 it will still work, even though each line is prefixed with prompts (`In`,
523 `Out`)::
519 it will still work, even though each line is prefixed with prompts (``In``,
520 ``Out``)::
524 521
525 522 In [1]: 2 * 2 == 4
526 523 Out[1]: True
527 524
528 525 In [2]: print("This still works as pasted")
529 526
530 527
531 528 Previously, this was not the case for the Vi-mode prompts::
532 529
533 530 In [1]: [ins] In [13]: 2 * 2 == 4
534 531 ...: Out[13]: True
535 532 ...:
536 533 File "<ipython-input-1-727bb88eaf33>", line 1
537 534 [ins] In [13]: 2 * 2 == 4
538 535 ^
539 536 SyntaxError: invalid syntax
540 537
541 538 This is now fixed, and Vi prompt prefixes - ``[ins]`` and ``[nav]`` - are
542 539 skipped just as the normal ``In`` would be.
543 540
544 541 IPython shell can be started in the Vi mode using ``ipython --TerminalInteractiveShell.editing_mode=vi``,
545 542 You should be able to change mode dynamically with ``%config TerminalInteractiveShell.editing_mode='vi'``
546 543
547 544 Empty History Ranges
548 545 ~~~~~~~~~~~~~~~~~~~~
549 546
550 547 A number of magics that take history ranges can now be used with an empty
551 548 range. These magics are:
552 549
553 550 * ``%save``
554 551 * ``%load``
555 552 * ``%pastebin``
556 553 * ``%pycat``
557 554
558 555 Using them this way will make them take the history of the current session up
559 556 to the point of the magic call (such that the magic itself will not be
560 557 included).
561 558
562 559 Therefore it is now possible to save the whole history to a file using
563 560 ``%save <filename>``, load and edit it using ``%load`` (makes for a nice usage
564 561 when followed with :kbd:`F2`), send it to `dpaste.org <http://dpast.org>`_ using
565 562 ``%pastebin``, or view the whole thing syntax-highlighted with a single
566 563 ``%pycat``.
567 564
568 565
569 566 Windows timing implementation: Switch to process_time
570 567 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
571 568 Timing on Windows, for example with ``%%time``, was changed from being based on ``time.perf_counter``
572 569 (which counted time even when the process was sleeping) to being based on ``time.process_time`` instead
573 570 (which only counts CPU time). This brings it closer to the behavior on Linux. See :ghpull:`12984`.
574 571
575 572 Miscellaneous
576 573 ~~~~~~~~~~~~~
577 574 - Non-text formatters are not disabled in the terminal, which should simplify
578 575 writing extensions displaying images or other mimetypes in supporting terminals.
579 576 :ghpull:`12315`
580 577 - It is now possible to automatically insert matching brackets in Terminal IPython using the
581 578 ``TerminalInteractiveShell.auto_match=True`` option. :ghpull:`12586`
582 579 - We are thinking of deprecating the current ``%%javascript`` magic in favor of a better replacement. See :ghpull:`13376`.
583 580 - ``~`` is now expanded when part of a path in most magics :ghpull:`13385`
584 581 - ``%/%%timeit`` magic now adds a comma every thousands to make reading a long number easier :ghpull:`13379`
585 582 - ``"info"`` messages can now be customised to hide some fields :ghpull:`13343`
586 583 - ``collections.UserList`` now pretty-prints :ghpull:`13320`
587 584 - The debugger now has a persistent history, which should make it less
588 585 annoying to retype commands :ghpull:`13246`
589 586 - ``!pip`` ``!conda`` ``!cd`` or ``!ls`` are likely doing the wrong thing. We
590 587 now warn users if they use one of those commands. :ghpull:`12954`
591 588 - Make ``%precision`` work for ``numpy.float64`` type :ghpull:`12902`
592 589
593 590 Re-added support for XDG config directories
594 591 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
595 592
596 593 XDG support through the years comes and goes. There is a tension between having
597 594 an identical location for configuration in all platforms versus having simple instructions.
598 595 After initial failures a couple of years ago, IPython was modified to automatically migrate XDG
599 596 config files back into ``~/.ipython``. That migration code has now been removed.
600 597 IPython now checks the XDG locations, so if you _manually_ move your config
601 598 files to your preferred location, IPython will not move them back.
602 599
603 600
604 601 Preparing for Python 3.10
605 602 -------------------------
606 603
607 604 To prepare for Python 3.10, we have started working on removing reliance and
608 605 any dependency that is not compatible with Python 3.10. This includes migrating our
609 606 test suite to pytest and starting to remove nose. This also means that the
610 607 ``iptest`` command is now gone and all testing is via pytest.
611 608
612 609 This was in large part thanks to the NumFOCUS Small Developer grant, which enabled us to
613 610 allocate \$4000 to hire `Nikita Kniazev (@Kojoley) <https://github.com/Kojoley>`_,
614 611 who did a fantastic job at updating our code base, migrating to pytest, pushing
615 612 our coverage, and fixing a large number of bugs. I highly recommend contacting
616 613 them if you need help with C++ and Python projects.
617 614
618 You can find all relevant issues and PRs with the SDG 2021 tag `<https://github.com/ipython/ipython/issues?q=label%3A%22Numfocus+SDG+2021%22+>`__
615 You can find all relevant issues and PRs with `the SDG 2021 tag <https://github.com/ipython/ipython/issues?q=label%3A%22Numfocus+SDG+2021%22+>`__
619 616
620 617 Removing support for older Python versions
621 618 ------------------------------------------
622 619
623 620
624 621 We are removing support for Python up through 3.7, allowing internal code to use the more
625 622 efficient ``pathlib`` and to make better use of type annotations.
626 623
627 624 .. image:: ../_images/8.0/pathlib_pathlib_everywhere.jpg
628 625 :alt: "Meme image of Toy Story with Woody and Buzz, with the text 'pathlib, pathlib everywhere'"
629 626
630 627
631 628 We had about 34 PRs only to update some logic to update some functions from managing strings to
632 629 using Pathlib.
633 630
634 631 The completer has also seen significant updates and now makes use of newer Jedi APIs,
635 632 offering faster and more reliable tab completion.
636 633
637 634 Misc Statistics
638 635 ---------------
639 636
640 637 Here are some numbers::
641 638
642 639 7.x: 296 files, 12561 blank lines, 20282 comments, 35142 line of code.
643 640 8.0: 252 files, 12053 blank lines, 19232 comments, 34505 line of code.
644 641
645 642 $ git diff --stat 7.x...master | tail -1
646 643 340 files changed, 13399 insertions(+), 12421 deletions(-)
647 644
648 645 We have commits from 162 authors, who contributed 1916 commits in 23 month, excluding merges (to not bias toward
649 646 maintainers pushing buttons).::
650 647
651 648 $ git shortlog -s --no-merges 7.x...master | sort -nr
652 649 535 Matthias Bussonnier
653 650 86 Nikita Kniazev
654 651 69 Blazej Michalik
655 652 49 Samuel Gaist
656 653 27 Itamar Turner-Trauring
657 654 18 Spas Kalaydzhisyki
658 655 17 Thomas Kluyver
659 656 17 Quentin Peter
660 657 17 James Morris
661 658 17 Artur Svistunov
662 659 15 Bart Skowron
663 660 14 Alex Hall
664 661 13 rushabh-v
665 662 13 Terry Davis
666 663 13 Benjamin Ragan-Kelley
667 664 8 martinRenou
668 665 8 farisachugthai
669 666 7 dswij
670 667 7 Gal B
671 668 7 Corentin Cadiou
672 669 6 yuji96
673 670 6 Martin Skarzynski
674 671 6 Justin Palmer
675 672 6 Daniel Goldfarb
676 673 6 Ben Greiner
677 674 5 Sammy Al Hashemi
678 675 5 Paul Ivanov
679 676 5 Inception95
680 677 5 Eyenpi
681 678 5 Douglas Blank
682 679 5 Coco Mishra
683 680 5 Bibo Hao
684 681 5 AndrΓ© A. Gomes
685 682 5 Ahmed Fasih
686 683 4 takuya fujiwara
687 684 4 palewire
688 685 4 Thomas A Caswell
689 686 4 Talley Lambert
690 687 4 Scott Sanderson
691 688 4 Ram Rachum
692 689 4 Nick Muoh
693 690 4 Nathan Goldbaum
694 691 4 Mithil Poojary
695 692 4 Michael T
696 693 4 Jakub Klus
697 694 4 Ian Castleden
698 695 4 Eli Rykoff
699 696 4 Ashwin Vishnu
700 697 3 谭九鼎
701 698 3 sleeping
702 699 3 Sylvain Corlay
703 700 3 Peter Corke
704 701 3 Paul Bissex
705 702 3 Matthew Feickert
706 703 3 Fernando Perez
707 704 3 Eric Wieser
708 705 3 Daniel Mietchen
709 706 3 Aditya Sathe
710 707 3 007vedant
711 708 2 rchiodo
712 709 2 nicolaslazo
713 710 2 luttik
714 711 2 gorogoroumaru
715 712 2 foobarbyte
716 713 2 bar-hen
717 714 2 Theo Ouzhinski
718 715 2 Strawkage
719 716 2 Samreen Zarroug
720 717 2 Pete Blois
721 718 2 Meysam Azad
722 719 2 Matthieu Ancellin
723 720 2 Mark Schmitz
724 721 2 Maor Kleinberger
725 722 2 MRCWirtz
726 723 2 Lumir Balhar
727 724 2 Julien Rabinow
728 725 2 Juan Luis Cano RodrΓ­guez
729 726 2 Joyce Er
730 727 2 Jakub
731 728 2 Faris A Chugthai
732 729 2 Ethan Madden
733 730 2 Dimitri Papadopoulos
734 731 2 Diego Fernandez
735 732 2 Daniel Shimon
736 733 2 Coco Bennett
737 734 2 Carlos Cordoba
738 735 2 Boyuan Liu
739 736 2 BaoGiang HoangVu
740 737 2 Augusto
741 738 2 Arthur Svistunov
742 739 2 Arthur Moreira
743 740 2 Ali Nabipour
744 741 2 Adam Hackbarth
745 742 1 richard
746 743 1 linar-jether
747 744 1 lbennett
748 745 1 juacrumar
749 746 1 gpotter2
750 747 1 digitalvirtuoso
751 748 1 dalthviz
752 749 1 Yonatan Goldschmidt
753 750 1 Tomasz KΕ‚oczko
754 751 1 Tobias Bengfort
755 752 1 Timur Kushukov
756 753 1 Thomas
757 754 1 Snir Broshi
758 755 1 Shao Yang Hong
759 756 1 Sanjana-03
760 757 1 Romulo Filho
761 758 1 Rodolfo Carvalho
762 759 1 Richard Shadrach
763 760 1 Reilly Tucker Siemens
764 761 1 Rakessh Roshan
765 762 1 Piers Titus van der Torren
766 763 1 PhanatosZou
767 764 1 Pavel Safronov
768 765 1 Paulo S. Costa
769 766 1 Paul McCarthy
770 767 1 NotWearingPants
771 768 1 Naelson Douglas
772 769 1 Michael Tiemann
773 770 1 Matt Wozniski
774 771 1 Markus Wageringel
775 772 1 Marcus Wirtz
776 773 1 Marcio Mazza
777 774 1 LumΓ­r 'Frenzy' Balhar
778 775 1 Lightyagami1
779 776 1 Leon Anavi
780 777 1 LeafyLi
781 778 1 L0uisJ0shua
782 779 1 Kyle Cutler
783 780 1 Krzysztof Cybulski
784 781 1 Kevin Kirsche
785 782 1 KIU Shueng Chuan
786 783 1 Jonathan Slenders
787 784 1 Jay Qi
788 785 1 Jake VanderPlas
789 786 1 Iwan Briquemont
790 787 1 Hussaina Begum Nandyala
791 788 1 Gordon Ball
792 789 1 Gabriel Simonetto
793 790 1 Frank Tobia
794 791 1 Erik
795 792 1 Elliott Sales de Andrade
796 793 1 Daniel Hahler
797 794 1 Dan Green-Leipciger
798 795 1 Dan Green
799 796 1 Damian Yurzola
800 797 1 Coon, Ethan T
801 798 1 Carol Willing
802 799 1 Brian Lee
803 800 1 Brendan Gerrity
804 801 1 Blake Griffin
805 802 1 Bastian Ebeling
806 803 1 Bartosz Telenczuk
807 804 1 Ankitsingh6299
808 805 1 Andrew Port
809 806 1 Andrew J. Hesford
810 807 1 Albert Zhang
811 808 1 Adam Johnson
812 809
813 810 This does not, of course, represent non-code contributions, for which we are also grateful.
814 811
815 812
816 813 API Changes using Frappuccino
817 814 -----------------------------
818 815
819 816 This is an experimental exhaustive API difference using `Frappuccino <https://pypi.org/project/frappuccino/>`_
820 817
821 818
822 819 The following items are new in IPython 8.0 ::
823 820
824 821 + IPython.core.async_helpers.get_asyncio_loop()
825 822 + IPython.core.completer.Dict
826 823 + IPython.core.completer.Pattern
827 824 + IPython.core.completer.Sequence
828 825 + IPython.core.completer.__skip_doctest__
829 826 + IPython.core.debugger.Pdb.precmd(self, line)
830 827 + IPython.core.debugger.__skip_doctest__
831 828 + IPython.core.display.__getattr__(name)
832 829 + IPython.core.display.warn
833 830 + IPython.core.display_functions
834 831 + IPython.core.display_functions.DisplayHandle
835 832 + IPython.core.display_functions.DisplayHandle.display(self, obj, **kwargs)
836 833 + IPython.core.display_functions.DisplayHandle.update(self, obj, **kwargs)
837 834 + IPython.core.display_functions.__all__
838 835 + IPython.core.display_functions.__builtins__
839 836 + IPython.core.display_functions.__cached__
840 837 + IPython.core.display_functions.__doc__
841 838 + IPython.core.display_functions.__file__
842 839 + IPython.core.display_functions.__loader__
843 840 + IPython.core.display_functions.__name__
844 841 + IPython.core.display_functions.__package__
845 842 + IPython.core.display_functions.__spec__
846 843 + IPython.core.display_functions.b2a_hex
847 844 + IPython.core.display_functions.clear_output(wait=False)
848 845 + IPython.core.display_functions.display(*objs, include='None', exclude='None', metadata='None', transient='None', display_id='None', raw=False, clear=False, **kwargs)
849 846 + IPython.core.display_functions.publish_display_data(data, metadata='None', source='<deprecated>', *, transient='None', **kwargs)
850 847 + IPython.core.display_functions.update_display(obj, *, display_id, **kwargs)
851 848 + IPython.core.extensions.BUILTINS_EXTS
852 849 + IPython.core.inputtransformer2.has_sunken_brackets(tokens)
853 850 + IPython.core.interactiveshell.Callable
854 851 + IPython.core.interactiveshell.__annotations__
855 852 + IPython.core.ultratb.List
856 853 + IPython.core.ultratb.Tuple
857 854 + IPython.lib.pretty.CallExpression
858 855 + IPython.lib.pretty.CallExpression.factory(name)
859 856 + IPython.lib.pretty.RawStringLiteral
860 857 + IPython.lib.pretty.RawText
861 858 + IPython.terminal.debugger.TerminalPdb.do_interact(self, arg)
862 859 + IPython.terminal.embed.Set
863 860
864 861 The following items have been removed (or moved to superclass)::
865 862
866 863 - IPython.core.application.BaseIPythonApplication.initialize_subcommand
867 864 - IPython.core.completer.Sentinel
868 865 - IPython.core.completer.skip_doctest
869 866 - IPython.core.debugger.Tracer
870 867 - IPython.core.display.DisplayHandle
871 868 - IPython.core.display.DisplayHandle.display
872 869 - IPython.core.display.DisplayHandle.update
873 870 - IPython.core.display.b2a_hex
874 871 - IPython.core.display.clear_output
875 872 - IPython.core.display.display
876 873 - IPython.core.display.publish_display_data
877 874 - IPython.core.display.update_display
878 875 - IPython.core.excolors.Deprec
879 876 - IPython.core.excolors.ExceptionColors
880 877 - IPython.core.history.warn
881 878 - IPython.core.hooks.late_startup_hook
882 879 - IPython.core.hooks.pre_run_code_hook
883 880 - IPython.core.hooks.shutdown_hook
884 881 - IPython.core.interactiveshell.InteractiveShell.init_deprecation_warnings
885 882 - IPython.core.interactiveshell.InteractiveShell.init_readline
886 883 - IPython.core.interactiveshell.InteractiveShell.write
887 884 - IPython.core.interactiveshell.InteractiveShell.write_err
888 885 - IPython.core.interactiveshell.get_default_colors
889 886 - IPython.core.interactiveshell.removed_co_newlocals
890 887 - IPython.core.magics.execution.ExecutionMagics.profile_missing_notice
891 888 - IPython.core.magics.script.PIPE
892 889 - IPython.core.prefilter.PrefilterManager.init_transformers
893 890 - IPython.core.release.classifiers
894 891 - IPython.core.release.description
895 892 - IPython.core.release.keywords
896 893 - IPython.core.release.long_description
897 894 - IPython.core.release.name
898 895 - IPython.core.release.platforms
899 896 - IPython.core.release.url
900 897 - IPython.core.ultratb.VerboseTB.format_records
901 898 - IPython.core.ultratb.find_recursion
902 899 - IPython.core.ultratb.findsource
903 900 - IPython.core.ultratb.fix_frame_records_filenames
904 901 - IPython.core.ultratb.inspect_error
905 902 - IPython.core.ultratb.is_recursion_error
906 903 - IPython.core.ultratb.with_patch_inspect
907 904 - IPython.external.__all__
908 905 - IPython.external.__builtins__
909 906 - IPython.external.__cached__
910 907 - IPython.external.__doc__
911 908 - IPython.external.__file__
912 909 - IPython.external.__loader__
913 910 - IPython.external.__name__
914 911 - IPython.external.__package__
915 912 - IPython.external.__path__
916 913 - IPython.external.__spec__
917 914 - IPython.kernel.KernelConnectionInfo
918 915 - IPython.kernel.__builtins__
919 916 - IPython.kernel.__cached__
920 917 - IPython.kernel.__warningregistry__
921 918 - IPython.kernel.pkg
922 919 - IPython.kernel.protocol_version
923 920 - IPython.kernel.protocol_version_info
924 921 - IPython.kernel.src
925 922 - IPython.kernel.version_info
926 923 - IPython.kernel.warn
927 924 - IPython.lib.backgroundjobs
928 925 - IPython.lib.backgroundjobs.BackgroundJobBase
929 926 - IPython.lib.backgroundjobs.BackgroundJobBase.run
930 927 - IPython.lib.backgroundjobs.BackgroundJobBase.traceback
931 928 - IPython.lib.backgroundjobs.BackgroundJobExpr
932 929 - IPython.lib.backgroundjobs.BackgroundJobExpr.call
933 930 - IPython.lib.backgroundjobs.BackgroundJobFunc
934 931 - IPython.lib.backgroundjobs.BackgroundJobFunc.call
935 932 - IPython.lib.backgroundjobs.BackgroundJobManager
936 933 - IPython.lib.backgroundjobs.BackgroundJobManager.flush
937 934 - IPython.lib.backgroundjobs.BackgroundJobManager.new
938 935 - IPython.lib.backgroundjobs.BackgroundJobManager.remove
939 936 - IPython.lib.backgroundjobs.BackgroundJobManager.result
940 937 - IPython.lib.backgroundjobs.BackgroundJobManager.status
941 938 - IPython.lib.backgroundjobs.BackgroundJobManager.traceback
942 939 - IPython.lib.backgroundjobs.__builtins__
943 940 - IPython.lib.backgroundjobs.__cached__
944 941 - IPython.lib.backgroundjobs.__doc__
945 942 - IPython.lib.backgroundjobs.__file__
946 943 - IPython.lib.backgroundjobs.__loader__
947 944 - IPython.lib.backgroundjobs.__name__
948 945 - IPython.lib.backgroundjobs.__package__
949 946 - IPython.lib.backgroundjobs.__spec__
950 947 - IPython.lib.kernel.__builtins__
951 948 - IPython.lib.kernel.__cached__
952 949 - IPython.lib.kernel.__doc__
953 950 - IPython.lib.kernel.__file__
954 951 - IPython.lib.kernel.__loader__
955 952 - IPython.lib.kernel.__name__
956 953 - IPython.lib.kernel.__package__
957 954 - IPython.lib.kernel.__spec__
958 955 - IPython.lib.kernel.__warningregistry__
959 956 - IPython.paths.fs_encoding
960 957 - IPython.terminal.debugger.DEFAULT_BUFFER
961 958 - IPython.terminal.debugger.cursor_in_leading_ws
962 959 - IPython.terminal.debugger.emacs_insert_mode
963 960 - IPython.terminal.debugger.has_selection
964 961 - IPython.terminal.debugger.vi_insert_mode
965 962 - IPython.terminal.interactiveshell.DISPLAY_BANNER_DEPRECATED
966 963 - IPython.terminal.ipapp.TerminalIPythonApp.parse_command_line
967 964 - IPython.testing.test
968 965 - IPython.utils.contexts.NoOpContext
969 966 - IPython.utils.io.IOStream
970 967 - IPython.utils.io.IOStream.close
971 968 - IPython.utils.io.IOStream.write
972 969 - IPython.utils.io.IOStream.writelines
973 970 - IPython.utils.io.__warningregistry__
974 971 - IPython.utils.io.atomic_writing
975 972 - IPython.utils.io.stderr
976 973 - IPython.utils.io.stdin
977 974 - IPython.utils.io.stdout
978 975 - IPython.utils.io.unicode_std_stream
979 976 - IPython.utils.path.get_ipython_cache_dir
980 977 - IPython.utils.path.get_ipython_dir
981 978 - IPython.utils.path.get_ipython_module_path
982 979 - IPython.utils.path.get_ipython_package_dir
983 980 - IPython.utils.path.locate_profile
984 981 - IPython.utils.path.unquote_filename
985 982 - IPython.utils.py3compat.PY2
986 983 - IPython.utils.py3compat.PY3
987 984 - IPython.utils.py3compat.buffer_to_bytes
988 985 - IPython.utils.py3compat.builtin_mod_name
989 986 - IPython.utils.py3compat.cast_bytes
990 987 - IPython.utils.py3compat.getcwd
991 988 - IPython.utils.py3compat.isidentifier
992 989 - IPython.utils.py3compat.u_format
993 990
994 991 The following signatures differ between 7.x and 8.0::
995 992
996 993 - IPython.core.completer.IPCompleter.unicode_name_matches(self, text)
997 994 + IPython.core.completer.IPCompleter.unicode_name_matches(text)
998 995
999 996 - IPython.core.completer.match_dict_keys(keys, prefix, delims)
1000 997 + IPython.core.completer.match_dict_keys(keys, prefix, delims, extra_prefix='None')
1001 998
1002 999 - IPython.core.interactiveshell.InteractiveShell.object_inspect_mime(self, oname, detail_level=0)
1003 1000 + IPython.core.interactiveshell.InteractiveShell.object_inspect_mime(self, oname, detail_level=0, omit_sections='()')
1004 1001
1005 1002 - IPython.core.interactiveshell.InteractiveShell.set_hook(self, name, hook, priority=50, str_key='None', re_key='None', _warn_deprecated=True)
1006 1003 + IPython.core.interactiveshell.InteractiveShell.set_hook(self, name, hook, priority=50, str_key='None', re_key='None')
1007 1004
1008 1005 - IPython.core.oinspect.Inspector.info(self, obj, oname='', formatter='None', info='None', detail_level=0)
1009 1006 + IPython.core.oinspect.Inspector.info(self, obj, oname='', info='None', detail_level=0)
1010 1007
1011 1008 - IPython.core.oinspect.Inspector.pinfo(self, obj, oname='', formatter='None', info='None', detail_level=0, enable_html_pager=True)
1012 1009 + IPython.core.oinspect.Inspector.pinfo(self, obj, oname='', formatter='None', info='None', detail_level=0, enable_html_pager=True, omit_sections='()')
1013 1010
1014 1011 - IPython.core.profiledir.ProfileDir.copy_config_file(self, config_file, path='None', overwrite=False)
1015 1012 + IPython.core.profiledir.ProfileDir.copy_config_file(self, config_file, path, overwrite=False)
1016 1013
1017 1014 - IPython.core.ultratb.VerboseTB.format_record(self, frame, file, lnum, func, lines, index)
1018 1015 + IPython.core.ultratb.VerboseTB.format_record(self, frame_info)
1019 1016
1020 1017 - IPython.terminal.embed.InteractiveShellEmbed.mainloop(self, local_ns='None', module='None', stack_depth=0, display_banner='None', global_ns='None', compile_flags='None')
1021 1018 + IPython.terminal.embed.InteractiveShellEmbed.mainloop(self, local_ns='None', module='None', stack_depth=0, compile_flags='None')
1022 1019
1023 1020 - IPython.terminal.embed.embed(**kwargs)
1024 1021 + IPython.terminal.embed.embed(*, header='', compile_flags='None', **kwargs)
1025 1022
1026 1023 - IPython.terminal.interactiveshell.TerminalInteractiveShell.interact(self, display_banner='<object object at 0xffffff>')
1027 1024 + IPython.terminal.interactiveshell.TerminalInteractiveShell.interact(self)
1028 1025
1029 1026 - IPython.terminal.interactiveshell.TerminalInteractiveShell.mainloop(self, display_banner='<object object at 0xffffff>')
1030 1027 + IPython.terminal.interactiveshell.TerminalInteractiveShell.mainloop(self)
1031 1028
1032 1029 - IPython.utils.path.get_py_filename(name, force_win32='None')
1033 1030 + IPython.utils.path.get_py_filename(name)
1034 1031
1035 1032 The following are new attributes (that might be inherited)::
1036 1033
1037 1034 + IPython.core.completer.IPCompleter.unicode_names
1038 1035 + IPython.core.debugger.InterruptiblePdb.precmd
1039 1036 + IPython.core.debugger.Pdb.precmd
1040 1037 + IPython.core.ultratb.AutoFormattedTB.has_colors
1041 1038 + IPython.core.ultratb.ColorTB.has_colors
1042 1039 + IPython.core.ultratb.FormattedTB.has_colors
1043 1040 + IPython.core.ultratb.ListTB.has_colors
1044 1041 + IPython.core.ultratb.SyntaxTB.has_colors
1045 1042 + IPython.core.ultratb.TBTools.has_colors
1046 1043 + IPython.core.ultratb.VerboseTB.has_colors
1047 1044 + IPython.terminal.debugger.TerminalPdb.do_interact
1048 1045 + IPython.terminal.debugger.TerminalPdb.precmd
1049 1046
1050 1047 The following attribute/methods have been removed::
1051 1048
1052 1049 - IPython.core.application.BaseIPythonApplication.deprecated_subcommands
1053 1050 - IPython.core.ultratb.AutoFormattedTB.format_records
1054 1051 - IPython.core.ultratb.ColorTB.format_records
1055 1052 - IPython.core.ultratb.FormattedTB.format_records
1056 1053 - IPython.terminal.embed.InteractiveShellEmbed.init_deprecation_warnings
1057 1054 - IPython.terminal.embed.InteractiveShellEmbed.init_readline
1058 1055 - IPython.terminal.embed.InteractiveShellEmbed.write
1059 1056 - IPython.terminal.embed.InteractiveShellEmbed.write_err
1060 1057 - IPython.terminal.interactiveshell.TerminalInteractiveShell.init_deprecation_warnings
1061 1058 - IPython.terminal.interactiveshell.TerminalInteractiveShell.init_readline
1062 1059 - IPython.terminal.interactiveshell.TerminalInteractiveShell.write
1063 1060 - IPython.terminal.interactiveshell.TerminalInteractiveShell.write_err
1064 1061 - IPython.terminal.ipapp.LocateIPythonApp.deprecated_subcommands
1065 1062 - IPython.terminal.ipapp.LocateIPythonApp.initialize_subcommand
1066 1063 - IPython.terminal.ipapp.TerminalIPythonApp.deprecated_subcommands
1067 1064 - IPython.terminal.ipapp.TerminalIPythonApp.initialize_subcommand
General Comments 0
You need to be logged in to leave comments. Login now