abseil 20250127.1
Created by brew bump
Created with brew bump-formula-pr.
# Abseil LTS 20250127.1What's New:
- Added support for Bazel 8.0
- Added support for Bazel Platforms for better portability
- Added
ABSL_ATTRIBUTE_VIEWandABSL_ATTRIBUTE_OWNERfor diagnosing certain lifetime issues - Many performance improvements
- A security issue in hash container create/resize has been fixed. Note that the latest patch releases for previous LTS versions also address this issue.
Breaking Changes:
- Bazel
BUILDfiles now reference repositories by their canonical names from the Bazel Central Registry. For example, Abseil is now@abseil-cppinstead of@com_google_absl, and GoogleTest is now@googletestinstead of@com_google_googletest. Users still using the oldWORKSPACEsystem may need to userepo_mappingon repositories that still use the old names. See https://github.com/abseil/abseil-cpp/commit/90a7ba66e88bf1b6fe98b196208448704766dac0 for an example.
Other:
- This will be the last release to support C++14. Future releases will require at least C++17.
Known Issues
- None known at this time.
Baseline: 98ebd7e1292d3064ea68105368ee3c334ded63d0 Cherry-pick: 9ac7062b1860d895fb5a8cbf58c3e9ef8f674b5f Cherry-pick: d9e4955c65cd4367dd6bf46f4ccb8cd3d100540b (Patch 1)
#206500
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. To keep this pull request open, add a help wanted or in progress label.
Rebased this, let's try again.
Notes (for myself, or for anyone else who wants to push a fix here) on build failures:
libpulsar
Can't find asio headers for some reason:
/private/tmp/libpulsar-20250723-48918-7r6shf/apache-pulsar-client-cpp-3.7.0/lib/ClientConnection.h:28:10: fatal error: 'asio/io_service.hpp' file not found
28 | #include <asio/io_service.hpp>
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /private/tmp/libpulsar-20250723-48918-7r6shf/apache-pulsar-client-cpp-3.7.0/lib/AckGroupingTrackerEnabled.cc:25:
/private/tmp/libpulsar-20250723-48918-7r6shf/apache-pulsar-client-cpp-3.7.0/lib/ClientConnection.h:28:10: fatal error: 'asio/io_service.hpp' file not found
28 | #include <asio/io_service.hpp>
| ^~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[3]: *** [lib/CMakeFiles/PULSAR_OBJECT_LIB.dir/AckGroupingTracker.cc.o] Error 1
make[3]: *** Waiting for unfinished jobs....
Suggested solution: disable asio. Add FIXME to address later.
mysql
Fails at executing mysql-test-run.pl
CURRENT_TEST: main.status
mysqltest: At line 80: Query failed.
Query: 'reap'
Returned error: 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
The result from queries just before the failure was:
# Sending:
update t1 set n = get_lock('mysqltest_lock', 100) ;
# Switched to connection: con1
# Wait for the first UPDATE to get blocked.
# Sending:
update t1 set n = 3;
# Switched to connection: default
# wait for the second UPDATE to get blocked
Timeout in wait_condition.inc for select 1 from INFORMATION_SCHEMA.PROCESSLIST
where ID = (select connection_id()) and STATE = "Waiting for table level lock"
select release_lock('mysqltest_lock');
release_lock('mysqltest_lock')
1
# Switched to connection: con2
# Reaping first UPDATE
select release_lock('mysqltest_lock');
release_lock('mysqltest_lock')
1
# Switched to connection: con1
# Reaping second UPDATE
safe_process[4238]: Child process: 4239, exit: 1
- the logfile can be found in '/private/tmp/mysql-20250723-67198-eotm25/mysql-9.3.0/mysql-test-vardir/log/main.status/status.log'
No ideas here. It's tempting to just skip this test so the build can succeed, but that feels like a recipe for shipping silently broken builds.
[email protected]
Very similar to mysql.
[email protected]
libc++ weirdness:
In file included from /private/tmp/mysqlA8.0-20250723-8217-t4422z/mysql-8.0.42/storage/perfschema/pfs_engine_table.cc:29:
In file included from /private/tmp/mysqlA8.0-20250723-8217-t4422z/mysql-8.0.42/storage/perfschema/pfs_engine_table.h:32:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/vector:325:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/formatter_bool.h:19:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/formatter_integral.h:21:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/formatter_output.h:22:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/parser_std_format_spec.h:39:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:821:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>'
821 | static_assert(is_same<_CharT, typename traits_type::char_type>::value,
| ^
/private/tmp/mysqlA8.0-20250723-8217-t4422z/mysql-8.0.42/sql/rpl_log_encryption.h:101:16: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here
101 | Key_string m_value;
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here
23 | struct _LIBCPP_TEMPLATE_VIS char_traits;
| ^
In file included from /private/tmp/mysqlA8.0-20250723-8217-t4422z/mysql-8.0.42/storage/perfschema/pfs_engine_table.cc:29:
In file included from /private/tmp/mysqlA8.0-20250723-8217-t4422z/mysql-8.0.42/storage/perfschema/pfs_engine_table.h:32:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/vector:325:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/formatter_bool.h:16:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/concepts.h:16:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__format/format_parse_context.h:16:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string_view:300:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>'
300 | static_assert(is_same<_CharT, typename traits_type::char_type>::value,
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__type_traits/is_convertible.h:22:99: note: in instantiation of template class 'std::basic_string_view<unsigned char>' requested here
22 | struct _LIBCPP_TEMPLATE_VIS is_convertible : public integral_constant<bool, __is_convertible(_T1, _T2)> {};
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:746:29: note: in instantiation of template class 'std::is_convertible<const std::basic_string<unsigned char> &, std::basic_string_view<unsigned char>>' requested here
746 | : public _BoolConstant< is_convertible<const _Tp&, basic_string_view<_CharT, _Traits> >::value &&
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:1152:27: note: in instantiation of template class 'std::__can_be_converted_to_string_view<unsigned char, std::char_traits<unsigned char>, std::basic_string<unsigned char>>' requested here
1152 | __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:1155:93: note: while substituting prior template arguments into non-type template parameter [with _Tp = std::basic_string<unsigned char>]
1155 | _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS _LIBCPP_CONSTEXPR_SINCE_CXX20 explicit basic_string(const _Tp& __t)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
1156 | : __r_(__default_init_tag(), __default_init_tag()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1157 | __self_view __sv = __t;
| ~~~~~~~~~~~~~~~~~~~~~~~
1158 | __init(__sv.data(), __sv.size());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1159 | }
| ~
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:753:7: note: while substituting deduced template arguments into function template 'basic_string' [with _Tp = std::basic_string<unsigned char>, $1 = (no value)]
753 | class basic_string {
| ^
/private/tmp/mysqlA8.0-20250723-8217-t4422z/mysql-8.0.42/sql/rpl_log_encryption.h:99:10: note: while declaring the implicit copy constructor for 'Rpl_encryption_key'
99 | struct Rpl_encryption_key {
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here
23 | struct _LIBCPP_TEMPLATE_VIS char_traits;
| ^
This probably just needs a patch to be backported. But presumably will then run into the problem that mysql and [email protected] are having.
Upstream fix to backport: https://github.com/mysql/mysql-server/commit/cceb500e8aa52d87d75851e13f9e315418bca724
Alternatively, it looks like we can update to 8.0.43.
ola
libc++ weirdness too:
In file included from plugins/artnet/artnet_loadtest.cpp:24:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:821:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>'
821 | static_assert(is_same<_CharT, typename traits_type::char_type>::value,
| ^
./include/ola/rdm/RDMCommand.h:578:33: note: in instantiation of template class 'std::basic_string<unsigned char>' requested here
578 | return InflateFromData(input.data(), input.size(), status_code, request);
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here
23 | struct _LIBCPP_TEMPLATE_VIS char_traits;
| ^
In file included from plugins/artnet/artnet_loadtest.cpp:24:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:648:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string_view:300:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>'
300 | static_assert(is_same<_CharT, typename traits_type::char_type>::value,
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__type_traits/is_convertible.h:22:99: note: in instantiation of template class 'std::basic_string_view<unsigned char>' requested here
22 | struct _LIBCPP_TEMPLATE_VIS is_convertible : public integral_constant<bool, __is_convertible(_T1, _T2)> {};
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:746:29: note: in instantiation of template class 'std::is_convertible<const std::basic_string<unsigned char> &, std::basic_string_view<unsigned char>>' requested here
746 | : public _BoolConstant< is_convertible<const _Tp&, basic_string_view<_CharT, _Traits> >::value &&
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:1152:27: note: in instantiation of template class 'std::__can_be_converted_to_string_view<unsigned char, std::char_traits<unsigned char>, std::basic_string<unsigned char>>' requested here
1152 | __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:1155:93: note: while substituting prior template arguments into non-type template parameter [with _Tp = std::basic_string<unsigned char>]
1155 | _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS _LIBCPP_CONSTEXPR_SINCE_CXX20 explicit basic_string(const _Tp& __t)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
1156 | : __r_(__default_init_tag(), __default_init_tag()) {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1157 | __self_view __sv = __t;
| ~~~~~~~~~~~~~~~~~~~~~~~
1158 | __init(__sv.data(), __sv.size());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1159 | }
| ~
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:753:7: note: while substituting deduced template arguments into function template 'basic_string' [with _Tp = std::basic_string<unsigned char>, $1 = (no value)]
753 | class basic_string {
| ^
./include/ola/rdm/RDMFrame.h:40:7: note: while declaring the implicit copy constructor for 'RDMFrame'
40 | class RDMFrame {
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here
23 | struct _LIBCPP_TEMPLATE_VIS char_traits;
| ^
Upstream issue: https://github.com/OpenLightingProject/ola/issues/1982 Potential fix: https://github.com/OpenLightingProject/ola/pull/1989
percona-server
/private/tmp/percona-server-20250723-25470-kn6f9x/percona-server-8.4.3-3/libs/mysql/serialization/archive.h:84:43: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
84 | return Archive_derived_type::template get_size(std::forward<Type>(arg));
| ^
/private/tmp/percona-server-20250723-25470-kn6f9x/percona-server-8.4.3-3/libs/mysql/serialization/archive.h:91:43: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw]
91 | return Archive_derived_type::template get_size_written();
| ^
Maybe just -Wno-missing-template-arg-list-after-template-kw?
[email protected]
More libc++ weirdness:
/Library/Developer/CommandLineTools/SDKs/MacOSX15.sdk/usr/include/c++/v1/string:821:42: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>'
821 | static_assert(is_same<_CharT, typename traits_type::char_type>::value,
| ^
pytorch
CMake Error at third_party/psimd/CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):
Compatibility with CMake < 3.5 has been removed from CMake.
Update the VERSION argument <min> value. Or, use the <min>...<max> syntax
to tell CMake that the project requires at least <min> but has been updated
to work with policies introduced by <max> or earlier.
Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.
Needs the same fix as openvino.
For percona-server, we might be able to use FreeBSD's patch: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280695
Dropped ola and protoc-gen-grpc-java. No idea how to fix them, and I'm not convinced they should block this if everything else builds.
Trying to fix percona-server at #225846
:x: @carlocab bottle request for protoc-gen-grpc-java failed.
:shipit: @carlocab has requested bottles to be published to this PR.
[!CAUTION] Please do not push to this PR branch before the bottle commits have been pushed, as this results in a state that is difficult to recover from. If you need to resolve a merge conflict, please use a merge commit. Do not force-push to this PR branch.