Patchwork: pursuing productive project participation
|Time:||10:30 - 11:15|
|Day:||Friday 22 January 2010|
|Location:||Renouf 2 (MFC)|
Most open-source software projects communicate via email and accept contributions over a mailing list. Hopefully, the project's maintainers will keep track of all the patches that appear on the list, review them, and apply the ones that meet the project's standards.
However, maintainers are usually stretched for time, so sometimes patches get missed or dropped, or contributors don't see feedback on their patch. This creates more work for the community, in following up on work that should only have to be done once.
Patchwork is an automated patch-tracking system for community projects, designed to make life easier for the maintainers and contributors. It 'catches' patches that are sent to the list, and allows the community to keep track of the progress of each contribution through a web interface.
This presentation gives an overview of patchwork, the principles of patchwork's design, and how to integrate it into your project's workflow. I'll also cover the more advanced and less well-known features of patchwork, as well as some tricks that project maintainers have been using to better interact with patchwork.
Patchwork is currently being used for a number of open source projects, including:
- The Linux Kernel Mailing List (LKML)
- Linux PowerPC architecture
- Linux SPARC architecture
- Linux networking development
- Linux ext4 filesystem development
- The Kernel Virtual Machine (KVM)
Across the two major public patchwork installs (patchwork.ozlabs.org and patchwork.kernel.org), over 50,000 patches are currently being tracked in patchwork.
Jeremy Kerr works for Canonical, as a Linux kernel developer, and is the maintainer of the Cell Broadband Engine's SPU Filesystem module.
Jeremy has contributed to a range of other Open Source projects as well, such as petitboot (a GUI bootloader), K42 (a research operating system), patchwork (a web-based patch-tracking system) and nfsim (the netfilter simulation environment).
Jeremy's interests lie in operating system kernels, the Cell/B.E. & PowerPC architectures, and networking.