Contributing¶
Thank you for considering contributing to perfetto-cli!
Development Setup¶
# Clone the repo
git clone https://github.com/SYKernel/perfetto-cli.git
cd perfetto-cli
# Create a virtual environment
python -m venv .venv
source .venv/bin/activate
# Install in development mode with dev dependencies
pip install -e ".[dev]"
Code Style¶
This project uses ruff for linting and formatting.
# Check for lint errors
ruff check .
# Auto-fix lint errors
ruff check . --fix
# Check formatting
ruff format --check .
# Auto-format
ruff format .
Running Tests¶
# Run all tests
pytest
# Run with coverage
pytest --cov=src/perfetto_cli
# Run specific test file
pytest tests/test_sql_helpers.py
# Verbose mode
pytest -v
Pull Request Process¶
- Fork the repository and create your branch from
main - Make your changes — keep commits focused and atomic
- Add tests for new functionality
- Ensure all tests pass:
pytest - Ensure linting passes:
ruff check . - Submit a pull request with a clear description of the changes
Reporting Issues¶
- Use the Bug Report template for bugs
- Use the Feature Request template for new ideas
Documentation¶
To work on documentation locally: