Contributing

We welcome contributions to Korgalore! This document outlines how to contribute to the project.

Getting Started

Development Setup

  1. Clone the repository:

    git clone https://git.kernel.org/pub/scm/utils/korgalore/korgalore.git
    cd korgalore
    
  2. Install in development mode:

    pip install -e ".[dev]"
    
  3. Verify the installation:

    kgl --version
    pytest
    

Code Style

Python Code

  • Follow PEP 8 style guide

  • Use type hints for all function signatures

  • Maximum line length: 100 characters

  • Use meaningful variable and function names

Type Checking

Korgalore uses mypy for static type checking:

mypy src/korgalore/

All code should pass mypy strict mode checks.

Testing

Running Tests

Tests are lacking, but the scaffolding is there to be run with pytest:

pytest

Run with coverage:

pytest --cov=korgalore

Submitting Changes

Email Workflow

Korgalore uses an email-based workflow. Send patches to:

Preparing Patches

Save yourself a lot of trouble and use b4.

Developer Certificate of Origin

Korgalore uses the Developer Certificate of Origin (DCO) instead of a Contributor License Agreement. By adding a Signed-off-by line to your commits, you certify that you have the right to submit the code and agree to the DCO.

See the DCO file in the repository for full text.

Communication

Mailing List

All development discussion happens on the mailing list: