Created by: gleb-sevruk
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.
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.
--
Anyone who agrees with this pull request could submit an Approve review to it.