Commit Graph

4464 Commits

Author SHA1 Message Date
yashykt c365c7814c Automated change: Fix sanity tests 2024-04-17 01:34:09 +00:00
Craig Tiller 67ba35bac0 [esoteric] Eliminate unused argument errors with GPR_DEBUG_ASSERT (#36373)
Eliminate cases where we get unused parameter errors only because of a debug assert, and because of short-circuit evaluation not add any overhead into release builds.

Closes #36373

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36373 from ctiller:ugh123 073ea1236a
PiperOrigin-RevId: 625435672
2024-04-17 01:22:14 +00:00
AJ Heller 1a8b22f2de [build] Restrict visibility for creating core credentials types. (#36216)
Closes #36216

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36216 from drfloob:conceal-core-cred-creation a44a299273
PiperOrigin-RevId: 625425746
2024-04-17 01:21:29 +00:00
Yijie Ma cd30592193 [release] Bump dev version 202404101721 (#36333)
<!--

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 #36333

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36333 from yijiem:bump_dev_version_202404101721 0a7cc5b4b7
PiperOrigin-RevId: 623878150
2024-04-11 11:04:35 -07:00
Craig Tiller 5f2dcf8d42 [clang-format] Remove requirement that port_platform.h is at the top (#36280)
Closes #36280

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36280 from ctiller:port_platform-include-grpcpp-support-clang-format 75ac69b86a
PiperOrigin-RevId: 623363731
2024-04-09 21:03:05 -07:00
Craig Tiller 0d2ad09038 [clang-format] Remove requirement that port_platform.h is at the top (#36276)
Closes #36276

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36276 from ctiller:port_platform-include-grpcpp-clang-format 3242577530
PiperOrigin-RevId: 623302430
2024-04-09 15:57:54 -07:00
Craig Tiller 0c742dbbb3 [clang-format] Remove requirement that port_platform.h is at the top (#36278)
Closes #36278

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36278 from ctiller:port_platform-include-grpc++-impl-clang-format d49bba38bb
PiperOrigin-RevId: 623302426
2024-04-09 15:48:13 -07:00
Craig Tiller 3383b8182f [clang-format] Remove requirement that port_platform.h is at the top (#36274)
Closes #36274

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36274 from ctiller:port_platform-include-grpc-clang-format e368acfad9
PiperOrigin-RevId: 623182400
2024-04-09 09:10:57 -07:00
Craig Tiller 83a17ff468 [clang-format] Remove requirement that port_platform.h is at the top (#36275)
Closes #36275

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36275 from ctiller:port_platform-include-grpcpp-impl-clang-format 89c43491d0
PiperOrigin-RevId: 623178498
2024-04-09 09:08:28 -07:00
Craig Tiller 2bcca152cf [clang-format] Remove requirement that port_platform.h is at the top (#36277)
Closes #36277

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36277 from ctiller:port_platform-include-grpcpp-impl-codegen-clang-format 2670fb8c35
PiperOrigin-RevId: 623176416
2024-04-09 08:48:02 -07:00
Craig Tiller e378d0b229 [clang-format] Remove requirement that port_platform.h is at the top (#36279)
Closes #36279

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36279 from ctiller:port_platform-include-grpcpp-security-clang-format fc03b264c0
PiperOrigin-RevId: 623176265
2024-04-09 08:45:26 -07:00
AJ Heller 798399b984 Automated rollback of commit 7c57fb70e9.
PiperOrigin-RevId: 622990471
2024-04-08 17:03:32 -07:00
AJ Heller 7c57fb70e9 [surface] Add an API to inject connected endpoints into servers (#35957)
Closes #35957

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35957 from drfloob:endpoint-infusion abdb9939c5
PiperOrigin-RevId: 622939183
2024-04-08 13:42:57 -07:00
AJ Heller f238e5399c [security] Reland: Refactor credentials types to remove special handling for insecure creds (#36242)
See #36176. The only difference is a temporary shim for Secure credentials types, which was already discussed and approved separately.

Closes #36242

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36242 from drfloob:reland/36176 f07bebe289
PiperOrigin-RevId: 621879911
2024-04-04 09:20:02 -07:00
Yash Tibrewal 952a2421f9 [OTel C++] Add API to set channel scope filter (#36189)
Also addressing a TODO from previous PRs where `authority` is not being populated in the `ChannelScope`.

Closes #36189

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36189 from yashykt:OTelChannelScope e76f9ce0ca
PiperOrigin-RevId: 621231764
2024-04-02 11:06:03 -07:00
AJ Heller da43a61322 Automated rollback of commit 822311c0d9.
PiperOrigin-RevId: 621025232
2024-04-01 19:51:52 -07:00
AJ Heller 822311c0d9 [security] Refactor credentials types to remove special handling for insecure creds (#36176)
Forked from #35957

This PR refactors the credentials types to remove Secure and Insecure Channel and Call credentials types. We standardize on a `c_creds()` accessor method for all credentials types, which can now be treated uniformly. This notably removes special-case handling of insecure credentials.

The special code-paths for insecure creds are no longer necessary in the wake of #25586.

Closes #36176

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36176 from drfloob:fork/35957/creds-API fd64d59c23
PiperOrigin-RevId: 621008166
2024-04-01 18:12:59 -07:00
Yash Tibrewal 1312ff0625 [OTel C++] Add APIs to enable/disable metrics (#36183)
Closes #36183

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36183 from yashykt:OTelEnableDisableMetrics 948abe7235
PiperOrigin-RevId: 619696880
2024-03-28 17:35:14 +00:00
AJ Heller 3d82c522fa [EventEngine] Refactor ServerCallbackCall to use EventEngine::Run (#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 #36126

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36126 from drfloob:server-callback-on-ee 6242a78a3f
PiperOrigin-RevId: 619621598
2024-03-28 17:34:00 +00:00
Yijie Ma c54c69dcdd [Metrics] New OpenTelemetry Plugin Implementation of Stats Plugin (#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 #36070

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36070 from yijiem:grpc-metrics 72653727b1
PiperOrigin-RevId: 618529035
2024-03-23 19:37:26 -07:00
Mike Kruskal db51a3f69a Mark grpc generators for editions support.
Edition 2023 makes no changes to method/service descriptors, so these should be unaffected and already supported.

PiperOrigin-RevId: 615832918
2024-03-14 10:52:00 -07:00
Vignesh Babu 7533328075 [server] Allow configuring max incoming connections at the server (#36088)
Closes #36088

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36088 from Vignesh2208:server-fix e62a8f7ae7
PiperOrigin-RevId: 614729878
2024-03-11 11:17:34 -07:00
AJ Heller ad7fbc1e92 [EventEngine] Document RunAfter can return an invalid handle for immediate execution (#36072)
Closes #36072

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36072 from drfloob:docs/runafter-immediate-invalid-handle 4ce2dd7dd1
PiperOrigin-RevId: 613737590
2024-03-07 16:24:55 -08:00
Gregory Cooke d6089c336c [Security - CrlProvider] Add AKID to CertificateInfo (#35931)
This PR adds the Authority Key Identifier to CertificateInfo. This value _can be_ important in finding the right CRLs to use if there are Issuer name overlaps or a more complicated CA setup with multiple signing keys.

We should observe no behavior change in our `CrlProvider` implementations, this is just adding an important field for users who implement it themselves.

Closes #35931

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35931 from gtcooke94:AkidCheck dd048a53b6
PiperOrigin-RevId: 611143198
2024-02-28 10:19:05 -08:00
Eugene Ostroukhov 6c157f9128 [Release] Bump version to 1.63.0-dev (on master branch) (#35899)
Change was created by the release automation script. See go/grpc-release.

Closes #35899

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35899 from eugeneo:bump_dev_version_202402131133 73950425c9
PiperOrigin-RevId: 606777850
2024-02-13 16:09:36 -08:00
Mark D. Roth 574b0572f1 [client channel] remove grpc_channel_num_external_connectivity_watchers() (#35840)
Implements gRFC L113 (https://github.com/grpc/proposal/pull/417).

Closes #35840

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35840 from markdroth:client_channel_remove_num_external_watchers 334670c13c
PiperOrigin-RevId: 606766495
2024-02-13 15:31:33 -08:00
Yash Tibrewal 2999332d64 [CSM] De-experimentalize CsmObservability API (#35836)
Closes #35836

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35836 from yashykt:DeexperimentalizeCsmObs 1711e6d9b0
PiperOrigin-RevId: 605650394
2024-02-09 09:28:18 -08:00
Yash Tibrewal 8f2245d0a7 [CSM] Disable metrics recording when CsmObservability goes out of scope (#35835)
As discussed, this change adds scoping to `CsmObservability` such that when that object goes out of scope, new channels and servers don't record metrics. In the documentation, I've talked about how existing channels/servers are going to continue to record metrics but i've left room for us to change that behavior in the future.

The current way of doing this is through a global bool since there can only be one plugin right now, but we'll change this to use the global stats plugin registry in the future.

Closes #35835

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35835 from yashykt:DisableCsmObsOnScope 33a7c2f7bc
PiperOrigin-RevId: 605468117
2024-02-08 17:07:25 -08:00
Yash Tibrewal 387c894117 [CSM] Remove experimental CSM PluginOption API in favor of CsmObservability API (#35812)
Also update interop tests to use `CsmObservability` API

Closes #35812

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35812 from yashykt:UpdateCsmInterop dc99764aea
PiperOrigin-RevId: 604726881
2024-02-06 12:20:23 -08:00
Tanvi Jagtap 58300b9d1f Adding clang format file to each folder (#35727)
<!--

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 #35727

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35727 from tanvi-jagtap:tjagtap_2024_01_29_formatting_1005 b92d064158
PiperOrigin-RevId: 602963496
2024-01-31 00:58:09 -08:00
Tanvi Jagtap ba6e429ff4 Adding clang format file to each folder (#35734)
<!--

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 #35734

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35734 from tanvi-jagtap:tjagtap_formatting_1008 40014df8fe
PiperOrigin-RevId: 602601487
2024-01-29 22:30:28 -08:00
Tanvi Jagtap b137941fe8 Adding clang format file to each folder (#35735)
<!--

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 #35735

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35735 from tanvi-jagtap:tjagtap_formatting_1007 6c0fc3d5d1
PiperOrigin-RevId: 602601191
2024-01-29 22:04:52 -08:00
Tanvi Jagtap 00a35e24e5 Adding clang format file to each folder (#35736)
<!--

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 #35736

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35736 from tanvi-jagtap:tjagtap_formatting_1006 3a0a4125cf
PiperOrigin-RevId: 602601007
2024-01-29 21:55:59 -08:00
Tanvi Jagtap de85081421 Adding clang format file to each folder (#35724)
<!--

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 #35724

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35724 from tanvi-jagtap:tjagtap_2024_01_29_formatting_1002 f278cc007f
PiperOrigin-RevId: 602583172
2024-01-29 20:18:30 -08:00
Tanvi Jagtap ae8083af97 Adding clang format file to each folder (#35726)
<!--

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 #35726

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35726 from tanvi-jagtap:tjagtap_2024_01_29_formatting_1004 a61ed41bdd
PiperOrigin-RevId: 602583131
2024-01-29 20:09:28 -08:00
Tanvi Jagtap e738963398 Adding clang format file to each folder (#35722)
<!--

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 #35722

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35722 from tanvi-jagtap:tjagtap_2024_01_29_formatting_1000 062eb11aed
PiperOrigin-RevId: 602512122
2024-01-29 15:09:22 -08:00
AJ Heller 71fa68f7fb [EventEngine] Add QueryExtension Interfaces for *SupportsFd (#35648)
This PR:
* adds FD extensions to the public headers
* Adds the query extension interface to EventEngine, Listener, and Endpoint, via a new `Extensible` interface
* Refactors the PosixEventEngine to use the Extensible interface.

Closes #35648

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35648 from drfloob:posix-ee-query-interface 7cae28e0b3
PiperOrigin-RevId: 601794970
2024-01-26 10:03:18 -08:00
Yash Tibrewal 76c45b98d1 [otel] Return absl::Status as a return from BuildAndRegisterGlobal (#35659)
Just to be future-proof, I'm amending the `void` return status of `BuildAndRegisterGlobal` in `OpenTelemetryPluginBuilder` to absl::Status.

This will be backported to 1.61 as well.

Closes #35659

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35659 from yashykt:UpdateOtelApiToAddStatus 07d3f41b8a
PiperOrigin-RevId: 601458408
2024-01-25 08:40:16 -08:00
Yash Tibrewal 984daf98d7 [CSM o11y] Re-experimentalize CSM OTel Plugin Option (#35660)
We are no longer sure about this API, so re-experimentalizing it.

This PR will be backported to 1.61 as well.

Closes #35660

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35660 from yashykt:ReexperimentalizeCsmPluginOption 4f114a54d9
PiperOrigin-RevId: 601378856
2024-01-25 01:57:24 -08:00
Craig Tiller 19f1b39829 [fuzzer] Eliminate use of mock_endpoint in server fuzzer (#35625)
Instead, connect a real client, which gives us the ability to exercise the listener portion of the code too.

Closes #35625

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35625 from ctiller:shush-connect b8f78993c6
PiperOrigin-RevId: 600836565
2024-01-23 10:40:03 -08:00
Craig Tiller e93f2dfbef [fuzzer] Separate scheduling from schedule creation for network input (#35618)
Closes #35618

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35618 from ctiller:shush ed7afaa4e8
PiperOrigin-RevId: 600557159
2024-01-22 13:43:52 -08:00
Alisha Nanda a32e6d4a6c [memory] Decrease number of inlined elements in grpc_slice_buffer from 7->6 (#35622)
Closes #35622

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35622 from ananda1066:decrease_buffer 7d16442587
PiperOrigin-RevId: 600544024
2024-01-22 13:02:30 -08:00
David Chamberlin 5b724c09c5 [tls] Add copy constructor for TlsCredentialsOptions (#35499)
<!--

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 #35499

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35499 from dawidcha:cred_opts_copy_constr 330165930f
PiperOrigin-RevId: 599977221
2024-01-19 17:21:50 -08:00
Esun Kim 8144346e2c [Protobuf] Added static_cast (#35566)
Fixes https://github.com/grpc/grpc/issues/35268

Closes #35566

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35566 from veblush:proto-buffer 02635228f5
PiperOrigin-RevId: 599954076
2024-01-19 15:34:14 -08:00
Esun Kim fe75f2b5ff [GPR] Removed GPR_BACKWARDS_COMPATIBILITY_MODE (#35602)
`GPR_BACKWARDS_COMPATIBILITY_MODE` was devised to support old Linux kernel with old glibc but gRPC is now expected to support glibc 2.17 and later (2.17 is derived from the oldest but supported Linux distro, CentOS 7). Effectively, gRPC doesn't need `GPR_BACKWARDS_COMPATIBILITY_MODE` anymore. Hence, let's remove it.

gRPC Python and Ruby that distribute binary artifacts already began to use `manylinux` environment dealing with this issue in a better way so they don't need this flag anymore.

Closes #35602

PiperOrigin-RevId: 599895270
2024-01-19 12:48:26 -08:00
Stanley Cheung 7c347b96eb [Release] Bump version to 1.62.0-dev (on master branch) (#35580)
Change was created by the release automation script. See go/grpc-release.

Closes #35580

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35580 from stanley-cheung:bump_dev_version_202401171835 b363888ca5
PiperOrigin-RevId: 599267642
2024-01-17 13:19:59 -08:00
David Chamberlin 528bc23088 [Build] Minimal changes for enabling DLL operation on Windows (#35484)
<!--

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 #35484

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35484 from dawidcha:win_shared_gs_api f8f244da99
PiperOrigin-RevId: 598863993
2024-01-16 09:30:33 -08:00
Yash Tibrewal acc1ad1b2b [CSM] De-experimentalize CSM OTel Plugin Option (#35526)
Closes #35526

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35526 from yashykt:DeexperimentalizeCsmPluginOption 441eccb857
PiperOrigin-RevId: 597675383
2024-01-11 15:55:26 -08:00
Yash Tibrewal d2cc24f189 [OTel] De-experimentalize API (#35509)
Closes #35509

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35509 from yashykt:DeeexperimentalizeOTelPlugin f5edf94f2c
PiperOrigin-RevId: 597613307
2024-01-11 11:44:57 -08:00
Yash Tibrewal 5888738c5a [OTel] Add a PluginOption API (#35434)
Closes #35434

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35434 from yashykt:OTelPluginOption 1db870bed4
PiperOrigin-RevId: 596966190
2024-01-09 18:28:43 +00:00