Skip to main content

Time-Travel Debugger 🚀

A Python library that allows step-backward debugging, making debugging more visual and interactive. This tool helps developers inspect past states of their program without restarting execution, enabling efficient debugging.

📌 How This Idea Came to Mind

While solving problems on LeetCode, I often performed dry runs to manually track variable changes. I realized that a tool that could rewind execution steps and visually display variable changes would make debugging much easier. This led me to create Time-Travel Debugger—a library that allows developers to step backward and forward in execution history seamlessly.

✨ Features

  • Step forward and backward through execution history.
  • View variable changes at each step.
  • Set breakpoints for controlled debugging.
  • Interactive CLI mode with visual debugging powered by rich.

🔧 Installation

pip install time-travel-debugger

🚀 Usage

from time_travel_debugger import TimeTravelDebugger

def sample_function():
    a = 10
    b = a + 5
    c = b * 2
    d = c - 3
    print("Final result:", d)

# Initialize debugger
debugger = TimeTravelDebugger()

debugger.start_debugging(sample_function)

debugger.debugger_cli()

🛠️ Debugging Commands

Command Description
f Step forward to the next execution state
b Step backward to the previous state
q Quit the debugger

📜 License

This project is licensed under the MIT License.

Metadata

Release files for time-travel-debugger 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for time-travel-debugger 0.1.1
File Size Uploaded
time-travel-debugger-0.1.1.tar.gz 3.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for time-travel-debugger 0.1.1
File Interpreter ABI Platform
time_travel_debugger-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 8.3 kB

Release files / time-travel-debugger-0.1.1.tar.gz

Download URL time-travel-debugger-0.1.1.tar.gz
Size 3.9 kB
Tags Source
SHA-256 checksum
How to use checksums
bfd12836ac488b2cda48248af589b2fe8bfae3edb80d1cf647426f9729aec7e6
BLAKE2b-256 checksum
How to use checksums
13ee03966d4479ff48135a6e383de97a6db047c3c4df5a1a37e73c207fd682e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.9

Release files / time_travel_debugger-0.1.1-py3-none-any.whl

Download URL time_travel_debugger-0.1.1-py3-none-any.whl
Size 4.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
713888b34b6e7a8b592d7b074843cd87c0d4292ec0b0fe1cca0425b818bcf330
BLAKE2b-256 checksum
How to use checksums
4df91a900ad5a5c7740b50798bf8de23d33a2771330fda167b7352fc6a8b24c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page