ChangeLog
5230 lines
| 207.1 KiB
| text/plain
|
TextLexer
/ doc / ChangeLog
|
r202 | 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. | |||
|
r199 | 2006-02-21 Ville Vainio <vivainio@gmail.com> | |
* Magic.py: %save works again. | |||
|
r193 | 2006-02-15 Ville Vainio <vivainio@gmail.com> | |
|
r194 | * Magic.py: %Pprint works again | |
|
r195 | ||
* 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) | |||
|
r193 | ||
|
r190 | 2006-02-11 Fernando Perez <Fernando.Perez@colorado.edu> | |
|
r192 | * 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 | |||
|
r191 | * IPython/UserConfig/ipythonrc: Replace @ signs with % when | |
describing magics (we haven't used @ for a loong time). | |||
|
r190 | * IPython/ultraTB.py (VerboseTB.text.text_repr): Added patch | |
contributed by marienz to close | |||
http://www.scipy.net/roundup/ipython/issue53. | |||
|
r184 | 2006-02-10 Ville Vainio <vivainio@gmail.com> | |
* genutils.py: getoutput now works in win32 too | |||
|
r189 | * completer.py: alias and magic completion only invoked | |
at the first "item" in the line, to avoid "cd %store" | |||
nonsense. | |||
|
r181 | 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 | |||
|
r180 | 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. | |||
|
r178 | 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. | |||
|
r174 | 2006-02-01 Ville Vainio <vivainio@gmail.com> | |
|
r176 | * 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. | |||
|
r174 | ||
|
r165 | 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'. | |||
|
r166 | ||
* aliases can now be %store'd | |||
|
r168 | ||
* path.py move to Extensions so that pickleshare does not need | |||
IPython-specific import. Extensions added to pythonpath right | |||
at __init__. | |||
|
r169 | ||
* iplib.py: ipalias deprecated/redundant; aliases are converted and | |||
called with _ip.system and the pre-transformed command string. | |||
|
r165 | ||
|
r163 | 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. | |||
|
r160 | 2006-01-29 Ville Vainio <vivainio@gmail.com> | |
* iplib.py: Try to import pyreadline on Windows. | |||
|
r158 | 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. | |||
|
r148 | 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") | |||
|
r151 | ||
* 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. | |||
|
r152 | ||
* 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). | |||
|
r154 | ||
* ipmaker.py: now import ipy_profile_PROFILENAME automatically | |||
* usage.py, Magic.py: added %quickref | |||
|
r155 | ||
* iplib.py: ESC_PAREN fixes: /f 1 2 -> f(1,2), not f(1 2). | |||
|
r156 | ||
* GetoptErrors when invoking magics etc. with wrong args | |||
are now more helpful: | |||
GetoptError: option -l not recognized (allowed: "qb" ) | |||
|
r148 | ||
|
r147 | 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. | |||
|
r144 | 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. | |||
|
r146 | * 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. | |||
|
r145 | ||
* Merged 1071-1076 from banches/0.7.1 | |||
|
r146 | ||
|
r145 | 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. | |||
|
r144 | ||
|
r140 | 2006-01-23 Ville Vainio <vivainio@gmail.com> | |
|
r144 | * Added %cpaste magic for pasting python code | |
|
r140 | ||
|
r136 | 2006-01-22 Ville Vainio <vivainio@gmail.com> | |
* Merge from branches/0.7.1 into trunk, revs 1052-1057 | |||
|
r138 | ||
* 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. | |||
|
r136 | ||
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>. | |||
|
r126 | 2006-01-20 Ville Vainio <vivainio@gmail.com> | |
|
r129 | * 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. | |||
|
r127 | ||
* %store now complains when trying to store interactively declared | |||
classes / instances of those classes. | |||
|
r131 | ||
* 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. | |||
|
r133 | ||
* 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. | |||
|
r126 | ||
|
r125 | 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. | |||
|
r123 | 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. | |||
|
r122 | 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>. | |||
|
r117 | 2006-01-16 Ville Vainio <vivainio@gmail.com> | |
|
r120 | * 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 | |||
|
r121 | 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 | |||
|
r120 | ||
* 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. | |||
|
r119 | ||
|
r117 | ||
|
r110 | 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. | |||
|
r111 | ||
* 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. | |||
|
r110 | ||
|
r112 | * 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 | |||
|
r113 | suggested by Walter Dörwald <walter@livinglogic.de>. Walter also | |
requested configurable display hook, which is now implemented. | |||
|
r110 | ||
|
r107 | 2006-01-13 Ville Vainio <vivainio@gmail.com> | |
* IPython/platutils*.py: platform specific utility functions, | |||
|
r109 | so far only set_term_title is implemented (change terminal | |
label in windowing systems). %cd now changes the title to | |||
current dir. | |||
|
r108 | ||
|
r109 | * IPython/Release.py: Added myself to "authors" list, | |
|
r108 | 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. | |||
|
r109 | ||
* 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. | |||
|
r108 | ||
|
r107 | ||
|
r106 | 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. | |||
|
r100 | 2006-01-12 Ville Vainio <vivainio@gmail.com> | |
|
r105 | * IPython/iplib.py (make_quoted_expr,handle_shell_escape): | |
|
r100 | 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, | |||
|
r105 | 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. | |||
|
r102 | ||
|
r106 | * 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 | |||
|
r102 | doc/*.sh for deprecation at a later date. | |
|
r104 | ||
|
r105 | * /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 | |||
|
r100 | ||
|
r98 | 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. | |||
|
r95 | 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 | |||
|
r93 | 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. | |||
|
r92 | 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. | |||
|
r88 | 2006-01-08 Fernando Perez <Fernando.Perez@colorado.edu> | |
|
r91 | * 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>. | |||
|
r89 | * 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. | |||
|
r88 | * 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. | |||
|
r85 | 2006-01-04 Fernando Perez <Fernando.Perez@colorado.edu> | |
|
r87 | * 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). | |||
|
r85 | * IPython/Magic.py (magic_cd): fix crash when cd -b was used. | |
Ville's patch. | |||
|
r84 | 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. | |||
|
r82 | 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. | |||
|
r78 | 2005-12-31 Fernando Perez <Fernando.Perez@colorado.edu> | |
|
r81 | * 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. | |||
|
r80 | * 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. | |||
|
r79 | * IPython/completer.py (Completer.attr_matches): for modules which | |
define __all__, complete only on those. After a patch by Jeffrey | |||
|
r80 | Collins <jcollins_boulder-AT-earthlink.net>. Also, clean up and | |
speed up this routine. | |||
|
r79 | ||
|
r78 | * 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). | |||
|
r74 | 2005-12-30 Fernando Perez <Fernando.Perez@colorado.edu> | |
|
r78 | * 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...) | |||
|
r76 | * IPython/iplib.py (handle_shell_escape): fix bug where both | |
aliases and system accesses where broken for indented code (such | |||
as loops). | |||
|
r74 | * IPython/genutils.py (shell): fix small but critical bug for | |
win32 system access. | |||
|
r60 | 2005-12-29 Fernando Perez <Fernando.Perez@colorado.edu> | |
|
r69 | * IPython/iplib.py (showtraceback): remove use of the | |
sys.last_{type/value/traceback} structures, which are non | |||
thread-safe. | |||
|
r70 | (_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. | |||
|
r72 | (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. | |||
|
r69 | ||
* 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). | |||
|
r67 | * 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. | |||
|
r69 | (magic_whos): improve reporting of instances (show their class, | |
instead of simply printing 'instance' which isn't terribly | |||
informative). | |||
|