From: Robert Ramey (ramey_at_[hidden])
Date: 2007-12-01 00:59:03
Joel de Guzman wrote:
>> * Un-reviewed implementation details of libraries have been placed in
>> boost/detail if they need to be used by other libraries and a
>> subdirectory of boost/<libraryname>/ otherwise. Their documented
>> public components are placed in boost/detail and namespace
I think the current situation is a little problematic.
If there in boos/detail, presumable its because they might be
useful accross more than one library. However,
There is no place for documentation of these things. So there
is no guarenteed interface.
And of course no separate tests.
No guarentee that the interface won't change - after all
its an implementation detail. So it can change without
warning an break other libraries.
So, one has a lot of reservations about depending upon
these modules. On the other hand, they have proved
very useful so for the sake of expediency they're going
to get used - leading to surprise breakages.
So I think those things that have been going to boost/detail
should just go into boost / utility. Approval for this would
be part of the review process for the library which needed
them. I realise some might find this bothersome, but its
much better the the current situation.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk