Important
This documentation covers IPython versions 6.0 and higher. Beginning with version 6.0, IPython stopped supporting compatibility with Python versions lower than 3.3 including all versions of Python 2.7.
If you are looking for an IPython version compatible with Python 2.7, please use the IPython 5.x LTS release and refer to its documentation (LTS is the long term support release).
Issues closed in the 0.11 development cycle¶
In this cycle, we closed a total of 511 issues, 226 pull requests and 285
regular issues; this is the full list (generated with the script
tools/github_stats.py
). We should note that a few of these were made on the
0.10.x series, but we have no automatic way of filtering the issues by branch,
so this reflects all of our development over the last two years, including work
already released in 0.10.2:
Pull requests (226):
620: Release notes and updates to GUI support docs for 0.11
642: fix typo in docs/examples/vim/README.rst
631: two-way vim-ipython integration
637: print is a function, this allows to properly exit ipython
635: support html representations in the notebook frontend
639: Updating the credits file
628: import pexpect from IPython.external in irunner
596: Irunner
598: Fix templates for CrashHandler
590: Desktop
600: Fix bug with non-ascii reprs inside pretty-printed lists.
618: I617
599: Gui Qt example and docs
619: manpage update
582: Updating sympy profile to match the exec_lines of isympy.
578: Check to see if correct source for decorated functions can be displayed
589: issue 588
591: simulate shell expansion on %run arguments, at least tilde expansion
576: Show message about %paste magic on an IndentationError
574: Getcwdu
565: don’t move old config files, keep nagging the user
575: Added more docstrings to IPython.zmq.session.
567: fix trailing whitespace from resetting indentation
564: Command line args in docs
560: reorder qt support in kernel
561: command-line suggestions
556: qt_for_kernel: use matplotlib rcParams to decide between PyQt4 and PySide
557: Update usage.py to newapp
555: Rm default old config
552: update parallel code for py3k
504: Updating string formatting
551: Make pylab import all configurable
496: Qt editing keybindings
550: Support v2 PyQt4 APIs and PySide in kernel’s GUI support
546: doc update
548: Fix sympy profile to work with sympy 0.7.
542: issue 440
533: Remove unused configobj and validate libraries from externals.
538: fix various tests on Windows
540: support
-pylab
flag with deprecation warning537: Docs update
536:
setup.py install
depends on setuptools on Windows480: Get help mid-command
462: Str and Bytes traitlets
534: Handle unicode properly in IPython.zmq.iostream
527: ZMQ displayhook
526: Handle asynchronous output in Qt console
528: Do not import deprecated functions from external decorators library.
454: New BaseIPythonApplication
532: Zmq unicode
531: Fix Parallel test
525: fallback on lsof if otool not found in libedit detection
517: Merge IPython.parallel.streamsession into IPython.zmq.session
521: use dict.get(key) instead of dict[key] for safety from KeyErrors
492: add QtConsoleApp using newapplication
485: terminal IPython with newapp
486: Use newapp in parallel code
511: Add a new line before displaying multiline strings in the Qt console.
509: i508
501: ignore EINTR in channel loops
495: Better selection of Qt bindings when QT_API is not specified
498: Check for .pyd as extension for binary files.
494: QtConsole zoom adjustments
490: fix UnicodeEncodeError writing SVG string to .svg file, fixes #489
491: add QtConsoleApp using newapplication
479: embed() doesn’t load default config
483: Links launchpad -> github
419: %xdel magic
477: Add n to lines in the log
459: use os.system for shell.system in Terminal frontend
475: i473
471: Add test decorator onlyif_unicode_paths.
474: Fix support for raw GTK and WX matplotlib backends.
472: Kernel event loop is robust against random SIGINT.
460: Share code for magic_edit
469: Add exit code when running all tests with iptest.
464: Add home directory expansion to IPYTHON_DIR environment variables.
455: Bugfix with logger
448: Separate out skip_doctest decorator
453: Draft of new main BaseIPythonApplication.
452: Use list/tuple/dict/set subclass’s overridden __repr__ instead of the pretty
398: allow toggle of svg/png inline figure format
381: Support inline PNGs of matplotlib plots
413: Retries and Resubmit (#411 and #412)
370: Fixes to the display system
449: Fix issue 447 - inspecting old-style classes.
423: Allow type checking on elements of List,Tuple,Set traits
400: Config5
421: Generalise mechanism to put text at the next prompt in the Qt console.
443: pinfo code duplication
429: add check_pid, and handle stale PID info in ipcluster.
431: Fix error message in test_irunner
427: handle different SyntaxError messages in test_irunner
424: Irunner test failure
430: Small parallel doc typo
422: Make ipython-qtconsole a GUI script
420: Permit kernel std* to be redirected
408: History request
388: Add Emacs-style kill ring to Qt console
414: Warn on old config files
415: Prevent prefilter from crashing IPython
418: Minor configuration doc fixes
407: Update What’s new documentation
410: Install notebook frontend
406: install IPython.zmq.gui
393: ipdir unicode
397: utils.io.Term.cin/out/err -> utils.io.stdin/out/err
389: DB fixes and Scheduler HWM
374: Various Windows-related fixes to IPython.parallel
362: fallback on defaultencoding if filesystemencoding is None
382: Shell’s reset method clears namespace from last %run command.
385: Update iptest exclusions (fix #375)
383: Catch errors in querying readline which occur with pyreadline.
373: Remove runlines etc.
364: Single output
372: Multiline input push
363: Issue 125
361: don’t rely on setuptools for readline dependency check
349: Fix %autopx magic
355: History save thread
356: Usability improvements to history in Qt console
357: Exit autocall
353: Rewrite quit()/exit()/Quit()/Exit() calls as magic
354: Cell tweaks
345: Attempt to address (partly) issue ipython/#342 by rewriting quit(), exit(), etc.
352: #342: Try to recover as intelligently as possible if user calls magic().
346: Dedent prefix bugfix + tests: #142
348: %reset doesn’t reset prompt number.
347: Make ip.reset() work the same in interactive or non-interactive code.
343: make readline a dependency on OSX
344: restore auto debug behavior
339: fix for issue 337: incorrect/phantom tooltips for magics
254: newparallel branch (add zmq.parallel submodule)
334: Hard reset
316: Unicode win process
332: AST splitter
325: Removetwisted
330: Magic pastebin
309: Bug tests for GH Issues 238, 284, 306, 307. Skip module machinery if not installed. Known failures reported as ‘K’
331: Tweak config loader for PyPy compatibility.
319: Rewrite code to restore readline history after an action
329: Do not store file contents in history when running a .ipy file.
179: Html notebook
323: Add missing external.pexpect to packages
295: Magic local scope
315: Unicode magic args
310: allow Unicode Command-Line options
313: Readline shortcuts
311: Qtconsole exit
312: History memory
294: Issue 290
292: Issue 31
252: Unicode issues
235: Fix history magic command’s bugs wrt to full history and add -O option to display full history
236: History minus p flag
261: Adapt magic commands to new history system.
282: SQLite history
191: Unbundle external libraries
199: Magic arguments
204: Emacs completion bugfix
293: Issue 133
249: Writing unicode characters to a log file. (IPython 0.10.2.git)
283: Support for 256-color escape sequences in Qt console
281: Refactored and improved Qt console’s HTML export facility
237: Fix185 (take two)
251: Issue 129
278: add basic XDG_CONFIG_HOME support
275: inline pylab cuts off labels on log plots
280: Add %precision magic
259: Pyside support
193: Make ipython cProfile-able
272: Magic examples
219: Doc magic pycat
221: Doc magic alias
230: Doc magic edit
224: Doc magic cpaste
229: Doc magic pdef
273: Docs build
228: Doc magic who
233: Doc magic cd
226: Doc magic pwd
218: Doc magic history
231: Doc magic reset
225: Doc magic save
222: Doc magic timeit
223: Doc magic colors
203: Small typos in zmq/blockingkernelmanager.py
227: Doc magic logon
232: Doc magic profile
264: Kernel logging
220: Doc magic edit
268: PyZMQ >= 2.0.10
267: GitHub Pages (again)
266: OSX-specific fixes to the Qt console
255: Gitwash typo
265: Fix string input2
260: Kernel crash with empty history
243: New display system
242: Fix terminal exit
250: always use Session.send
239: Makefile command & script for GitHub Pages
244: My exit
234: Timed history save
217: Doc magic lsmagic
215: History fix
195: Formatters
192: Ready colorize bug
198: Windows workdir
174: Whitespace cleanup
188: Version info: update our version management system to use git.
158: Ready for merge
187: Resolved Print shortcut collision with ctrl-P emacs binding
183: cleanup of exit/quit commands for qt console
184: Logo added to sphinx docs
180: Cleanup old code
171: Expose Pygments styles as options
170: HTML Fixes
172: Fix del method exit test
164: Qt frontend shutdown behavior fixes and enhancements
167: Added HTML export
163: Execution refactor
159: Ipy3 preparation
155: Ready startup fix
152: 0.10.1 sge
151: mk_object_info -> object_info
149: Simple bug-fix
Regular issues (285):
630: new.py in pwd prevents ipython from starting
623: Execute DirectView commands while running LoadBalancedView tasks
437: Users should have autocompletion in the notebook
583: update manpages
594: irunner command line options defer to file extensions
603: Users should see colored text in tracebacks and the pager
597: UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xc2
608: Organize and layout buttons in the notebook panel sections
609: Implement controls in the Kernel panel section
611: Add kernel status widget back to notebook
610: Implement controls in the Cell section panel
612: Implement Help panel section
621: [qtconsole] on windows xp, cannot PageUp more than once
616: Store exit status of last command
605: Users should be able to open different notebooks in the cwd
302: Users should see a consistent behavior in the Out prompt in the html notebook
435: Notebook should not import anything by default
595: qtconsole command issue
588: ipython-qtconsole uses 100% CPU
586: ? + plot() Command B0rks QTConsole Strangely
585: %pdoc throws Errors for classes without __init__ or docstring
584: %pdoc throws TypeError
580: Client instantiation AssertionError
569: UnicodeDecodeError during startup
572: Indented command hits error
573: -wthread breaks indented top-level statements
570: “–pylab inline” vs. “–pylab=inline”
566: Can’t use exec_file in config file
562: update docs to reflect ‘–args=values’
558: triple quote and %s at beginning of line
554: Update 0.11 docs to explain Qt console and how to do a clean install
553: embed() fails if config files not installed
8: Ensure %gui qt works with new Mayavi and pylab
269: Provide compatibility api for IPython.Shell().start().mainloop()
66: Update the main What’s New document to reflect work on 0.11
549: Don’t check for ‘linux2’ value in sys.platform
505: Qt windows created within imported functions won’t show()
545: qtconsole ignores exec_lines
371: segfault in qtconsole when kernel quits
377: Failure: error (nothing to repeat)
544: Ipython qtconsole pylab config issue.
543: RuntimeError in completer
440: %run filename autocompletion “The kernel heartbeat has been inactive … ” error
541: log_level is broken in the ipython Application
369: windows source install doesn’t create scripts correctly
351: Make sure that the Windows installer handles the top-level IPython scripts.
512: Two displayhooks in zmq
340: Make sure that the Windows HPC scheduler support is working for 0.11
98: Should be able to get help on an object mid-command
529: unicode problem in qtconsole for windows
476: Separate input area in Qt Console
175: Qt console needs configuration support
156: Key history lost when debugging program crash
470: decorator: uses deprecated features
30: readline in OS X does not have correct key bindings
503: merge IPython.parallel.streamsession and IPython.zmq.session
456: pathname in document punctuated by dots not slashes
451: Allow switching the default image format for inline mpl backend
79: Implement more robust handling of config stages in Application
522: Encoding problems
524: otool should not be unconditionally called on osx
523: Get profile and config file inheritance working
519: qtconsole –pure: “TypeError: string indices must be integers, not str”
516: qtconsole –pure: “KeyError: ‘ismagic’”
520: qtconsole –pure: “TypeError: string indices must be integers, not str”
450: resubmitted tasks sometimes stuck as pending
518: JSON serialization problems with ObjectId type (MongoDB)
178: Channels should be named for their function, not their socket type
515: [ipcluster] termination on os x
510: qtconsole: indentation problem printing numpy arrays
508: “AssertionError: Missing message part.” in ipython-qtconsole –pure
499: “ZMQError: Interrupted system call” when saving inline figure
426: %edit magic fails in qtconsole
497: Don’t show info from .pyd files
493: QFont::setPointSize: Point size <= 0 (0), must be greater than 0
489: UnicodeEncodeError in qt.svg.save_svg
458: embed() doesn’t load default config
488: Using IPython with RubyPython leads to problems with IPython.parallel.client.client.Client.__init()
401: Race condition when running lbview.apply() fast multiple times in loop
168: Scrub Launchpad links from code, docs
141: garbage collection problem (revisited)
59: test_magic.test_obj_del fails on win32
457: Backgrounded Tasks not Allowed? (but easy to slip by …)
297: Shouldn’t use pexpect for subprocesses in in-process terminal frontend
110: magic to return exit status
473: OSX readline detection fails in the debugger
466: tests fail without unicode filename support
468: iptest script has 0 exit code even when tests fail
465: client.db_query() behaves different with SQLite and MongoDB
467: magic_install_default_config test fails when there is no .ipython directory
463: IPYTHON_DIR (and IPYTHONDIR) don’t expand tilde to ‘~’ directory
446: Test machinery is imported at normal runtime
438: Users should be able to use Up/Down for cell navigation
439: Users should be able to copy notebook input and output
291: Rename special display methods and put them lower in priority than display functions
447: Instantiating classes without __init__ function causes kernel to crash
444: Ctrl + t in WxIPython Causes Unexpected Behavior
445: qt and console Based Startup Errors
428: ipcluster doesn’t handle stale pid info well
434: 10.0.2 seg fault with rpy2
441: Allow running a block of code in a file
432: Silent request fails
409: Test failure in IPython.lib
402: History section of messaging spec is incorrect
88: Error when inputting UTF8 CJK characters
366: Ctrl-K should kill line and store it, so that Ctrl-y can yank it back
425: typo in %gui magic help
304: Persistent warnings if old configuration files exist
216: crash of ipython when alias is used with %s and echo
412: add support to automatic retry of tasks
411: add support to continue tasks
417: IPython should display things unsorted if it can’t sort them
416: wrong encode when printing unicode string
376: Failing InputsplitterTest
405: TraitError in traitlets.py(332) on any input
392: UnicodeEncodeError on start
137: sys.getfilesystemencoding return value not checked
300: Users should be able to manage kernels and kernel sessions from the notebook UI
301: Users should have access to working Kernel, Tabs, Edit, Help menus in the notebook
396: cursor move triggers a lot of IO access
379: Minor doc nit: –paging argument
399: Add task queue limit in engine when load-balancing
78: StringTask won’t take unicode code strings
391: MongoDB.add_record() does not work in 0.11dev
365: newparallel on Windows
386: FAIL: test that pushed functions have access to globals
387: Interactively defined functions can’t access user namespace
118: Snow Leopard ipy_vimserver POLL error
394: System escape interpreted in multi-line string
26: find_job_cmd is too hasty to fail on Windows
368: Installation instructions in dev docs are completely wrong
380: qtconsole pager RST - HTML not happening consistently
367: Qt console doesn’t support ibus input method
375: Missing libraries cause ImportError in tests
71: temp file errors in iptest IPython.core
350: Decide how to handle displayhook being triggered multiple times
360: Remove
runlines
method125: Exec lines in config should not contribute to line numbering or history
20: Robust readline support on OS X’s builtin Python
147: On Windows, %page is being too restrictive to split line by rn only
326: Update docs and examples for parallel stuff to reflect movement away from Twisted
341: FIx Parallel Magics for newparallel
338: Usability improvements to Qt console
142: unexpected auto-indenting when variables names that start with ‘pass’
296: Automatic PDB via %pdb doesn’t work
337: exit( and quit( in Qt console produces phantom signature/docstring popup, even though quit() or exit() raises NameError
318: %debug broken in master: invokes missing save_history() method
307: lines ending with semicolon should not go to cache
104: have ipengine run start-up scripts before registering with the controller
33: The skip_doctest decorator is failing to work on Shell.MatplotlibShellBase.magic_run
336: Missing figure development/figs/iopubfade.png for docs
49: %clear should also delete _NN references and Out[NN] ones
335: using setuptools installs every script twice
306: multiline strings at end of input cause noop
327: PyPy compatibility
328: %run script.ipy raises “ERROR! Session/line number was not unique in database.”
7: Update the changes doc to reflect the kernel config work
303: Users should be able to scroll a notebook w/o moving the menu/buttons
322: Embedding an interactive IPython shell
321: %debug broken in master
287: Crash when using %macros in sqlite-history branch
55: Can’t edit files whose names begin with numbers
284: In variable no longer works in 0.11
92: Using multiprocessing module crashes parallel IPython
262: Fail to recover history after force-kill.
320: Tab completing re.search objects crashes IPython
317: IPython.kernel: parallel map issues
197: ipython-qtconsole unicode problem in magic ls
305: more readline shortcuts in qtconsole
314: Multi-line, multi-block cells can’t be executed.
308: Test suite should set sqlite history to work in :memory:
202: Matplotlib native ‘MacOSX’ backend broken in ‘-pylab’ mode
196: IPython can’t deal with unicode file name.
25: unicode bug - encoding input
290: try/except/else clauses can’t be typed, code input stops too early.
43: Implement SSH support in ipcluster
6: Update the Sphinx docs for the new ipcluster
9: Getting “DeadReferenceError: Calling Stale Broker” after ipcontroller restart
132: Ipython prevent south from working
27: generics.complete_object broken
60: Improve absolute import management for iptest.py
31: Issues in magic_whos code
52: Document testing process better
44: Merge history from multiple sessions
182: ipython q4thread in version 10.1 not starting properly
143: Ipython.gui.wx.ipython_view.IPShellWidget: ignores user*_ns arguments
127: %edit does not work on filenames consisted of pure numbers
126: Can’t transfer command line argument to script
28: Offer finer control for initialization of input streams
58: ipython change char ‘0xe9’ to 4 spaces
68: Problems with Control-C stopping ipcluster on Windows/Python2.6
24: ipcluster does not start all the engines
240: Incorrect method displayed in %psource
120: inspect.getsource fails for functions defined on command line
212: IPython ignores exceptions in the first evaulation of class attrs
108: ipython disables python logger
100: Overzealous introspection
18: %cpaste freeze sync frontend
200: Unicode error when starting ipython in a folder with non-ascii path
130: Deadlock when importing a module that creates an IPython client
134: multline block scrolling
46: Input to %timeit is not preparsed
285: ipcluster local -n 4 fails
205: In the Qt console, Tab should insert 4 spaces when not completing
145: Bug on MSW systems: idle can not be set as default IPython editor. Fix Suggested.
77: ipython oops in cygwin
121: If plot windows are closed via window controls, no more plotting is possible.
111: Iterator version of TaskClient.map() that returns results as they become available
109: WinHPCLauncher is a hard dependency that causes errors in the test suite
86: Make IPython work with multiprocessing
15: Implement SGE support in ipcluster
3: Implement PBS support in ipcluster
53: Internal Python error in the inspect module
74: Manager() [from multiprocessing module] hangs ipythonx but not ipython
51: Out not working with ipythonx
201: use session.send throughout zmq code
115: multiline specials not defined in 0.11 branch
93: when looping, cursor appears at leftmost point in newline
133: whitespace after Source introspection
50: Ctrl-C with -gthread on Windows, causes uncaught IOError
65: Do not use .message attributes in exceptions, deprecated in 2.6
76: syntax error when raise is inside except process
107: bdist_rpm causes traceback looking for a non-existant file
113: initial magic ? (question mark) fails before wildcard
128: Pdb instance has no attribute ‘curframe’
139: running with -pylab pollutes namespace
140: malloc error during tab completion of numpy array member functions starting with ‘c’
153: ipy_vimserver traceback on Windows
154: using ipython in Slicer3 show how os.environ[‘HOME’] is not defined
185: show() blocks in pylab mode with ipython 0.10.1
189: Crash on tab completion
274: bashism in sshx.sh
276: Calling
sip.setapi
does not work if app has already imported from PyQt4277: matplotlib.image imgshow from 10.1 segfault
288: Incorrect docstring in zmq/kernelmanager.py
286: Fix IPython.Shell compatibility layer
99: blank lines in history
129: psearch: TypeError: expected string or buffer
190: Add option to format float point output
246: Application not conforms XDG Base Directory Specification
48: IPython should follow the XDG Base Directory spec for configuration
176: Make client-side history persistence readline-independent
279: Backtraces when using ipdb do not respect -colour LightBG setting
119: Broken type filter in magic_who_ls
271: Intermittent problem with print output in Qt console.
270: Small typo in IPython developer’s guide
166: Add keyboard accelerators to Qt close dialog
173: asymmetrical ctrl-A/ctrl-E behavior in multiline
45: Autosave history for robustness
162: make command history persist in ipythonqt
161: make ipythonqt exit without dialog when exit() is called
263: [ipython + numpy] Some test errors
256: reset docstring ipython 0.10
258: allow caching to avoid matplotlib object references
248: Can’t open and read files after upgrade from 0.10 to 0.10.0
247: ipython + Stackless
245: Magic save and macro missing newlines, line ranges don’t match prompt numbers.
241: “exit” hangs on terminal version of IPython
213: ipython -pylab no longer plots interactively on 0.10.1
4: wx frontend don’t display well commands output
5: ls command not supported in ipythonx wx frontend
1: Document winhpcjob.py and launcher.py
83: Usage of testing.util.DeferredTestCase should be replace with twisted.trial.unittest.TestCase
117: Redesign how Component instances are tracked and queried
47: IPython.kernel.client cannot be imported inside an engine
105: Refactor the task dependencies system
210: 0.10.1 doc mistake - New IPython Sphinx directive error
209: can’t activate IPython parallel magics
206: Buggy linewrap in Mac OSX Terminal
194: !sudo <command> displays password in plain text
186: %edit issue under OS X 10.5 - IPython 0.10.1
11: Create a daily build PPA for ipython
144: logo missing from sphinx docs
181: cls command does not work on windows
169: Kernel can only be bound to localhost
36: tab completion does not escape ()
177: Report tracebacks of interactively entered input
148: dictionary having multiple keys having frozenset fails to print on IPython
160: magic_gui throws TypeError when gui magic is used
150: History entries ending with parentheses corrupt command line on OS X 10.6.4
146: -ipythondir - using an alternative .ipython dir for rc type stuff
114: Interactive strings get mangled with “_ip.magic”
135: crash on invalid print
69: Usage of “mycluster” profile in docs and examples
37: Fix colors in output of ResultList on Windows