Subject: Re: [boost] [filesystem] Version 3 of Boost.Filesystem added to trunk
From: Beman Dawes (bdawes_at_[hidden])
Date: 2010-06-06 13:16:19
On Sat, Jun 5, 2010 at 4:20 AM, Andrey Semashev
> On 06/02/2010 07:07 PM, Beman Dawes wrote:
>> Because version 3 will break some user code, both v2 and v3 will be
>> shipped for several releases. For 1.44, the default is v2 and the
>> user has to explicitly switch to v3.
>> I'd really appreciate it if some Boosters could give v3 a try on your
>> own code that uses Boost.Filesystem.
> I think that the approach of manual switching between v2 and v3 is not very
> good. The packagers will not be able to ship both versions of the library in
> Linux distributions, which effectively means that v3 will not get adopted.
> Also, if I want my code to be compatible with both versions of the library,
> I cannot see a way to detect which version is currently installed. This is
> the case with my Boost.Log - it's not compatible with v3, mostly because
> path is not a template anymore. I would like people to be able to use
> Boost.Log regardless of which Boost.Filesystem their application uses.
You and Scott McMurray have convinced me that this is a real problem.
> I would really prefer to have both versions of the library available at any
> time. Either as two separate libraries (like signals and signals2) or as two
> parts of one library (like spirit v2 and classic). In the latter case it
> could be compiled into one binary, with v2 and v3 being in different
> namespaces and "namespace filesystem" being an alias to one of them.
That's the approach I'm prototyping. Looks promising. Stay tuned...
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk