[release] Boost 1.85.0 Release Candidate 1 is available
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/ The SHA256 checksums are as follows: de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy. -- The Release managers
On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta. Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars: boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html With the minimum possible length to the boost directory (drive letter plus a single character where it would be more reasonable to have something like D:\boost_1_85_0), we're already at 263 characters. D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it needs to be fixed before this release can go out. Tom
On 4/5/24 18:30, Tom Kent via Boost wrote:
On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta.
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars: boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
With the minimum possible length to the boost directory (drive letter plus a single character where it would be more reasonable to have something like D:\boost_1_85_0), we're already at 263 characters. D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it needs to be fixed before this release can go out.
Perhaps, adding SHORT_NAMES=YES Doxygen parameter will help? https://www.doxygen.nl/manual/config.html#cfg_short_names
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars
Thanks for reporting this. It seems that Beast CI doesn't build
documentation on Windows platforms, and we hadn't noticed the issue.
I'm already working on a fix.
On Fri, Apr 5, 2024 at 7:10 PM Tom Kent via Boost
On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta.
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars: boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
With the minimum possible length to the boost directory (drive letter plus a single character where it would be more reasonable to have something like D:\boost_1_85_0), we're already at 263 characters. D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it needs to be fixed before this release can go out.
Tom
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Hello Marshall, I'm not sure if this is the right place to mention a minor 1.85.0 issue, if not apologies. There is a deprecation of an error_code alias in boost::json that breaks our builds. The migration is doable for us, but perhaps worth mentioning as a change in the release notes. https://github.com/boostorg/json/pull/980 Aside from that our builds and tests are looking fine with the 1.85.0 beta. Thanks! Best regards, Nigel Stewartt On Sat, Apr 6, 2024 at 2:35 AM Mohammad Nejati [ashtum] via Boost < boost@lists.boost.org> wrote:
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars
Thanks for reporting this. It seems that Beast CI doesn't build documentation on Windows platforms, and we hadn't noticed the issue. I'm already working on a fix.
On Fri, Apr 5, 2024 at 7:10 PM Tom Kent via Boost
wrote: On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available
at:
https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta.
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars:
boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
With the minimum possible length to the boost directory (drive letter
a single character where it would be more reasonable to have something
plus like
D:\boost_1_85_0), we're already at 263 characters.
D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it
needs
to be fixed before this release can go out.
Tom
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On Apr 5, 2024, at 6:54 PM, Nigel Stewart via Boost
wrote: Hello Marshall,
I'm not sure if this is the right place to mention a minor 1.85.0 issue, if not apologies.
This is exactly the right place to mention this. Thanks! — Marshall
There is a deprecation of an error_code alias in boost::json that breaks our builds. The migration is doable for us, but perhaps worth mentioning as a change in the release notes.
https://github.com/boostorg/json/pull/980
Aside from that our builds and tests are looking fine with the 1.85.0 beta. Thanks!
Best regards,
Nigel Stewartt
On Sat, Apr 6, 2024 at 2:35 AM Mohammad Nejati [ashtum] via Boost < boost@lists.boost.org> wrote:
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars
Thanks for reporting this. It seems that Beast CI doesn't build documentation on Windows platforms, and we hadn't noticed the issue. I'm already working on a fix.
On Fri, Apr 5, 2024 at 7:10 PM Tom Kent via Boost
wrote: On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available
at:
https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta.
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars:
boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
With the minimum possible length to the boost directory (drive letter
a single character where it would be more reasonable to have something
plus like
D:\boost_1_85_0), we're already at 263 characters.
D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it
needs
to be fixed before this release can go out.
Tom
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
сб, 6 апр. 2024 г. в 02:55, Nigel Stewart via Boost
Hello Marshall,
I'm not sure if this is the right place to mention a minor 1.85.0 issue, if not apologies.
There is a deprecation of an error_code alias in boost::json that breaks our builds. The migration is doable for us, but perhaps worth mentioning as a change in the release notes.
Sorry to cause disruption. This is mentioned in both JSON's and in Boost's release history: https://github.com/boostorg/json/blob/master/doc/qbk/release_notes.qbk#L22-L... https://github.com/boostorg/website/blob/master/feed/history/boost_1_85_0.qb... But I had updated the docs too late in the release cycle for it to affect the beta. I checked the RC and the deprecation is mentioned in JSON docs there.
Hello Marshal,
I'd like to merge the following changes into the master branch:
https://github.com/boostorg/beast/compare/master...develop
This resolves the mentioned issue with building Beast documentation on
Windows platforms.
Thanks
On Fri, Apr 5, 2024 at 8:05 PM Mohammad Nejati [ashtum]
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars
Thanks for reporting this. It seems that Beast CI doesn't build documentation on Windows platforms, and we hadn't noticed the issue. I'm already working on a fix.
On Fri, Apr 5, 2024 at 7:10 PM Tom Kent via Boost
wrote: On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta.
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars: boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
With the minimum possible length to the boost directory (drive letter plus a single character where it would be more reasonable to have something like D:\boost_1_85_0), we're already at 263 characters. D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it needs to be fixed before this release can go out.
Tom
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On Apr 6, 2024, at 8:49 AM, Mohammad Nejati [ashtum] via Boost
wrote: Hello Marshal,
I'd like to merge the following changes into the master branch: https://github.com/boostorg/beast/compare/master...develop
This resolves the mentioned issue with building Beast documentation on Windows platforms.
Yes, please. — Marshall
Thanks
On Fri, Apr 5, 2024 at 8:05 PM Mohammad Nejati [ashtum]
wrote: Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars
Thanks for reporting this. It seems that Beast CI doesn't build documentation on Windows platforms, and we hadn't noticed the issue. I'm already working on a fix.
On Fri, Apr 5, 2024 at 7:10 PM Tom Kent via Boost
wrote: On Fri, Apr 5, 2024 at 1:31 PM Marshall Clow via Boost < boost@lists.boost.org> wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
-- The Release managers
This contains a serious failure on windows that wasn't present in the beta.
Beast appears to have some documentation that is far too long for windows to support working with. The maximum path length for anything on windows is 260 chars. This file name is already 231 chars: boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
With the minimum possible length to the boost directory (drive letter plus a single character where it would be more reasonable to have something like D:\boost_1_85_0), we're already at 263 characters. D:\b/libs\beast\doc\html\beast\ref\boost__asio__traits__query_static_constexpr_member_lt__beast__test__immediate_executor_comma__Property_comma__typename_enable_if_lt__std__is_convertible_lt__Property_comma__execution__blocking_t__gt___value__gt___type__gt_.html
It is true that for some programs, the windows path length limit can be disabled, but there are many tools that this doesn't work for, so it needs to be fixed before this release can go out.
Tom
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On Apr 5, 2024, at 8:31 AM, Marshall Clow
wrote: The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
I have built the libraries on ARM on Mac OS Ventura 13.4.1 (22G313) using 'Apple clang version 15.0.0 (clang-1500.3.9.4)’ All the libraries built successfully on C++11/14/17/20/2b The following libraries failed to build on C++03: Boost.Contract Boost.Coroutine Boost.Graph Boost.ProgramOptions Boost.Random Boost.Serialization Boost.Thread — Marshall
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log: clang-linux.compile.c++ bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o In file included from libs/program_options/src/split.cpp:10: In file included from ./boost/program_options/parsers.hpp:12: In file included from ./boost/program_options/detail/cmdline.hpp:11: ./boost/program_options/errors.hpp:124:34: error: exception specification is not available until end of class definition 124 | BOOST_DEFAULTED_FUNCTION(~error_with_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:212:34: error: exception specification is not available until end of class definition 212 | BOOST_DEFAULTED_FUNCTION(~multiple_values() throw(), {}) | ^ ./boost/program_options/errors.hpp:223:34: error: exception specification is not available until end of class definition 223 | BOOST_DEFAULTED_FUNCTION(~multiple_occurrences() throw(), {}) | ^ ./boost/program_options/errors.hpp:236:33: error: exception specification is not available until end of class definition 236 | BOOST_DEFAULTED_FUNCTION(~required_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:261:34: error: exception specification is not available until end of class definition 261 | BOOST_DEFAULTED_FUNCTION(~error_with_no_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:273:34: error: exception specification is not available until end of class definition 273 | BOOST_DEFAULTED_FUNCTION(~unknown_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:286:34: error: exception specification is not available until end of class definition 286 | BOOST_DEFAULTED_FUNCTION(~ambiguous_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:323:34: error: exception specification is not available until end of class definition 323 | BOOST_DEFAULTED_FUNCTION(~invalid_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:343:34: error: exception specification is not available until end of class definition 343 | BOOST_DEFAULTED_FUNCTION(~invalid_config_file_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:358:34: error: exception specification is not available until end of class definition 358 | BOOST_DEFAULTED_FUNCTION(~invalid_command_line_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:383:34: error: exception specification is not available until end of class definition 383 | BOOST_DEFAULTED_FUNCTION(~validation_error() throw(), {}) | ^ 11 errors generated. "clang++-19" -std=c++23 -fvisibility-inlines-hidden -fPIC -m64 -pthread -O3 -Wall -fvisibility=hidden -Wno-inline --target=x86_64-pc-linux -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o" "libs/program_options/src/split.cpp" The RC builds fine in C++20 (same compiler and system).
-- The Release managers
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On Apr 6, 2024, at 12:57 PM, Ruben Perez
wrote: As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log:
Ruben — Did the 1.85.0 beta have this same problem? Thanks, — Marshall
clang-linux.compile.c++ bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o In file included from libs/program_options/src/split.cpp:10: In file included from ./boost/program_options/parsers.hpp:12: In file included from ./boost/program_options/detail/cmdline.hpp:11: ./boost/program_options/errors.hpp:124:34: error: exception specification is not available until end of class definition 124 | BOOST_DEFAULTED_FUNCTION(~error_with_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:212:34: error: exception specification is not available until end of class definition 212 | BOOST_DEFAULTED_FUNCTION(~multiple_values() throw(), {}) | ^ ./boost/program_options/errors.hpp:223:34: error: exception specification is not available until end of class definition 223 | BOOST_DEFAULTED_FUNCTION(~multiple_occurrences() throw(), {}) | ^ ./boost/program_options/errors.hpp:236:33: error: exception specification is not available until end of class definition 236 | BOOST_DEFAULTED_FUNCTION(~required_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:261:34: error: exception specification is not available until end of class definition 261 | BOOST_DEFAULTED_FUNCTION(~error_with_no_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:273:34: error: exception specification is not available until end of class definition 273 | BOOST_DEFAULTED_FUNCTION(~unknown_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:286:34: error: exception specification is not available until end of class definition 286 | BOOST_DEFAULTED_FUNCTION(~ambiguous_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:323:34: error: exception specification is not available until end of class definition 323 | BOOST_DEFAULTED_FUNCTION(~invalid_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:343:34: error: exception specification is not available until end of class definition 343 | BOOST_DEFAULTED_FUNCTION(~invalid_config_file_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:358:34: error: exception specification is not available until end of class definition 358 | BOOST_DEFAULTED_FUNCTION(~invalid_command_line_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:383:34: error: exception specification is not available until end of class definition 383 | BOOST_DEFAULTED_FUNCTION(~validation_error() throw(), {}) | ^ 11 errors generated.
"clang++-19" -std=c++23 -fvisibility-inlines-hidden -fPIC -m64 -pthread -O3 -Wall -fvisibility=hidden -Wno-inline --target=x86_64-pc-linux -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o" "libs/program_options/src/split.cpp"
The RC builds fine in C++20 (same compiler and system).
-- The Release managers
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On 4/7/24 06:35, Marshall Clow via Boost wrote:
On Apr 6, 2024, at 12:57 PM, Ruben Perez
wrote: As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log:
Ruben —
Did the 1.85.0 beta have this same problem?
This was also reported for 1.84.0 recently: https://lists.boost.org/Archives/boost/2024/03/256179.php
clang-linux.compile.c++ bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o In file included from libs/program_options/src/split.cpp:10: In file included from ./boost/program_options/parsers.hpp:12: In file included from ./boost/program_options/detail/cmdline.hpp:11: ./boost/program_options/errors.hpp:124:34: error: exception specification is not available until end of class definition 124 | BOOST_DEFAULTED_FUNCTION(~error_with_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:212:34: error: exception specification is not available until end of class definition 212 | BOOST_DEFAULTED_FUNCTION(~multiple_values() throw(), {}) | ^ ./boost/program_options/errors.hpp:223:34: error: exception specification is not available until end of class definition 223 | BOOST_DEFAULTED_FUNCTION(~multiple_occurrences() throw(), {}) | ^ ./boost/program_options/errors.hpp:236:33: error: exception specification is not available until end of class definition 236 | BOOST_DEFAULTED_FUNCTION(~required_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:261:34: error: exception specification is not available until end of class definition 261 | BOOST_DEFAULTED_FUNCTION(~error_with_no_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:273:34: error: exception specification is not available until end of class definition 273 | BOOST_DEFAULTED_FUNCTION(~unknown_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:286:34: error: exception specification is not available until end of class definition 286 | BOOST_DEFAULTED_FUNCTION(~ambiguous_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:323:34: error: exception specification is not available until end of class definition 323 | BOOST_DEFAULTED_FUNCTION(~invalid_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:343:34: error: exception specification is not available until end of class definition 343 | BOOST_DEFAULTED_FUNCTION(~invalid_config_file_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:358:34: error: exception specification is not available until end of class definition 358 | BOOST_DEFAULTED_FUNCTION(~invalid_command_line_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:383:34: error: exception specification is not available until end of class definition 383 | BOOST_DEFAULTED_FUNCTION(~validation_error() throw(), {}) | ^ 11 errors generated.
"clang++-19" -std=c++23 -fvisibility-inlines-hidden -fPIC -m64 -pthread -O3 -Wall -fvisibility=hidden -Wno-inline --target=x86_64-pc-linux -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o" "libs/program_options/src/split.cpp"
The RC builds fine in C++20 (same compiler and system).
-- The Release managers
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On Apr 6, 2024, at 10:35 PM, Marshall Clow
wrote: On Apr 6, 2024, at 12:57 PM, Ruben Perez
wrote: As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log:
Ruben —
Did the 1.85.0 beta have this same problem?
I suspect that the problem was introduced in this commit:
commit 847b130e19a9e5118bfb5486e9b4d4f6ab2797a2
Author: Ed Catmur
Thanks, — Marshall
clang-linux.compile.c++ bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o In file included from libs/program_options/src/split.cpp:10: In file included from ./boost/program_options/parsers.hpp:12: In file included from ./boost/program_options/detail/cmdline.hpp:11: ./boost/program_options/errors.hpp:124:34: error: exception specification is not available until end of class definition 124 | BOOST_DEFAULTED_FUNCTION(~error_with_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:212:34: error: exception specification is not available until end of class definition 212 | BOOST_DEFAULTED_FUNCTION(~multiple_values() throw(), {}) | ^ ./boost/program_options/errors.hpp:223:34: error: exception specification is not available until end of class definition 223 | BOOST_DEFAULTED_FUNCTION(~multiple_occurrences() throw(), {}) | ^ ./boost/program_options/errors.hpp:236:33: error: exception specification is not available until end of class definition 236 | BOOST_DEFAULTED_FUNCTION(~required_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:261:34: error: exception specification is not available until end of class definition 261 | BOOST_DEFAULTED_FUNCTION(~error_with_no_option_name() throw(), {}) | ^ ./boost/program_options/errors.hpp:273:34: error: exception specification is not available until end of class definition 273 | BOOST_DEFAULTED_FUNCTION(~unknown_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:286:34: error: exception specification is not available until end of class definition 286 | BOOST_DEFAULTED_FUNCTION(~ambiguous_option() throw(), {}) | ^ ./boost/program_options/errors.hpp:323:34: error: exception specification is not available until end of class definition 323 | BOOST_DEFAULTED_FUNCTION(~invalid_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:343:34: error: exception specification is not available until end of class definition 343 | BOOST_DEFAULTED_FUNCTION(~invalid_config_file_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:358:34: error: exception specification is not available until end of class definition 358 | BOOST_DEFAULTED_FUNCTION(~invalid_command_line_syntax() throw(), {}) | ^ ./boost/program_options/errors.hpp:383:34: error: exception specification is not available until end of class definition 383 | BOOST_DEFAULTED_FUNCTION(~validation_error() throw(), {}) | ^ 11 errors generated.
"clang++-19" -std=c++23 -fvisibility-inlines-hidden -fPIC -m64 -pthread -O3 -Wall -fvisibility=hidden -Wno-inline --target=x86_64-pc-linux -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/program_options/build/clang-linux-19/release/cxxstd-23-iso/threading-multi/visibility-hidden/split.o" "libs/program_options/src/split.cpp"
The RC builds fine in C++20 (same compiler and system).
-- The Release managers
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
On 4/7/24 20:39, Marshall Clow via Boost wrote:
On Apr 6, 2024, at 10:35 PM, Marshall Clow
wrote: On Apr 6, 2024, at 12:57 PM, Ruben Perez
wrote: As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log:
Ruben —
Did the 1.85.0 beta have this same problem?
I suspect that the problem was introduced in this commit:
commit 847b130e19a9e5118bfb5486e9b4d4f6ab2797a2 Author: Ed Catmur
Date: Thu Feb 23 11:39:17 2023 +0000 Use BOOST_DEFAULTED_FUNCTION on empty destructors (#122)
The compiler-generated copy constructor and copy assignment operator are deprecated since C++11 on classes with user-declared destructors.
This change allows clean compilation with the -Wdeprecated-copy-dtor/-Wdeprecated-copy-with-user-provided-dtor flag.
Co-authored-by: Ed Catmur
No, the problem existed before that. The problem is in the `throw()` specifications, which existed before the commit you referenced. I think, it was at least partly introduced by fd7b310993133fd280f4967bc3a30da7ab3dddee. In fact, at that point it was not a problem because at that time C++20 did not exist yet and `throw()` specifications were fine.
And it looks like it has been fixed in develop:
https://github.com/boostorg/program_options/commit/1d7cceff6c8a5d40593776d75...
Is that correct?
Yes, this commit should fix the problem. I will leave it to Peter to ask for the permission to merge it, if he considers it important enough.
On 4/8/24 00:11, Andrey Semashev wrote:
On 4/7/24 20:39, Marshall Clow via Boost wrote:
On Apr 6, 2024, at 10:35 PM, Marshall Clow
wrote: On Apr 6, 2024, at 12:57 PM, Ruben Perez
wrote: As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log:
Ruben —
Did the 1.85.0 beta have this same problem?
I suspect that the problem was introduced in this commit:
commit 847b130e19a9e5118bfb5486e9b4d4f6ab2797a2 Author: Ed Catmur
Date: Thu Feb 23 11:39:17 2023 +0000 Use BOOST_DEFAULTED_FUNCTION on empty destructors (#122)
The compiler-generated copy constructor and copy assignment operator are deprecated since C++11 on classes with user-declared destructors.
This change allows clean compilation with the -Wdeprecated-copy-dtor/-Wdeprecated-copy-with-user-provided-dtor flag.
Co-authored-by: Ed Catmur
No, the problem existed before that. The problem is in the `throw()` specifications, which existed before the commit you referenced.
I think, it was at least partly introduced by fd7b310993133fd280f4967bc3a30da7ab3dddee. In fact, at that point it was not a problem because at that time C++20 did not exist yet and `throw()` specifications were fine.
Here's my understanding of the chronology the problem: 1. In 2012, fd7b310993133fd280f4967bc3a30da7ab3dddee adds a number of exception classes in Boost.ProgramOptions. These exception classes have `throw()` exception specifications on their destructors and other member functions. 2. C++20 is released. It removes `throw()` specifications from the standard. Compilers keep accepting `throw()` in C++20 and later modes, which is why we didn't notice. 3. In 2023, 847b130e19a9e5118bfb5486e9b4d4f6ab2797a2 changes the destructors to `= default` in C++11 and up. This may be a contributing factor to the clang breakage, but not the culprit. 4. In clang-19 (which is currently in development), something broke in this support for `throw()` in C++23 mode. 5. This was reported first in https://lists.boost.org/Archives/boost/2024/03/256179.php and then in https://lists.boost.org/Archives/boost/2024/04/256445.php. Note the first reported mentions that the problem is fixed if `throw()` specifications are changed to `BOOST_NOEXCEPT`. 6. I create https://github.com/boostorg/program_options/pull/133 with the fix proposed by Peter Dimov in https://lists.boost.org/Archives/boost/2024/03/256180.php. 7. Peter merges the PR to develop. So, the root problem is that we were using `throw()` unconditionally because the code was not updated for C++20. The fact that clang-19 emits an error only in C++23 mode, and an error that is misleading (because exception specification must be interpreted after the enclosing class definition is complete), is probably a bug in clang, but given that we shouldn't be using `throw()` in the first place, that point is moot. I'll note again that clang-19 is not released yet. I hope, this clarifies things.
And it looks like it has been fixed in develop:
https://github.com/boostorg/program_options/commit/1d7cceff6c8a5d40593776d75...
Is that correct?
Yes, this commit should fix the problem. I will leave it to Peter to ask for the permission to merge it, if he considers it important enough.
Andrey Semashev wrote:
And it looks like it has been fixed in develop:
https://github.com/boostorg/program_options/commit/1d7cceff6c8a5d40593776d75...
Is that correct?
Yes, this commit should fix the problem. I will leave it to Peter to ask for the permission to merge it, if he considers it important enough.
If Marshall wants me to merge it, I'll merge it. :-)
On Apr 7, 2024, at 5:33 PM, Peter Dimov via Boost
Andrey Semashev wrote:
And it looks like it has been fixed in develop:
https://github.com/boostorg/program_options/commit/1d7cceff6c8a5d40593776d75...
Is that correct?
Yes, this commit should fix the problem. I will leave it to Peter to ask for the permission to merge it, if he considers it important enough.
If Marshall wants me to merge it, I'll merge it. :-)
Yes, please. — Marshall
Marshall Clow wrote:
On Apr 7, 2024, at 5:33 PM, Peter Dimov via Boost
wrote: Andrey Semashev wrote:
And it looks like it has been fixed in develop:
https://github.com/boostorg/program_options/commit/1d7cceff6c8a5d4059
3776d7578a984852df5b75
Is that correct?
Yes, this commit should fix the problem. I will leave it to Peter to ask for the permission to merge it, if he considers it important enough.
If Marshall wants me to merge it, I'll merge it. :-)
Yes, please.
Cherry-picked 1d7cceff6c8a5d40593776d7578a984852df5b75 to master.
Program options seem to fail to build under C++23 (Ubuntu 22.04, clang-19, release). Here's the build log:
Ruben —
Did the 1.85.0 beta have this same problem?
Thanks, — Marshall
Sorry for the late reply. I can confirm that * It happens in the beta, as Andrey suggested. * It doesn't happen with clang-18 (I actually thought clang-19 was released, but was using the unstable apt packages inadvertently. Sorry for the noise). Regards, Ruben.
On 4/5/24 16:31, Marshall Clow via Boost wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Is it possible to squeeze in a documentation fix in Boost.Log? https://github.com/boostorg/log/compare/master...develop This fixes a few links to library documentation from Boost.Log docs.
On Apr 7, 2024, at 4:15 PM, Andrey Semashev via Boost
wrote: On 4/5/24 16:31, Marshall Clow via Boost wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Is it possible to squeeze in a documentation fix in Boost.Log?
https://github.com/boostorg/log/compare/master...develop
This fixes a few links to library documentation from Boost.Log docs.
Normally, I’d say no, because it’s so late in the release cycle, but since we’re doing a RC2, and this is very low risk, … go ahead. — Marshall
On 4/8/24 03:12, Marshall Clow via Boost wrote:
On Apr 7, 2024, at 4:15 PM, Andrey Semashev via Boost
wrote: On 4/5/24 16:31, Marshall Clow via Boost wrote:
The first release candidates for the 1.85.0 release are now available at: https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/
The SHA256 checksums are as follows:
de84c538aaadf2388362e006d73d0be783541288d87a9ef68e906995efc2148d boost_1_85_0_rc1.tar.gz dd8baccd0b5ca534ad3717a07b426391fe6d49b6b84bf07d10e72792a5d1ba10 boost_1_85_0_rc1.7z 289ab7784b9297e13938876f698ced91f734f9a80f91099d35803b78d15c0210 boost_1_85_0_rc1.tar.bz2 84c35ef72efde30725de7bca8ccf399cd8d205a0d5b249465cf86c818291b7b7 boost_1_85_0_rc1.zip
As always, the release managers would appreciate it if you download the candidate of your choice and give building it a try. Please report both success and failure, and anything else that is noteworthy.
Is it possible to squeeze in a documentation fix in Boost.Log?
https://github.com/boostorg/log/compare/master...develop
This fixes a few links to library documentation from Boost.Log docs.
Normally, I’d say no, because it’s so late in the release cycle, but since we’re doing a RC2, and this is very low risk, … go ahead.
Done, thanks.
participants (8)
-
Andrey Semashev
-
Marshall Clow
-
Mohammad Nejati [ashtum]
-
Nigel Stewart
-
Peter Dimov
-
Ruben Perez
-
Tom Kent
-
Дмитрий Архипов