abseil-cpp: Update to version
20250814.0
- Update from version
20250127.0 to
20250814.0
- Update of rootfile
- Changelog
20250814.0
What's New:
absl::Mutex now contains lower-case method names like lock() and
shared_lock() to align with standard C++ mutex methods. This allows
absl::Mutex to be used with std::scoped_lock and friends. The old names
are still present but may be removed in a future release.
The RAII Mutex-locker types like absl::MutexLock, absl::ReaderMutexLock,
and friends now accept references to absl::Mutex. The pointer-accepting
constructors are now deprecated, and may be removed in a future release.
Breaking Changes:
Nullability template types, which were deprecated in the May 2025 release,
have been removed.
absl::string_view(nullptr), which is undefined behavior according to the
C++ standard, now triggers an assert failure. Note that unless you
changed absl/base/options.h, absl::string_view is an alias for
std::string_view, so by default you will be inheriting the behavior of
your standard library instead of using the Abseil implementation.
Abseil's hash tables now require a hash function that has a return type
with size >= sizeof(size_t).
Known Issues
CHECK_<OP> is failing to compile on older versions of GCC when one of the
arguments is a C-style string. This is fixed by
ba9a180 and will be
included in a future patch release.
20250512.1
What's New:
The polyfill types absl::any, absl::optional, and absl::variant are now
aliases for std::any, std::optional, and std::variant in all builds.
(Note that the polyfill implementation absl::string_view remains at the
present time, but it defaults to being an alias std::string_view in all
builds.)
Added absl::FastTypeId<Type>(), which evaluates at compile-time to a
unique id for the passed-in type.
Added absl::endian and absl::byteswap polyfills (
25bce12).
Breaking Changes:
Abseil now requires at least C++17 and follows Google's Foundational C++
Support Policy. See this table for a list of currently supported versions
compilers, platforms, and build tools.
Nullability template types are deprecated and will be removed in a future
release. The macro-style annotations (absl_nonnull, absl_nullable) should
be used instead (
caf854d).
Known Issues
None known at this time.
20250512.0
What's New:
The polyfill types absl::any, absl::optional, and absl::variant are now
aliases for std::any, std::optional, and std::variant in all builds.
(Note that the polyfill implementation absl::string_view remains at the
present time, but it defaults to being an alias std::string_view in all
builds.)
Added absl::FastTypeId<Type>(), which evaluates at compile-time to a
unique id for the passed-in type.
Added absl::endian and absl::byteswap polyfills (
25bce12).
Breaking Changes:
Abseil now requires at least C++17 and follows Google's Foundational C++
Support Policy. See this table for a list of currently supported versions
compilers, platforms, and build tools.
Nullability template types are deprecated and will be removed in a future
release. The macro-style annotations (absl_nonnull, absl_nullable) should
be used instead (
caf854d).
Known Issues
This release fails to compile with GCC7 and GCC8. This is fixed in
20250512.1.
20250127.1
What's New:
Added support for Bazel 8.0
Added support for Bazel Platforms for better portability
Added ABSL_ATTRIBUTE_VIEW and ABSL_ATTRIBUTE_OWNER for 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 BUILD files now reference repositories by their canonical names from
the Bazel Central Registry. For example, Abseil is now @abseil-cpp
instead of @com_google_absl, and GoogleTest is now @googletest instead of
@com_google_googletest. Users still using the old WORKSPACE system may
need to use repo_mapping on repositories that still use the old names.
See
90a7ba6 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.
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>