Python profiling library with block-level profiling and multi-track organization
Project description
Stichotrope
⚠️ Development Status: This repository is currently in the setup phase. The library is not yet available for use.
A Python profiling library for deterministic function and block-level profiling.
Overview
Stichotrope aims to provide a native Python equivalent of CppProfiler, offering:
- Block-level profiling: Fills the gap between function-level and line-level profiling
- Multi-track organization: Logical grouping of profiling data
- Explicit instrumentation: Decorators and context managers for precise control
- Deterministic profiling: Predictable, reproducible performance measurements
Project Status
🚧 In Development - Phase 1: Infrastructure Foundation
This project is actively being developed following a structured roadmap toward v1.0.0. Current focus:
- ✅ Testing framework and performance baseline
- ✅ CI/CD pipeline
- 🔄 PyPI packaging setup
- ⏳ Documentation infrastructure
- ⏳ Thread-safe architecture
- ⏳ Configuration system
- ⏳ Production features
Planned Features
- Thread-safe profiling for multi-threaded applications
- TOML-based configuration system
- CSV/JSON export (CppProfiler-compatible)
- Statistical benchmarking with confidence intervals
- Cross-platform support (Windows, Linux, macOS)
- Python 3.9-3.12 support
Installation
Not yet available on PyPI
Once released, installation will be:
pip install stichotrope
Quick Start
Coming soon - The library is not yet ready for use.
Example usage (planned):
from stichotrope import Profiler
profiler = Profiler("MyApp")
@profiler.track(0, "process_data")
def process_data(data):
return transform(data)
def complex_function():
with profiler.block(1, "database_query"):
result = query_database()
return result
Documentation
Documentation will be available at Read the Docs once the project reaches a stable release.
Development
This project follows a milestone-based development workflow with strict quality gates. See the roadmap for detailed planning.
Contributing
Contributions are welcome once the project reaches v1.0.0. For now, development is focused on establishing the core infrastructure and architecture.
License
This project is licensed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later).
Links
- Repository: github.com/LittleCoinCoin/stichotrope
- Issues: github.com/LittleCoinCoin/stichotrope/issues
- Roadmap: Product Roadmap
Target Release: v1.0.0 (7-9 weeks from project start)
Current Version: 0.0.0 (development)
Project details
Release history Release notifications | RSS feed
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 stichotrope-0.1.0.dev1.tar.gz.
File metadata
- Download URL: stichotrope-0.1.0.dev1.tar.gz
- Upload date:
- Size: 24.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b72c91cff19acbf1010591f4d717463a03fd748432533320accdd5db83326e8d
|
|
| MD5 |
7589e60723ce3525509dc69b60756bb1
|
|
| BLAKE2b-256 |
88896515a81d602c363b2360a85cf00732d681fdc4ae40c91e6ca6b5db7df42f
|
Provenance
The following attestation bundles were made for stichotrope-0.1.0.dev1.tar.gz:
Publisher:
release.yml on LittleCoinCoin/stichotrope
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
stichotrope-0.1.0.dev1.tar.gz -
Subject digest:
b72c91cff19acbf1010591f4d717463a03fd748432533320accdd5db83326e8d - Sigstore transparency entry: 665231210
- Sigstore integration time:
-
Permalink:
LittleCoinCoin/stichotrope@d46796111fe04447ae908179770699b5867e2f29 -
Branch / Tag:
refs/heads/dev - Owner: https://github.com/LittleCoinCoin
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@d46796111fe04447ae908179770699b5867e2f29 -
Trigger Event:
push
-
Statement type:
File details
Details for the file stichotrope-0.1.0.dev1-py3-none-any.whl.
File metadata
- Download URL: stichotrope-0.1.0.dev1-py3-none-any.whl
- Upload date:
- Size: 23.1 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 |
da3decdcfe9348ab60fd5dfc9b9b20c83edd665310d03540f17d7f927f6ad0a9
|
|
| MD5 |
43cca762d747dcae6531709ffe991109
|
|
| BLAKE2b-256 |
b73ab7dbc5bbfabf07c1efaded4b523b11b3accbd6dc3ed130c121f0280af688
|
Provenance
The following attestation bundles were made for stichotrope-0.1.0.dev1-py3-none-any.whl:
Publisher:
release.yml on LittleCoinCoin/stichotrope
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
stichotrope-0.1.0.dev1-py3-none-any.whl -
Subject digest:
da3decdcfe9348ab60fd5dfc9b9b20c83edd665310d03540f17d7f927f6ad0a9 - Sigstore transparency entry: 665231245
- Sigstore integration time:
-
Permalink:
LittleCoinCoin/stichotrope@d46796111fe04447ae908179770699b5867e2f29 -
Branch / Tag:
refs/heads/dev - Owner: https://github.com/LittleCoinCoin
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@d46796111fe04447ae908179770699b5867e2f29 -
Trigger Event:
push
-
Statement type: