Commit Graph

113 Commits

Author SHA1 Message Date
Jason R. Coombs 5d032c0f95 PDB now will properly escape backslashes in the names of modules it executes. Fixes #7750 2011-11-17 18:03:24 -05:00
Georg Brandl 507759904c Merged revisions 83259,83261,83264-83265,83268-83269,83271-83272,83281 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r83259 | georg.brandl | 2010-07-30 09:03:39 +0200 (Fr, 30 Jul 2010) | 1 line

  Clarification.
........
  r83261 | georg.brandl | 2010-07-30 09:21:26 +0200 (Fr, 30 Jul 2010) | 1 line

  #9230: allow Pdb.checkline() to be called without a current frame, for setting breakpoints before starting debugging.
........
  r83264 | georg.brandl | 2010-07-30 10:45:26 +0200 (Fr, 30 Jul 2010) | 1 line

  Document the "jump" command in pdb.__doc__, and add a version tag for "until X".
........
  r83265 | georg.brandl | 2010-07-30 10:54:49 +0200 (Fr, 30 Jul 2010) | 1 line

  #8015: fix crash when entering an empty line for breakpoint commands.  Also restore environment properly when an exception occurs during the definition of commands.
........
  r83268 | georg.brandl | 2010-07-30 11:23:23 +0200 (Fr, 30 Jul 2010) | 2 lines

  Issue #8048: Prevent doctests from failing when sys.displayhook has
  been reassigned.
........
  r83269 | georg.brandl | 2010-07-30 11:43:00 +0200 (Fr, 30 Jul 2010) | 1 line

  #6719: In pdb, do not stop somewhere in the encodings machinery if the source file to be debugged is in a non-builtin encoding.
........
  r83271 | georg.brandl | 2010-07-30 11:59:28 +0200 (Fr, 30 Jul 2010) | 1 line

  #5727: Restore the ability to use readline when calling into pdb in doctests.
........
  r83272 | georg.brandl | 2010-07-30 12:29:19 +0200 (Fr, 30 Jul 2010) | 1 line

  #5294: Fix the behavior of pdb "continue" command when called in the top-level debugged frame.
........
  r83281 | georg.brandl | 2010-07-30 15:36:43 +0200 (Fr, 30 Jul 2010) | 1 line

  Add myself for pdb.
........
2010-08-01 19:33:15 +00:00
Georg Brandl 3e67c5c52e Revert r83267, as it breaks a few doctests and generally leads to ugly truncated output. 2010-07-30 14:14:42 +00:00
Georg Brandl f833a56fd2 #7539: use _saferepr() for printing exceptions from pdb. 2010-07-30 09:18:49 +00:00
Gregory P. Smith 860852fdf4 Revert r81012. buildbot problems and its questionable of me to even
add this to trunk while we're on the way to 2.7rc1.

