|
|
2006-05-07 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Release.py (version): put out 0.7.2.rc1 for testing.
|
|
|
|
|
|
2006-04-11 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py, ipmaker.py: .ipy extension now means "ipython batch file"
|
|
|
in command line. E.g. "ipython test.ipy" runs test.ipy with ipython
|
|
|
prefilters, allowing stuff like magics and aliases in the file.
|
|
|
|
|
|
* Prompts.py, Extensions/clearcmd.py, ipy_system_conf.py: %clear magic
|
|
|
added. Supported now are "%clear in" and "%clear out" (clear input and
|
|
|
output history, respectively). Also fixed CachedOutput.flush to
|
|
|
properly flush the output cache.
|
|
|
|
|
|
* Extensions/pspersistence.py: Fix %store to avoid "%store obj.attr"
|
|
|
half-success (and fail explicitly).
|
|
|
|
|
|
2006-03-28 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py: Fix quoting of aliases so that only argless ones
|
|
|
are quoted
|
|
|
|
|
|
2006-03-28 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py: Quote aliases with spaces in the name.
|
|
|
"c:\program files\blah\bin" is now legal alias target.
|
|
|
|
|
|
* ext_rehashdir.py: Space no longer allowed as arg
|
|
|
separator, since space is legal in path names.
|
|
|
|
|
|
2006-03-16 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* upgrade_dir.py: Take path.py from Extensions, correcting
|
|
|
%upgrade magic
|
|
|
|
|
|
* ipmaker.py: Suggest using %upgrade if ipy_user_conf.py isn't found.
|
|
|
|
|
|
* hooks.py: Only enclose editor binary in quotes if legal and
|
|
|
necessary (space in the name, and is an existing file). Fixes a bug
|
|
|
reported by Zachary Pincus.
|
|
|
|
|
|
2006-03-13 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* Manual: thanks to a tip on proper color handling for Emacs, by
|
|
|
Eric J Haywiser <ejh1-AT-MIT.EDU>.
|
|
|
|
|
|
* ipython.el: close http://www.scipy.net/roundup/ipython/issue57
|
|
|
by applying the provided patch. Thanks to Liu Jin
|
|
|
<m.liu.jin-AT-gmail.com> for the contribution. No problems under
|
|
|
XEmacs/Linux, I'm trusting the submitter that it actually helps
|
|
|
under win32/GNU Emacs. Will revisit if any problems are reported.
|
|
|
|
|
|
2006-03-12 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Gnuplot2.py (_FileClass): update for current Gnuplot.py
|
|
|
from SVN, thanks to a patch by Ryan Woodard <rywo@bas.ac.uk>.
|
|
|
|
|
|
2006-03-12 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Magic.py (magic_timeit): Added %timeit magic, contributed by
|
|
|
Torsten Marek.
|
|
|
|
|
|
2006-03-12 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_macro): fix so that the n1-n2 syntax for
|
|
|
line ranges works again.
|
|
|
|
|
|
2006-03-11 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (showtraceback): add back sys.last_traceback
|
|
|
and friends, after a discussion with Zach Pincus on ipython-user.
|
|
|
I'm not 100% sure, but after thinking aobut it quite a bit, it may
|
|
|
be OK. Testing with the multithreaded shells didn't reveal any
|
|
|
problems, but let's keep an eye out.
|
|
|
|
|
|
In the process, I fixed a few things which were calling
|
|
|
self.InteractiveTB() directly (like safe_execfile), which is a
|
|
|
mistake: ALL exception reporting should be done by calling
|
|
|
self.showtraceback(), which handles state and tab-completion and
|
|
|
more.
|
|
|
|
|
|
2006-03-01 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Extensions/ipipe.py: Added Walter Doerwald's "ipipe" module.
|
|
|
To use, do "from ipipe import *".
|
|
|
|
|
|
2006-02-24 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Magic.py, upgrade_dir.py: %upgrade magic added. Does things more
|
|
|
"cleanly" and safely than the older upgrade mechanism.
|
|
|
|
|
|
2006-02-21 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Magic.py: %save works again.
|
|
|
|
|
|
2006-02-15 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Magic.py: %Pprint works again
|
|
|
|
|
|
* Extensions/ipy_sane_defaults.py: Provide everything provided
|
|
|
in default ipythonrc, to make it possible to have a completely empty
|
|
|
ipythonrc (and thus completely rc-file free configuration)
|
|
|
|
|
|
|
|
|
2006-02-11 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/hooks.py (editor): quote the call to the editor command,
|
|
|
to allow commands with spaces in them. Problem noted by watching
|
|
|
Ian Oswald's video about textpad under win32 at
|
|
|
http://showmedo.com/videoListPage?listKey=PythonIPythonSeries
|
|
|
|
|
|
* IPython/UserConfig/ipythonrc: Replace @ signs with % when
|
|
|
describing magics (we haven't used @ for a loong time).
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text.text_repr): Added patch
|
|
|
contributed by marienz to close
|
|
|
http://www.scipy.net/roundup/ipython/issue53.
|
|
|
|
|
|
2006-02-10 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* genutils.py: getoutput now works in win32 too
|
|
|
|
|
|
* completer.py: alias and magic completion only invoked
|
|
|
at the first "item" in the line, to avoid "cd %store"
|
|
|
nonsense.
|
|
|
|
|
|
2006-02-09 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* test/*: Added a unit testing framework (finally).
|
|
|
'%run runtests.py' to run test_*.
|
|
|
|
|
|
* ipapi.py: Exposed runlines and set_custom_exc
|
|
|
|
|
|
2006-02-07 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py: don't split "f 1 2" to "f(1,2)" in autocall,
|
|
|
instead use "f(1 2)" as before.
|
|
|
|
|
|
2006-02-05 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/demo.py (IPythonDemo): Add new classes to the demo
|
|
|
facilities, for demos processed by the IPython input filter
|
|
|
(IPythonDemo), and for running a script one-line-at-a-time as a
|
|
|
demo, both for pure Python (LineDemo) and for IPython-processed
|
|
|
input (IPythonLineDemo). After a request by Dave Kohel, from the
|
|
|
SAGE team.
|
|
|
(Demo.edit): added and edit() method to the demo objects, to edit
|
|
|
the in-memory copy of the last executed block.
|
|
|
|
|
|
* IPython/Magic.py (magic_edit): add '-r' option for 'raw'
|
|
|
processing to %edit, %macro and %save. These commands can now be
|
|
|
invoked on the unprocessed input as it was typed by the user
|
|
|
(without any prefilters applied). After requests by the SAGE team
|
|
|
at SAGE days 2006: http://modular.ucsd.edu/sage/days1/schedule.html.
|
|
|
|
|
|
2006-02-01 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* setup.py, eggsetup.py: easy_install ipython==dev works
|
|
|
correctly now (on Linux)
|
|
|
|
|
|
* ipy_user_conf,ipmaker: user config changes, removed spurious
|
|
|
warnings
|
|
|
|
|
|
* iplib: if rc.banner is string, use it as is.
|
|
|
|
|
|
* Magic: %pycat accepts a string argument and pages it's contents.
|
|
|
|
|
|
|
|
|
2006-01-30 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* pickleshare,pspersistence,ipapi,Magic: persistence overhaul.
|
|
|
Now %store and bookmarks work through PickleShare, meaning that
|
|
|
concurrent access is possible and all ipython sessions see the
|
|
|
same database situation all the time, instead of snapshot of
|
|
|
the situation when the session was started. Hence, %bookmark
|
|
|
results are immediately accessible from othes sessions. The database
|
|
|
is also available for use by user extensions. See:
|
|
|
http://www.python.org/pypi/pickleshare
|
|
|
|
|
|
* hooks.py: Two new hooks, 'shutdown_hook' and 'late_startup_hook'.
|
|
|
|
|
|
* aliases can now be %store'd
|
|
|
|
|
|
* path.py move to Extensions so that pickleshare does not need
|
|
|
IPython-specific import. Extensions added to pythonpath right
|
|
|
at __init__.
|
|
|
|
|
|
* iplib.py: ipalias deprecated/redundant; aliases are converted and
|
|
|
called with _ip.system and the pre-transformed command string.
|
|
|
|
|
|
2006-01-29 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (interact): Fix that we were not catching
|
|
|
KeyboardInterrupt exceptions properly. I'm not quite sure why the
|
|
|
logic here had to change, but it's fixed now.
|
|
|
|
|
|
2006-01-29 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py: Try to import pyreadline on Windows.
|
|
|
|
|
|
2006-01-27 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py: Expose ipapi as _ip in builtin namespace.
|
|
|
Makes ipmagic (-> _ip.magic), ipsystem (-> _ip.system)
|
|
|
and ip_set_hook (-> _ip.set_hook) redundant. % and !
|
|
|
syntax now produce _ip.* variant of the commands.
|
|
|
|
|
|
* "_ip.options().autoedit_syntax = 2" automatically throws
|
|
|
user to editor for syntax error correction without prompting.
|
|
|
|
|
|
2006-01-27 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* ipmaker.py: Give "realistic" sys.argv for scripts (without
|
|
|
'ipython' at argv[0]) executed through command line.
|
|
|
NOTE: this DEPRECATES calling ipython with multiple scripts
|
|
|
("ipython a.py b.py c.py")
|
|
|
|
|
|
* iplib.py, hooks.py: Added configurable input prefilter,
|
|
|
named 'input_prefilter'. See ext_rescapture.py for example
|
|
|
usage.
|
|
|
|
|
|
* ext_rescapture.py, Magic.py: Better system command output capture
|
|
|
through 'var = !ls' (deprecates user-visible %sc). Same notation
|
|
|
applies for magics, 'var = %alias' assigns alias list to var.
|
|
|
|
|
|
* ipapi.py: added meta() for accessing extension-usable data store.
|
|
|
|
|
|
* iplib.py: added InteractiveShell.getapi(). New magics should be
|
|
|
written doing self.getapi() instead of using the shell directly.
|
|
|
|
|
|
* Magic.py: %store now allows doing %store foo > ~/myfoo.txt and
|
|
|
%store foo >> ~/myfoo.txt to store variables to files (in clean
|
|
|
textual form, not a restorable pickle).
|
|
|
|
|
|
* ipmaker.py: now import ipy_profile_PROFILENAME automatically
|
|
|
|
|
|
* usage.py, Magic.py: added %quickref
|
|
|
|
|
|
* iplib.py: ESC_PAREN fixes: /f 1 2 -> f(1,2), not f(1 2).
|
|
|
|
|
|
* GetoptErrors when invoking magics etc. with wrong args
|
|
|
are now more helpful:
|
|
|
GetoptError: option -l not recognized (allowed: "qb" )
|
|
|
|
|
|
2006-01-25 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/demo.py (Demo.show): Flush stdout after each block, so
|
|
|
computationally intensive blocks don't appear to stall the demo.
|
|
|
|
|
|
2006-01-24 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* iplib.py, hooks.py: 'result_display' hook can return a non-None
|
|
|
value to manipulate resulting history entry.
|
|
|
|
|
|
* ipapi.py: Moved TryNext here from hooks.py. Moved functions
|
|
|
to instance methods of IPApi class, to make extending an embedded
|
|
|
IPython feasible. See ext_rehashdir.py for example usage.
|
|
|
|
|
|
* Merged 1071-1076 from banches/0.7.1
|
|
|
|
|
|
|
|
|
2006-01-23 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* tools/release (daystamp): Fix build tools to use the new
|
|
|
eggsetup.py script to build lightweight eggs.
|
|
|
|
|
|
* Applied changesets 1062 and 1064 before 0.7.1 release.
|
|
|
|
|
|
* IPython/Magic.py (magic_history): Add '-r' option to %hist, to
|
|
|
see the raw input history (without conversions like %ls ->
|
|
|
ipmagic("ls")). After a request from W. Stein, SAGE
|
|
|
(http://modular.ucsd.edu/sage) developer. This information is
|
|
|
stored in the input_hist_raw attribute of the IPython instance, so
|
|
|
developers can access it if needed (it's an InputList instance).
|
|
|
|
|
|
* Versionstring = 0.7.2.svn
|
|
|
|
|
|
* eggsetup.py: A separate script for constructing eggs, creates
|
|
|
proper launch scripts even on Windows (an .exe file in
|
|
|
\python24\scripts).
|
|
|
|
|
|
* ipapi.py: launch_new_instance, launch entry point needed for the
|
|
|
egg.
|
|
|
|
|
|
2006-01-23 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Added %cpaste magic for pasting python code
|
|
|
|
|
|
2006-01-22 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Merge from branches/0.7.1 into trunk, revs 1052-1057
|
|
|
|
|
|
* Versionstring = 0.7.2.svn
|
|
|
|
|
|
* eggsetup.py: A separate script for constructing eggs, creates
|
|
|
proper launch scripts even on Windows (an .exe file in
|
|
|
\python24\scripts).
|
|
|
|
|
|
* ipapi.py: launch_new_instance, launch entry point needed for the
|
|
|
egg.
|
|
|
|
|
|
2006-01-22 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/OInspect.py (Inspector.pinfo): fix bug where foo?? or
|
|
|
%pfile foo would print the file for foo even if it was a binary.
|
|
|
Now, extensions '.so' and '.dll' are skipped.
|
|
|
|
|
|
* IPython/Shell.py (MTInteractiveShell.__init__): Fix threading
|
|
|
bug, where macros would fail in all threaded modes. I'm not 100%
|
|
|
sure, so I'm going to put out an rc instead of making a release
|
|
|
today, and wait for feedback for at least a few days.
|
|
|
|
|
|
* IPython/iplib.py (handle_normal): fix (finally? somehow I doubt
|
|
|
it...) the handling of pasting external code with autoindent on.
|
|
|
To get out of a multiline input, the rule will appear for most
|
|
|
users unchanged: two blank lines or change the indent level
|
|
|
proposed by IPython. But there is a twist now: you can
|
|
|
add/subtract only *one or two spaces*. If you add/subtract three
|
|
|
or more (unless you completely delete the line), IPython will
|
|
|
accept that line, and you'll need to enter a second one of pure
|
|
|
whitespace. I know it sounds complicated, but I can't find a
|
|
|
different solution that covers all the cases, with the right
|
|
|
heuristics. Hopefully in actual use, nobody will really notice
|
|
|
all these strange rules and things will 'just work'.
|
|
|
|
|
|
2006-01-21 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (interact): catch exceptions which can be
|
|
|
triggered asynchronously by signal handlers. Thanks to an
|
|
|
automatic crash report, submitted by Colin Kingsley
|
|
|
<tercel-AT-gentoo.org>.
|
|
|
|
|
|
2006-01-20 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Ipython/Extensions/ext_rehashdir.py: Created a usable example
|
|
|
(%rehashdir, very useful, try it out) of how to extend ipython
|
|
|
with new magics. Also added Extensions dir to pythonpath to make
|
|
|
importing extensions easy.
|
|
|
|
|
|
* %store now complains when trying to store interactively declared
|
|
|
classes / instances of those classes.
|
|
|
|
|
|
* Extensions/ipy_system_conf.py, UserConfig/ipy_user_conf.py,
|
|
|
ipmaker.py: Config rehaul. Now ipy_..._conf.py are always imported
|
|
|
if they exist, and ipy_user_conf.py with some defaults is created for
|
|
|
the user.
|
|
|
|
|
|
* Startup rehashing done by the config file, not InterpreterExec.
|
|
|
This means system commands are available even without selecting the
|
|
|
pysh profile. It's the sensible default after all.
|
|
|
|
|
|
2006-01-20 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (raw_input): I _think_ I got the pasting of
|
|
|
multiline code with autoindent on working. But I am really not
|
|
|
sure, so this needs more testing. Will commit a debug-enabled
|
|
|
version for now, while I test it some more, so that Ville and
|
|
|
others may also catch any problems. Also made
|
|
|
self.indent_current_str() a method, to ensure that there's no
|
|
|
chance of the indent space count and the corresponding string
|
|
|
falling out of sync. All code needing the string should just call
|
|
|
the method.
|
|
|
|
|
|
2006-01-18 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_edit): fix check for when users don't
|
|
|
save their output files, the try/except was in the wrong section.
|
|
|
|
|
|
2006-01-17 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_run): fix __file__ global missing from
|
|
|
script's namespace when executed via %run. After a report by
|
|
|
Vivian.
|
|
|
|
|
|
* IPython/Debugger.py (Pdb.__init__): Fix breakage with '%run -d'
|
|
|
when using python 2.4. The parent constructor changed in 2.4, and
|
|
|
we need to track it directly (we can't call it, as it messes up
|
|
|
readline and tab-completion inside our pdb would stop working).
|
|
|
After a bug report by R. Bernstein <rocky-AT-panix.com>.
|
|
|
|
|
|
2006-01-16 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* Ipython/magic.py:Reverted back to old %edit functionality
|
|
|
that returns file contents on exit.
|
|
|
|
|
|
* IPython/path.py: Added Jason Orendorff's "path" module to
|
|
|
IPython tree, http://www.jorendorff.com/articles/python/path/.
|
|
|
You can get path objects conveniently through %sc, and !!, e.g.:
|
|
|
sc files=ls
|
|
|
for p in files.paths: # or files.p
|
|
|
print p,p.mtime
|
|
|
|
|
|
* Ipython/iplib.py:"," and ";" autoquoting-upon-autocall
|
|
|
now work again without considering the exclusion regexp -
|
|
|
hence, things like ',foo my/path' turn to 'foo("my/path")'
|
|
|
instead of syntax error.
|
|
|
|
|
|
|
|
|
2006-01-14 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* IPython/ipapi.py (ashook, asmagic, options): Added convenience
|
|
|
ipapi decorators for python 2.4 users, options() provides access to rc
|
|
|
data.
|
|
|
|
|
|
* IPython/Magic.py (magic_cd): %cd now accepts backslashes
|
|
|
as path separators (even on Linux ;-). Space character after
|
|
|
backslash (as yielded by tab completer) is still space;
|
|
|
"%cd long\ name" works as expected.
|
|
|
|
|
|
* IPython/ipapi.py,hooks.py,iplib.py: Hooks now implemented
|
|
|
as "chain of command", with priority. API stays the same,
|
|
|
TryNext exception raised by a hook function signals that
|
|
|
current hook failed and next hook should try handling it, as
|
|
|
suggested by Walter Dörwald <walter@livinglogic.de>. Walter also
|
|
|
requested configurable display hook, which is now implemented.
|
|
|
|
|
|
2006-01-13 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* IPython/platutils*.py: platform specific utility functions,
|
|
|
so far only set_term_title is implemented (change terminal
|
|
|
label in windowing systems). %cd now changes the title to
|
|
|
current dir.
|
|
|
|
|
|
* IPython/Release.py: Added myself to "authors" list,
|
|
|
had to create new files.
|
|
|
|
|
|
* IPython/iplib.py (handle_shell_escape): fixed logical flaw in
|
|
|
shell escape; not a known bug but had potential to be one in the
|
|
|
future.
|
|
|
|
|
|
* IPython/ipapi.py (added),OInspect.py,iplib.py: "Public"
|
|
|
extension API for IPython! See the module for usage example. Fix
|
|
|
OInspect for docstring-less magic functions.
|
|
|
|
|
|
|
|
|
2006-01-13 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (raw_input): temporarily deactivate all
|
|
|
attempts at allowing pasting of code with autoindent on. It
|
|
|
introduced bugs (reported by Prabhu) and I can't seem to find a
|
|
|
robust combination which works in all cases. Will have to revisit
|
|
|
later.
|
|
|
|
|
|
* IPython/genutils.py: remove isspace() function. We've dropped
|
|
|
2.2 compatibility, so it's OK to use the string method.
|
|
|
|
|
|
2006-01-12 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): fix regexp
|
|
|
matching what NOT to autocall on, to include all python binary
|
|
|
operators (including things like 'and', 'or', 'is' and 'in').
|
|
|
Prompted by a bug report on 'foo & bar', but I realized we had
|
|
|
many more potential bug cases with other operators. The regexp is
|
|
|
self.re_exclude_auto, it's fairly commented.
|
|
|
|
|
|
2006-01-12 Ville Vainio <vivainio@gmail.com>
|
|
|
|
|
|
* IPython/iplib.py (make_quoted_expr,handle_shell_escape):
|
|
|
Prettified and hardened string/backslash quoting with ipsystem(),
|
|
|
ipalias() and ipmagic(). Now even \ characters are passed to
|
|
|
%magics, !shell escapes and aliases exactly as they are in the
|
|
|
ipython command line. Should improve backslash experience,
|
|
|
particularly in Windows (path delimiter for some commands that
|
|
|
won't understand '/'), but Unix benefits as well (regexps). %cd
|
|
|
magic still doesn't support backslash path delimiters, though. Also
|
|
|
deleted all pretense of supporting multiline command strings in
|
|
|
!system or %magic commands. Thanks to Jerry McRae for suggestions.
|
|
|
|
|
|
* doc/build_doc_instructions.txt added. Documentation on how to
|
|
|
use doc/update_manual.py, added yesterday. Both files contributed
|
|
|
by Jörgen Stenarson <jorgen.stenarson-AT-bostream.nu>. This slates
|
|
|
doc/*.sh for deprecation at a later date.
|
|
|
|
|
|
* /ipython.py Added ipython.py to root directory for
|
|
|
zero-installation (tar xzvf ipython.tgz; cd ipython; python
|
|
|
ipython.py) and development convenience (no need to kee doing
|
|
|
"setup.py install" between changes).
|
|
|
|
|
|
* Made ! and !! shell escapes work (again) in multiline expressions:
|
|
|
if 1:
|
|
|
!ls
|
|
|
!!ls
|
|
|
|
|
|
2006-01-12 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/ipstruct.py (Struct): Rename IPython.Struct to
|
|
|
IPython.ipstruct, to avoid local shadowing of the stdlib 'struct'
|
|
|
module in case-insensitive installation. Was causing crashes
|
|
|
under win32. Closes http://www.scipy.net/roundup/ipython/issue49.
|
|
|
|
|
|
* IPython/Magic.py (magic_pycat): Fix pycat, patch by Marien Zwart
|
|
|
<marienz-AT-gentoo.org>, closes
|
|
|
http://www.scipy.net/roundup/ipython/issue51.
|
|
|
|
|
|
2006-01-11 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.on_timer): Finally fix the the
|
|
|
problem of excessive CPU usage under *nix and keyboard lag under
|
|
|
win32.
|
|
|
|
|
|
2006-01-10 *** Released version 0.7.0
|
|
|
|
|
|
2006-01-10 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Release.py (revision): tag version number to 0.7.0,
|
|
|
ready for release.
|
|
|
|
|
|
* IPython/Magic.py (magic_edit): Add print statement to %edit so
|
|
|
it informs the user of the name of the temp. file used. This can
|
|
|
help if you decide later to reuse that same file, so you know
|
|
|
where to copy the info from.
|
|
|
|
|
|
2006-01-09 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* setup_bdist_egg.py: little script to build an egg. Added
|
|
|
support in the release tools as well.
|
|
|
|
|
|
2006-01-08 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellWX.__init__): add support for WXPython
|
|
|
version selection (new -wxversion command line and ipythonrc
|
|
|
parameter). Patch contributed by Arnd Baecker
|
|
|
<arnd.baecker-AT-web.de>.
|
|
|
|
|
|
* IPython/iplib.py (embed_mainloop): fix tab-completion in
|
|
|
embedded instances, for variables defined at the interactive
|
|
|
prompt of the embedded ipython. Reported by Arnd.
|
|
|
|
|
|
* IPython/Magic.py (magic_autocall): Fix %autocall magic. Now
|
|
|
it can be used as a (stateful) toggle, or with a direct parameter.
|
|
|
|
|
|
* IPython/ultraTB.py (_fixed_getinnerframes): remove debug assert which
|
|
|
could be triggered in certain cases and cause the traceback
|
|
|
printer not to work.
|
|
|
|
|
|
2006-01-07 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (_should_recompile): Small fix, closes
|
|
|
http://www.scipy.net/roundup/ipython/issue48. Patch by Scott.
|
|
|
|
|
|
2006-01-04 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.mainloop): fix bug in the GTK
|
|
|
backend for matplotlib (100% cpu utiliziation). Thanks to Charlie
|
|
|
Moad for help with tracking it down.
|
|
|
|
|
|
* IPython/iplib.py (handle_auto): fix autocall handling for
|
|
|
objects which support BOTH __getitem__ and __call__ (so that f [x]
|
|
|
is left alone, instead of becoming f([x]) automatically).
|
|
|
|
|
|
* IPython/Magic.py (magic_cd): fix crash when cd -b was used.
|
|
|
Ville's patch.
|
|
|
|
|
|
2006-01-03 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (handle_auto): changed autocall semantics to
|
|
|
include 'smart' mode, where the autocall transformation is NOT
|
|
|
applied if there are no arguments on the line. This allows you to
|
|
|
just type 'foo' if foo is a callable to see its internal form,
|
|
|
instead of having it called with no arguments (typically a
|
|
|
mistake). The old 'full' autocall still exists: for that, you
|
|
|
need to set the 'autocall' parameter to 2 in your ipythonrc file.
|
|
|
|
|
|
* IPython/completer.py (Completer.attr_matches): add
|
|
|
tab-completion support for Enthoughts' traits. After a report by
|
|
|
Arnd and a patch by Prabhu.
|
|
|
|
|
|
2006-01-02 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (_fixed_getinnerframes): added Alex
|
|
|
Schmolck's patch to fix inspect.getinnerframes().
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): significant fixes
|
|
|
for embedded instances, regarding handling of namespaces and items
|
|
|
added to the __builtin__ one. Multiple embedded instances and
|
|
|
recursive embeddings should work better now (though I'm not sure
|
|
|
I've got all the corner cases fixed, that code is a bit of a brain
|
|
|
twister).
|
|
|
|
|
|
* IPython/Magic.py (magic_edit): added support to edit in-memory
|
|
|
macros (automatically creates the necessary temp files). %edit
|
|
|
also doesn't return the file contents anymore, it's just noise.
|
|
|
|
|
|
* IPython/completer.py (Completer.attr_matches): revert change to
|
|
|
complete only on attributes listed in __all__. I realized it
|
|
|
cripples the tab-completion system as a tool for exploring the
|
|
|
internals of unknown libraries (it renders any non-__all__
|
|
|
attribute off-limits). I got bit by this when trying to see
|
|
|
something inside the dis module.
|
|
|
|
|
|
2005-12-31 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): add .meta
|
|
|
namespace for users and extension writers to hold data in. This
|
|
|
follows the discussion in
|
|
|
http://projects.scipy.org/ipython/ipython/wiki/RefactoringIPython.
|
|
|
|
|
|
* IPython/completer.py (IPCompleter.complete): small patch to help
|
|
|
tab-completion under Emacs, after a suggestion by John Barnard
|
|
|
<barnarj-AT-ccf.org>.
|
|
|
|
|
|
* IPython/Magic.py (Magic.extract_input_slices): added support for
|
|
|
the slice notation in magics to use N-M to represent numbers N...M
|
|
|
(closed endpoints). This is used by %macro and %save.
|
|
|
|
|
|
* IPython/completer.py (Completer.attr_matches): for modules which
|
|
|
define __all__, complete only on those. After a patch by Jeffrey
|
|
|
Collins <jcollins_boulder-AT-earthlink.net>. Also, clean up and
|
|
|
speed up this routine.
|
|
|
|
|
|
* IPython/Logger.py (Logger.log): fix a history handling bug. I
|
|
|
don't know if this is the end of it, but the behavior now is
|
|
|
certainly much more correct. Note that coupled with macros,
|
|
|
slightly surprising (at first) behavior may occur: a macro will in
|
|
|
general expand to multiple lines of input, so upon exiting, the
|
|
|
in/out counters will both be bumped by the corresponding amount
|
|
|
(as if the macro's contents had been typed interactively). Typing
|
|
|
%hist will reveal the intermediate (silently processed) lines.
|
|
|
|
|
|
* IPython/Magic.py (magic_run): fix a subtle bug which could cause
|
|
|
pickle to fail (%run was overwriting __main__ and not restoring
|
|
|
it, but pickle relies on __main__ to operate).
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell): fix pdb calling: I'm now
|
|
|
using properties, but forgot to make the main InteractiveShell
|
|
|
class a new-style class. Properties fail silently, and
|
|
|
misteriously, with old-style class (getters work, but
|
|
|
setters don't do anything).
|
|
|
|
|
|
2005-12-30 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_history): fix history reporting bug (I
|
|
|
know some nasties are still there, I just can't seem to find a
|
|
|
reproducible test case to track them down; the input history is
|
|
|
falling out of sync...)
|
|
|
|
|
|
* IPython/iplib.py (handle_shell_escape): fix bug where both
|
|
|
aliases and system accesses where broken for indented code (such
|
|
|
as loops).
|
|
|
|
|
|
* IPython/genutils.py (shell): fix small but critical bug for
|
|
|
win32 system access.
|
|
|
|
|
|
2005-12-29 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (showtraceback): remove use of the
|
|
|
sys.last_{type/value/traceback} structures, which are non
|
|
|
thread-safe.
|
|
|
(_prefilter): change control flow to ensure that we NEVER
|
|
|
introspect objects when autocall is off. This will guarantee that
|
|
|
having an input line of the form 'x.y', where access to attribute
|
|
|
'y' has side effects, doesn't trigger the side effect TWICE. It
|
|
|
is important to note that, with autocall on, these side effects
|
|
|
can still happen.
|
|
|
(ipsystem): new builtin, to complete the ip{magic/alias/system}
|
|
|
trio. IPython offers these three kinds of special calls which are
|
|
|
not python code, and it's a good thing to have their call method
|
|
|
be accessible as pure python functions (not just special syntax at
|
|
|
the command line). It gives us a better internal implementation
|
|
|
structure, as well as exposing these for user scripting more
|
|
|
cleanly.
|
|
|
|
|
|
* IPython/macro.py (Macro.__init__): moved macros to a standalone
|
|
|
file. Now that they'll be more likely to be used with the
|
|
|
persistance system (%store), I want to make sure their module path
|
|
|
doesn't change in the future, so that we don't break things for
|
|
|
users' persisted data.
|
|
|
|
|
|
* IPython/iplib.py (autoindent_update): move indentation
|
|
|
management into the _text_ processing loop, not the keyboard
|
|
|
interactive one. This is necessary to correctly process non-typed
|
|
|
multiline input (such as macros).
|
|
|
|
|
|
* IPython/Magic.py (Magic.format_latex): patch by Stefan van der
|
|
|
Walt <stefan-AT-sun.ac.za> to fix latex formatting of docstrings,
|
|
|
which was producing problems in the resulting manual.
|
|
|
(magic_whos): improve reporting of instances (show their class,
|
|
|
instead of simply printing 'instance' which isn't terribly
|
|
|
informative).
|
|
|
|
|
|
* IPython/genutils.py (shell): commit Jorgen Stenarson's patch
|
|
|
(minor mods) to support network shares under win32.
|
|
|
|
|
|
* IPython/winconsole.py (get_console_size): add new winconsole
|
|
|
module and fixes to page_dumb() to improve its behavior under
|
|
|
win32. Contributed by Alexander Belchenko <bialix-AT-ukr.net>.
|
|
|
|
|
|
* IPython/Magic.py (Macro): simplified Macro class to just
|
|
|
subclass list. We've had only 2.2 compatibility for a very long
|
|
|
time, yet I was still avoiding subclassing the builtin types. No
|
|
|
more (I'm also starting to use properties, though I won't shift to
|
|
|
2.3-specific features quite yet).
|
|
|
(magic_store): added Ville's patch for lightweight variable
|
|
|
persistence, after a request on the user list by Matt Wilkie
|
|
|
<maphew-AT-gmail.com>. The new %store magic's docstring has full
|
|
|
details.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.post_config_initialization):
|
|
|
changed the default logfile name from 'ipython.log' to
|
|
|
'ipython_log.py'. These logs are real python files, and now that
|
|
|
we have much better multiline support, people are more likely to
|
|
|
want to use them as such. Might as well name them correctly.
|
|
|
|
|
|
* IPython/Magic.py: substantial cleanup. While we can't stop
|
|
|
using magics as mixins, due to the existing customizations 'out
|
|
|
there' which rely on the mixin naming conventions, at least I
|
|
|
cleaned out all cross-class name usage. So once we are OK with
|
|
|
breaking compatibility, the two systems can be separated.
|
|
|
|
|
|
* IPython/Logger.py: major cleanup. This one is NOT a mixin
|
|
|
anymore, and the class is a fair bit less hideous as well. New
|
|
|
features were also introduced: timestamping of input, and logging
|
|
|
of output results. These are user-visible with the -t and -o
|
|
|
options to %logstart. Closes
|
|
|
http://www.scipy.net/roundup/ipython/issue11 and a request by
|
|
|
William Stein (SAGE developer - http://modular.ucsd.edu/sage).
|
|
|
|
|
|
2005-12-28 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (handle_shell_escape): add Ville's patch to
|
|
|
better hadnle backslashes in paths. See the thread 'More Windows
|
|
|
questions part 2 - \/ characters revisited' on the iypthon user
|
|
|
list:
|
|
|
http://scipy.net/pipermail/ipython-user/2005-June/000907.html
|
|
|
|
|
|
(InteractiveShell.__init__): fix tab-completion bug in threaded shells.
|
|
|
|
|
|
(InteractiveShell.__init__): change threaded shells to not use the
|
|
|
ipython crash handler. This was causing more problems than not,
|
|
|
as exceptions in the main thread (GUI code, typically) would
|
|
|
always show up as a 'crash', when they really weren't.
|
|
|
|
|
|
The colors and exception mode commands (%colors/%xmode) have been
|
|
|
synchronized to also take this into account, so users can get
|
|
|
verbose exceptions for their threaded code as well. I also added
|
|
|
support for activating pdb inside this exception handler as well,
|
|
|
so now GUI authors can use IPython's enhanced pdb at runtime.
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): make the autoedit_syntax flag
|
|
|
true by default, and add it to the shipped ipythonrc file. Since
|
|
|
this asks the user before proceeding, I think it's OK to make it
|
|
|
true by default.
|
|
|
|
|
|
* IPython/Magic.py (magic_exit): make new exit/quit magics instead
|
|
|
of the previous special-casing of input in the eval loop. I think
|
|
|
this is cleaner, as they really are commands and shouldn't have
|
|
|
a special role in the middle of the core code.
|
|
|
|
|
|
2005-12-27 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (edit_syntax_error): added support for
|
|
|
automatically reopening the editor if the file had a syntax error
|
|
|
in it. Thanks to scottt who provided the patch at:
|
|
|
http://www.scipy.net/roundup/ipython/issue36 (slightly modified
|
|
|
version committed).
|
|
|
|
|
|
* IPython/iplib.py (handle_normal): add suport for multi-line
|
|
|
input with emtpy lines. This fixes
|
|
|
http://www.scipy.net/roundup/ipython/issue43 and a similar
|
|
|
discussion on the user list.
|
|
|
|
|
|
WARNING: a behavior change is necessarily introduced to support
|
|
|
blank lines: now a single blank line with whitespace does NOT
|
|
|
break the input loop, which means that when autoindent is on, by
|
|
|
default hitting return on the next (indented) line does NOT exit.
|
|
|
|
|
|
Instead, to exit a multiline input you can either have:
|
|
|
|
|
|
- TWO whitespace lines (just hit return again), or
|
|
|
- a single whitespace line of a different length than provided
|
|
|
by the autoindent (add or remove a space).
|
|
|
|
|
|
* IPython/completer.py (MagicCompleter.__init__): new 'completer'
|
|
|
module to better organize all readline-related functionality.
|
|
|
I've deleted FlexCompleter and put all completion clases here.
|
|
|
|
|
|
* IPython/iplib.py (raw_input): improve indentation management.
|
|
|
It is now possible to paste indented code with autoindent on, and
|
|
|
the code is interpreted correctly (though it still looks bad on
|
|
|
screen, due to the line-oriented nature of ipython).
|
|
|
(MagicCompleter.complete): change behavior so that a TAB key on an
|
|
|
otherwise empty line actually inserts a tab, instead of completing
|
|
|
on the entire global namespace. This makes it easier to use the
|
|
|
TAB key for indentation. After a request by Hans Meine
|
|
|
<hans_meine-AT-gmx.net>
|
|
|
(_prefilter): add support so that typing plain 'exit' or 'quit'
|
|
|
does a sensible thing. Originally I tried to deviate as little as
|
|
|
possible from the default python behavior, but even that one may
|
|
|
change in this direction (thread on python-dev to that effect).
|
|
|
Regardless, ipython should do the right thing even if CPython's
|
|
|
'>>>' prompt doesn't.
|
|
|
(InteractiveShell): removed subclassing code.InteractiveConsole
|
|
|
class. By now we'd overridden just about all of its methods: I've
|
|
|
copied the remaining two over, and now ipython is a standalone
|
|
|
class. This will provide a clearer picture for the chainsaw
|
|
|
branch refactoring.
|
|
|
|
|
|
2005-12-26 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): harden reporting against
|
|
|
failures for objects which break when dir() is called on them.
|
|
|
|
|
|
* IPython/FlexCompleter.py (Completer.__init__): Added support for
|
|
|
distinct local and global namespaces in the completer API. This
|
|
|
change allows us top properly handle completion with distinct
|
|
|
scopes, including in embedded instances (this had never really
|
|
|
worked correctly).
|
|
|
|
|
|
Note: this introduces a change in the constructor for
|
|
|
MagicCompleter, as a new global_namespace parameter is now the
|
|
|
second argument (the others were bumped one position).
|
|
|
|
|
|
2005-12-25 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (embed_mainloop): fix tab-completion in
|
|
|
embedded instances (which can be done now thanks to Vivian's
|
|
|
frame-handling fixes for pdb).
|
|
|
(InteractiveShell.__init__): Fix namespace handling problem in
|
|
|
embedded instances. We were overwriting __main__ unconditionally,
|
|
|
and this should only be done for 'full' (non-embedded) IPython;
|
|
|
embedded instances must respect the caller's __main__. Thanks to
|
|
|
a bug report by Yaroslav Bulatov <yaroslavvb-AT-gmail.com>
|
|
|
|
|
|
2005-12-24 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* setup.py: added download_url to setup(). This registers the
|
|
|
download address at PyPI, which is not only useful to humans
|
|
|
browsing the site, but is also picked up by setuptools (the Eggs
|
|
|
machinery). Thanks to Ville and R. Kern for the info/discussion
|
|
|
on this.
|
|
|
|
|
|
2005-12-23 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Debugger.py (Pdb.__init__): Major pdb mode enhancements.
|
|
|
This brings a lot of nice functionality to the pdb mode, which now
|
|
|
has tab-completion, syntax highlighting, and better stack handling
|
|
|
than before. Many thanks to Vivian De Smedt
|
|
|
<vivian-AT-vdesmedt.com> for the original patches.
|
|
|
|
|
|
2005-12-08 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.mainloop): fix mainloop() calling
|
|
|
sequence to consistently accept the banner argument. The
|
|
|
inconsistency was tripping SAGE, thanks to Gary Zablackis
|
|
|
<gzabl-AT-yahoo.com> for the report.
|
|
|
|
|
|
2005-11-15 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.post_config_initialization):
|
|
|
Fix bug where a naked 'alias' call in the ipythonrc file would
|
|
|
cause a crash. Bug reported by Jorgen Stenarson.
|
|
|
|
|
|
2005-11-15 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): cleanups which should improve
|
|
|
startup time.
|
|
|
|
|
|
* IPython/iplib.py (runcode): my globals 'fix' for embedded
|
|
|
instances had introduced a bug with globals in normal code. Now
|
|
|
it's working in all cases.
|
|
|
|
|
|
* IPython/Magic.py (magic_psearch): Finish wildcard cleanup and
|
|
|
API changes. A new ipytonrc option, 'wildcards_case_sensitive'
|
|
|
has been introduced to set the default case sensitivity of the
|
|
|
searches. Users can still select either mode at runtime on a
|
|
|
per-search basis.
|
|
|
|
|
|
2005-11-13 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/wildcard.py (NameSpace.__init__): fix resolution of
|
|
|
attributes in wildcard searches for subclasses. Modified version
|
|
|
of a patch by Jorgen.
|
|
|
|
|
|
2005-11-12 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (embed_mainloop): Fix handling of globals for
|
|
|
embedded instances. I added a user_global_ns attribute to the
|
|
|
InteractiveShell class to handle this.
|
|
|
|
|
|
2005-10-31 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.mainloop): Change timeout_add to
|
|
|
idle_add, which fixes horrible keyboard lag problems under gtk 2.6
|
|
|
(reported under win32, but may happen also in other platforms).
|
|
|
Bug report and fix courtesy of Sean Moore <smm-AT-logic.bm>
|
|
|
|
|
|
2005-10-15 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_psearch): new support for wildcard
|
|
|
patterns. Now, typing ?a*b will list all names which begin with a
|
|
|
and end in b, for example. The %psearch magic has full
|
|
|
docstrings. Many thanks to Jörgen Stenarson
|
|
|
<jorgen.stenarson-AT-bostream.nu>, author of the patches
|
|
|
implementing this functionality.
|
|
|
|
|
|
2005-09-27 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* Manual: fixed long-standing annoyance of double-dashes (as in
|
|
|
--prefix=~, for example) being stripped in the HTML version. This
|
|
|
is a latex2html bug, but a workaround was provided. Many thanks
|
|
|
to George K. Thiruvathukal <gthiruv-AT-luc.edu> for the detailed
|
|
|
help, and Michael Tobis <mtobis-AT-gmail.com> for getting the ball
|
|
|
rolling. This seemingly small issue had tripped a number of users
|
|
|
when first installing, so I'm glad to see it gone.
|
|
|
|
|
|
2005-09-27 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Extensions/numeric_formats.py: fix missing import,
|
|
|
reported by Stephen Walton.
|
|
|
|
|
|
2005-09-24 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/demo.py: finish demo module, fully documented now.
|
|
|
|
|
|
* IPython/genutils.py (file_read): simple little utility to read a
|
|
|
file and ensure it's closed afterwards.
|
|
|
|
|
|
2005-09-23 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/demo.py (Demo.__init__): added support for individually
|
|
|
tagging blocks for automatic execution.
|
|
|
|
|
|
* IPython/Magic.py (magic_pycat): new %pycat magic for showing
|
|
|
syntax-highlighted python sources, requested by John.
|
|
|
|
|
|
2005-09-22 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/demo.py (Demo.again): fix bug where again() blocks after
|
|
|
finishing.
|
|
|
|
|
|
* IPython/genutils.py (shlex_split): moved from Magic to here,
|
|
|
where all 2.2 compatibility stuff lives. I needed it for demo.py.
|
|
|
|
|
|
* IPython/demo.py (Demo.__init__): added support for silent
|
|
|
blocks, improved marks as regexps, docstrings written.
|
|
|
(Demo.__init__): better docstring, added support for sys.argv.
|
|
|
|
|
|
* IPython/genutils.py (marquee): little utility used by the demo
|
|
|
code, handy in general.
|
|
|
|
|
|
* IPython/demo.py (Demo.__init__): new class for interactive
|
|
|
demos. Not documented yet, I just wrote it in a hurry for
|
|
|
scipy'05. Will docstring later.
|
|
|
|
|
|
2005-09-20 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (sigint_handler): Drastic simplification which
|
|
|
also seems to make Ctrl-C work correctly across threads! This is
|
|
|
so simple, that I can't beleive I'd missed it before. Needs more
|
|
|
testing, though.
|
|
|
(KBINT): Never mind, revert changes. I'm sure I'd tried something
|
|
|
like this before...
|
|
|
|
|
|
* IPython/genutils.py (get_home_dir): add protection against
|
|
|
non-dirs in win32 registry.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.alias_table_validate): fix
|
|
|
bug where dict was mutated while iterating (pysh crash).
|
|
|
|
|
|
2005-09-06 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (handle_auto): Fix inconsistency arising from
|
|
|
spurious newlines added by this routine. After a report by
|
|
|
F. Mantegazza.
|
|
|
|
|
|
2005-09-05 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (hijack_gtk): remove pygtk.require("2.0")
|
|
|
calls. These were a leftover from the GTK 1.x days, and can cause
|
|
|
problems in certain cases (after a report by John Hunter).
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): Trap exception if
|
|
|
os.getcwd() fails at init time. Thanks to patch from David Remahl
|
|
|
<chmod007-AT-mac.com>.
|
|
|
(InteractiveShell.__init__): prevent certain special magics from
|
|
|
being shadowed by aliases. Closes
|
|
|
http://www.scipy.net/roundup/ipython/issue41.
|
|
|
|
|
|
2005-08-31 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.complete): Added new
|
|
|
top-level completion method to expose the completion mechanism
|
|
|
beyond readline-based environments.
|
|
|
|
|
|
2005-08-19 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* tools/ipsvnc (svnversion): fix svnversion capture.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): Add has_readline
|
|
|
attribute to self, which was missing. Before, it was set by a
|
|
|
routine which in certain cases wasn't being called, so the
|
|
|
instance could end up missing the attribute. This caused a crash.
|
|
|
Closes http://www.scipy.net/roundup/ipython/issue40.
|
|
|
|
|
|
2005-08-16 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): don't crash if object
|
|
|
contains non-string attribute. Closes
|
|
|
http://www.scipy.net/roundup/ipython/issue38.
|
|
|
|
|
|
2005-08-14 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* tools/ipsvnc: Minor improvements, to add changeset info.
|
|
|
|
|
|
2005-08-12 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (runsource): remove self.code_to_run_src
|
|
|
attribute. I realized this is nothing more than
|
|
|
'\n'.join(self.buffer), and having the same data in two different
|
|
|
places is just asking for synchronization bugs. This may impact
|
|
|
people who have custom exception handlers, so I need to warn
|
|
|
ipython-dev about it (F. Mantegazza may use them).
|
|
|
|
|
|
2005-07-29 Fernando Perez <Fernando.Perez@colorado.edu>
|
|
|
|
|
|
* IPython/genutils.py: fix 2.2 compatibility (generators)
|
|
|
|
|
|
2005-07-18 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/genutils.py (get_home_dir): fix to help users with
|
|
|
invalid $HOME under win32.
|
|
|
|
|
|
2005-07-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Prompts.py (str_safe): Make unicode-safe. Also remove
|
|
|
some old hacks and clean up a bit other routines; code should be
|
|
|
simpler and a bit faster.
|
|
|
|
|
|
* IPython/iplib.py (interact): removed some last-resort attempts
|
|
|
to survive broken stdout/stderr. That code was only making it
|
|
|
harder to abstract out the i/o (necessary for gui integration),
|
|
|
and the crashes it could prevent were extremely rare in practice
|
|
|
(besides being fully user-induced in a pretty violent manner).
|
|
|
|
|
|
* IPython/genutils.py (IOStream.__init__): Simplify the i/o stuff.
|
|
|
Nothing major yet, but the code is simpler to read; this should
|
|
|
make it easier to do more serious modifications in the future.
|
|
|
|
|
|
* IPython/Extensions/InterpreterExec.py: Fix auto-quoting in pysh,
|
|
|
which broke in .15 (thanks to a report by Ville).
|
|
|
|
|
|
* IPython/Itpl.py (Itpl.__init__): add unicode support (it may not
|
|
|
be quite correct, I know next to nothing about unicode). This
|
|
|
will allow unicode strings to be used in prompts, amongst other
|
|
|
cases. It also will prevent ipython from crashing when unicode
|
|
|
shows up unexpectedly in many places. If ascii encoding fails, we
|
|
|
assume utf_8. Currently the encoding is not a user-visible
|
|
|
setting, though it could be made so if there is demand for it.
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): remove old 2.1-specific hack.
|
|
|
|
|
|
* IPython/Struct.py (Struct.merge): switch keys() to iterator.
|
|
|
|
|
|
* IPython/background_jobs.py: moved 2.2 compatibility to genutils.
|
|
|
|
|
|
* IPython/genutils.py: Add 2.2 compatibility here, so all other
|
|
|
code can work transparently for 2.2/2.3.
|
|
|
|
|
|
2005-07-16 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (ExceptionColors): Make a global variable
|
|
|
out of the color scheme table used for coloring exception
|
|
|
tracebacks. This allows user code to add new schemes at runtime.
|
|
|
This is a minimally modified version of the patch at
|
|
|
http://www.scipy.net/roundup/ipython/issue35, many thanks to pabw
|
|
|
for the contribution.
|
|
|
|
|
|
* IPython/FlexCompleter.py (Completer.attr_matches): Add a
|
|
|
slightly modified version of the patch in
|
|
|
http://www.scipy.net/roundup/ipython/issue34, which also allows me
|
|
|
to remove the previous try/except solution (which was costlier).
|
|
|
Thanks to Gaetan Lehmann <gaetan.lehmann-AT-jouy.inra.fr> for the fix.
|
|
|
|
|
|
2005-06-08 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (write/write_err): Add methods to abstract all
|
|
|
I/O a bit more.
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.mainloop): Fix GTK deprecation
|
|
|
warning, reported by Aric Hagberg, fix by JD Hunter.
|
|
|
|
|
|
2005-06-02 *** Released version 0.6.15
|
|
|
|
|
|
2005-06-01 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (MagicCompleter.file_matches): Fix
|
|
|
tab-completion of filenames within open-quoted strings. Note that
|
|
|
this requires that in ~/.ipython/ipythonrc, users change the
|
|
|
readline delimiters configuration to read:
|
|
|
|
|
|
readline_remove_delims -/~
|
|
|
|
|
|
|
|
|
2005-05-31 *** Released version 0.6.14
|
|
|
|
|
|
2005-05-29 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): Fix crash for tracebacks
|
|
|
with files not on the filesystem. Reported by Eliyahu Sandler
|
|
|
<eli@gondolin.net>
|
|
|
|
|
|
2005-05-22 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py: Fix a few crashes in the --upgrade option.
|
|
|
After an initial report by LUK ShunTim <shuntim.luk@polyu.edu.hk>.
|
|
|
|
|
|
2005-05-19 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (safe_execfile): close a file which could be
|
|
|
left open (causing problems in win32, which locks open files).
|
|
|
Thanks to a bug report by D Brown <dbrown2@yahoo.com>.
|
|
|
|
|
|
2005-05-18 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.mplot_exec): pass all
|
|
|
keyword arguments correctly to safe_execfile().
|
|
|
|
|
|
2005-05-13 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* ipython.1: Added info about Qt to manpage, and threads warning
|
|
|
to usage page (invoked with --help).
|
|
|
|
|
|
* IPython/iplib.py (MagicCompleter.python_func_kw_matches): Added
|
|
|
new matcher (it goes at the end of the priority list) to do
|
|
|
tab-completion on named function arguments. Submitted by George
|
|
|
Sakkis <gsakkis-AT-eden.rutgers.edu>. See the thread at
|
|
|
http://www.scipy.net/pipermail/ipython-dev/2005-April/000436.html
|
|
|
for more details.
|
|
|
|
|
|
* IPython/Magic.py (magic_run): Added new -e flag to ignore
|
|
|
SystemExit exceptions in the script being run. Thanks to a report
|
|
|
by danny shevitz <danny_shevitz-AT-yahoo.com>, about this
|
|
|
producing very annoying behavior when running unit tests.
|
|
|
|
|
|
2005-05-12 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (handle_auto): fixed auto-quoting and parens,
|
|
|
which I'd broken (again) due to a changed regexp. In the process,
|
|
|
added ';' as an escape to auto-quote the whole line without
|
|
|
splitting its arguments. Thanks to a report by Jerry McRae
|
|
|
<qrs0xyc02-AT-sneakemail.com>.
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): protect against rare but
|
|
|
possible crashes caused by a TokenError. Reported by Ed Schofield
|
|
|
<schofield-AT-ftw.at>.
|
|
|
|
|
|
2005-05-06 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (hijack_wx): Fix to work with WX v.2.6.
|
|
|
|
|
|
2005-04-29 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellQt): Thanks to Denis Rivière
|
|
|
<nudz-AT-free.fr>, Yann Cointepas <yann-AT-sapetnioc.org> and Benjamin
|
|
|
Thyreau <Benji2-AT-decideur.info>, we now have a -qthread option
|
|
|
which provides support for Qt interactive usage (similar to the
|
|
|
existing one for WX and GTK). This had been often requested.
|
|
|
|
|
|
2005-04-14 *** Released version 0.6.13
|
|
|
|
|
|
2005-04-08 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic._ofind): remove docstring evaluation
|
|
|
from _ofind, which gets called on almost every input line. Now,
|
|
|
we only try to get docstrings if they are actually going to be
|
|
|
used (the overhead of fetching unnecessary docstrings can be
|
|
|
noticeable for certain objects, such as Pyro proxies).
|
|
|
|
|
|
* IPython/iplib.py (MagicCompleter.python_matches): Change the API
|
|
|
for completers. For some reason I had been passing them the state
|
|
|
variable, which completers never actually need, and was in
|
|
|
conflict with the rlcompleter API. Custom completers ONLY need to
|
|
|
take the text parameter.
|
|
|
|
|
|
* IPython/Extensions/InterpreterExec.py: Fix regexp so that magics
|
|
|
work correctly in pysh. I've also moved all the logic which used
|
|
|
to be in pysh.py here, which will prevent problems with future
|
|
|
upgrades. However, this time I must warn users to update their
|
|
|
pysh profile to include the line
|
|
|
|
|
|
import_all IPython.Extensions.InterpreterExec
|
|
|
|
|
|
because otherwise things won't work for them. They MUST also
|
|
|
delete pysh.py and the line
|
|
|
|
|
|
execfile pysh.py
|
|
|
|
|
|
from their ipythonrc-pysh.
|
|
|
|
|
|
* IPython/FlexCompleter.py (Completer.attr_matches): Make more
|
|
|
robust in the face of objects whose dir() returns non-strings
|
|
|
(which it shouldn't, but some broken libs like ITK do). Thanks to
|
|
|
a patch by John Hunter (implemented differently, though). Also
|
|
|
minor improvements by using .extend instead of + on lists.
|
|
|
|
|
|
* pysh.py:
|
|
|
|
|
|
2005-04-06 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): Make multi_line_specials on
|
|
|
by default, so that all users benefit from it. Those who don't
|
|
|
want it can still turn it off.
|
|
|
|
|
|
* IPython/UserConfig/ipythonrc: Add multi_line_specials to the
|
|
|
config file, I'd forgotten about this, so users were getting it
|
|
|
off by default.
|
|
|
|
|
|
* IPython/iplib.py (ipmagic): big overhaul of the magic system for
|
|
|
consistency. Now magics can be called in multiline statements,
|
|
|
and python variables can be expanded in magic calls via $var.
|
|
|
This makes the magic system behave just like aliases or !system
|
|
|
calls.
|
|
|
|
|
|
2005-03-28 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (handle_auto): cleanup to use %s instead of
|
|
|
expensive string additions for building command. Add support for
|
|
|
trailing ';' when autocall is used.
|
|
|
|
|
|
2005-03-26 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* ipython.el: Fix http://www.scipy.net/roundup/ipython/issue31.
|
|
|
Bugfix by A. Schmolck, the ipython.el maintainer. Also make
|
|
|
ipython.el robust against prompts with any number of spaces
|
|
|
(including 0) after the ':' character.
|
|
|
|
|
|
* IPython/Prompts.py (Prompt2.set_p_str): Fix spurious space in
|
|
|
continuation prompt, which misled users to think the line was
|
|
|
already indented. Closes debian Bug#300847, reported to me by
|
|
|
Norbert Tretkowski <tretkowski-AT-inittab.de>.
|
|
|
|
|
|
2005-03-23 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Prompts.py (Prompt1.__str__): Make sure that prompts are
|
|
|
properly aligned if they have embedded newlines.
|
|
|
|
|
|
* IPython/iplib.py (runlines): Add a public method to expose
|
|
|
IPython's code execution machinery, so that users can run strings
|
|
|
as if they had been typed at the prompt interactively.
|
|
|
(InteractiveShell.__init__): Added getoutput() to the __IPYTHON__
|
|
|
methods which can call the system shell, but with python variable
|
|
|
expansion. The three such methods are: __IPYTHON__.system,
|
|
|
.getoutput and .getoutputerror. These need to be documented in a
|
|
|
'public API' section (to be written) of the manual.
|
|
|
|
|
|
2005-03-20 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.set_custom_exc): new system
|
|
|
for custom exception handling. This is quite powerful, and it
|
|
|
allows for user-installable exception handlers which can trap
|
|
|
custom exceptions at runtime and treat them separately from
|
|
|
IPython's default mechanisms. At the request of Frédéric
|
|
|
Mantegazza <mantegazza-AT-ill.fr>.
|
|
|
(InteractiveShell.set_custom_completer): public API function to
|
|
|
add new completers at runtime.
|
|
|
|
|
|
2005-03-19 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/OInspect.py (getdoc): Add a call to obj.getdoc(), to
|
|
|
allow objects which provide their docstrings via non-standard
|
|
|
mechanisms (like Pyro proxies) to still be inspected by ipython's
|
|
|
? system.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): back off the _o/_e
|
|
|
automatic capture system. I tried quite hard to make it work
|
|
|
reliably, and simply failed. I tried many combinations with the
|
|
|
subprocess module, but eventually nothing worked in all needed
|
|
|
cases (not blocking stdin for the child, duplicating stdout
|
|
|
without blocking, etc). The new %sc/%sx still do capture to these
|
|
|
magical list/string objects which make shell use much more
|
|
|
conveninent, so not all is lost.
|
|
|
|
|
|
XXX - FIX MANUAL for the change above!
|
|
|
|
|
|
(runsource): I copied code.py's runsource() into ipython to modify
|
|
|
it a bit. Now the code object and source to be executed are
|
|
|
stored in ipython. This makes this info accessible to third-party
|
|
|
tools, like custom exception handlers. After a request by Frédéric
|
|
|
Mantegazza <mantegazza-AT-ill.fr>.
|
|
|
|
|
|
* IPython/UserConfig/ipythonrc: Add up/down arrow keys to
|
|
|
history-search via readline (like C-p/C-n). I'd wanted this for a
|
|
|
long time, but only recently found out how to do it. For users
|
|
|
who already have their ipythonrc files made and want this, just
|
|
|
add:
|
|
|
|
|
|
readline_parse_and_bind "\e[A": history-search-backward
|
|
|
readline_parse_and_bind "\e[B": history-search-forward
|
|
|
|
|
|
2005-03-18 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_sc): %sc and %sx now use the fancy
|
|
|
LSString and SList classes which allow transparent conversions
|
|
|
between list mode and whitespace-separated string.
|
|
|
(magic_r): Fix recursion problem in %r.
|
|
|
|
|
|
* IPython/genutils.py (LSString): New class to be used for
|
|
|
automatic storage of the results of all alias/system calls in _o
|
|
|
and _e (stdout/err). These provide a .l/.list attribute which
|
|
|
does automatic splitting on newlines. This means that for most
|
|
|
uses, you'll never need to do capturing of output with %sc/%sx
|
|
|
anymore, since ipython keeps this always done for you. Note that
|
|
|
only the LAST results are stored, the _o/e variables are
|
|
|
overwritten on each call. If you need to save their contents
|
|
|
further, simply bind them to any other name.
|
|
|
|
|
|
2005-03-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Prompts.py (BasePrompt.cwd_filt): a few more fixes for
|
|
|
prompt namespace handling.
|
|
|
|
|
|
2005-03-16 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Prompts.py (CachedOutput.__init__): Fix default and
|
|
|
classic prompts to be '>>> ' (final space was missing, and it
|
|
|
trips the emacs python mode).
|
|
|
(BasePrompt.__str__): Added safe support for dynamic prompt
|
|
|
strings. Now you can set your prompt string to be '$x', and the
|
|
|
value of x will be printed from your interactive namespace. The
|
|
|
interpolation syntax includes the full Itpl support, so
|
|
|
${foo()+x+bar()} is a valid prompt string now, and the function
|
|
|
calls will be made at runtime.
|
|
|
|
|
|
2005-03-15 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_history): renamed %hist to %history, to
|
|
|
avoid name clashes in pylab. %hist still works, it just forwards
|
|
|
the call to %history.
|
|
|
|
|
|
2005-03-02 *** Released version 0.6.12
|
|
|
|
|
|
2005-03-02 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (handle_magic): log magic calls properly as
|
|
|
ipmagic() function calls.
|
|
|
|
|
|
* IPython/Magic.py (magic_time): Improved %time to support
|
|
|
statements and provide wall-clock as well as CPU time.
|
|
|
|
|
|
2005-02-27 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/hooks.py: New hooks module, to expose user-modifiable
|
|
|
IPython functionality in a clean manner. For now only the editor
|
|
|
hook is actually written, and other thigns which I intend to turn
|
|
|
into proper hooks aren't yet there. The display and prefilter
|
|
|
stuff, for example, should be hooks. But at least now the
|
|
|
framework is in place, and the rest can be moved here with more
|
|
|
time later. IPython had had a .hooks variable for a long time for
|
|
|
this purpose, but I'd never actually used it for anything.
|
|
|
|
|
|
2005-02-26 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): make the default ipython
|
|
|
directory be called _ipython under win32, to follow more the
|
|
|
naming peculiarities of that platform (where buggy software like
|
|
|
Visual Sourcesafe breaks with .named directories). Reported by
|
|
|
Ville Vainio.
|
|
|
|
|
|
2005-02-23 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): removed a few
|
|
|
auto_aliases for win32 which were causing problems. Users can
|
|
|
define the ones they personally like.
|
|
|
|
|
|
2005-02-21 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_time): new magic to time execution of
|
|
|
expressions. After a request by Charles Moad <cmoad-AT-indiana.edu>.
|
|
|
|
|
|
2005-02-19 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ConfigLoader.py (ConfigLoader.load): Allow empty strings
|
|
|
into keys (for prompts, for example).
|
|
|
|
|
|
* IPython/Prompts.py (BasePrompt.set_p_str): Fix to allow empty
|
|
|
prompts in case users want them. This introduces a small behavior
|
|
|
change: ipython does not automatically add a space to all prompts
|
|
|
anymore. To get the old prompts with a space, users should add it
|
|
|
manually to their ipythonrc file, so for example prompt_in1 should
|
|
|
now read 'In [\#]: ' instead of 'In [\#]:'.
|
|
|
(BasePrompt.__init__): New option prompts_pad_left (only in rc
|
|
|
file) to control left-padding of secondary prompts.
|
|
|
|
|
|
* IPython/Magic.py (Magic.profile_missing_notice): Don't crash if
|
|
|
the profiler can't be imported. Fix for Debian, which removed
|
|
|
profile.py because of License issues. I applied a slightly
|
|
|
modified version of the original Debian patch at
|
|
|
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=294500.
|
|
|
|
|
|
2005-02-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/genutils.py (native_line_ends): Fix bug which would
|
|
|
cause improper line-ends under win32 b/c I was not opening files
|
|
|
in binary mode. Bug report and fix thanks to Ville.
|
|
|
|
|
|
* IPython/iplib.py (handle_auto): Fix bug which I introduced when
|
|
|
trying to catch spurious foo[1] autocalls. My fix actually broke
|
|
|
',/' autoquote/call with explicit escape (bad regexp).
|
|
|
|
|
|
2005-02-15 *** Released version 0.6.11
|
|
|
|
|
|
2005-02-14 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/background_jobs.py: New background job management
|
|
|
subsystem. This is implemented via a new set of classes, and
|
|
|
IPython now provides a builtin 'jobs' object for background job
|
|
|
execution. A convenience %bg magic serves as a lightweight
|
|
|
frontend for starting the more common type of calls. This was
|
|
|
inspired by discussions with B. Granger and the BackgroundCommand
|
|
|
class described in the book Python Scripting for Computational
|
|
|
Science, by H. P. Langtangen: http://folk.uio.no/hpl/scripting
|
|
|
(although ultimately no code from this text was used, as IPython's
|
|
|
system is a separate implementation).
|
|
|
|
|
|
* IPython/iplib.py (MagicCompleter.python_matches): add new option
|
|
|
to control the completion of single/double underscore names
|
|
|
separately. As documented in the example ipytonrc file, the
|
|
|
readline_omit__names variable can now be set to 2, to omit even
|
|
|
single underscore names. Thanks to a patch by Brian Wong
|
|
|
<BrianWong-AT-AirgoNetworks.Com>.
|
|
|
(InteractiveShell.__init__): Fix bug which would cause foo[1] to
|
|
|
be autocalled as foo([1]) if foo were callable. A problem for
|
|
|
things which are both callable and implement __getitem__.
|
|
|
(init_readline): Fix autoindentation for win32. Thanks to a patch
|
|
|
by Vivian De Smedt <vivian-AT-vdesmedt.com>.
|
|
|
|
|
|
2005-02-12 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): Disabled the stout traps
|
|
|
which I had written long ago to sort out user error messages which
|
|
|
may occur during startup. This seemed like a good idea initially,
|
|
|
but it has proven a disaster in retrospect. I don't want to
|
|
|
change much code for now, so my fix is to set the internal 'debug'
|
|
|
flag to true everywhere, whose only job was precisely to control
|
|
|
this subsystem. This closes issue 28 (as well as avoiding all
|
|
|
sorts of strange hangups which occur from time to time).
|
|
|
|
|
|
2005-02-07 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_edit): Fix 'ed -p' not working when the
|
|
|
previous call produced a syntax error.
|
|
|
|
|
|
* IPython/OInspect.py (Inspector.pinfo): Fix crash when inspecting
|
|
|
classes without constructor.
|
|
|
|
|
|
2005-02-06 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (MagicCompleter.complete): Extend the list of
|
|
|
completions with the results of each matcher, so we return results
|
|
|
to the user from all namespaces. This breaks with ipython
|
|
|
tradition, but I think it's a nicer behavior. Now you get all
|
|
|
possible completions listed, from all possible namespaces (python,
|
|
|
filesystem, magics...) After a request by John Hunter
|
|
|
<jdhunter-AT-nitace.bsd.uchicago.edu>.
|
|
|
|
|
|
2005-02-05 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_prun): Fix bug where prun would fail if
|
|
|
the call had quote characters in it (the quotes were stripped).
|
|
|
|
|
|
2005-01-31 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): reduce reliance on
|
|
|
Itpl.itpl() to make the code more robust against psyco
|
|
|
optimizations.
|
|
|
|
|
|
* IPython/Itpl.py (Itpl.__str__): Use a _getframe() call instead
|
|
|
of causing an exception. Quicker, cleaner.
|
|
|
|
|
|
2005-01-28 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* scripts/ipython_win_post_install.py (install): hardcode
|
|
|
sys.prefix+'python.exe' as the executable path. It turns out that
|
|
|
during the post-installation run, sys.executable resolves to the
|
|
|
name of the binary installer! I should report this as a distutils
|
|
|
bug, I think. I updated the .10 release with this tiny fix, to
|
|
|
avoid annoying the lists further.
|
|
|
|
|
|
2005-01-27 *** Released version 0.6.10
|
|
|
|
|
|
2005-01-27 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/numutils.py (norm): Added 'inf' as optional name for
|
|
|
L-infinity norm, included references to mathworld.com for vector
|
|
|
norm definitions.
|
|
|
(amin/amax): added amin/amax for array min/max. Similar to what
|
|
|
pylab ships with after the recent reorganization of names.
|
|
|
(spike/spike_odd): removed deprecated spike/spike_odd functions.
|
|
|
|
|
|
* ipython.el: committed Alex's recent fixes and improvements.
|
|
|
Tested with python-mode from CVS, and it looks excellent. Since
|
|
|
python-mode hasn't released anything in a while, I'm temporarily
|
|
|
putting a copy of today's CVS (v 4.70) of python-mode in:
|
|
|
http://ipython.scipy.org/tmp/python-mode.el
|
|
|
|
|
|
* scripts/ipython_win_post_install.py (install): Win32 fix to use
|
|
|
sys.executable for the executable name, instead of assuming it's
|
|
|
called 'python.exe' (the post-installer would have produced broken
|
|
|
setups on systems with a differently named python binary).
|
|
|
|
|
|
* IPython/PyColorize.py (Parser.__call__): change explicit '\n'
|
|
|
references to os.linesep, to make the code more
|
|
|
platform-independent. This is also part of the win32 coloring
|
|
|
fixes.
|
|
|
|
|
|
* IPython/genutils.py (page_dumb): Remove attempts to chop long
|
|
|
lines, which actually cause coloring bugs because the length of
|
|
|
the line is very difficult to correctly compute with embedded
|
|
|
escapes. This was the source of all the coloring problems under
|
|
|
Win32. I think that _finally_, Win32 users have a properly
|
|
|
working ipython in all respects. This would never have happened
|
|
|
if not for Gary Bishop and Viktor Ransmayr's great help and work.
|
|
|
|
|
|
2005-01-26 *** Released version 0.6.9
|
|
|
|
|
|
2005-01-25 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* setup.py: finally, we have a true Windows installer, thanks to
|
|
|
the excellent work of Viktor Ransmayr
|
|
|
<viktor.ransmayr-AT-t-online.de>. The docs have been updated for
|
|
|
Windows users. The setup routine is quite a bit cleaner thanks to
|
|
|
this, and the post-install script uses the proper functions to
|
|
|
allow a clean de-installation using the standard Windows Control
|
|
|
Panel.
|
|
|
|
|
|
* IPython/genutils.py (get_home_dir): changed to use the $HOME
|
|
|
environment variable under all OSes (including win32) if
|
|
|
available. This will give consistency to win32 users who have set
|
|
|
this variable for any reason. If os.environ['HOME'] fails, the
|
|
|
previous policy of using HOMEDRIVE\HOMEPATH kicks in.
|
|
|
|
|
|
2005-01-24 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/numutils.py (empty_like): add empty_like(), similar to
|
|
|
zeros_like() but taking advantage of the new empty() Numeric routine.
|
|
|
|
|
|
2005-01-23 *** Released version 0.6.8
|
|
|
|
|
|
2005-01-22 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.mplot_exec): I removed the
|
|
|
automatic show() calls. After discussing things with JDH, it
|
|
|
turns out there are too many corner cases where this can go wrong.
|
|
|
It's best not to try to be 'too smart', and simply have ipython
|
|
|
reproduce as much as possible the default behavior of a normal
|
|
|
python shell.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): Modified the
|
|
|
line-splitting regexp and _prefilter() to avoid calling getattr()
|
|
|
on assignments. This closes
|
|
|
http://www.scipy.net/roundup/ipython/issue24. Note that Python's
|
|
|
readline uses getattr(), so a simple <TAB> keypress is still
|
|
|
enough to trigger getattr() calls on an object.
|
|
|
|
|
|
2005-01-21 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.magic_run): Fix the %run
|
|
|
docstring under pylab so it doesn't mask the original.
|
|
|
|
|
|
2005-01-21 *** Released version 0.6.7
|
|
|
|
|
|
2005-01-21 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MTInteractiveShell.runcode): Trap a crash with
|
|
|
signal handling for win32 users in multithreaded mode.
|
|
|
|
|
|
2005-01-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/OInspect.py (Inspector.pinfo): Fix crash when inspecting
|
|
|
instances with no __init__. After a crash report by Norbert Nemec
|
|
|
<Norbert-AT-nemec-online.de>.
|
|
|
|
|
|
2005-01-14 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): Fix bug in reporting of
|
|
|
names for verbose exceptions, when multiple dotted names and the
|
|
|
'parent' object were present on the same line.
|
|
|
|
|
|
2005-01-11 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/genutils.py (flag_calls): new utility to trap and flag
|
|
|
calls in functions. I need it to clean up matplotlib support.
|
|
|
Also removed some deprecated code in genutils.
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.mplot_exec): small fix so
|
|
|
that matplotlib scripts called with %run, which don't call show()
|
|
|
themselves, still have their plotting windows open.
|
|
|
|
|
|
2005-01-05 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.__init__): Patch by Andrew Straw
|
|
|
<astraw-AT-caltech.edu>, to fix gtk deprecation warnings.
|
|
|
|
|
|
2004-12-19 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MTInteractiveShell.runcode): Get rid of
|
|
|
parent_runcode, which was an eyesore. The same result can be
|
|
|
obtained with Python's regular superclass mechanisms.
|
|
|
|
|
|
2004-12-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_sc): Fix quote stripping problem
|
|
|
reported by Prabhu.
|
|
|
(Magic.magic_sx): direct all errors to Term.cerr (defaults to
|
|
|
sys.stderr) instead of explicitly calling sys.stderr. This helps
|
|
|
maintain our I/O abstractions clean, for future GUI embeddings.
|
|
|
|
|
|
* IPython/genutils.py (info): added new utility for sys.stderr
|
|
|
unified info message handling (thin wrapper around warn()).
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): Fix misreported global
|
|
|
composite (dotted) names on verbose exceptions.
|
|
|
(VerboseTB.nullrepr): harden against another kind of errors which
|
|
|
Python's inspect module can trigger, and which were crashing
|
|
|
IPython. Thanks to a report by Marco Lombardi
|
|
|
<mlombard-AT-ma010192.hq.eso.org>.
|
|
|
|
|
|
2004-12-13 *** Released version 0.6.6
|
|
|
|
|
|
2004-12-12 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.mainloop): catch RuntimeErrors
|
|
|
generated by pygtk upon initialization if it was built without
|
|
|
threads (for matplotlib users). After a crash reported by
|
|
|
Leguijt, Jaap J SIEP-EPT-RES <Jaap.Leguijt-AT-shell.com>.
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): fix small bug in the
|
|
|
import_some parameter for multiple imports.
|
|
|
|
|
|
* IPython/iplib.py (ipmagic): simplified the interface of
|
|
|
ipmagic() to take a single string argument, just as it would be
|
|
|
typed at the IPython cmd line.
|
|
|
(ipalias): Added new ipalias() with an interface identical to
|
|
|
ipmagic(). This completes exposing a pure python interface to the
|
|
|
alias and magic system, which can be used in loops or more complex
|
|
|
code where IPython's automatic line mangling is not active.
|
|
|
|
|
|
* IPython/genutils.py (timing): changed interface of timing to
|
|
|
simply run code once, which is the most common case. timings()
|
|
|
remains unchanged, for the cases where you want multiple runs.
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase._matplotlib_config): Fix a
|
|
|
bug where Python2.2 crashes with exec'ing code which does not end
|
|
|
in a single newline. Python 2.3 is OK, so I hadn't noticed this
|
|
|
before.
|
|
|
|
|
|
2004-12-10 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_prun): changed name of option from
|
|
|
-t to -T, to accomodate the new -t flag in %run (the %run and
|
|
|
%prun options are kind of intermixed, and it's not easy to change
|
|
|
this with the limitations of python's getopt).
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_run): Added new -t option to time
|
|
|
the execution of scripts. It's not as fine-tuned as timeit.py,
|
|
|
but it works from inside ipython (and under 2.2, which lacks
|
|
|
timeit.py). Optionally a number of runs > 1 can be given for
|
|
|
timing very short-running code.
|
|
|
|
|
|
* IPython/genutils.py (uniq_stable): new routine which returns a
|
|
|
list of unique elements in any iterable, but in stable order of
|
|
|
appearance. I needed this for the ultraTB fixes, and it's a handy
|
|
|
utility.
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): Fix proper reporting of
|
|
|
dotted names in Verbose exceptions. This had been broken since
|
|
|
the very start, now x.y will properly be printed in a Verbose
|
|
|
traceback, instead of x being shown and y appearing always as an
|
|
|
'undefined global'. Getting this to work was a bit tricky,
|
|
|
because by default python tokenizers are stateless. Saved by
|
|
|
python's ability to easily add a bit of state to an arbitrary
|
|
|
function (without needing to build a full-blown callable object).
|
|
|
|
|
|
Also big cleanup of this code, which had horrendous runtime
|
|
|
lookups of zillions of attributes for colorization. Moved all
|
|
|
this code into a few templates, which make it cleaner and quicker.
|
|
|
|
|
|
Printout quality was also improved for Verbose exceptions: one
|
|
|
variable per line, and memory addresses are printed (this can be
|
|
|
quite handy in nasty debugging situations, which is what Verbose
|
|
|
is for).
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): Do NOT execute files named in
|
|
|
the command line as scripts to be loaded by embedded instances.
|
|
|
Doing so has the potential for an infinite recursion if there are
|
|
|
exceptions thrown in the process. This fixes a strange crash
|
|
|
reported by Philippe MULLER <muller-AT-irit.fr>.
|
|
|
|
|
|
2004-12-09 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.use): Change pylab support
|
|
|
to reflect new names in matplotlib, which now expose the
|
|
|
matlab-compatible interface via a pylab module instead of the
|
|
|
'matlab' name. The new code is backwards compatible, so users of
|
|
|
all matplotlib versions are OK. Patch by J. Hunter.
|
|
|
|
|
|
* IPython/OInspect.py (Inspector.pinfo): Add to object? printing
|
|
|
of __init__ docstrings for instances (class docstrings are already
|
|
|
automatically printed). Instances with customized docstrings
|
|
|
(indep. of the class) are also recognized and all 3 separate
|
|
|
docstrings are printed (instance, class, constructor). After some
|
|
|
comments/suggestions by J. Hunter.
|
|
|
|
|
|
2004-12-05 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (MagicCompleter.complete): Remove annoying
|
|
|
warnings when tab-completion fails and triggers an exception.
|
|
|
|
|
|
2004-12-03 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (magic_prun): Fix bug where an exception would
|
|
|
be triggered when using 'run -p'. An incorrect option flag was
|
|
|
being set ('d' instead of 'D').
|
|
|
(manpage): fix missing escaped \- sign.
|
|
|
|
|
|
2004-11-30 *** Released version 0.6.5
|
|
|
|
|
|
2004-11-30 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_run): Fix bug in breakpoint
|
|
|
setting with -d option.
|
|
|
|
|
|
* setup.py (docfiles): Fix problem where the doc glob I was using
|
|
|
was COMPLETELY BROKEN. It was giving the right files by pure
|
|
|
accident, but failed once I tried to include ipython.el. Note:
|
|
|
glob() does NOT allow you to do exclusion on multiple endings!
|
|
|
|
|
|
2004-11-29 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/usage.py (__doc__): cleaned up usage docstring, by using
|
|
|
the manpage as the source. Better formatting & consistency.
|
|
|
|
|
|
* IPython/Magic.py (magic_run): Added new -d option, to run
|
|
|
scripts under the control of the python pdb debugger. Note that
|
|
|
this required changing the %prun option -d to -D, to avoid a clash
|
|
|
(since %run must pass options to %prun, and getopt is too dumb to
|
|
|
handle options with string values with embedded spaces). Thanks
|
|
|
to a suggestion by Matthew Arnison <maffew-AT-cat.org.au>.
|
|
|
(magic_who_ls): added type matching to %who and %whos, so that one
|
|
|
can filter their output to only include variables of certain
|
|
|
types. Another suggestion by Matthew.
|
|
|
(magic_whos): Added memory summaries in kb and Mb for arrays.
|
|
|
(magic_who): Improve formatting (break lines every 9 vars).
|
|
|
|
|
|
2004-11-28 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Logger.py (Logger.log): Fix bug in syncing the input
|
|
|
cache when empty lines were present.
|
|
|
|
|
|
2004-11-24 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/usage.py (__doc__): document the re-activated threading
|
|
|
options for WX and GTK.
|
|
|
|
|
|
2004-11-23 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (start): Added Prabhu's big patch to reactivate
|
|
|
the -wthread and -gthread options, along with a new -tk one to try
|
|
|
and coordinate Tk threading with wx/gtk. The tk support is very
|
|
|
platform dependent, since it seems to require Tcl and Tk to be
|
|
|
built with threads (Fedora1/2 appears NOT to have it, but in
|
|
|
Prabhu's Debian boxes it works OK). But even with some Tk
|
|
|
limitations, this is a great improvement.
|
|
|
|
|
|
* IPython/Prompts.py (prompt_specials_color): Added \t for time
|
|
|
info in user prompts. Patch by Prabhu.
|
|
|
|
|
|
2004-11-18 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/genutils.py (ask_yes_no): Add check for a max of 20
|
|
|
EOFErrors and bail, to avoid infinite loops if a non-terminating
|
|
|
file is fed into ipython. Patch submitted in issue 19 by user,
|
|
|
many thanks.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.handle_auto): do NOT trigger
|
|
|
autoquote/parens in continuation prompts, which can cause lots of
|
|
|
problems. Closes roundup issue 20.
|
|
|
|
|
|
2004-11-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* debian/control (Build-Depends-Indep): Fix dpatch dependency,
|
|
|
reported as debian bug #280505. I'm not sure my local changelog
|
|
|
entry has the proper debian format (Jack?).
|
|
|
|
|
|
2004-11-08 *** Released version 0.6.4
|
|
|
|
|
|
2004-11-08 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (init_readline): Fix exit message for Windows
|
|
|
when readline is active. Thanks to a report by Eric Jones
|
|
|
<eric-AT-enthought.com>.
|
|
|
|
|
|
2004-11-07 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/genutils.py (page): Add a trap for OSError exceptions,
|
|
|
sometimes seen by win2k/cygwin users.
|
|
|
|
|
|
2004-11-06 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (interact): Change the handling of %Exit from
|
|
|
trying to propagate a SystemExit to an internal ipython flag.
|
|
|
This is less elegant than using Python's exception mechanism, but
|
|
|
I can't get that to work reliably with threads, so under -pylab
|
|
|
%Exit was hanging IPython. Cross-thread exception handling is
|
|
|
really a bitch. Thaks to a bug report by Stephen Walton
|
|
|
<stephen.walton-AT-csun.edu>.
|
|
|
|
|
|
2004-11-04 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (raw_input_original): store a pointer to the
|
|
|
true raw_input to harden against code which can modify it
|
|
|
(wx.py.PyShell does this and would otherwise crash ipython).
|
|
|
Thanks to a bug report by Jim Flowers <james.flowers-AT-lgx.com>.
|
|
|
|
|
|
* IPython/Shell.py (MTInteractiveShell.runsource): Cleaner fix for
|
|
|
Ctrl-C problem, which does not mess up the input line.
|
|
|
|
|
|
2004-11-03 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Release.py: Changed licensing to BSD, in all files.
|
|
|
(name): lowercase name for tarball/RPM release.
|
|
|
|
|
|
* IPython/OInspect.py (getdoc): wrap inspect.getdoc() safely for
|
|
|
use throughout ipython.
|
|
|
|
|
|
* IPython/Magic.py (Magic._ofind): Switch to using the new
|
|
|
OInspect.getdoc() function.
|
|
|
|
|
|
* IPython/Shell.py (sigint_handler): Hack to ignore the execution
|
|
|
of the line currently being canceled via Ctrl-C. It's extremely
|
|
|
ugly, but I don't know how to do it better (the problem is one of
|
|
|
handling cross-thread exceptions).
|
|
|
|
|
|
2004-10-28 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (signal_handler): add signal handlers to trap
|
|
|
SIGINT and SIGSEGV in threaded code properly. Thanks to a bug
|
|
|
report by Francesc Alted.
|
|
|
|
|
|
2004-10-21 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Extensions/InterpreterExec.py (prefilter_shell): Fix @
|
|
|
to % for pysh syntax extensions.
|
|
|
|
|
|
2004-10-09 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_whos): modify output of Numeric
|
|
|
arrays to print a more useful summary, without calling str(arr).
|
|
|
This avoids the problem of extremely lengthy computations which
|
|
|
occur if arr is large, and appear to the user as a system lockup
|
|
|
with 100% cpu activity. After a suggestion by Kristian Sandberg
|
|
|
<Kristian.Sandberg@colorado.edu>.
|
|
|
(Magic.__init__): fix bug in global magic escapes not being
|
|
|
correctly set.
|
|
|
|
|
|
2004-10-08 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (__license__): change to absolute imports of
|
|
|
ipython's own internal packages, to start adapting to the absolute
|
|
|
import requirement of PEP-328.
|
|
|
|
|
|
* IPython/genutils.py (__author__): Fix coding to utf-8 on all
|
|
|
files, and standardize author/license marks through the Release
|
|
|
module instead of having per/file stuff (except for files with
|
|
|
particular licenses, like the MIT/PSF-licensed codes).
|
|
|
|
|
|
* IPython/Debugger.py: remove dead code for python 2.1
|
|
|
|
|
|
2004-10-04 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (ipmagic): New function for accessing magics
|
|
|
via a normal python function call.
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_magic): Change the magic escape
|
|
|
from '@' to '%', to accomodate the new @decorator syntax of python
|
|
|
2.4.
|
|
|
|
|
|
2004-09-29 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.use): Added a wrapper to
|
|
|
matplotlib.use to prevent running scripts which try to switch
|
|
|
interactive backends from within ipython. This will just crash
|
|
|
the python interpreter, so we can't allow it (but a detailed error
|
|
|
is given to the user).
|
|
|
|
|
|
2004-09-28 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (MatplotlibShellBase.mplot_exec):
|
|
|
matplotlib-related fixes so that using @run with non-matplotlib
|
|
|
scripts doesn't pop up spurious plot windows. This requires
|
|
|
matplotlib >= 0.63, where I had to make some changes as well.
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): update version requirement to
|
|
|
python 2.2.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.mainloop): Add an optional
|
|
|
banner arg for embedded customization.
|
|
|
|
|
|
* IPython/Magic.py (Magic.__init__): big cleanup to remove all
|
|
|
explicit uses of __IP as the IPython's instance name. Now things
|
|
|
are properly handled via the shell.name value. The actual code
|
|
|
is a bit ugly b/c I'm doing it via a global in Magic.py, but this
|
|
|
is much better than before. I'll clean things completely when the
|
|
|
magic stuff gets a real overhaul.
|
|
|
|
|
|
* ipython.1: small fixes, sent in by Jack Moffit. He also sent in
|
|
|
minor changes to debian dir.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): Fix adding a
|
|
|
pointer to the shell itself in the interactive namespace even when
|
|
|
a user-supplied dict is provided. This is needed for embedding
|
|
|
purposes (found by tests with Michel Sanner).
|
|
|
|
|
|
2004-09-27 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/UserConfig/ipythonrc: remove []{} from
|
|
|
readline_remove_delims, so that things like [modname.<TAB> do
|
|
|
proper completion. This disables [].TAB, but that's a less common
|
|
|
case than module names in list comprehensions, for example.
|
|
|
Thanks to a report by Andrea Riciputi.
|
|
|
|
|
|
2004-09-09 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.mainloop): reorder to avoid
|
|
|
blocking problems in win32 and osx. Fix by John.
|
|
|
|
|
|
2004-09-08 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellWX.OnInit): Fix output redirection bug
|
|
|
for Win32 and OSX. Fix by John Hunter.
|
|
|
|
|
|
2004-08-30 *** Released version 0.6.3
|
|
|
|
|
|
2004-08-30 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* setup.py (isfile): Add manpages to list of dependent files to be
|
|
|
updated.
|
|
|
|
|
|
2004-08-27 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (start): I've disabled -wthread and -gthread
|
|
|
for now. They don't really work with standalone WX/GTK code
|
|
|
(though matplotlib IS working fine with both of those backends).
|
|
|
This will neeed much more testing. I disabled most things with
|
|
|
comments, so turning it back on later should be pretty easy.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): Fix accidental
|
|
|
autocalling of expressions like r'foo', by modifying the line
|
|
|
split regexp. Closes
|
|
|
http://www.scipy.net/roundup/ipython/issue18, reported by Nicholas
|
|
|
Riley <ipythonbugs-AT-sabi.net>.
|
|
|
(InteractiveShell.mainloop): honor --nobanner with banner
|
|
|
extensions.
|
|
|
|
|
|
* IPython/Shell.py: Significant refactoring of all classes, so
|
|
|
that we can really support ALL matplotlib backends and threading
|
|
|
models (John spotted a bug with Tk which required this). Now we
|
|
|
should support single-threaded, WX-threads and GTK-threads, both
|
|
|
for generic code and for matplotlib.
|
|
|
|
|
|
* IPython/ipmaker.py (__call__): Changed -mpthread option to
|
|
|
-pylab, to simplify things for users. Will also remove the pylab
|
|
|
profile, since now all of matplotlib configuration is directly
|
|
|
handled here. This also reduces startup time.
|
|
|
|
|
|
* IPython/Shell.py (IPShellGTK.run): Fixed bug where mainloop() of
|
|
|
shell wasn't being correctly called. Also in IPShellWX.
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): Added option to
|
|
|
fine-tune banner.
|
|
|
|
|
|
* IPython/numutils.py (spike): Deprecate these spike functions,
|
|
|
delete (long deprecated) gnuplot_exec handler.
|
|
|
|
|
|
2004-08-26 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* ipython.1: Update for threading options, plus some others which
|
|
|
were missing.
|
|
|
|
|
|
* IPython/ipmaker.py (__call__): Added -wthread option for
|
|
|
wxpython thread handling. Make sure threading options are only
|
|
|
valid at the command line.
|
|
|
|
|
|
* scripts/ipython: moved shell selection into a factory function
|
|
|
in Shell.py, to keep the starter script to a minimum.
|
|
|
|
|
|
2004-08-25 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellWX.wxexit): fixes to WX threading, by
|
|
|
John. Along with some recent changes he made to matplotlib, the
|
|
|
next versions of both systems should work very well together.
|
|
|
|
|
|
2004-08-24 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_prun): cleanup some dead code. I
|
|
|
tried to switch the profiling to using hotshot, but I'm getting
|
|
|
strange errors from prof.runctx() there. I may be misreading the
|
|
|
docs, but it looks weird. For now the profiling code will
|
|
|
continue to use the standard profiler.
|
|
|
|
|
|
2004-08-23 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Shell.py (IPShellWX.__init__): Improvements to the WX
|
|
|
threaded shell, by John Hunter. It's not quite ready yet, but
|
|
|
close.
|
|
|
|
|
|
2004-08-22 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.interact): tab cleanups, also
|
|
|
in Magic and ultraTB.
|
|
|
|
|
|
* ipython.1: document threading options in manpage.
|
|
|
|
|
|
* scripts/ipython: Changed name of -thread option to -gthread,
|
|
|
since this is GTK specific. I want to leave the door open for a
|
|
|
-wthread option for WX, which will most likely be necessary. This
|
|
|
change affects usage and ipmaker as well.
|
|
|
|
|
|
* IPython/Shell.py (matplotlib_shell): Add a factory function to
|
|
|
handle the matplotlib shell issues. Code by John Hunter
|
|
|
<jdhunter-AT-nitace.bsd.uchicago.edu>.
|
|
|
(IPShellMatplotlibWX.__init__): Rudimentary WX support. It's
|
|
|
broken (and disabled for end users) for now, but it puts the
|
|
|
infrastructure in place.
|
|
|
|
|
|
2004-08-21 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* ipythonrc-pylab: Add matplotlib support.
|
|
|
|
|
|
* matplotlib_config.py: new files for matplotlib support, part of
|
|
|
the pylab profile.
|
|
|
|
|
|
* IPython/usage.py (__doc__): documented the threading options.
|
|
|
|
|
|
2004-08-20 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* ipython: Modified the main calling routine to handle the -thread
|
|
|
and -mpthread options. This needs to be done as a top-level hack,
|
|
|
because it determines which class to instantiate for IPython
|
|
|
itself.
|
|
|
|
|
|
* IPython/Shell.py (MTInteractiveShell.__init__): New set of
|
|
|
classes to support multithreaded GTK operation without blocking,
|
|
|
and matplotlib with all backends. This is a lot of still very
|
|
|
experimental code, and threads are tricky. So it may still have a
|
|
|
few rough edges... This code owes a lot to
|
|
|
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/65109, by
|
|
|
Brian # McErlean and John Finlay, to Antoon Pardon for fixes, and
|
|
|
to John Hunter for all the matplotlib work.
|
|
|
|
|
|
* IPython/ipmaker.py (__call__): Added -thread and -mpthread
|
|
|
options for gtk thread and matplotlib support.
|
|
|
|
|
|
2004-08-16 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): don't trigger
|
|
|
autocall for things like p*q,p/q,p+q,p-q, when p is callable. Bug
|
|
|
reported by Stephen Walton <stephen.walton-AT-csun.edu>.
|
|
|
|
|
|
2004-08-11 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* setup.py (isfile): Fix build so documentation gets updated for
|
|
|
rpms (it was only done for .tgz builds).
|
|
|
|
|
|
2004-08-10 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* genutils.py (Term): Fix misspell of stdin stream (sin->cin).
|
|
|
|
|
|
* iplib.py : Silence syntax error exceptions in tab-completion.
|
|
|
|
|
|
2004-08-05 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Prompts.py (Prompt2.set_colors): Fix incorrectly set
|
|
|
'color off' mark for continuation prompts. This was causing long
|
|
|
continuation lines to mis-wrap.
|
|
|
|
|
|
2004-08-01 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ipmaker.py (make_IPython): Allow the shell class used
|
|
|
for building ipython to be a parameter. All this is necessary
|
|
|
right now to have a multithreaded version, but this insane
|
|
|
non-design will be cleaned up soon. For now, it's a hack that
|
|
|
works.
|
|
|
|
|
|
* IPython/Shell.py (IPShell.__init__): Stop using mutable default
|
|
|
args in various places. No bugs so far, but it's a dangerous
|
|
|
practice.
|
|
|
|
|
|
2004-07-31 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (complete): ignore SyntaxError exceptions to
|
|
|
fix completion of files with dots in their names under most
|
|
|
profiles (pysh was OK because the completion order is different).
|
|
|
|
|
|
2004-07-27 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.__init__): build dict of
|
|
|
keywords manually, b/c the one in keyword.py was removed in python
|
|
|
2.4. Patch by Anakim Border <aborder-AT-users.sourceforge.net>.
|
|
|
This is NOT a bug under python 2.3 and earlier.
|
|
|
|
|
|
2004-07-26 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/ultraTB.py (VerboseTB.text): Add another
|
|
|
linecache.checkcache() call to try to prevent inspect.py from
|
|
|
crashing under python 2.3. I think this fixes
|
|
|
http://www.scipy.net/roundup/ipython/issue17.
|
|
|
|
|
|
2004-07-26 *** Released version 0.6.2
|
|
|
|
|
|
2004-07-26 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_cd): Fix bug where 'cd -N' would
|
|
|
fail for any number.
|
|
|
(Magic.magic_bookmark): Fix bug where 'bookmark -l' would fail for
|
|
|
empty bookmarks.
|
|
|
|
|
|
2004-07-26 *** Released version 0.6.1
|
|
|
|
|
|
2004-07-26 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* ipython_win_post_install.py (run): Added pysh shortcut for Windows.
|
|
|
|
|
|
* IPython/iplib.py (protect_filename): Applied Ville's patch for
|
|
|
escaping '()[]{}' in filenames.
|
|
|
|
|
|
* IPython/Magic.py (shlex_split): Fix handling of '*' and '?' for
|
|
|
Python 2.2 users who lack a proper shlex.split.
|
|
|
|
|
|
2004-07-19 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell.init_readline): Add support
|
|
|
for reading readline's init file. I follow the normal chain:
|
|
|
$INPUTRC is honored, otherwise ~/.inputrc is used. Thanks to a
|
|
|
report by Mike Heeter. This closes
|
|
|
http://www.scipy.net/roundup/ipython/issue16.
|
|
|
|
|
|
2004-07-18 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (__init__): Add better handling of '\' under
|
|
|
Win32 for filenames. After a patch by Ville.
|
|
|
|
|
|
2004-07-17 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/iplib.py (InteractiveShell._prefilter): fix bug where
|
|
|
autocalling would be triggered for 'foo is bar' if foo is
|
|
|
callable. I also cleaned up the autocall detection code to use a
|
|
|
regexp, which is faster. Bug reported by Alexander Schmolck.
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_pinfo): Fix bug where strings with
|
|
|
'?' in them would confuse the help system. Reported by Alex
|
|
|
Schmolck.
|
|
|
|
|
|
2004-07-16 Fernando Perez <fperez@colorado.edu>
|
|
|
|
|
|
* IPython/GnuplotInteractive.py (__all__): added plot2.
|
|
|
|
|
|
* IPython/Gnuplot2.py (Gnuplot.plot2): added new function for
|
|
|
plotting dictionaries, lists or tuples of 1d arrays.
|
|
|
|
|
|
* IPython/Magic.py (Magic.magic_hist): small clenaups and
|
|
|
optimizations.
|
|
|
|
|
|
* IPython/iplib.py:Remove old Changelog in |