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

Re: [MirageOS-devel] Irmin API newbie questions

>>> 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.

Good idea, I'll try to see if I can add a diff on the graph edges (via a 
user-provided function to compute diffs)

MirageOS-devel mailing list



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