Skip to main content

Create, check and email patch series, with Patchwork integration

Project description

Test status PyPI version Documentation status Supported Python versions

Patman is a command-line tool that automates the boring parts of preparing and sending patches by email, in the style used by the U-Boot and Linux kernel projects. It:

  • creates patches directly from a git branch;

  • cleans them up by removing unwanted tags and inserting a cover letter;

  • runs checkpatch.pl and the project’s checks before anything is sent;

  • looks up the maintainers to Cc, and emails the series out;

  • tracks series in a local database and integrates with Patchwork to gather review tags and follow up on comments.

Installation

Install the latest release from PyPI:

pip install patch-manager

Optional features are available as extras:

pip install patch-manager[gmail]    # send/fetch review mail via Gmail
pip install patch-manager[review]   # AI-assisted patch review
pip install patch-manager[all]      # everything

The patman command is then on your path.

Quick start

From a git branch containing the commits you want to send:

patman              # create, check and email the series
patman -n           # dry run: create and check, but do not send

See patman --full-help for the complete manual, or the documentation linked below.

Documentation

Full documentation is hosted on Read the Docs:

https://patman.readthedocs.io/

Development

Run the test suite from a checkout:

pip install -r requirements.txt
pip install -e .
patman test

The suite is self-contained: a pinned checkpatch.pl and its helper files live in scripts/, and the bundled u_boot_pylib package is vendored in the tree, so no surrounding U-Boot source is required.

Build the documentation locally with:

pip install -r doc/requirements.txt
make -C doc html

The rendered HTML is written to doc/_build/html.

License

GPL-2.0-or-later. See the LICENSE file for the full text.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

patch_manager-0.0.10.tar.gz (234.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

patch_manager-0.0.10-py3-none-any.whl (254.6 kB view details)

Uploaded Python 3

File details

Details for the file patch_manager-0.0.10.tar.gz.

File metadata

  • Download URL: patch_manager-0.0.10.tar.gz
  • Upload date:
  • Size: 234.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for patch_manager-0.0.10.tar.gz
Algorithm Hash digest
SHA256 3bcec4a8db78d283ff21d9c73d018b3fa5085f3755a9ebc94634285405e31f5d
MD5 d63da4700f76d08b6e77b48679e832ef
BLAKE2b-256 b154232735a4566f3e75ca4ba71a81d6fa829acc9174f03903ca6df0175da54a

See more details on using hashes here.

Provenance

The following attestation bundles were made for patch_manager-0.0.10.tar.gz:

Publisher: release.yml on nxtboot/patman

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file patch_manager-0.0.10-py3-none-any.whl.

File metadata

  • Download URL: patch_manager-0.0.10-py3-none-any.whl
  • Upload date:
  • Size: 254.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for patch_manager-0.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 6da660a5f78e826e3b386207a79b00f37639ad6448ce0191bb682fcc3335000c
MD5 ce53c6dc030fe14aca31d4b5a6c12dbb
BLAKE2b-256 c9fd00e07d198a22cd8851fed909b62fabbc6f6767963c4ff34e983f480cdcaf

See more details on using hashes here.

Provenance

The following attestation bundles were made for patch_manager-0.0.10-py3-none-any.whl:

Publisher: release.yml on nxtboot/patman

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page