Skip to main content

Slightly extended and sanitized Python debugger -- Debugger with Zope support

Project description

Pdb, the Python debugger, has some limitations. This extension tries to get rid of some of them.

Things done

  • setting breakpoints

    Allow filename to specify a module as well.

    Allow setting breakpoints from outside via do_break. This is useful for debug setups.

  • exception display

    We store the exception in the Pdb instance. A new command exception (abbreviated e) calls print_exception on the stored exception value.

  • where command improvements

    • each frame identifies its level (the top frame is at level 0, the one below it at level 1, etc…)

    • the current frame is marked as such

    • where gets optional arguments number and end

      number controls how many frames are displayed (default: maxint), end at what level the display ends, negative numbers count from the bottom (default: -1, i.e. the bottom frame).

  • new command frame level (abbr: f)

    switch to call frame at level

    without argument, provide info about current frame

  • allow to customize the display of the where command and of tracebacks e.g. to display additional debugging information as provided by Zope (for example).

    This can be done by customizing getAdditionalFrameInfo.

Things not yet done

  • Returning from debug occasionally returns to stop rather than where we entered the recursive debugger. This is often nasty (and should be fixed)

zpdb

The module zpdb contains a debugger targeting Zope development. It displays additional debug information often used for Zope development (–> __traceback_info__, __traceback_supplement__). It depends on the package zExceptions.

Version history

1.4

  • new command ti[nfo] command for zpdb to control the display of __traceback_info__ and __traceback_supplement__ information

1.3

  • Python 3 compatibility

1.2

  • fixed: do_break sometimes failed to resolve functions correctly.

1.1

  • improved handling of errors in command argument parsing

  • Python 2.6 compatibility

1.0.4

  • work around Python monkey patching set_trace inside a doctest.

1.0.3

  • fix debug to use the current Pdb class, not Python’s.

1.0.2

  • let external calls to do_break work even after the first run.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dm.pdb-1.4.1.tar.gz (7.3 kB view details)

Uploaded Source

File details

Details for the file dm.pdb-1.4.1.tar.gz.

File metadata

  • Download URL: dm.pdb-1.4.1.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/2.7

File hashes

Hashes for dm.pdb-1.4.1.tar.gz
Algorithm Hash digest
SHA256 d1c72fe3e1e5365593f03829e855799e851c41a69f03a4dc75b5b8821089c509
MD5 85e481303b739b611bc9b76c6b7a4510
BLAKE2b-256 264d2da29fc9bc25656fccba0ed0ddef71318b62c897e0704db1d745999e27f5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page