[darcs-users] hashed-storage / darcs-hs progress

Jason Dagit dagit at codersbase.com
Sat Oct 3 08:05:31 UTC 2009

On Mon, Sep 21, 2009 at 7:53 AM, Eric Kow <kowey at darcs.net> wrote:

> Just a quick update on the current progress with the hashed storage
> work.
> Ganesh, Petr and I had a short meeting on the #darcs channel
> (log: http://irclog.perlgeek.de/darcs/2009-09-20#i_1519390 )
> to work out a practical way to work through the disagreement on some
> points about the hashed-storage work.
> The two open questions were
>  (a) if we could divorce some darcs-format-specific parts
>     from hashed-storage
>  (b) if we should generalise the current Hash type to
>     something less darcs-specific
> For (b) we all seem to agree that generalising the Hash type could be
> useful.  Ganesh is more convinced of this and would prefer that we do
> this from the start.  Petr is less so and therefore feels that we should
> postpone this till the need actually arises.
> Since this is something that can be safely postponed for future work,
> we decided to just treat it as such and focus on getting (a) resolved.

Point (a) and (b) both sound really important.  It also sounds wise to stall
on them.  Especially if there is going to be a hashed-storage 1.0 release.
Having said that, I'm not sure that Darcs should wait for the hash-storage
1.0 release before switching to it.

> Having agreed to this, we took a closer look at the problem.
> Right now there are two kinds of darcs-format-specific information in
> hashed-storage:
>  (a1) conventions for admin files like _darcs, _darcs/hashed_inventory and
>      _darcs/pristine.hashed
>  (a2) format for hashed filenames, the file listing used to represent
>      directories, etc
> In the same vein as (b), we think of (a2) as being less urgent than
> (a1), so we narrowed the focus further to (a1).  And since this was
> relatively trivial we decided to just put the code into Darcs proper
> for now.
> So this gave us a way forward a small plan of action:
> 1. Petr: patch hashed-storage to remove the (a1) stuff and likewise
>   Darcs (if relevant)

How is this progressing?

> 2. Petr: comment on remaining darcs-hs-specific points on the wiki
> 3. Ganesh: Merge darcs-hs patches into mainline Darcs

I think we're at a point where several of us are really excited about having
these patches merged into mainline Darcs (or darcs.net as I like to call

It seems like both Ganesh and I have needed to write code against both
branches recently.  I know in my benchmarking I've been bouncing back and
forth between darcs.net and darcs-hs sporadically.  It's really kind of a
waste of time though for me to bounce back and forth though.  Oh, I should
also throw in that darcs-hs is now much faster at my pathological record
problem than darcs.net is.  Much less memory used also.  It's quite

In other words, I'm on board with a shift to darcs-hs at this point.  I'd
like for it to replace the darcs.net source; that is the point at which I'll
start using it as my daily darcs so I can ferret out other bugs and
performance issues.  There is a pragmatic concern here that it is much
easier to submit bug reports for the official darcs source than it is to
submit bugs for darcs-hs.

I'd also like to get on with some other tasks that will need to be redone
after a merge if I do them from the current darcs.net source.

May I be so bold as to propose a deadline for the merge?  Let as much work
as can be done happen before the deadline but once it happens we just merge
things whatever the state is, assuming it's a reasonable state.  Say that by
Nov. 1st we need to have all of Petr's work merged so that at the darcs
sprint we can all build on top of it.

> After these small steps, I think we can be looking forward to
> index-based diffing and a faster Darcs for hashed repositories.

Yes, this should be quite beneficial.

Please, let me know if I can help.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osuosl.org/pipermail/darcs-users/attachments/20091003/92417f33/attachment.htm>

More information about the darcs-users mailing list