Pydb

Latest version: v1.26

Safety actively analyzes 628903 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

1.20

* Turning on signal checking may slow things down too much. So off
by default. Fix bug in "set sigcheck". Add --sigcheck option.

* Allow a thread number in "info thread" and "frame" commands if
Python 2.5 or threadframe.

* Show all threads even if we don't know their names.

* Allow Pdb object to get passed in runv(). Allows for better ipython
invocation (%pydb) and may be useful in other shells as well

* Provide a clue when debugger "run" command given but no "file" has
been set.

* Better shell-like argument parsing in the "run" command via
shlex.

* Recover more gracefully if a post-mortem is called and there is none.

* "set_trace" is now an alias for "debugger" which is probably a more
natural name.

* We now tolerate back to Python version 2.3.3

* A number of small bugs fixed and document updates.

1.19

* info threads: merge in terse display (Python 2.5, threadframe)
and sort by thread name (Python 2.5)

* Add optional position argument on "continue" command.

* Add pydb.runl() and pydb.runv() forms to facilitate debugging a
program from inside a Python shell.

* fix thread bugs: on startup with threading we stopped one statement
too soon. more careful about storing into variables used in
threading which are not locked (and so could be changed during a
thread switch)

* Allow quit in thread debugging when MainThread is the only thread
that we are in

* fix bugs in signal handling.

* Add "stack" and "nostack" to list of things that can be done when
a signal is received.

* things to make more ipython friendly.

* Improve pydb manual

1.18

* Start thread debugging:
info thread [thread-name] [terse|verbose] - show thread info
qt - quit current thread
can set a breakpoint on a specific thread name.
expand definitions of "frame" and "break" for threading

* GDB-like signal handling. Some code based on Matt Fleming's 2006
Summer-of-Code project. Gdb's "handle" and "signal" commands.

* Add hard kill. May be needed for thread debugging.

* Fix bug in handling temporary breakpoints (tbreak) caused by the
difference in semantics between pdb's 'clear' command and pdb's
(which calls this 'delete' and has a different meaning for 'clear').

* 'examine' command now shows object's instance variables.

* add gdb 'FILE' command: allow loading/running a file from within
pydb. (The old pydb from ddd had it too.)

1.17

* Allow entry to the debugger without a script name.

* "examine" command output shows object attributes.
There is a routine common to both examine and display.

* "whatis" shows doc strings if there is one.

* Fix a bug where we would get the wrong path in
tracing through an "import x as y". This happened only if we invoked
from a directory other than where the debugged program lives and we
stepped into such an imported method. The fix is to save the the
dirname of the script in the debugger instance variable.

* Fix bug when using set trace introduced in 1.16 in adding "command".

* Add gdb "directory" and "show directories" commands.

* All "show" and "info" commands allow unique abbreviations in the
subcommand name and in help. E.g. "show dir" for "show directories";
"help dir" for "help directories".

* The "turn-on-pydbtrack" command turns removes py-pdbtrack from
comint-output-filter-functions which was removing the cursor in the
source window. Some small bugs removed from turn-on-pydbtrack.

* Tested on Python versions 2.3.4, 2.3.5, 2.4, 2.4.3, and 2.5.b1 on
cygwin FreeBSD, GNU/Linux, NetBSD, OSX and Solaris.

* Add a subcommand class. Used in "set", "show", "info" (and possibly more
down the line). As a result help output now more closely resembles
gdb's. Thanks to Matt Fleming for finishing what I started.

* More fexible and more general output by no longer assuming we
write to sys.stdout. Rather the output object is saved in the
instance variable, which could be and often is the same as
sys.stdout, but doesn't need to be. This change may make
communication used in remote debugging and thread debugging
simpler. Many thanks to Matt Fleming for the patch.

* Debugger options --output and --error no longer modify program's
stdout/stderr.

* --exec (-e) added allow debugger commands to be run on startup.
Thanks to Matt Fleming

* post-mortem(), pm() and set-trace() interfaces changed. The dictionary
of assignements removed and instead a list of debugger commands has
been added.

* Document least-intrusion principle and changes listed above, list
of files making up the debugger and changes above. Be more precise
on the subtle differences in how the debugger is invoked.

* Remove pycheck errors; reduce pycheck warnings

* Changes have been made to facilitate addition of future features

1.16

* Add gdb "command" - run commands on a breakpoint. Code from current
pdb sources, but we follow gdb more closely.

* Allow one specify in the Pdb class Cmd's "completekey" binding.
(Also in current pdb sources.)

* Line tracing now shows source text.

* Document how to turn on and off from program control.

* "list" command is more like gdb's and can accept filename:lineo if
that's all that's given (Suggestion from Matt Fleming). Was also
off by one in line number listings.

* Made pydb document corrections for the "source" command

* Reword documentation on how set_trace() works based on confusion
observed in comp.lang.python. Note speed implications of using this over
setting a breakpoint.

* Note in Documentation that "jump" can be used to leave a loop. (Also
based on a query in comp.lang.python)

* Remove pdb backwards-compatibile runctx. This is a new debugger.

1.15

2006-03-25

* Add gdb history commands:
set history ..., show history ..., show commands

* Add command completion (gdb: complete)

* Add log redirection (gdb: set logging, show logging)

* Add gdb directory commands: cd, pwd

* Add --cd invocation option

* Add installation section in documentation

* reorder documentation so important stuff is towards the
front. Small text corrections too.

* Add pyreadline as a configuration option.

* Position location in file in GNU Emacs tracking in when in
comint shell: pydbtrack is a modified pdbtrack for Pydb.

* Some single-letter command names for these reasons
1. We now have command completion (often)
2. If the letter isn't a command it can be used as a variable name
in an assignment
3. There is an alias mechanism that can be used
4. Some of the commands like "j" for "jump" aren't used that much;
or in the case of "cont" for "continue", there already was an
abbreviation "c".
5. Multiple names makes help and completion more awkward.

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.