rocky / pydb

Older python debugger (please use pydbgr instead)

This URL has Read+Write access

pydb /
name age message
file .cvsignore Mon Nov 17 10:41:28 -0800 2008 Administrivia [rockyb]
file .gitignore Mon Jul 06 14:09:57 -0700 2009 Administrivia: .gitignoresa [rocky]
file AUTHORS Fri Apr 10 18:41:05 -0700 2009 Typo. [rockyb]
directory Doc/ Sat Oct 17 18:50:51 -0700 2009 pydb.py.in: Wasn't finding whence_file in fns. [rocky]
file Makefile.am Sat Oct 31 13:32:53 -0700 2009 What's up [rocky]
file NEWS Sat Oct 31 13:32:53 -0700 2009 What's up [rocky]
file README Tue Feb 21 13:12:57 -0800 2006 Greatly needed revision for 0.12 release. [rockyb]
file THANKS Tue Oct 30 04:37:42 -0700 2007 Thank Albert Griggio for adding annotate. [rockyb]
file TODO Sat Jan 13 04:14:29 -0800 2007 *** empty log message *** [rockyb]
file autogen.sh Mon Jul 06 14:09:57 -0700 2009 Administrivia: .gitignoresa [rocky]
file configure.ac Fri Apr 10 16:41:58 -0700 2009 Get ready for 1.26 release [rockyb]
file cvs2cl_header Wed Jan 11 20:23:42 -0800 2006 Misc linkt to get ready for a release. [rockyb]
file cvs2cl_usermap Thu Dec 25 17:47:30 -0800 2008 Get ready for 1.25 release [rockyb]
directory emacs/ Mon Jul 06 14:09:57 -0700 2009 Administrivia: .gitignoresa [rocky]
directory htdocs/ Sat Oct 17 18:50:51 -0700 2009 pydb.py.in: Wasn't finding whence_file in fns. [rocky]
directory pydb/ Fri Oct 30 21:23:48 -0700 2009 Remove the message that you can "step" or "cont... [rocky]
file setup.py.in Thu Jun 12 13:09:24 -0700 2008 Spelling typo. Add a couple more "features". [rockyb]
file site-packages-path.py Tue Jan 10 20:10:32 -0800 2006 Changes to get this to install/uninstall/make u... [rockyb]
directory test/ Sat Oct 17 18:50:51 -0700 2009 pydb.py.in: Wasn't finding whence_file in fns. [rocky]
README
This is an expanded version of the Python debugger, pdb.py

Largely we're trying to follow gdb's command set unless there's good
reason. So new or modified command names generally refer to the
function they have in gdb.

Changes from pdb.py:

- non-interactive POSIX-shell like line tracing.

- Restart program saving settings (gdb's "run") or a pure "exec"
  restart (reloads the entire debugger)

- Add "display" expressions

- Some gdb "set"/"show" commands:
   args, listsize, version (no set here), and some new ones
  basename, cmdtrace, interactive, linetrace, 

- Some gdb "info" commands:
   args break, display, globals, line, locals, program, and source

- Other gdb commands: cd, display, disassemble, frame, pwd, return
  (immediate return, not finish), run, shell, source, undisplay

- debugger is installed in binary directory; i.e. one runs "pydb script..."
  rather than "python pdb script..."

- debugger accepts debugger options; e.g. redirecting output or setting 
  line tracing

- Add Perl's "examine" to show info about a symbol.  For functions,
  methods, classes and modules the documentation string if any is printed.
  For functions, we also show the argument list. More work is needed here
  to recurse fields of an arbitrary object and show that.

- add gdb's "frame" command and stack order. Cleaner display of
  call stack; for example "exec" calls are marked as such.

- gdb-like help with subcomamnd-specific help available on 
  info, set, or show subcommands;  e.g. "help info line" works

- More extensive and complete documentation. See
  http://bashdb.sourceforge.net/pydb/pydb/lib/index.html

- up/down can take a number of frames to move.

- Stepping skips over "def" statements.

- Comes with regression tests. Can also be subclassed to capture
  debugger output.

- Works with GUI frontend ddd. (For now a testing version of ddd is
  required. See
  http://sourceforge.net/project/showfiles.php?group_id=61395&package_id=65341
  version 3.3.12-test3 or greater.

- Miscellaneous pdb bugs fixed. (See ChangeLog for details)

Coexistence: 
  For now, we try not to conflict with pdb.py. After all, Python 
  developers made provision of multiple debuggers so we'll make use of
  that!

  So whereever there was a pdb, use pydb. The class name is still
  Pdb. So the debugger initialization script is .pydbrc for this
  debugger rather than .pdbrc for the one that comes with Python.

$Id: README,v 1.6 2006/02/21 21:12:57 rockyb Exp $