[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] Irmin API newbie questions

On 9 Feb 2015, at 14:41, Thomas Gazagnaire <thomas@xxxxxxxxxxxxxx> wrote:
>> Finally, how do I get history? e.g. if I want to show users the recent
>> changes to a document. I see a "slice" type, but it's not clear what I
>> can do with it.
> Anil asked me the question recently, and I promise him to add the missing 
> function in the "simple" API. For now on, the functions are well-hidden 
> inside the private API: The History[1] functor gives you a "closure" 
> function, which gives you a slice of the history graph. The functor needs a 
> contents store (if S is of type Irmin.S, then S,Private.Contents) and a node 
> store (S.Private.Node). But that's far too hard to use, I'll add an helper 
> function in the API to get you a OCamlgraph graph of commits (and optionally 
> tree and blobs) instead.

One layer that would be very useful over this commit graph is some notion of
diffs.  I'd quite like to be able to describe a data structure in terms of
patches, since that's quite often the reason why I'm traversing the history
in the first place.  If I just want to go back in time, I can stash relevant
points in a tag and never need to walk the commit history.

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.