[darcs-users] the adventure branch

Petr Rockai me at mornfall.net
Thu Aug 26 13:07:56 UTC 2010


it seems that we have reached a point in darcs development where it
would make a lot of sense to start improving our general codebase and
the libdarcs interface.

Also, there are some rewrites in store for parts of darcs functionality
(e.g. annotate) and a port to hashed-storage 0.6 (which itself is a work
in progress).

We have discussed how to manage these kinds of changes review- and
merge- wise, and our current conclusion is that it would likely be best
to create a separate branch. I'm proposing for the branch to live on
http://darcs.net/adventure. The current review team should stay
responsible for this branch, in addition to mainline (http://darcs.net).

The main differences in the process for the adventure branch would be:
- for mainline, we are trying hard to keep everything fully functional
  and nearly-releasable... this requirement would not hold for
  adventure, making it possible to merge work in progress that
  temporarily breaks darcs
- the kind of review we do on mainline is quite detailed -- on the
  adventure branch, we would probably drop line-to-line reviews and
  instead favour higher-level, "design" view

The changes landing in adventure are likely to be very
invasive. Therefore, we do not intend to ever merge adventure and the
current mainline. Instead, applicable fixes that are merged into
mainline should be also done on adventure. At some point, when adventure
is no longer very adventurous and we are satisfied with its shape, we
will swap it in for mainline.

I hope that this is going to be a one-off venture: one of the main goals
of the adventure branch will be to get the darcs codebase into a state
where further refactorings and far-reaching changes will be manageable
within mainline.

The timeline is not completely clear yet, I have to finish off a couple
of items before branching. Since the adventure branch will (at least
initially) remove old-fashioned support, I am currently working on
darcs-benchmark support for darcs 1, so we can meaningfully compare
darcs 1 and darcs 2 performance. We should close the hashed/OF
performance gaps that still exist (this will be another goal of the
adventure branch).

I may have missed important bits in this message (unintentionally)...
However, Ganesh and Eric will be hopefully able to fill in the blanks,
if that was the case.


PS: I intend to have sort of a darcs hacking drive from mid-September
till about mid-January. This partially motivates the adventure
branch. Hopefully, we'll all like the results.

More information about the darcs-users mailing list