Sitelet https://web.archive.org/web/20210204235147/https://github.com/vinta/awesome-python/pull/1571
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added pytrace - Time-Travel Debugger #1571

Open
wants to merge 1 commit into
base: master
from

Conversation

@gleb-sevruk
Copy link

@gleb-sevruk gleb-sevruk commented Jul 9, 2020 •

What is this Python project?

PyTrace is a Record and Replay debugging suite.

It records code execution and variable values at any point of execution. This allows alternative debugging experience, with the ability to step back in the code.

PyTrace UI

What's the difference between this Python project and similar ones?

Usually, profilers only show how long the method run was, without the ability to see actual state of execution.

Also, when debugging unknown or complex code, it is hard to understand the sequence of events and state of variables in the outer scope.

If by some mistake you miss step into some function, you will need to run debugging session again. Using pytrace will allow you to scroll back in time and repeat debugging steps without the need to restart entire thing again.

This tool greatly assists me in regular debugging as it is possible to step back and navigate to the interesting functions via call graph.

As a side effect, graph provides hints regarding the performance implication of each method executed.

Call graph is also using color coding, so each time you record session, files and methods will stay the same color.

Interactive Demo

--

Anyone who agrees with this pull request could submit an Approve review to it.

@53jk1
53jk1 approved these changes Oct 22, 2020
@dsuch
Copy link
Contributor

@dsuch dsuch commented Nov 13, 2020

@gleb-sevruk - I upvoted your submission but I have also noticed that the PR does not apply cleanly anymore. Just letting you know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants