Moving Away From CVS: A Vote

Max Kanat-Alexander mkanat at
Fri Sep 4 22:28:25 UTC 2009

	Okay, we've had this discussion before, but this time, we have to 
actually do it. We've been on CVS for too long--we may be the only 
remaining major Mozilla project still using CVS for primary development. 
We're certainly the only major open source project that I know of and 
interact with regularly that still uses CVS.

	The only reason that we haven't moved yet is that we have a conflict:

	* Bzr is known by the Bugzilla developers and is technically superior 
to Hg in almost every way except scalability (and even that may be fixed 
as of bzr 1.16).

	* Hg is supported by the Mozilla Corporation, has an extensive 
infrastructure at Mozilla, and is already in use by Mozilla localizers.

	If you doubt that bzr is technically superior, here are a few points:

	* Compare the standard web interface to Hg (hgweb: ) to the standard web interface for bzr 
(loggerhead: ).

	* bzr has a *major* release nearly every month. (See the release notes: ) 
Mercurial's major releases are roughly 3 to 4 months apart (and there 
were 9 months from 1.0 to 1.1).

	* bzr tracks directory renames as well as file renames, meaning that it 
doesn't show hundreds of files being renamed if you rename a 
directory--it only shows the directory name changing. (This also means 
that bzr can show the existence of empty directories in its changeset 
history, and Mercurial cannot.)

	* The commands used in bzr for a CVS-like workflow are *identical* to 
the commands used in CVS, drastically lessening the learning curve for 
users migrating from CVS.

	However, Hg is supported by the Mozilla Corporation and they already 
have extensive infrastructure around it. Also, as Cedric has pointed out 
in the past, localizers are already using Hg.

	To resolve the conflict, I am ***TAKING A VOTE***:

	* Respond to this email either publicly (if you want to make an 
argument) or privately with your preference stated AT THE VERY TOP OF 
THE EMAIL. Anybody who is currently contributing to the Bugzilla Project 
or interacting with our CVS is eligible to vote. (If you are not a 
current contributor, please state your interest when voting.)

	I will count all public and private votes, and we will move to 
whichever VCS receives a simple majority (51%) of the received votes. 
HOWEVER, if there is a clear consensus (75% or greater) among the 
reviewers (and a significant number of reviewers vote--more than just 3 
or 4), then there is a possibility we will just go with the reviewer 
consensus, though the non-reviewer votes will also be taken into account.

	If you have any questions about the voting or about either VCS, feel 
free to respond here publicly and I'd be happy to clarify.

Competent, Friendly Bugzilla and Perl Services. Everything Else, too.

More information about the developers mailing list