Use std::optional instead of absl::optional#45607
Conversation
|
Wow thanks for slogging through this. I think we should lock main to get CI pass for this PR and then merge it. Otherwise merge conflicts will be wack-a-mole. /wait-any |
|
/wait-any |
|
PR for contrib: #45658 |
|
need to wait for the release, and address the merge conflicts. /wait |
ea8c030 to
3b0ec3f
Compare
3b0ec3f to
0828ab3
Compare
|
@yanavlasov @botengyao here is resynced version after security release. Feel free to merge if all passes and looks good |
|
😱 8000+ |
|
Oh, sorry, my PR with the function change caused merge conflicts and GH says it is too complex to resolve in web editor. I will hold off on checking exception refactors, so we can close on this one. /wait |
|
Also looks like mobile format is not happy. https://github.com/envoyproxy/envoy/actions/runs/28097997526/job/83192404353#step:21:772 |
0828ab3 to
62419e5
Compare
Abseil has deprecated absl::optional in favor of the standard library optional type. Migrate Envoy sources and tests to std::optional, std::nullopt, and std::make_optional. Update the format checker to reject the deprecated absl optional APIs and cover the diagnostics with check_format fixtures. Signed-off-by: Kateryna Nezdolii <kateryna.nezdolii@gmail.com>
62419e5 to
e7ebaed
Compare
|
rebased on top of latest main, fixed mobile format check, fingers crossed all passes now |
|
@yanavlasov ptal |
Conflicts were confined to the RESP3-extended client factory lineage and resolved by adopting upstream envoyproxy#45607 std::optional/std::nullopt spelling while keeping the RESP3 additions: - ClientFactory/ClientImpl create + ctor signatures keep the appended upstream_protocol_version and OptRef<Stats::Counter> hello-failure params (OptRef args stay absl::nullopt per OptRef convention) - ClientFactoryImpl::create keeps the unconditional initialize() (init routing moved inside ClientImpl by the RESP3 init state machine) - proxy_filter.cc keeps both new includes: upstream <openssl/mem.h> (envoyproxy#45472 constant-time password compare) and RESP3 <algorithm> - HEXPIRE (envoyproxy#44887) and cluster string_view (envoyproxy#45967) merged cleanly Signed-off-by: Doogie Min <doogie.min@sendbird.com>
Abseil is deprecating absl::optional, so migrate Envoy's codebase to std::optional, std::nullopt, and std::make_optional.
Update the format checker to reject the deprecated Abseil optional APIs and header, and refresh the formatter test fixtures.
Codex/Ai assisted.
Commit Message:
Additional Description:
Risk Level: Low
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]