chore: migrate from deprecated absl types to std equivalents - #16400
Conversation
There was a problem hiding this comment.
Code Review
This pull request migrates various Abseil utilities (such as absl::variant, absl::visit, absl::holds_alternative, absl::get, absl::conjunction, absl::disjunction, and absl::void_t) to their standard C++17 library equivalents (std::variant, std::visit, etc.) across the codebase. The review feedback identifies a potential compilation failure in default_row_reader.cc due to mismatched return types, an unused Abseil header in list_objects_and_prefixes_reader.h, and a missed migration from absl::optional to std::optional in validate_metadata.cc.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #16400 +/- ##
==========================================
+ Coverage 92.24% 92.26% +0.01%
==========================================
Files 2246 2246
Lines 212136 212135 -1
==========================================
+ Hits 195692 195719 +27
+ Misses 16444 16416 -28 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
34c632d to
8bf8fc3
Compare
|
/gemini review |
There was a problem hiding this comment.
Code Review
This pull request migrates the codebase from Abseil's variant, optional, and related utilities to their standard C++17 library equivalents, updating both source files and build configurations (Bazel and CMake). The review feedback focuses on enforcing the repository's style guide regarding type deduction (auto). Specifically, it highlights multiple instances where auto is used inappropriately, such as when it obscures domain objects (like Status, ReadPayload, and ObjectMetadata), hides primitive/scalar types, or leads to unnecessary copies instead of using const&.
There are no logic changes in this PR, simply updating to C++17 std types that used to use absl types. Changes in the use of
autowill be made in a separate PR.fixes #16354