Re: [boost] The new Boost 17.0.0
Speaking only for myself as an author of a Boost library, maintainer of many Boost libraries, and contributor to many Boost libraries, as well as being involved in the Boost release process: 1. Based on my personal knowledge of Boost users, as well as e-mails to the Boost developers lists (boost@...), and the Boost Owners lists (boost-owner@...) from users such as: - @us.af.mil (US Airforce) - @nasa.gov (NASA) and others I would not be in favor of a Boost distribution that requires anything higher than C++11 for existing libraries. i.e. Not C++17 or even C++14. 2. Based on first hand accounts of certain users choosing not to migrate to C++20 because of a silently breaking change in the language affecting their code (operator== rewriting rules, which has even broken certain Boost libraries like Rational), I would certainly not be in favor of changing existing Boost libraries to require C++20 for anything in an official Boost distribution. Glen
On 11/27/20 5:15 PM, Glen Fernandes via Boost wrote:
2. Based on first hand accounts of certain users choosing not to migrate to C++20 because of a silently breaking change in the language affecting their code (operator== rewriting rules, which has even broken certain Boost libraries like Rational), I would certainly not be in favor of changing existing Boost libraries to require C++20 for anything in an official Boost distribution.
I have to say that I'm also hesitant to upgrade my projects to C++20, while going through 11, 14 and 17 was rather easy. That operator rewriting issue is a blocker, and it's not even clear if there will be a resolution before C++23 or however it will be called.
On Fri, 27 Nov 2020 at 17:01, Andrey Semashev via Boost
On 11/27/20 5:15 PM, Glen Fernandes via Boost wrote:
2. Based on first hand accounts of certain users choosing not to migrate to C++20 because of a silently breaking change in the language affecting their code (operator== rewriting rules, which has even broken certain Boost libraries like Rational), I would certainly not be in favor of changing existing Boost libraries to require C++20 for anything in an official Boost distribution.
I have to say that I'm also hesitant to upgrade my projects to C++20, while going through 11, 14 and 17 was rather easy. That operator rewriting issue is a blocker, and it's not even clear if there will be a resolution before C++23 or however it will be called.
A resolution proposal is already under discussion.
On Fri, Nov 27, 2020 at 3:15 PM Glen Fernandes via Boost < boost@lists.boost.org> wrote:
Speaking only for myself as an author of a Boost library, maintainer of many Boost libraries, and contributor to many Boost libraries, as well as being involved in the Boost release process:
1. Based on my personal knowledge of Boost users, as well as e-mails to the Boost developers lists (boost@...), and the Boost Owners lists (boost-owner@...) from users such as: - @us.af.mil (US Airforce) - @nasa.gov (NASA) and others
I would not be in favor of a Boost distribution that requires anything higher than C++11 for existing libraries. i.e. Not C++17 or even C++14.
But that's basically Boost as it stands, i.e. Boost 1.x. I don't think anyone's proposing to drop that.
2. Based on first hand accounts of certain users choosing not to migrate to C++20 because of a silently breaking change in the language affecting their code (operator== rewriting rules, which has even broken certain Boost libraries like Rational), I would certainly not be in favor of changing existing Boost libraries to require C++20 for anything in an official Boost distribution.
But isn't this just a "teething" issue? I see Ville already replied in fact. There will of course be few large codebases making the jump to C++20 in the near future, after all we're still in 2020 and that standard is just hot-off-the-press. But we're discussing the next 10-20 years of Boost, not the next 10 months. And only to start Boost 2.x, not to abandon Boost 1.x. You are of course a pillar of Boost, while I'm a nobody, so what I say doesn't matter much, but either modules (and concepts) are a game changer, and it's worth modularizing Boost (not at the Git level, but C++ level), or C++20 modules are a mis-feature and then indeed why ever start a Boost 2.x? I'm of course referring to full-blown modules, not just wrapping headers to have glorified precompiled headers (although I'm out of my depth here, so I'd better shut-up :)). My $0.02. --DD
participants (4)
-
Andrey Semashev
-
Dominique Devienne
-
Glen Fernandes
-
Ville Voutilainen