
on Sun Dec 30 2012, Olaf van der Spek <ml-AT-vdspek.org> wrote:
On Sun, Dec 30, 2012 at 4:15 PM, Bjorn Reese <breese@mail1.stofanet.dk> wrote:
On 2012-12-30 12:58, Vicente J. Botet Escriba wrote:
I would like to request advise from the release managers and of course the Boost community. Should I rollback the default to BOOST_THREAD_VERSION==3 for 1.53 and let the time to discuss the best way to manage with these breaking changes?
Given that the breaking changes are due to alignment with C++11, I think that this is a good reason to break compatibility per default. Users have upgraded to a new version of Boost, so some upgrade cost is expected. If users are unwilling (or unable) to upgrade their implementation, they can easily revert to BOOST_THREAD_VERSION 2.
No, they can't. Some users use the Boost libs provided by their (Linux) distribution. They can't just #define BOOST_THREAD_VERSION 2
If I move from boost::thread to std::thread then yes, I'm expecting some costs moving. But merely 'upgrading' Boost, which might not require any action from the developer himself, should not come with such costs.
There are no absolutes in this area. Upgrades of Boost are allowed to break code. In general we try to avoid it, but sometimes progress is more important than backward compatibility. When to break code, how much warning users get, what their alternatives are, etc., are judgement calls we leave to library maintainers. -- Dave Abrahams BoostPro Computing Software Development Training http://www.boostpro.com Clang/LLVM/EDG Compilers C++ Boost