This project uses uv for Python package management. uv provides fast dependency resolution and virtual environment management.
-
Install uv:
curl -LsSf https://astral.sh/uv/install.sh | sh -
Sync dependencies:
uv sync
-
Run commands with uv:
uv run pytest uv run python -m build --wheel
For automatic environment activation, install direnv and run:
direnv allowThis will automatically:
- Activate the uv environment when entering the directory
- Add the Python virtual environment to your PATH
- Sync dependencies if needed
After setup, you can run Python commands directly without uv run:
pytest
python -c "import procstar"This project uses pre-commit hooks to automatically format and lint code before commits. The hooks include:
ruff format- Format Python coderuff check- Lint Python code with auto-fixescargo fmt- Format Rust codecargo clippy- Lint Rust code
Pre-commit is already included as a dev dependency. To install the hooks:
uv run pre-commit installTo run all hooks on all files:
uv run pre-commit run --all-filesThe hooks will automatically run before each commit and may modify files to fix formatting or linting issues.
$ uv run python -m build --wheel
$ twine upload dist/procstar-...
$ ./tools/rhel8/build.sh
$ ls -l target/rhel8/release/procstar