[darcs-users] About darcs darcs repo as an darcs usage example...

Gwern Branwen gwern0 at gmail.com
Wed Mar 11 02:49:31 UTC 2009

On Tue, Mar 10, 2009 at 5:13 AM, Petr Rockai <me at mornfall.net> wrote:
> Hi,
> every now and then, someone mentions the size of the darcs darcs repo as the
> measure of where darcs scales. I'd like to warn people that before they do
> that, they should mention, that darcs darcs repo is anxiously avoiding any of
> the more troublesome aspects of darcs. Eg. there are very few conflict
> resolutions in darcs darcs repo. We impose a very strict workflow on our
> contributors, which very few projects will be willing to adopt (even in darcs
> itself, there's a fair amount of dissent). Other workflows will result in many
> more conflict resolutions, sometimes in conflict fights and repos of size of
> the darcs repo could wind up unusable due to merging slowness and bugs (we
> tried to branch darcs repo with anything other than minor changes twice, both
> attempts resulting in massive problems with merging and ultimately loss of the
> branch due to its un-usability).
> We should keep our marketing honest. I wouldn't recommend using darcs to any
> medium project (ie. more than a couple hundred patches and a single, at most
> two contributors) without a darcs expert on board. At least not until the core
> is either rewritten or debugged. To put it simply, while darcs is smart, it's
> not reliable, and in an RCS, that's a catastrophe waiting to happen.
> Yours,
>   Petr.

I think this is a rather overgloomy asssessment.

There are plenty of repositories which have hundreds of patches from
many - dozens - of users, and which not infrequently branch off. To
give an example, XMonad has 1061 patches and easily a score of
contributors, and has branched off significantly several times (and
sjanssen is currently branching off right now, for his monoid branch
at http://code.haskell.org/~sjanssen/xmonad-newconfig); or take
XMonadContrib, with over a hundred modules in it and even more
contributors - we usually see patch conflicts only when the module in
question genuinely has changed irreconcilably. Or take Yi, with 3416
patches in it. I'm certainly in agreement that binaries aren't handled
well, but I think Darcs shouldn't be disrecommended for medium-size
projects. Can't say as us Yi and XMonad hackers have had many issues
with Darcs!


More information about the darcs-users mailing list