##// END OF EJS Templates
changelog
changelog

File last commit:

r202:1a7052fe
r202:1a7052fe
Show More
ChangeLog
5230 lines | 207.1 KiB | text/plain | TextLexer
vivainio
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.
vivainio
%save works again
r199 2006-02-21 Ville Vainio <vivainio@gmail.com>
* Magic.py: %save works again.
vivainio
Pprint works again
r193 2006-02-15 Ville Vainio <vivainio@gmail.com>
vivainio
typofix in changelog
r194 * Magic.py: %Pprint works again
vivainio
ipy_sane_defaults
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)
vivainio
Pprint works again
r193
fperez
Fix http://www.scipy.net/roundup/ipython/issue53, test added (though it must...
r190 2006-02-11 Fernando Perez <Fernando.Perez@colorado.edu>
fperez
Add quotes in the editor hook so that editor commands with spaces in them...
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
fperez
Fix comments in default rc file (@ -> %)
r191 * IPython/UserConfig/ipythonrc: Replace @ signs with % when
describing magics (we haven't used @ for a loong time).
fperez
Fix http://www.scipy.net/roundup/ipython/issue53, test added (though it must...
r190 * IPython/ultraTB.py (VerboseTB.text.text_repr): Added patch
contributed by marienz to close
http://www.scipy.net/roundup/ipython/issue53.
vivainio
use popen in genutils.getoutput
r184 2006-02-10 Ville Vainio <vivainio@gmail.com>
* genutils.py: getoutput now works in win32 too
vivainio
changelog
r189 * completer.py: alias and magic completion only invoked
at the first "item" in the line, to avoid "cd %store"
nonsense.
vivainio
-Added a unit testing framework...
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
vivainio
changelog
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.
fperez
Changes for demos and access to raw history in %macro, %save and %edit....
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.
vivainio
changelog
r174 2006-02-01 Ville Vainio <vivainio@gmail.com>
vivainio
easy_install ipython==dev works correctly now...
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.
vivainio
changelog
r174
vivainio
Grand Persistence Overhaul, featuring PickleShare. startup...
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'.
vivainio
aliases can be %store'd
r166
* aliases can now be %store'd
vivainio
Moved path to extensions - pickleshare failed because it imported...
r168
* path.py move to Extensions so that pickleshare does not need
IPython-specific import. Extensions added to pythonpath right
at __init__.
vivainio
ipalias deprecated/redundant; aliases are converted and called...
r169
* iplib.py: ipalias deprecated/redundant; aliases are converted and
called with _ip.system and the pre-transformed command string.
vivainio
Grand Persistence Overhaul, featuring PickleShare. startup...
r165
fperez
Fix KeyboardInterrupt trapping (Ctrl-C), which I think I recently broke.
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.
vivainio
Try to import pyreadline on win32
r160 2006-01-29 Ville Vainio <vivainio@gmail.com>
* iplib.py: Try to import pyreadline on Windows.
vivainio
-Expose IPApi is _ip in user namespace....
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.
vivainio
Provide "realistic" sys.argv for scripts run via ipython...
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")
vivainio
a = !ls, a = %alias now work (captures output or gets ret val for aliases)...
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.
vivainio
-iplib.py: added InteractiveShell.getapi(). New magics should be...
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).
vivainio
%quickref
r154
* ipmaker.py: now import ipy_profile_PROFILENAME automatically
* usage.py, Magic.py: added %quickref
vivainio
/f 1 2 -> f(1,2), not f(1 2). I.e. autoparen fixes
r155
* iplib.py: ESC_PAREN fixes: /f 1 2 -> f(1,2), not f(1 2).
vivainio
GetoptErrors when invoking magics etc. with wrong args ...
r156
* GetoptErrors when invoking magics etc. with wrong args
are now more helpful:
GetoptError: option -l not recognized (allowed: "qb" )
vivainio
Provide "realistic" sys.argv for scripts run via ipython...
r148
fperez
- Small fix to demos to flush stdout on each printed block.
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.
vivainio
result_display can return value. ipapi.is_ipython_session(). %paste -> %cpaste.
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.
vivainio
ipapi rehaul, moved api methods to class IPApi. Usage didn't change...
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.
vivainio
Merged 1071-1076 from banches/0.7.1
r145
* Merged 1071-1076 from banches/0.7.1
vivainio
ipapi rehaul, moved api methods to class IPApi. Usage didn't change...
r146
vivainio
Merged 1071-1076 from banches/0.7.1
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.
vivainio
result_display can return value. ipapi.is_ipython_session(). %paste -> %cpaste.
r144
vivainio
Added %paste magic
r140 2006-01-23 Ville Vainio <vivainio@gmail.com>
vivainio
result_display can return value. ipapi.is_ipython_session(). %paste -> %cpaste.
r144 * Added %cpaste magic for pasting python code
vivainio
Added %paste magic
r140
vivainio
Merge from branches/0.7.1 into trunk, revs 1052-1057
r136 2006-01-22 Ville Vainio <vivainio@gmail.com>
* Merge from branches/0.7.1 into trunk, revs 1052-1057
vivainio
Separate eggsetup.py that handles scripts installation in the egg...
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.
vivainio
Merge from branches/0.7.1 into trunk, revs 1052-1057
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>.
vivainio
Created rehash_dir extensions that introduces new magic,...
r126 2006-01-20 Ville Vainio <vivainio@gmail.com>
vivainio
renamed rehash_dir.py to ext_rehashdir.py (a convention for naming...
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.
vivainio
%store now prevents storing objs that are in module IPython.FakeModule...
r127
* %store now complains when trying to store interactively declared
classes / instances of those classes.
vivainio
Changed startup message, and be a bit more conservative with the settings
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.
vivainio
note about startup rehashing through config file added to changelog
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.
vivainio
Created rehash_dir extensions that introduces new magic,...
r126
fperez
_tentative_ fixes to pasting of multiline code with autoindent on. Needs...
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.
fperez
- Manual updates...
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.
fperez
- fix missing __file__ for scripts run via %run....
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>.
vivainio
Note about reverting to old %edit functionality in changelog
r117 2006-01-16 Ville Vainio <vivainio@gmail.com>
vivainio
fixed , and ; autocall to not consider exclusion regexp
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
vivainio
Get "path" objects via SList LSString mechanism, through...
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
vivainio
fixed , and ; autocall to not consider exclusion regexp
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.
vivainio
Added license statement to path.py, updated ChangeLog
r119
vivainio
Note about reverting to old %edit functionality in changelog
r117
vivainio
ipapi decorators ashook, asmagic; ipapi.options() for __IP.rc access
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.
vivainio
%cd accepts \ as pathsep - will convert to /.
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.
vivainio
ipapi decorators ashook, asmagic; ipapi.options() for __IP.rc access
r110
vivainio
Hooks now implement "Chain of Command" design pattern,...
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
vivainio
Configurable display hook
r113 suggested by Walter Dörwald <walter@livinglogic.de>. Walter also
requested configurable display hook, which is now implemented.
vivainio
ipapi decorators ashook, asmagic; ipapi.options() for __IP.rc access
r110
vivainio
Added platutils modules, now only needed for %cd to ...
r107 2006-01-13 Ville Vainio <vivainio@gmail.com>
* IPython/platutils*.py: platform specific utility functions,
vivainio
Added ipapi, the extension api for ipython....
r109 so far only set_term_title is implemented (change terminal
label in windowing systems). %cd now changes the title to
current dir.
vivainio
Fixed logical flaw (harmless so far) in handle_shell_escape
r108
vivainio
Added ipapi, the extension api for ipython....
r109 * IPython/Release.py: Added myself to "authors" list,
vivainio
Fixed logical flaw (harmless so far) in handle_shell_escape
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.
vivainio
Added ipapi, the extension api for ipython....
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.
vivainio
Fixed logical flaw (harmless so far) in handle_shell_escape
r108
vivainio
Added platutils modules, now only needed for %cd to ...
r107
fperez
%autocall fixes...
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.
vivainio
Prettified and hardened string/backslash quoting with ipsystem(), ipalias() and ...
r100 2006-01-12 Ville Vainio <vivainio@gmail.com>
vivainio
Made ! and !! shell escapes work again in multiline statements.
r105 * IPython/iplib.py (make_quoted_expr,handle_shell_escape):
vivainio
Prettified and hardened string/backslash quoting with ipsystem(), ipalias() and ...
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,
vivainio
Made ! and !! shell escapes work again in multiline statements.
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.
vivainio
Added instructions on building the documentation...
r102
fperez
%autocall fixes...
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
vivainio
Added instructions on building the documentation...
r102 doc/*.sh for deprecation at a later date.
vivainio
ipython.py entry to changelog
r104
vivainio
Made ! and !! shell escapes work again in multiline statements.
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
vivainio
Prettified and hardened string/backslash quoting with ipsystem(), ipalias() and ...
r100
fperez
Rename Struct to ipstruct, to fix a bug under windows due to shadowing of...
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.
fperez
Fix GTK timer/idle problems, finally.
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
fperez
Ready for 0.7.0 release!...
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.
fperez
Add egg support.
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.
fperez
Small fix in ultraTB, and fix autocall....
r88 2006-01-08 Fernando Perez <Fernando.Perez@colorado.edu>
fperez
Arnd's wxversion support.
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>.
fperez
fix tab-completion bug in embedded ipython reported by Arnd
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.
fperez
Small fix in ultraTB, and fix autocall....
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.
fperez
fix cd -b crash (patch by Ville)
r85 2006-01-04 Fernando Perez <Fernando.Perez@colorado.edu>
fperez
Fix gtk threading bug
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).
fperez
fix cd -b crash (patch by Ville)
r85 * IPython/Magic.py (magic_cd): fix crash when cd -b was used.
Ville's patch.
fperez
- Add autocall 'smart' mode....
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.
fperez
Fixes to:...
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.
fperez
Pdb calling, pickle (under certain circumstances, connected with %run) and...
r78 2005-12-31 Fernando Perez <Fernando.Perez@colorado.edu>
fperez
add .meta namespace for extension writers.
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.
fperez
- improve support for tab-completion under emacs...
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.
fperez
for modules which define __all__, complete only on those. After a patch by...
r79 * IPython/completer.py (Completer.attr_matches): for modules which
define __all__, complete only on those. After a patch by Jeffrey
fperez
- improve support for tab-completion under emacs...
r80 Collins <jcollins_boulder-AT-earthlink.net>. Also, clean up and
speed up this routine.
fperez
for modules which define __all__, complete only on those. After a patch by...
r79
fperez
Pdb calling, pickle (under certain circumstances, connected with %run) and...
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).
fperez
fix small but critical bug for win32 system access.
r74 2005-12-30 Fernando Perez <Fernando.Perez@colorado.edu>
fperez
Pdb calling, pickle (under certain circumstances, connected with %run) and...
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...)
fperez
fix handling of aliases/system calls for multiline input
r76 * IPython/iplib.py (handle_shell_escape): fix bug where both
aliases and system accesses where broken for indented code (such
as loops).
fperez
fix small but critical bug for win32 system access.
r74 * IPython/genutils.py (shell): fix small but critical bug for
win32 system access.
fperez
Major cleanups and changes, see changelog/changeset for full details.
r60 2005-12-29 Fernando Perez <Fernando.Perez@colorado.edu>
fperez
- thread-safety fixes...
r69 * IPython/iplib.py (showtraceback): remove use of the
sys.last_{type/value/traceback} structures, which are non
thread-safe.
fperez
Ensure that, with autocall off, attribute access will never be performed...
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.
fperez
- Fix autoindent which I had broken......
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.
fperez
- thread-safety fixes...
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).
fperez
Fix latex formatting of docstrings, patch by Stefan van der Walt...
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.
fperez
- thread-safety fixes...
r69 (magic_whos): improve reporting of instances (show their class,
instead of simply printing 'instance' which isn't terribly
informative).