Package tracking utility similar to Reo for pip/setuptools installs
Project description
Python Package Tracker
A lightweight pip/setuptools package tracking utility similar to Reo.
Features
- Zero runtime overhead for your application code
- Privacy-first metadata collection
- Non-blocking with strict timeout protection
- Retry logic with exponential backoff
- Configurable via environment variables and
pyproject.toml
Important pip/setuptools Note
Unlike npm postinstall, Python packaging does not guarantee dependency install hooks in all pip flows (especially wheel installs).
This implementation provides:
- A best-effort
setuptoolsinstall hook insetup.py - A manual CLI entry point:
package-tracker
Installation
Inside a package that uses setuptools:
pip install reo-package-tracker
Or from this directory:
cd python
pip install .
Configuration
Environment Variables
PACKAGE_TRACKER_ANALYTICS=false- Disable trackingPACKAGE_TRACKER_ANALYTICS=true- Enable tracking for opt-in modePACKAGE_TRACKER_VERBOSE=true- Enable verbose loggingPACKAGE_TRACKER_ENDPOINT=https://telemetry.reo.dev/data- Custom endpoint
pyproject.toml settings
Add this to your package:
[tool.reoSettings]
defaultOptIn = false
endpoint = "https://telemetry.reo.dev/data"
Settings:
defaultOptIn(boolean, default:true)true: opt-out mode (tracking enabled unless explicitly disabled)false: opt-in mode (tracking disabled unless explicitly enabled)
endpoint(string, optional)- Tracking endpoint override
Usage
Manual run
PACKAGE_TRACKER_VERBOSE=true package-tracker
Module run
python -m package_tracker
Payload Shape
The payload includes:
package: package name and versionsystem: platform, architecture, Python version, OS infoinstallation: timestamp, cwd, install contextmetadata: git user/domain, CI context, pip user (if available)
Privacy & Opt-Out
Collected:
- Package metadata
- System/platform metadata
- Installation context
- Email domain only (never full email)
Not collected:
- Source code contents
- Passwords or secrets
- Full email addresses
Users can always disable telemetry:
export PACKAGE_TRACKER_ANALYTICS=false
pip install your-package
Development
See python/TESTING.md for test flows and verification commands.
License
MIT
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 reo_package_tracker-1.0.0.tar.gz.
File metadata
- Download URL: reo_package_tracker-1.0.0.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57aeb800ed66e53ec9ec8dffdbe317bbe0cbdf63d8ce945d221cd935e3e1b775
|
|
| MD5 |
95623ba4a1c8f2aa9deb41a4042344f4
|
|
| BLAKE2b-256 |
b9c9ec4b05c17138beee2c1a5d68ddbf281e0a08f30fe47154e94b65dd284c1d
|
File details
Details for the file reo_package_tracker-1.0.0-py3-none-any.whl.
File metadata
- Download URL: reo_package_tracker-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e4644a9867ec7710eebfb523dedd8378b7f8c68d05e6c0bbbedf38f0f276452
|
|
| MD5 |
4c3940ddcc100ff9530497ddabda7290
|
|
| BLAKE2b-256 |
c5cd463fc6b70353bb7c74ad19dc564ca44999b41ee86c89327a1c7090c0eb6c
|