I want to add pagehistory (a'la [L1 ]) directly to the wikit. I don't think storing each revision in full is a particularly good idea, something like the way RCS does it seems like a better idea: store the last version in full, backtracking to the first version using diffs.
My first idea(s):
Storage:
Access mostly like tclhist:
These should all just be links on existing pages.
Diff is going to be a bit of a problem, as windows systems do not have it. There are precompiled binaries (68Kb), which we could store in the wikit. But I would prefer to use an all Tcl solution, but the current (working) diff in tcl is a tad slow (unworkable for word level diff like wikidiff does). It is fast enough for doing the history line-by-line diff, so I'll start using that for the history storage. But the fancy wikidiff/worddiff output will have to be done with external diff.
Thoughts, anyone?
- PS.
As with all good things - there seem to be three sides to this, and I think they are mostly independent:
Picking (puretcl, history.tkd, urls-as-above) as starting point sounds great to me -jcw
The CVS wiki history is currently under 30 Mb, that includes a copy of the latest pages. If we just consider changes, and then zlib-compress each, that ought to be less still.