Skip to main content

Create, check and email patch series, with Patchwork integration

Project description

Patman

Patman patch manager

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.11.tar.gz (234.8 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.11-py3-none-any.whl (255.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: patch_manager-0.0.11.tar.gz
  • Upload date:
  • Size: 234.8 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.11.tar.gz
Algorithm Hash digest
SHA256 4aeaf80a0f8b8f5791eee047bb8cb986c5334459f3a1e612a5a1bc0401e06d1c
MD5 b53c7a0d14813a47f6821e1eab879f7f
BLAKE2b-256 313049255624675f5d9c74b3e74b6ddc3dea6ad19e9db757a77a3536bd739f42

See more details on using hashes here.

Provenance

The following attestation bundles were made for patch_manager-0.0.11.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.11-py3-none-any.whl.

File metadata

  • Download URL: patch_manager-0.0.11-py3-none-any.whl
  • Upload date:
  • Size: 255.1 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.11-py3-none-any.whl
Algorithm Hash digest
SHA256 8c276c7885f6946d5c37c775f8e2f3972972ac66becf70eb545e9fa1263ac913
MD5 deac95133bd16b7ba5896e23513d7c97
BLAKE2b-256 611ce2d85f87d36c056314db314a25f10e6543a7b39c7b9f8794a35f88c8f2bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for patch_manager-0.0.11-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