From: Mads Ynddal <m.ynddal@samsung.com>
I wanted to use simpletrace.py for an internal project, so I tried to update
and polish the code. Some of the commits resolve specific issues, while some
are more subjective.
I've tried to divide it into commits so we can discuss the
individual changes, and I'm ready to pull things out, if it isn't needed.
v3:
* Added __all__ with public interface
* Added comment about magic numbers and structs from Stefan Hajnoczi
* Reintroduced old interface for process, run and Analyzer
* Added comment about Python 3.6 in ref. to getfullargspec
* process now accepts events as file-like objects
* Updated context-manager code for Analyzer
* Moved logic of event processing to Analyzer class
* Moved logic of process into _process function
* Added new Analyzer2 class with kwarg event-processing
* Reverted changes to process-call in scripts/analyse-locks-simpletrace.py
v2:
* Added myself as maintainer of simpletrace.py
* Improve docstring on `process`
* Changed call to `process` in scripts/analyse-locks-simpletrace.py to reflect new argument types
* Replaced `iteritems()` with `items()` in scripts/analyse-locks-simpletrace.py to support Python 3
Mads Ynddal (14):
simpletrace: add __all__ to define public interface
simpletrace: annotate magic constants from QEMU code
simpletrace: improve parsing of sys.argv; fix files never closed.
simpletrace: changed naming of edict and idtoname to improve
readability
simpletrace: update code for Python 3.11
simpletrace: improved error handling on struct unpack
simpletrace: define exception and add handling
simpletrace: made Analyzer into context-manager
simpletrace: refactor to separate responsibilities
simpletrace: move logic of process into internal function
simpletrace: move event processing to Analyzer class
simpletrace: added simplified Analyzer2 class
MAINTAINERS: add maintainer of simpletrace.py
scripts/analyse-locks-simpletrace.py: changed iteritems() to items()
MAINTAINERS | 6 +
scripts/analyse-locks-simpletrace.py | 2 +-
scripts/simpletrace.py | 358 ++++++++++++++++++---------
3 files changed, 244 insertions(+), 122 deletions(-)
--
2.38.1