A minimal Perfetto trace generation library for retrocomputer emulators
Project description
retrobus-perfetto Python Implementation
This directory contains the Python implementation of retrobus-perfetto.
Installation
From the py/ directory:
# For development
pip install -e ".[dev]"
# For regular use
pip install .
# From PyPI (once published)
pip install retrobus-perfetto
Development
Running Tests
pytest
Running Linter
ruff check .
Running Type Checker
mypy retrobus_perfetto --config-file mypy.ini
Building Package
python -m build
Usage
Basic Usage
from retrobus_perfetto import PerfettoTraceBuilder
# Create a trace
builder = PerfettoTraceBuilder("MyEmulator")
# ... add events ...
trace_data = builder.build()
Direct Proto Access
The package also provides direct access to the generated protobuf modules:
# Import the proto module
from retrobus_perfetto.proto import perfetto_pb2
# Create proto objects directly
trace = perfetto_pb2.Trace()
# ... manipulate trace ...
Project Structure
retrobus_perfetto/- Main package source codebuilder.py- Main trace builder classannotations.py- Annotation helper classesproto/- Generated protobuf files (created during build)perfetto_pb2.py- Generated Perfetto protobuf definitions
tests/- Unit testsexample.py- Example usagepyproject.toml- Package configuration
Project details
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 retrobus_perfetto-0.3.1.tar.gz.
File metadata
- Download URL: retrobus_perfetto-0.3.1.tar.gz
- Upload date:
- Size: 20.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a9e45e17819fc57d5da974ecd256ea791d282ad091424c984f6693b89720136
|
|
| MD5 |
a3ddebaf98a3d9772b426c0567ec486c
|
|
| BLAKE2b-256 |
b809f820004b17f147bcfa397647f4fadc0ffb09004faaa584a93b750213275c
|
Provenance
The following attestation bundles were made for retrobus_perfetto-0.3.1.tar.gz:
Publisher:
publish.yml on mblsha/retrobus-perfetto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
retrobus_perfetto-0.3.1.tar.gz -
Subject digest:
6a9e45e17819fc57d5da974ecd256ea791d282ad091424c984f6693b89720136 - Sigstore transparency entry: 789329115
- Sigstore integration time:
-
Permalink:
mblsha/retrobus-perfetto@5443dea07fa45650aa69f3f8c69167adbcf84044 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mblsha
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5443dea07fa45650aa69f3f8c69167adbcf84044 -
Trigger Event:
release
-
Statement type:
File details
Details for the file retrobus_perfetto-0.3.1-py3-none-any.whl.
File metadata
- Download URL: retrobus_perfetto-0.3.1-py3-none-any.whl
- Upload date:
- Size: 17.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cf070010838c9f4f0daa014f20e966f46b588d6ef705f8e62f2054754288862
|
|
| MD5 |
8d520b98c7b411b8e77eec1a639f2271
|
|
| BLAKE2b-256 |
2d509804a1c5b56e9b271ea50d0e6e3c7d0ebb5e3ddcdef669230f02ace4cdb1
|
Provenance
The following attestation bundles were made for retrobus_perfetto-0.3.1-py3-none-any.whl:
Publisher:
publish.yml on mblsha/retrobus-perfetto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
retrobus_perfetto-0.3.1-py3-none-any.whl -
Subject digest:
2cf070010838c9f4f0daa014f20e966f46b588d6ef705f8e62f2054754288862 - Sigstore transparency entry: 789329120
- Sigstore integration time:
-
Permalink:
mblsha/retrobus-perfetto@5443dea07fa45650aa69f3f8c69167adbcf84044 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mblsha
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5443dea07fa45650aa69f3f8c69167adbcf84044 -
Trigger Event:
release
-
Statement type: