It's not that often I have definite plans for Arabica, but I have one at
the moment. The next Arabica release will be "tidying up".
Because Arabica's grown rather organically over the past several years,
it's not especially consistent about all kinds of things. Some of those
things aren't especially important, but some are and some are just
niggling me a bit.
In relative short order, I intend to do the following
- All Arabica header files will have .hpp rather than .h
extensions. (Already committed - did it last night while watching the
- Anything in a directory called Util is liable to be renamed to something
- The SAX and DOM namespaces will be moved into the Arabica namespace.
- Those template classes which are only parameterised on string type
will be extended to take a string adaptor class as well.
- Template classes named basic_Something will be renamed Something.
This primarily effects SAX classes.
- Typedef of templates on particular string classes will be removed.
Again, this primarily effects SAX classes.
- (Anything else along these lines that occurs to me.)
This is the first time I've knowingly made changes to Arabica which
break existing code. Hopefully those these changes should be relatively
easy to deal with.
- Items 1 and 2 require a simple source change or tactical introduction
of forwarding headers.
- Item 3 can be mitigated the using namespace declaration.
- Item 4 should actually require no change in client code at all and,
unless you're doing something really wacky that this change is intended
to prevent you shouldn't notice.
- Items 5 and 6 require straightforward source changes, or the
introduction of your own typedefs.
There will no changes to any functionality or the addition of any new
code until this is done. I don't want it to drag on, so I'm aiming to
get this done in the next few weeks (work/children/dog/other commitments
After that, it's back on XSLT, which will also bring in some DOM Level 3
additions. After that, whenever that is, dunno. We'll see.