Quoth Edi Weitz edi@weitz.de:
[...] I /think/ the unreleased version of CL-WHO contains architectural changes of mine which so far haven't been sufficiently documented and/or tested.
Not surprisingly, the bulk of the changes are in who.lisp and a lot of these arise from fifteen function definitions having been moved to the newly introduced file; util.lisp. Disregarding these, along with changes reuslting from the introduction of HTML5 support and the introduction of the test suite, and the only 'architectural' changes we need to consider (vis-a-vis testing and documentation) can be summarised thus:
Multiple changes to function CONVERT-ATTRIBUTES.
Function REPLACE-HTM & TREE-TO-COMMANDS-AUX removed, affecting functions TREE-TO-TEMPLATE & TREE-TO-COMMANDS.
util.lisp introduces two new (unexported) macros; WITH-UNIQUE-NAMES (used in WITH-HTML-OUTPUT) & WITH-REBINDING (currently unused).
Further changes (unrelated to WITH-UNIQUE-NAMES) to macro WITH-HTML-OUTPUT.
Functions ESCAPE-STRING-ISO-8859 & SHOW-HTML-EXPANSION removed, not affecting any other functions.
As far as documentation goes (inline and in index.html), there's not that much that still needs doing, except perhaps:
1. TREE-TO-COMMANDS lacks a documentation string. Not part of the API.
2. The lambda list of WITH-HTML-OUTPUT includes a new REST parameter which is not documented in the docstring. Very much part of the API so needs documenting in index.html too.
3. If WITH-REBINDING is not going to be used, should it not be removed, or a note added explaining why it may be used in the future. Not part of the API.
4. Canonical home of CL-WHO moved from BKNR to github - needs updating in index.html.
It'd be great if you could find time to look at 1, 2 & 3 Edi, (assuming these are the architectural changes you're referring to). I'm simply not qualified (yet).
I can start testing however, and that is something I hope to get around to soon.
Sebastian
P.S. Tarball (attached) may come in handy - it contains old and new versions of the some of the functions in question which I used to produce simplified diffs.
-- Emacs' AlsaPlayer - Music Without Jolts Lightweight, full-featured and mindful of your idyllic happiness. http://home.gna.org/eap