[darcs-users] current status of darcs

Jorey Bump list at joreybump.com
Tue Mar 6 14:44:13 UTC 2007


William Morgan wrote:
> 
> A project I'm working on wants to switch away from CVS to SVN. I'm
> thinking about recommending darcs to them instead. I can make many
> convincing arguments for the usefulness of distributed, changset-based
> VC, but what I don't have a sense of is how stable and reliable darcs
> is. I'll be in big trouble if things go awry. :)

I love darcs. Its syntax is easy to understand, and it's a quick study. 
    I found it took less than an hour to learn everything I needed to 
use it to manage a project, and currently manage all of my code with 
darcs. However, I am the only developer on all of these projects, so I 
can't comment on how well it performs in a distributed environment.

> In particular:
> 
> 1. The first question on the FAQ mentions certain types of conflicts can
>    cause darcs to hang. It then points to a bugreport that is a year
>    old. Is this still an issue? Is it a common occurrence? In such a
>    situation, is it easy to solve, or difficult?

In spite of the fact that I find darcs nearly perfect in concept, 
hanging has become such a problem for me on some projects that I am 
looking for alternatives. The problem is that I just can't predict when 
it will start hanging or returning seemingly unfixable haskell errors 
(like "Stack space overflow" which doesn't respond to any variation on 
the suggested "Use `+RTS -Ksize' to increase it." that I try).

There's no doubt that the amount of *change* is significant in the 
problematic repositories, but the overall size can be large or small. I 
have other large projects, like web sites or documentation, that contain 
a mix of text & binary files that are regularly updated, and applying 
patches works fine. Pulling a specific version can get slow on large 
repositories, but it still works.

But when a pull or a patch starts hanging, you have no way of knowing 
when it's going to finish, and it consumes a lot of resources while it's 
doing it. I just can't take it anymore.

> 2. How actively maintained is darcs? Is it losing steam? Are bugs being
>    fixed faster than they're being introduced? The last release was 10
>    months ago---that could be a good sign or a bad one.

Except for the hanging issues, darcs feels like a mature application 
compared to others. I wish there was an easy way to retrieve a past 
version of a single file, but other than that, it seems feature complete.

> 3. I've seen mentions of using Tailor to back up darcs into e.g. CVS.
>    This would certainly help people feel more comfortable, but how
>    reliable is such a setup?

Haven't used it.

> Alternatively, if there's another VCS I should be considering
> (commercial or not), I'd be interested. I really like being able to pick
> out individual hunks when creating a changeset, and it's not clear to me
> that the darcs alternatives offer that.

Both mercurial and git look promising. They share similarities with 
darcs, but I haven't put them in the punishment closet, yet, so I can't 
say that they offer better performance or enough features to be a 
complete darcs replacement. Neither feel as mature. If the hanging issue 
gets fixed in darcs, I probably won't switch. I still think darcs is the 
easiest and best RCS for me, and will continue to use it on established 
projects, unless an alternative solves all of the problems and offers 
the same features.





More information about the darcs-users mailing list