Sunday, October 12, 2008

STLSoft 1.10 coming: Contracts, Coverage, TR1, new components

It's been two years in the making, but the STLSoft 1.10 branch is finally about to begin showing its face to the world. There are a number of important new features to be introduced to the libraries, and we've reached the point where the 1.9 branch won't take more new features being stuffed into it.

Initially, the new branch will be presented as a series of "alpha delta" releases, each of which will rely on the 1.9 branch being visible in the include path (after 1.10, of course, to allow source interpositioning). That's largely because the task of bringing over all the 1.9 components at once is just too daunting.

So what's going to be new in 1.10? Well, that's a hard question to answer, largely because 1.10 is not likely to come out of alpha until 2009. However, there are some aspects that are already certain to go in:
  • Improved contract enforcement support, separating out the different aspects of Contract Programming. Users will have the option to use xContract, the current assert()-based enforcement approach, or any other contract enforcement library they choose. (That xContract is itself implemented in terms of STLSoft confers a little complexity, but this will be handled by the separate compilation of the two libaries: in the compilation of xTests, STLSoft's contracts will be the old assert()-based ones.)
  • Code coverage. This is in its infancy because the library it will use, xCover, is as yet unreleased
  • Properties File library. This will provide full support for the Java Properties file format, with the usual high-performance tweaks (incl. memory mapping and string views)
  • Reworking of all the per-compiler feature discrimination. Some early hints of how this will work are to be found in msvc.h and gcc.h
  • TR1 components, to facilitate migration to these new components
  • and lots more ... including user-requested functionality, so please get your requests in now.
If anyone wants to offer help in this marathon effort, you'll be spectacularly welcome.

No comments: