[darcs-users] HCAR 2012-11

Eric Kow eric.kow at gmail.com
Sun Oct 14 15:05:40 UTC 2012

What do you think, darcs-users?

Darcs is a distributed revision control system written in Haskell. In
Darcs, every copy of your source code is a full repository, which allows for
full operation in a disconnected environment, and also allows anyone with
read access to a Darcs repository to easily create their own branch and
modify it with the full power of Darcs' revision control. Darcs is based on
an underlying theory of patches, which allows for safe reordering and
merging of patches even in complex scenarios. For all its power, Darcs
remains a very easy to use tool for every day use because it follows the
principle of keeping simple things simple.

Our most recent release, Darcs 2.8.2, was in September 2012.  Some key
changes in Darcs 2.8 include support for GHC 7, a faster and more
readable \texttt{darcs annotate}, a \texttt{darcs obliterate -O} which
can be used to conveniently ``stash'' patches, hunk editing for the
\texttt{darcs revert} command.

We have some fairly exciting work merged into mainline Darcs for the
next release. First, we have a new rebase feature which should be a
great help for darcs users that maintain long-term and conflict prone
branches. The new rebase feature will also be useful for some more day
to day use cases such as the “deep amend-record” feature many of us have
long wished for, or even just more basic patch cleanups and
reorganisation.  Second, the 2012 Google Summer of Code project by BSRK
Aditya has been succesful, with the long-promised patch index
optimisation now merged into mainline.  The patch index will help Darcs
users who need to search for changes to specific files within a large
number of patches (particularly relevant to darcs hosting sites).

More generally, our work has emphasised two of our key priorities: code
quality and Darcs hosting. For code quality we have embarked on an
overhaul of our module organisation along with work towards deeper
refactors such as the use of a Darcs monad to better capture our some
darcs-specific state-tracking IO. Darcs hosting is also a fairly hot
area in Darcs development. Simon Michael has pushed forward development
of the original Darcsden code by Alex Suraci, resulting in the recent
darcsden 1.0 release (September 2012) and new public host
\url{http://hub.darcs.net}. Feedback and help pushing forward this new
Darcs hosting option will be greatly appreciated!

Darcs is free software licensed under the GNU GPL (version 2 or
greater).  Darcs is a proud
member of the Software Freedom Conservancy, a US tax-exempt 501(c)(3)
organization.  We accept donations at

Eric Kow <http://erickow.com>

More information about the darcs-users mailing list