I've crafted a CVS checkins browser in Exhibit, which shows checkins
to the Pike programming language:

  http://exhibit.ecmanaut.googlepages.com/cvsview.html

It scales to roughly a few weeks worth of checkins at a time before
becoming sluggish. Until the arrival of a database.purge() method in
the Exhibit API, reload the page to start on an (almost) empty stomach
again.

In making this exhibit, a concat() exhibit expression function was
added. I also noted that the add() (and, conversely, multiply())
functions available are so far somewhat broken by design; the data you
operate on will be turned into a set prior to performing the
operations, meaning that equal operands will only be visited once.

In practice, that means that add(.files.lines_added,
.files.lines_removed) will actually perform the operation
add(uniq(.files.lines_added), uniq(.files.lines_removed)) which is
often substantially lower than the total number of changed lines, when
a checkin touched multiple files. Ergo: no Changed lines facet at this
time.

This Exhibit view configuration should lend itself easily to making
similar Exhibits for other version control systems, if they just
export their change sets as JSONP.

-- 
 / Johan Sundström, http://ecmanaut.blogspot.com/

_______________________________________________
General mailing list
[email protected]
http://simile.mit.edu/mailman/listinfo/general

Reply via email to