Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Upgrade to 1.64.0 #54

Open
wants to merge 1,772 commits into
base: rs-release
Choose a base branch
from
Open

[WIP] Upgrade to 1.64.0 #54

wants to merge 1,772 commits into from

Conversation

BusyJay
Copy link
Member

@BusyJay BusyJay commented May 26, 2024

No description provided.

yijiem and others added 30 commits March 20, 2024 14:47
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36131

COPYBARA_INTEGRATE_REVIEW=grpc#36131 from yijiem:no-logging f3f6381
PiperOrigin-RevId: 617630514
I was surprised to see that the C++ core interprets "grpc-accept-encoding: deflate" like HTTP: it compresses messages using zlib with deflate compression, rather than using raw deflate. Matching HTTP semantics makes sense, of course, but this misnomer has historically confused HTTP implementations too.

This detail didn't seem important enough to warrant inclusion in the main protocol specification, so I've proposed an addition to `docs/compression.md` to document the expected behavior. I'm happy to move the addition around if you'd prefer it elsewhere.

Closes grpc#36113

COPYBARA_INTEGRATE_REVIEW=grpc#36113 from akshayjshah:deflate 9177d39
PiperOrigin-RevId: 617635558
Let's use Bazel 7 by default.

Closes grpc#36105

PiperOrigin-RevId: 617653203
Broken in grpc#36116

Closes grpc#36152

COPYBARA_INTEGRATE_REVIEW=grpc#36152 from drfloob:fix/fix_build_deps/36116 e74054a
PiperOrigin-RevId: 617721871
Adding testing for `Size()` on `MeshLabelsIterable` as promised on grpc#35371

This method doesn't get used the OTel C++ library at present so it was untested earlier, and bugs in its implementation were noticed later. To avoid that issue in the future, adding manual testing of this method.

Changes -
* Moved `MeshLabelsIterable` to the header to be able to test its Size method directly. Also had to move around some internals to be able to do so.
* Replaced `absl::variant<grpc_core::Slice, StructPb> metadata_` from decoding the metadata lazily to just decoding it in the constructor. I don't remember the original thinking behind this. Maybe I wanted the decoding to happen lazily, but there doesn't seem to be much gain from doing it lazily, we instead have to deal with the overhead of `variant`.

Closes grpc#35769

COPYBARA_INTEGRATE_REVIEW=grpc#35769 from yashykt:CsmMeshLabelsIterableSizeTesting ec9033b
PiperOrigin-RevId: 617901839
Closes grpc#36150

