[darcs-devel] announcing darcs 2.0.0pre1, the first prerelease for darcs 2

David Roundy droundy at darcs.net
Fri Dec 14 03:12:45 UTC 2007

On Thu, Dec 13, 2007 at 09:50:50AM +0000, Simon Marlow wrote:
> Simon Marlow wrote:
> >David Roundy wrote:
> >>Yikes! That's actually a very surprising bug.  I'd be interested in
> >>hearing if it shows up if you run a darcs2 optimize first? Either way,
> >>of course, it's a serious bug, but that'd give a hint where the
> >>trouble is.
> >
> >darcs2 check has nearly finished... yup, the repository is consistent.
> >
> >Trying optimise now...
> darcs2 optimize was killed by the OS after 5 minutes for using up all my 
> memory :-(

Okay, I'm pushing the fix for this now (and it should hit the hashed darcs
repository in about an hour, and the old-fashioned darcs repository maybe
an hour after that--tests need running).  We were being way to strict in
our reading of the repository.  I needed to redefine the (poorly named)
Hopefully data type in order to allow us to delay reading of patch files
longer.  Optimize now takes 3-6 seconds (depending on cache state) with
profiling enabled, versus previously 30 minutes without profiling enabled
(presumably I've got more RAM than you do).

Hopefully tomorrow you can resume testing with a somewhat-less-embarassing
version of darcs 2.

Still on my todo list (of issues that you've reported):

1. enabling timestamp tracking for darcs whatsnew (and record, etc)
2. figuring out a nice way to speed up a lazy darcs get.  Currently it
   grabs each file in the repository individually.  This means we're not
   harmed by long history, but we suffer greatly in repositories having
   many small files.  Note that these grabs are cached (if you enable a
   cache) so a second get of the same (or a similar) repository would be
   lightning fast.  But something should be done to (perhaps optionally)
   speed up darcs gets.  Perhaps we could download a tarball of
   _darcs/pristine.hashed with which to seed the cache (or our own
   prisine.hashed).  We could do similarly with the patches directory, in
   fact.  And in neither case would an "old" tarball harm us in any way
   (except requiring that we grab a few more files).
David Roundy
Department of Physics
Oregon State University

More information about the darcs-devel mailing list