Changing the X server development process for fun and profit.
Channel: Linux.conf.au 2011 -- Brisbane, Australia
Date: 2014-11-23

Presenter(s): Keith Packard
URL: http://2011.linux.conf.au/programme/schedule/view_talk/68

"How did you become king then?"

"The lady of the lake, clad in the purest shimmering shalite, held
aloft excalibur..."

The X server development process has gone through a transition from a
an open git repository where anyone with commit access was free to
merge new code onto the master branch into a tightly restricted
process where but a single individual was supposed to commit to
master, and only for patches deemed to have sufficient peer
review. This was precipitated by substantial troubles in getting
stable releases released on-time. At the time, concerns were raised
about whether this constriction of development to a single point of
control.

This single point of control, the 'release manager' is deputized by
the community to manage the 'master' branch in the central X.org X
server repository, which is significantly different from the Linux
kernel where Linus' tree is nominally one among many peer
repositories. There is a loosely defined process for integrating
patches into the repository which requires publication of patches and
peer review before they are integrated. By semi-formalizing the
process, the actual authority of the release manager is fairly
limited, and yet this single point of control ensures that the master
branch is reliably buildable (at least on the release manager's
machine), and in generally far better shape than under the previous
process.

This talk will present the changes in various metrics of project
activity, including mailing list traffic, release schedule adherance
and bug counts across this process transition, demonstrating the costs
and benefits of the two management styles.


http://2011.linux.conf.au/ - http://www.linux.org.au
CC BY-SA - http://creativecommons.org/licenses/by-sa/4.0/legalcode.txt