Patchwork (software)

Patchwork is a free, web-based patch tracking system designed to facilitate the contribution and management of contributions to an open-source project. It is intended to make the patch management process easier for both the project's contributors and maintainers.

Patches that have been sent to a mailing list are 'caught' by the system, and appear on a web page. Any comments posted that reference the patch are appended to the patch page too. The project's maintainer can then scan through the list of patches, marking each with a certain state, such as Accepted, Rejected or Under Review. Old patches can be sent to the archive or deleted.

Currently, Patchwork is being used for a number of open-source projects, mostly subsystems of the Linux kernel and FFmpeg. Although Patchwork has been developed with the kernel workflow in mind, the aim is to be flexible enough to suit the majority of community projects.

History
Patchwork was developed by Jeremy Kerr for use with the Linux PPC64 mailing list. The ozlabs.org deployment was later expanded to cover additional projects and functionality.

Design
Originally written in Perl, it is now written in Python, using the Django web framework. Recent versions of Patchwork use Bootstrap for the front-end UI.