When fixed this can go into py3k first.  Sorry.
2010-05-09 01:20:20 +00:00
Gregory P. Smith 56fe6569fd Fixes [issue7245] Better Ctrl-C support in pdb. 2010-05-08 23:38:49 +00:00
Georg Brandl 69dfe8d80e Make the pdb displayhook compatible with the standard displayhook: do not print Nones. Add a test for that. 2009-09-16 16:36:39 +00:00
Georg Brandl 5815220a68 Fix overlong lines. 2009-05-05 09:06:02 +00:00
Georg Brandl 4d4313d59d #5142: add module skipping feature to pdb. 2009-05-05 08:54:11 +00:00
Georg Brandl dd98e04c57 Actually the displayhook should print the repr. 2009-04-02 17:43:07 +00:00
Georg Brandl 569fc96f99 Fix test_doctest, missed two assignments to curframe. 2009-04-02 02:00:01 +00:00
Georg Brandl e361bcb43f Cache the f_locals dict of the current frame, since every access to frame.f_locals overrides its contents with the real locals which undoes modifications made by the debugging user. 2009-04-01 23:32:17 +00:00
Georg Brandl 58b8b95cdb In Pdb, stop assigning values to __builtin__._ which interferes with the one commonly installed by gettext. 2009-04-01 21:54:21 +00:00
Georg Brandl 00b6590821 Revert accidental checkin. 2009-04-01 21:06:30 +00:00
Georg Brandl 5942b91759 Add NEWS item. 2009-04-01 21:05:44 +00:00
Nick Coghlan a2053475bb Fix several issues relating to access to source code inside zipfiles. Initial work by Alexander Belopolsky. See Misc/NEWS in this checkin for details. 2008-12-14 10:54:50 +00:00
Benjamin Peterson c18574c98e fix #4150: pdb's up command didn't work for generators in post-mortem 2008-10-22 21:16:34 +00:00
Brett Cannon c6a30ecf7a Remove use of tuple unpacking and dict.has_key() so as to silence
SyntaxWarning as triggered by -3.
2008-08-01 01:36:47 +00:00
Brett Cannon 2ee0e8eaec Revert the renaming of repr to reprlib. 2008-05-23 05:03:59 +00:00
Alexandre Vassalotti 50a1acb2ab Changed references to the reprlib module to use its new name. 2008-05-16 06:58:49 +00:00
Benjamin Peterson 98353941ea Add the "until" command to pdb 2008-05-11 14:13:25 +00:00
Benjamin Peterson 13be2cf284 Added help options to PDB 2008-03-26 11:57:47 +00:00
Facundo Batista c54aec1fda Issue 1106316. post_mortem()'s parameter, traceback, is now
optional: it defaults to the traceback of the exception that is currently
being handled.
2008-03-08 16:50:27 +00:00
Amaury Forgeot d'Arc ff0f2670ff test_doctest fails since r59984.
Not sure if these are the correct values, but save_stdout has to be set before its usage...
2008-01-15 21:25:11 +00:00
Guido van Rossum cad3724352 Issue #1786 (by myself): pdb should use its own stdin/stdout around an
exec call and when creating a recursive instance.
2008-01-15 17:59:29 +00:00
Neal Norwitz 0d4c06e06e Whitespace normalization. Ugh, we really need to do this more often.
You might want to review this change as it's my first time.  Be gentle. :-)
2007-04-25 06:30:05 +00:00
Georg Brandl b6ae6aa8ac Patch #1429539: pdb now correctly initializes the __main__ module for
the debugged script, which means that imports from __main__ work
correctly now.
2007-03-13 21:58:44 +00:00
Georg Brandl 8e84c65660 Patch #1393667: pdb now has a "run" command which restarts the debugged
Python program, optionally with different arguments.
2007-03-13 21:08:15 +00:00
Collin Winter 2faa9e1466 Patch #1192590: Fix pdb's "ignore" and "condition" commands so they trap the IndexError caused by passing in an invalid breakpoint number.
Will backport.
2007-03-11 16:00:20 +00:00
Georg Brandl b27831887f Add missing "return" statements in exception handler. 2007-03-11 08:28:46 +00:00
Georg Brandl e498083b59 Bug #1627316: handle error in condition/ignore pdb commands more gracefully. 2007-01-22 21:23:41 +00:00
Andrew M. Kuchling e6728252a3 [Bug #1526834] Fix crash in pdb when you do 'b f(';
the function name was placed into a regex pattern and the unbalanced paren
caused re.compile() to report an error
2006-09-05 13:19:18 +00:00
Tim Peters daea035bac Whitespace normalization. 2006-07-27 15:11:00 +00:00
Andrew M. Kuchling 9aed98feb2 Reformat docstring; fix typo 2006-07-27 12:18:20 +00:00
Georg Brandl 195648000c Patch #721464: pdb.Pdb instances can now be given explicit stdin and
stdout arguments, making it possible to redirect input and output
for remote debugging.
2006-05-10 17:13:20 +00:00
Georg Brandl 23d9d45482 Bug #1472191: convert breakpoint indices to ints before comparing them to ints 2006-05-03 18:12:33 +00:00
Martin v. Löwis 1a00e1856e Reindent. 2006-04-17 19:18:18 +00:00
Martin v. Löwis f62eee1c2a Remove bogus character. 2006-04-17 17:37:09 +00:00
Martin v. Löwis bd30f52881 Patch #790710: Add breakpoint command lists in pdb. 2006-04-17 17:08:37 +00:00
Georg Brandl 6d2b346140 bug [ 1192315 ] 'clear -1' in pdb 2005-08-24 07:36:17 +00:00
Johannes Gijsbers 84a6c205e3 Bug #1055168: calling pdb.set_trace() calls Bdb.set_trace, which made
the debugger enter inside pdb.set_trace.

Patch #1061767: make pdb.set_trace enter enter at the stack frame
calling pdb.set_trace().
2004-11-07 11:35:30 +00:00
Raymond Hettinger 2ef7e6c8f2 SF bug #1052503: pdb runcall should accept keyword arguments 2004-10-24 00:32:24 +00:00
Tim Peters e718f615b8 Whitespace normalization. 2004-10-12 21:51:32 +00:00
Johannes Gijsbers 25b38c8969 Improvements when running pdb as a script.
Bug fixes:

* Use fresh copy of globals/locals so the script being debugged can't access
  the pdb namespace (e.g.: p line_prefix will no longer work).

* Remove pdb.py's path from sys.path. Having it in there is normally not a
  problem, but it could prove irritating when messing with PYTHONPATH or
  invoking pdb via /usr/bin/pdf.

* You can now set a breakpoint on the script being debugged, even if the script
  doesn't end with a '.py' extension. Also, setting breakpoints with absolute
  paths now works reliably.

Enhancements:

* Go directly to the first line of the script.

* Enter post-mortem debugging if the script being debugged doesn't catch an
  exception.

* Restart the script being debugged and preserve debugger state when the script
  being debugged exits.

Cleanup:

* Moved the __main__ method into a main() function.

* Kill the (undocumented, not in __all__) mainmodule/mainpyfile globals, add a
  mainpyfile attribute to pdb.

Thanks Ilya Sandler for the patch!
2004-10-12 18:12:09 +00:00
Johannes Gijsbers 4a9faa1ea0 Patch #1003640: replace checkline() function parsing with new breakpoint logic:
1) When a breakpoint is set via a function name:
- the breakpoint gets the lineno of the def statement
- a new funcname attribute is attached to the breakpoint

