Florent Becker wrote:
I think your scheme works, except that it makes both recording and
applying quadratic in the context. Extracting the minimal context takes
quadratic time (imagine a patch depending on every other previous patch).
 Since applying (actually, hash-checking) is going to be quadractic anyway
(because we have to reorder the dependences), it might be smarter to compute
the minimal context at apply time. [Disclaimer: this is all worst-case
complexity, one would have to look at realistic mean-case complexity…]

A similar idea was brought up before. Tuomo Valkonen proposed *storing* the minimal context but David R felt that this would be too disk-inefficient:

http://lists.osuosl.org/pipermail/darcs-devel/2005-March/001399.html

But a variation on the proposal is to simply store a list of patches needed to build the minimal context. So that Darcs can build the context more easily. That's what I was going for with my 'depend:' lines.

A small change on my previous idea: Instead of storing the hash inside the file, make it the file name. So Darcs can locate the right file directly:

========== file name: <hash-of-H> ============
[sig: <sign-hash-of-H>]
[Added feature H.
depends: <hash-of-F>
depends: <hash-of-B>
[email protected]**20090331192735]


Daniel.
_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to