COPYBARA_INTEGRATE_REVIEW=grpc#36150 from ctiller:drop-the-vowels 04d0422
PiperOrigin-RevId: 617958770
…ders (grpc#36148)

These two things are different (event engine being a context has nothing to do with the ability to get a default event engine).

Lumping them into the same header means that things that want the context also need to want the default event engine declarations, which in turn pull in CoreConfiguration -- which ultimately means that nothing that is depended on by CoreConfiguration can consume the event engine context, which is undesirable (and causing dependency loops in current work).

Also includes an impressive number of cleanups to `grpc_base` because I ran `fix_build_deps` on that target as part of this.

Closes grpc#36148

COPYBARA_INTEGRATE_REVIEW=grpc#36148 from ctiller:context-isnt-default--default-isnt-context a4fdad9
PiperOrigin-RevId: 617961015
… manifest (grpc#36080)

grpc#35923 removed the use of mach_absolute_time in gpr.

There is still one usage in protobuf, which they have removed the usage in protocolbuffers/protobuf#15554 but we haven't update yet.
However gRPC library does not depends on protobuf but upb, so we should no longer need NSPrivacyAccessedAPICategorySystemBootTime any more.

Closes grpc#36080

COPYBARA_INTEGRATE_REVIEW=grpc#36080 from HannahShiSFB:remove-privacy-for-mach_absolute_time dacccaf
PiperOrigin-RevId: 617995787
Closes grpc#36164

COPYBARA_INTEGRATE_REVIEW=grpc#36164 from drfloob:again 8ab709d
PiperOrigin-RevId: 618088552
…pc#36167)

We've seen some recent crashes with the work_serializer_dispatch experiment where the picker is null when we try to do an LB pick.  The only code-path we've found where the picker is set to null is the one triggered by the channel_idle filter, so we think we may be hitting a race condition where the call is started on the client_channel filter after the request to go idle has hit the WorkSerializer but before it has actually run.

If that is the cause, then the right fix is to ensure that once we dispatch the request to go idle, we enqueue any subsequent RPC and dispatch a request to exit idle.  However, that will require a bit of work, and it will be easier to do as part of the new call v3 channel stack, so we don't want to invest time in fixing this in the current implementation.

For now, we add a work-around where we fail the RPC if the picker is null, which is better than crashing but not ideal.

Closes grpc#36167

COPYBARA_INTEGRATE_REVIEW=grpc#36167 from markdroth:client_channel_idle_race_workaround 0207dd3
PiperOrigin-RevId: 618271781
Internal ref : b/324720620

Closes grpc#36168

COPYBARA_INTEGRATE_REVIEW=grpc#36168 from yashykt:FixStaticOrderInitFiasco 14f2a89
PiperOrigin-RevId: 618328195
…pc#36070)

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36070

COPYBARA_INTEGRATE_REVIEW=grpc#36070 from yijiem:grpc-metrics 7265372
PiperOrigin-RevId: 618529035
Remove rolled out experiments v3_compression_filter, v3_server_auth_filter; Extend WIP v3_channel_idle_filter for a bit, and extend work_serializer_clears_time_cache until OSS issues with work_serializer_dispatch are resolved.

Closes grpc#36166

COPYBARA_INTEGRATE_REVIEW=grpc#36166 from ctiller:updat3 2c7223f
PiperOrigin-RevId: 619057925
Closes grpc#36178

COPYBARA_INTEGRATE_REVIEW=grpc#36178 from markdroth:b64_remove 0139e3b
PiperOrigin-RevId: 619288082
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36179

COPYBARA_INTEGRATE_REVIEW=grpc#36179 from yousukseung:work-serializer-dispatch-extend cb47ee8
PiperOrigin-RevId: 619309808
…by ensuring no inline slices are created and returned by promise_endpoint.

The PR also updates the transport to read padding and message in one read instead of two.

PiperOrigin-RevId: 619374897
…pc#36126)

This removes two Executor::Run dependencies, and requires that all ServerCallbackCall implementations implement the new `RunAsync` method. There's one other known other implementation of ServerCallbackCall that will need to be updated.

We could also support an "inefficient" path that uses the default engine (not implemented here), for all subclasses that do not want to update. As far as anyone is aware, the ServerCallbackCall class was never intended to be subclassed externally.

Closes grpc#36126

COPYBARA_INTEGRATE_REVIEW=grpc#36126 from drfloob:server-callback-on-ee 6242a78
PiperOrigin-RevId: 619621598
Closes grpc#36181

COPYBARA_INTEGRATE_REVIEW=grpc#36181 from yashykt:RemoveRegisteredMethodLookupInTransport 3709bfa
PiperOrigin-RevId: 619695276
Closes grpc#36183

COPYBARA_INTEGRATE_REVIEW=grpc#36183 from yashykt:OTelEnableDisableMetrics 948abe7
PiperOrigin-RevId: 6196968
Closes grpc#36186

COPYBARA_INTEGRATE_REVIEW=grpc#36186 from markdroth:xds_features_update 2299a1c
PiperOrigin-RevId: 619940237
As title

Closes grpc#36187

COPYBARA_INTEGRATE_REVIEW=grpc#36187 from apolcyn:vis_tag 6ce3930
PiperOrigin-RevId: 619955425
…tes on event engine endpoints which need to work with the chaotic good transport.

PiperOrigin-RevId: 620089768
This PR is a follow up to this PR : grpc@2c49416

Flipping the flag to use absl logging instead of gpr_platform_log

PiperOrigin-RevId: 620134323
This is to upgrade Protobuf to v26.1 along with upb, and utf8_range.

Closes grpc#35796

PiperOrigin-RevId: 620259696
…#36185)

Fix for grpc#36162

Increase the regex timeout to 1 second. If a timeout occurs then log that the line could not be parsed.

Closes grpc#36185

COPYBARA_INTEGRATE_REVIEW=grpc#36185 from tonydnewell:grpc.tools-regex-timeout 324b301
PiperOrigin-RevId: 620767619
Fix C# document comments when there is an extra / at the start of a comment line.
See grpc#35905

Related to protocolbuffers/protobuf#15955 which also fixes the issue in protoc compiler.

Closes grpc#36000

COPYBARA_INTEGRATE_REVIEW=grpc#36000 from tonydnewell:csharp-comment-fix ca1e0cf
PiperOrigin-RevId: 620772312
…36118)

Internally, use `std::vector` instead of `ChunkedVector` to hold extra metadatum.

I'm not totally convinced this is the right move, so it's going to be a try it and monitor for a month or so thing... I might roll back if performance is actually affected (but I think we'll see some wins and losses and overall about a wash).

Closes grpc#36118

COPYBARA_INTEGRATE_REVIEW=grpc#36118 from ctiller:YUPYUPYUP 68e0acd
PiperOrigin-RevId: 620902195
…orphanability (grpc#36194)

Previously we wrote `DualRefCounted : public Orphanable`, but this is wrong: `Orphan`-ing is a private implementation detail to `DualRefCounted`, but a public interface to `Orphanable`.

This bug means that it's possible to write `OrphanablePtr<T>` when `T` is derived from `DualRefCounted`, leading to hard to diagnose bugs - especially when moving a previously `Orphanable` type to be `DualRefCounted`.

This change removes the inheritance from `Orphanable`, and instead adds an overridable method `Orphaned` that implementors of `DualRefCounted` can implement.

In this way we get:
* compiler errors if someone chooses to write `OrphanablePtr` for one of these types
* compiler errors if someone implements `Orphan()` instead of `Orphaned()` in the wrong place (or vice versa)

Closes grpc#36194

COPYBARA_INTEGRATE_REVIEW=grpc#36194 from ctiller:orf b96b831
PiperOrigin-RevId: 620916632
Instead, build a library and re-use that across compilations.

This still invokes a link step per target, and we'll want to deal with that at some point too, but at least this makes some progress to not being as wasteful with our compilation resources.

Additionally: remove bm_pollset -- it was having some problems compiling, and we really don't need it anymore.

Closes grpc#36197

COPYBARA_INTEGRATE_REVIEW=grpc#36197 from ctiller:maintain-this-shite 9955026
PiperOrigin-RevId: 620946543
yashykt and others added 27 commits May 2, 2024 12:32
Before this change, on a trailers-only response, Metadata Exchange needed by CSM would just be dropped, and hence CSM labels would not be seen.

Changes -
* OTel call attempt tracer populates labels from trailers if it's a trailers-only response.
* HTTP2 layer propagates the Metadata Exchange field from headers to trailers for trailers-only responses.
* Add a test to make sure that retries continue to work when Metadata Exchange is enabled and a trailers-only response is sent. (This verifies that a trailers-only response remains a trailers-only response.)

Closes grpc#36413

COPYBARA_INTEGRATE_REVIEW=grpc#36413 from yashykt:MetadataExchangeInTrailers e7d2026
PiperOrigin-RevId: 630144618
This should be able to unblock using grpc on vision os, will add tests later

Closes grpc#36476

COPYBARA_INTEGRATE_REVIEW=grpc#36476 from HannahShiSFB:support-visionos edbde32
PiperOrigin-RevId: 630173448
Closes grpc#36512

COPYBARA_INTEGRATE_REVIEW=grpc#36512 from drfloob:rm-mock-auth-endpoint e371084
PiperOrigin-RevId: 630198891
Closes grpc#36515

COPYBARA_INTEGRATE_REVIEW=grpc#36515 from yashykt:bump_core_version_202405022240 59d2f39
PiperOrigin-RevId: 630220266
…SERT (grpc#36453)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36453

COPYBARA_INTEGRATE_REVIEW=grpc#36453 from tanvi-jagtap:tjagtap_ruby 5442361
PiperOrigin-RevId: 630293748
…SERT (grpc#36480)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT

Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36480

COPYBARA_INTEGRATE_REVIEW=grpc#36480 from tanvi-jagtap:tjagtap_src_core_lib_security dc392b8
PiperOrigin-RevId: 630298294
…SERT (grpc#36483)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36483

COPYBARA_INTEGRATE_REVIEW=grpc#36483 from tanvi-jagtap:tjagtap_src_core_load_balancing 71fb35f
PiperOrigin-RevId: 630318657
…SERT (grpc#36479)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36479

COPYBARA_INTEGRATE_REVIEW=grpc#36479 from tanvi-jagtap:tjagtap_src_core_lib_s ffa7e20
PiperOrigin-RevId: 630357947
Reasoning:
* This benchmark will need to be rewritten to work with the new transport API by EOY anyhow, and the API is fairly different.
* Deleting this saves us from having to migrate the `grpc_endpoint` implementation to `EventEngine::Endpoint`.

Closes grpc#36514

COPYBARA_INTEGRATE_REVIEW=grpc#36514 from drfloob:nix-bm_chttp2_transport e6c6edf
PiperOrigin-RevId: 630408686
…SERT (grpc#36503)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36503

COPYBARA_INTEGRATE_REVIEW=grpc#36503 from tanvi-jagtap:tjagtap_src_ext 8db99e5
PiperOrigin-RevId: 630429369
…pc#36516)

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36516

COPYBARA_INTEGRATE_REVIEW=grpc#36516 from yijiem:interop-matrix-1.63.0 742d1ef
PiperOrigin-RevId: 630501618
Integrates the new features of the the Kokoro PSM Interop install library introduced in grpc/psm-interop#73.

Nearly all common functionality was moved from per-language/per-branch PSM Interop build scripts to [psm_interop_kokoro_lib.sh](https://github.com/grpc/psm-interop/blob/main/.kokoro/psm_interop_kokoro_lib.sh):
1. The list of tests in the each test suite
2. Per-test-suite flag customization
3. `run_test` methods
4. `build_docker_images_if_needed` methods
5. Generic `build_test_app_docker_images` methods (simple docker build + docker push + docker tag). grpc-java is one exception, as it doesn't run docker directly, but a cloudbuild flow.

Now all PSM Interop jobs share the same buildscripts by all test suites:
1.  buildscript that invokes the test: `psm-interop-test-{language}.sh` (configured as `build_file` in the build cfg)
2. buildscript that builds the xDS test client/server and publishes them as a Docker image: `psm-interop-build-{language}.sh` (conventional name called from `psm_interop_kokoro_lib.sh`)

`psm-interop-test-{language}.sh`:
1. Sets `GRPC_LANGUAGE`, `BUILD_SCRIPT_DIR` environment variables.
2. Downloads the shared `psm_interop_kokoro_lib.sh` from the main branch of the psm-interop repo.
3. Sources `psm-interop-build-{language}.sh`
4. Calls `psm::run "${PSM_TEST_SUITE}"` (`PSM_TEST_SUITE` configured in the cfg file).

`psm-interop-build-{language}.sh`:
1. Defines `psm::lang::build_docker_images` which is called from `psm_interop_kokoro_lib.sh`.
2. Invokes any repo-specific logic.
3. May use `psm::build::docker_images_generic` for generic Docker build, tag, push, or provide implement its own build/publish method.

References:
- b/288578634
- See the full list of the new features at grpc/psm-interop#73.
- Additional fixes to the shared lib: grpc/psm-interop#78, grpc/psm-interop#79

Closes grpc#36450

COPYBARA_INTEGRATE_REVIEW=grpc#36450 from sergiitk:psm-interop-common-prod-tests 4b977b7
PiperOrigin-RevId: 630502807
PiperOrigin-RevId: 630539205
PiperOrigin-RevId: 630550068
…log (grpc#36517)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging - gpr_log

In this CL we are migrating from gRPCs own gpr logging mechanism to absl logging mechanism. The intention is to deprecate gpr_log in the future.

We have the following mapping
1. gpr_log(GPR_INFO,...) -> LOG(INFO)
2. gpr_log(GPR_ERROR,...) -> LOG(ERROR)
3. gpr_log(GPR_DEBUG,...) -> VLOG(2)

Closes grpc#36517

COPYBARA_INTEGRATE_REVIEW=grpc#36517 from tanvi-jagtap:gpr_log_init 4c886da
PiperOrigin-RevId: 630551354
…SERT (grpc#36505)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36505

COPYBARA_INTEGRATE_REVIEW=grpc#36505 from tanvi-jagtap:tjagtap_src_ext_transport_chttp2 78d77be
PiperOrigin-RevId: 630583693
…SERT (grpc#36496)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36496

COPYBARA_INTEGRATE_REVIEW=grpc#36496 from tanvi-jagtap:tjagtap_src_core_tsi 4a5a463
PiperOrigin-RevId: 630588538
…SERT (grpc#36504)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36504

COPYBARA_INTEGRATE_REVIEW=grpc#36504 from tanvi-jagtap:tjagtap_src_ext_transport_binder 4669996
PiperOrigin-RevId: 630652010
…SERT (grpc#36468)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes grpc#36468

COPYBARA_INTEGRATE_REVIEW=grpc#36468 from tanvi-jagtap:tjagtap_src_core_lib_gprpp f7ed931
PiperOrigin-RevId: 630978821
…log (grpc#36526)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging - gpr_log

In this CL we are migrating from gRPCs own gpr logging mechanism to absl logging mechanism. The intention is to deprecate gpr_log in the future.

We have the following mapping
1. gpr_log(GPR_INFO,...) -> LOG(INFO)
2. gpr_log(GPR_ERROR,...) -> LOG(ERROR)
3. gpr_log(GPR_DEBUG,...) -> VLOG(2)

Reviewers need to check :
1. If the above mapping is correct.
2. The content of the log is as before.

gpr_log format strings did not use string_view or std::string . absl LOG accepts these. So there will be some elimination of string_view and std::string related conversions. This is expected.

Closes grpc#36526

COPYBARA_INTEGRATE_REVIEW=grpc#36526 from tanvi-jagtap:test_large_interop_client_gpr_log 46a657f
PiperOrigin-RevId: 630993244
…SERT (grpc#36527)

[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging GPR_ASSERT
Replacing GPR_ASSERT with absl CHECK.
These changes have been made using string replacement and regex.
Will not be replacing all instances of CHECK with CHECK_EQ , CHECK_NE etc because there are too many callsites. Only ones which are doable using very simple regex with least chance of failure will be replaced.
Given that we have 5000+ instances of GPR_ASSERT to edit, Doing it manually is too much work for both the author and reviewer.

Closes grpc#36527

COPYBARA_INTEGRATE_REVIEW=grpc#36527 from tanvi-jagtap:tjagtap_core_lib_surface_call 9700707
PiperOrigin-RevId: 631005739
Also do some cleanup in CODEOWNERS.

Closes grpc#36521

PiperOrigin-RevId: 631137895
Change was created by the release automation script. See go/grpc-release
Change was created by the release automation script. See go/grpc-release
Change was created by the release automation script. See go/grpc-release
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.