2) bdb.effective() calls new function checkfuncname() to handle:
- def statement is executed: don't break.
- a first executable line of a function with a breakpoint on the lineno of the
def statement is reached: break.

This fixes bugs 976878, 926369 and 875404. Thanks Ilya Sandler.
2004-08-30 13:29:44 +00:00
Johannes Gijsbers 34c4120731 bug #989672: pdb.doc and the help messages for the help_d and help_u methods
of the pdb.Pdb class gives have been corrected. d(own) goes to a newer frame,
u(p) to an older frame, not the other way around.
2004-08-14 15:19:28 +00:00
Walter Dörwald 70a6b49821 Replace backticks with repr() or "%r"
From SF patch #852334.
2004-02-12 17:35:32 +00:00
Tim Peters f545baa0cc Whitespace normalization. 2003-06-15 23:26:30 +00:00
Andrew M. Kuchling b1f8bab654 [Bug #741171] pdb crashes when enabling a non-existing breakpoint
Check the supplied breakpoint number more carefully.
(Incompatibility: before this patch, "enable -1" would enable
the last breakpoint on the list; now -1 is not a legal ID.  Not sure
anyone would ever use negative indices...)

2.2 bugfix candidate, assuming making -1 illegal isn't considered a problem.
2003-05-22 14:46:12 +00:00
Guido van Rossum ed538d8b39 Detabified.
Removed dead code.
2003-04-09 19:36:34 +00:00