vardbg
A simple Python debugger and profiler that generates animated visualizations of program flow.
Python 3.6 or newer is required due to the use of f-strings.
Features
- Tracking the history of each variable and its contents
- Tracking elements within containers (lists, sets, dicts, etc.)
- Profiling the execution of each line
- Summarizing all variables and execution times after execution
- Passing arguments to debugged programs
- Exporting execution history in JSON format and replaying (including program output)
- Creating videos that show program flow, execution times, variables, and output
- Writing videos in MP4 and GIF formats
Installation
The latest tagged version can be obtained from PyPI:
pip install vardbg
Usage
All of the program's options are documented in the usage help:
$ vardbg --help
usage: vardbg [-h] [-f [FILE]] [-n [FUNCTION]] [-o [OUTPUT_FILE]] [-v [PATH]] [-c [CONFIG]]
[-a [ARGS [ARGS ...]]] [-p] [-P]
A simple debugger that traces local variable changes, lines, and times.
optional arguments:
-h, --help show this help message and exit
-f [FILE], --file [FILE]
Python file to debug, or JSON result file to read
-n [FUNCTION], --function [FUNCTION]
function to run from the given file (if applicable)
-o [OUTPUT_FILE], --output-file [OUTPUT_FILE]
path to write JSON output file to, default debug_results.json (will be truncated if it
already exists and created otherwise)
-v [PATH], --video [PATH]
path to write a video representation of the program execution to (MP4 and GIF formats
are supported, depending on file extension)
-c [CONFIG], --video-config [CONFIG]
path to the TOML config for the video output format, default video.toml
-a [ARGS [ARGS ...]], --args [ARGS [ARGS ...]]
list of arguments to pass to the running program
-p, --absolute-paths use absolute paths instead of relative ones
-P, --disable-live-profiler
disable live profiler output during execution
Comments
Special comments can be added to lines of code that define variables to control how vardbg handles said variable:
# vardbg: ignore— do not display this variable or track its values
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vardbg-0.10.1.tar.gz.
File metadata
- Download URL: vardbg-0.10.1.tar.gz
- Upload date:
- Size: 20.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
poetry/1.0.2 CPython/3.8.1 Linux/5.4.11-arch1-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
130a2dd0db327bb16d90d9cd2dc0b1f6c424c8bc51de124f48e6a3389b3b5aef
|
|
| MD5 |
549eeb77d0a5d44141b01d309bd3aacc
|
|
| BLAKE2b-256 |
dbcc95fbe8aceefaf8be4f0c73999ec48069c4526fdc80f32ce2c958888d956c
|
File details
Details for the file vardbg-0.10.1-py3-none-any.whl.
File metadata
- Download URL: vardbg-0.10.1-py3-none-any.whl
- Upload date:
- Size: 25.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
poetry/1.0.2 CPython/3.8.1 Linux/5.4.11-arch1-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a5374520a66bf71e815d442d4105555be40b0cbc5366a7e386b319617862529e
|
|
| MD5 |
69e004122bcd5e06e90cc1b8ff7f8fcb
|
|
| BLAKE2b-256 |
1e35f080396a4aa7398ef128622c03766d62a98f1baab7c1d5cf591d6ff0f439
|