Skip to content

zen-xu/plan-d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

63 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

plan-d

Ruff PyPI - Version PyPI - Python Version GitHub License

Python Language's Another Nonpareil remote Debugger

Table of Contents

Introduction

plan-d is a remote debugger for Python, designed to provide an unparalleled debugging experience. It allows developers to debug Python applications running on remote servers seamlessly.

Features

  • โœจ Provide a more pretty printing using rich
  • ๐Ÿ•น๏ธ Remote debugging capabilities
  • โŒจ๏ธ Code autocompletion
  • ๐Ÿ”ด Breakpoint management
  • ๐Ÿ”Ž Variable inspection
  • ๐Ÿ”„ Terminal size auto-adjustment
  • ๐Ÿช„ Support for IPython magic commands
  • ๐Ÿ Support for multiple Python versions

Installation

To install plan-d, you can use pip:

pip install plan-d

Gallery

On the server side, you can set a breakpoint with plan_d.set_trace(). When the server reaches the breakpoint, it will print the connection command.

syntax highlight

support multiline

Debugger commands

(h)elp

(v)ars

vt|varstree

(i)nspect

bt

Print object info

IPython magic command

magic command

time

Auto launch debugger when exception

plan-d supports automatically launching the debugger when an exception occurs.

You can enclose code with the with statement to launch plan-d if an exception is raised:

import plan_d

with plan_d.lpe():
    [...]

Or you can use lpe as a function decorator to launch plan-d if an exception is raised:

import plan_d

@plan_d.lpe()
def main():
    [...]

When the client connects, the stack information will be displayed.

FAQ

How to exit the debugger?

Exit by typing the command exit or pressing ctrl+d.

About

Python Language's Another Nonpareil remote Debugger

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

 
 
 

Contributors