[darcs-users] deps.pl?

Eric Kow kowey at darcs.net
Tue Apr 27 13:12:28 UTC 2010

On Thu, Apr 22, 2010 at 01:27:12 -0400, Isaac Dupree wrote:
> I discovered via Google that there was a tool that showed a Darcs repo  
> of patches into a Graphviz file showing the dependencies: "deps.pl",  
> used by Zooko in 2005, originally written by James Webb, and used  
> successfully by another person in 2007 (see those details later)

Ah good, I was wondering what became of that (especially since so many
people want patch dependency viewing).

> (Is there anyway to create a repo with no patches  
> in it that has the same patch-format, i.e. darcs1 vs. darcs2, as another  
> one? I didn't see any options in either `darcs get` or `darcs init` that  
> would let me do this. It's needed so that we can create a repo that  
> we're going to pull patches, one-at-a-time, into.)

I don't think there's a way to do this in Darcs, but you could
presumably parse the darcs show repo output [1]_

> And then... it  *still* never finished running, on my quite small
> hashed-format darcs  repo (55 patches), with darcs 2.4, and I'm not
> sure what's wrong. Should I give up and re-write it somehow if I want
> graphviz results? (it's only 128 lines of code, and does hacky things
> with darcs command-line and darcs interactive output)

I have ingrained in my head that to do dependency viewing, we need a
minimal context function <http://bugs.darcs.net/issue1514> and that a
minimal context may not be so easy or in any case cheap.  The minimal
context is just the set of patches which cannot be commuted past a given
patch.  So intuitively for me, the dependencies of a patch are
represented by doing a transitive reduction on the graph formed by
pointing each patch to all the patches in its minimal context.  But
maybe I'm wrong.  The list should shout me down if I'm just spreading

So how does this deps.pl work?  Is it doing something which effectively
works out the same as computing a minimal context?  Is it reasonable to
expect the idea to work (not to speak of the implementation?).

I do remember that Camp has a patch viewing GUI, although I seem to
recall Ian saying that his effectively computes the minimal context as

.. [1] It may be a good idea to make darcs show repo output
       machine-readable.  I may have some opinions on this for a
       future thread.
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.osuosl.org/pipermail/darcs-users/attachments/20100427/97ef2b06/attachment.pgp>

More information about the darcs-users mailing list