Boost logo

Boost :

Subject: Re: [boost] [filesystem] Version 3 of Boost.Filesystem added to trunk
From: Beman Dawes (bdawes_at_[hidden])
Date: 2010-06-02 15:04:45

On Wed, Jun 2, 2010 at 1:37 PM, Scott McMurray <[hidden]> wrote:
> On 2 June 2010 11:07, Beman Dawes <bdawes_at_[hidden]> 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 notice that you have to rebuild boost.filesystem when switching
> versions.  Does that mean that you can't use both from one install of
> boost?

That's correct.

> I would have assumed that there's be filesystem_v2 and filesystem_v3
> include directories, namespaces, and libraries.  The filesystem
> directory would look at a #define to pick which headers to include and
> which namespace to mention in a using directive.

Anything like that I could think of seemed more work that it is worth.
Much existing code, I suspect, will compile unchanged on v3. If it
turns out there is lots of existing code that won't "just work" on V3,
I want to find out the details before deciding on a course of action.
It may be that v3 needs modifications.

> The switching code
> would simply change the default of the #define and symlink the
> appropriate library.

I considered a symlink approach, but that's a problem on some platforms.

> My thinking here is that I'd like to be able to install boost on my
> system, have old code pick up the v2 default, but still be able to use
> v3 explicitly in new code, should I so choose.

That would make a lot of sense if it turns out there is a lot of v2
based code that won't work with v3. Particularly code that isn't
trivial to change to work with v3. So let me know if you are running
into a lot of problems when you try your existing code.


Boost list run by bdawes at, gregod at, cpdaniel at, john at