Changes [Sep 25, 2007]
CategoriesWhat needs to be done to get revision history:
I do wonder at the comment on the page that "the revision history intermediate storage mechanism is whole-page." Unless you've declared that files are binary (cvs admin -kb), CVS is quite smart about storing the current version together with a set of actions that will reconstitute old versions from the current version. It does not store a complete image of each obsolete page. In fact, I'd be inclined to use CVS (or some other well-qualified revision control system) to manage history simply because it's quite good at what it does. Using the tcllib facilities and building a history mechanism around them strilkes me as needless reinvention of wheels.
Can we develop a set of requirements and discuss where the history system has failed us in the past? If I'm going to implement this (and I might be able to offer up some spare cycles to do so), I'd like to know what constraints I'm playing with.
The main effort (given the existence of tcl code working with the tcllib facilities) is to reconstruct some kind of display from a pair of revision numbers yielding an ordered set of patches.
There are several aspects - on the Recent Changes page, each changed page is followed by a greek "delta" character. Clicking on this character takes one to a css colored version of the page, which lines which differ are colored red to indicate a line that was deleted and green to include a line that was added. In mid June 2007, an additional change was added so that clicking on the delta also positions you to the first change on the page.
Another addition to wubwiki was the Revisions link at the bottom of the page.
Also, access of the delta page via a browser such as lynx makes seeing the change difficult, as it doesn't process external css .
1. ignore white space when performing the diff
2. investigate whether there was a way to make use of wdiff or some other mechanism so that more detail regarding the change might be able to be portrayed - for instance, identifying the specific words that were added, deleted, changed, whatever.
Neither of these are high, or even medium, priority changes. They would be just nice touches.