grpc 1.52.0.pre2 → 1.53.0.pre2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (892) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +50 -5
  3. data/include/grpc/event_engine/event_engine.h +24 -2
  4. data/include/grpc/event_engine/slice_buffer.h +13 -1
  5. data/include/grpc/impl/grpc_types.h +3 -0
  6. data/include/grpc/support/time.h +6 -4
  7. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +148 -0
  8. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +52 -0
  9. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +29 -0
  10. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +3 -3
  11. data/src/core/ext/filters/channel_idle/idle_filter_state.h +3 -3
  12. data/src/core/ext/filters/client_channel/backend_metric.h +3 -3
  13. data/src/core/ext/filters/client_channel/backup_poller.h +3 -3
  14. data/src/core/ext/filters/client_channel/channel_connectivity.cc +1 -1
  15. data/src/core/ext/filters/client_channel/client_channel.cc +29 -33
  16. data/src/core/ext/filters/client_channel/client_channel.h +3 -3
  17. data/src/core/ext/filters/client_channel/client_channel_channelz.h +3 -3
  18. data/src/core/ext/filters/client_channel/client_channel_factory.h +3 -3
  19. data/src/core/ext/filters/client_channel/client_channel_service_config.h +3 -3
  20. data/src/core/ext/filters/client_channel/config_selector.h +3 -3
  21. data/src/core/ext/filters/client_channel/connector.h +8 -4
  22. data/src/core/ext/filters/client_channel/dynamic_filters.h +3 -3
  23. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -3
  24. data/src/core/ext/filters/client_channel/health/health_check_client.h +3 -3
  25. data/src/core/ext/filters/client_channel/http_proxy.h +3 -3
  26. data/src/core/ext/filters/client_channel/lb_call_state_internal.h +3 -3
  27. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +3 -3
  28. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +3 -3
  29. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +3 -3
  30. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +14 -7
  31. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +3 -3
  32. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +1 -0
  33. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +3 -3
  34. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +3 -3
  35. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +3 -3
  36. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +3 -3
  37. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +1 -78
  38. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +3 -3
  39. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h +117 -0
  40. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +3 -3
  41. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +3 -3
  42. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +1 -0
  43. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +3 -3
  44. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc +128 -0
  45. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h +71 -0
  46. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +972 -0
  47. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +3 -6
  48. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.h +3 -3
  49. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +3 -3
  50. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +12 -7
  51. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +275 -107
  52. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +10 -3
  53. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +5 -0
  54. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +3 -3
  55. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +3 -3
  56. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +6 -1
  57. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +1 -2
  58. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +3 -3
  59. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +3 -3
  60. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +3 -3
  61. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +1 -0
  62. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +3 -3
  63. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +3 -7
  64. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +3 -3
  65. data/src/core/ext/filters/client_channel/retry_filter.cc +10 -13
  66. data/src/core/ext/filters/client_channel/retry_filter.h +3 -3
  67. data/src/core/ext/filters/client_channel/retry_service_config.h +3 -3
  68. data/src/core/ext/filters/client_channel/retry_throttle.h +3 -3
  69. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +4 -4
  70. data/src/core/ext/filters/client_channel/subchannel.cc +5 -1
  71. data/src/core/ext/filters/client_channel/subchannel.h +3 -3
  72. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +3 -3
  73. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +3 -3
  74. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +3 -3
  75. data/src/core/ext/filters/deadline/deadline_filter.cc +40 -48
  76. data/src/core/ext/filters/deadline/deadline_filter.h +6 -10
  77. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +3 -3
  78. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
  79. data/src/core/ext/filters/http/client/http_client_filter.cc +26 -21
  80. data/src/core/ext/filters/http/client/http_client_filter.h +3 -3
  81. data/src/core/ext/filters/http/client_authority_filter.h +3 -3
  82. data/src/core/ext/filters/http/message_compress/compression_filter.cc +109 -117
  83. data/src/core/ext/filters/http/message_compress/compression_filter.h +17 -10
  84. data/src/core/ext/filters/http/server/http_server_filter.cc +25 -24
  85. data/src/core/ext/filters/http/server/http_server_filter.h +3 -3
  86. data/src/core/ext/filters/message_size/message_size_filter.cc +2 -1
  87. data/src/core/ext/filters/message_size/message_size_filter.h +3 -3
  88. data/src/core/ext/filters/rbac/rbac_filter.cc +4 -3
  89. data/src/core/ext/filters/rbac/rbac_filter.h +3 -3
  90. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +3 -3
  91. data/src/core/ext/filters/server_config_selector/server_config_selector.h +3 -3
  92. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +3 -3
  93. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +27 -37
  94. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +5 -5
  95. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  96. data/src/core/ext/transport/chttp2/alpn/alpn.h +3 -3
  97. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +2 -7
  98. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +3 -3
  99. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +1 -0
  100. data/src/core/ext/transport/chttp2/server/chttp2_server.h +3 -3
  101. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +3 -3
  102. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +3 -3
  103. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +195 -111
  104. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +3 -3
  105. data/src/core/ext/transport/chttp2/transport/context_list.h +3 -3
  106. data/src/core/ext/transport/chttp2/transport/decode_huff.h +3 -3
  107. data/src/core/ext/transport/chttp2/transport/flow_control.cc +1 -0
  108. data/src/core/ext/transport/chttp2/transport/flow_control.h +3 -3
  109. data/src/core/ext/transport/chttp2/transport/frame.h +3 -3
  110. data/src/core/ext/transport/chttp2/transport/frame_data.cc +2 -0
  111. data/src/core/ext/transport/chttp2/transport/frame_data.h +3 -3
  112. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +2 -0
  113. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +3 -3
  114. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -0
  115. data/src/core/ext/transport/chttp2/transport/frame_ping.h +3 -3
  116. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +2 -0
  117. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +3 -3
  118. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +1 -0
  119. data/src/core/ext/transport/chttp2/transport/frame_settings.h +3 -3
  120. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +2 -0
  121. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +3 -3
  122. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +3 -3
  123. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +3 -3
  124. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +3 -3
  125. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +18 -407
  126. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +3 -3
  127. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -0
  128. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +3 -3
  129. data/src/core/ext/transport/chttp2/transport/http2_settings.h +3 -3
  130. data/src/core/ext/transport/chttp2/transport/http_trace.h +3 -3
  131. data/src/core/ext/transport/chttp2/transport/huffsyms.h +3 -3
  132. data/src/core/ext/transport/chttp2/transport/internal.h +28 -23
  133. data/src/core/ext/transport/chttp2/transport/parsing.cc +111 -31
  134. data/src/core/ext/transport/chttp2/transport/stream_map.h +3 -3
  135. data/src/core/ext/transport/chttp2/transport/varint.h +3 -3
  136. data/src/core/ext/transport/chttp2/transport/writing.cc +9 -8
  137. data/src/core/ext/transport/inproc/inproc_transport.h +3 -3
  138. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +3 -2
  139. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +9 -0
  140. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +38 -2
  141. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +185 -0
  142. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +7 -3
  143. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +44 -0
  144. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +16 -25
  145. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +48 -74
  146. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +30 -7
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +137 -0
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +15 -12
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +83 -51
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +3 -2
  151. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +15 -0
  152. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +17 -2
  153. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +61 -0
  154. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +11 -5
  155. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +37 -6
  156. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +5 -3
  157. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +24 -0
  158. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +5 -3
  159. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +22 -0
  160. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +6 -3
  161. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +24 -0
  162. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +24 -5
  163. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +50 -0
  164. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +57 -16
  165. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +254 -17
  166. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +3 -2
  167. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +9 -0
  168. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +3 -2
  169. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +9 -0
  170. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +7 -6
  171. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +21 -12
  172. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +6 -3
  173. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +23 -0
  174. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +10 -7
  175. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +42 -12
  176. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +54 -0
  177. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +188 -0
  178. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +111 -0
  179. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +444 -0
  180. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +7 -3
  181. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +24 -0
  182. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +8 -6
  183. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +31 -9
  184. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +5 -3
  185. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +24 -0
  186. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +47 -0
  187. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +113 -0
  188. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +43 -0
  189. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +114 -0
  190. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +3 -1
  191. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +54 -53
  192. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +34 -13
  193. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +10 -0
  194. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +195 -187
  195. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +232 -224
  196. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +0 -5
  197. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +95 -75
  198. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +5 -0
  199. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +94 -93
  200. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +81 -75
  201. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +189 -187
  202. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +7 -3
  203. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +5 -0
  204. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +71 -66
  205. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +137 -133
  206. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +16 -12
  207. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +140 -133
  208. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +81 -70
  209. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +5 -0
  210. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +771 -741
  211. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +10 -0
  212. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +16 -14
  213. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +14 -13
  214. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +20 -18
  215. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +53 -42
  216. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +363 -356
  217. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +149 -145
  218. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +16 -13
  219. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +48 -0
  220. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +35 -0
  221. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +14 -14
  222. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +40 -0
  223. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +40 -0
  224. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +10 -9
  225. data/src/core/ext/xds/certificate_provider_store.h +3 -3
  226. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +1 -0
  227. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +3 -3
  228. data/src/core/ext/xds/upb_utils.h +3 -3
  229. data/src/core/ext/xds/xds_api.h +3 -3
  230. data/src/core/ext/xds/xds_bootstrap.h +3 -3
  231. data/src/core/ext/xds/xds_bootstrap_grpc.cc +1 -0
  232. data/src/core/ext/xds/xds_bootstrap_grpc.h +3 -3
  233. data/src/core/ext/xds/xds_certificate_provider.h +3 -3
  234. data/src/core/ext/xds/xds_channel_args.h +3 -3
  235. data/src/core/ext/xds/xds_channel_stack_modifier.h +3 -3
  236. data/src/core/ext/xds/xds_client.cc +8 -3
  237. data/src/core/ext/xds/xds_client.h +3 -3
  238. data/src/core/ext/xds/xds_client_grpc.cc +0 -1
  239. data/src/core/ext/xds/xds_client_grpc.h +3 -3
  240. data/src/core/ext/xds/xds_client_stats.h +4 -3
  241. data/src/core/ext/xds/xds_cluster.cc +11 -7
  242. data/src/core/ext/xds/xds_cluster.h +6 -6
  243. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +3 -3
  244. data/src/core/ext/xds/xds_common_types.cc +1 -0
  245. data/src/core/ext/xds/xds_common_types.h +3 -3
  246. data/src/core/ext/xds/xds_endpoint.cc +1 -1
  247. data/src/core/ext/xds/xds_endpoint.h +3 -3
  248. data/src/core/ext/xds/xds_health_status.h +30 -3
  249. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  250. data/src/core/ext/xds/xds_http_filters.cc +1 -1
  251. data/src/core/ext/xds/xds_http_filters.h +3 -3
  252. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -3
  253. data/src/core/ext/xds/xds_http_stateful_session_filter.h +3 -3
  254. data/src/core/ext/xds/xds_lb_policy_registry.cc +95 -0
  255. data/src/core/ext/xds/xds_lb_policy_registry.h +3 -3
  256. data/src/core/ext/xds/xds_listener.cc +1 -0
  257. data/src/core/ext/xds/xds_listener.h +3 -3
  258. data/src/core/ext/xds/xds_resource_type.h +3 -3
  259. data/src/core/ext/xds/xds_resource_type_impl.h +3 -3
  260. data/src/core/ext/xds/xds_route_config.cc +6 -0
  261. data/src/core/ext/xds/xds_route_config.h +3 -3
  262. data/src/core/ext/xds/xds_routing.h +3 -3
  263. data/src/core/ext/xds/xds_transport.h +3 -3
  264. data/src/core/ext/xds/xds_transport_grpc.h +3 -3
  265. data/src/core/lib/address_utils/parse_address.h +3 -3
  266. data/src/core/lib/address_utils/sockaddr_utils.cc +1 -0
  267. data/src/core/lib/address_utils/sockaddr_utils.h +3 -3
  268. data/src/core/lib/avl/avl.h +3 -3
  269. data/src/core/lib/backoff/backoff.h +3 -3
  270. data/src/core/lib/channel/call_finalization.h +3 -3
  271. data/src/core/lib/channel/call_tracer.h +3 -3
  272. data/src/core/lib/channel/channel_args.cc +1 -0
  273. data/src/core/lib/channel/channel_args.h +11 -5
  274. data/src/core/lib/channel/channel_args_preconditioning.h +3 -3
  275. data/src/core/lib/channel/channel_fwd.h +3 -3
  276. data/src/core/lib/channel/channel_stack.cc +1 -2
  277. data/src/core/lib/channel/channel_stack.h +4 -4
  278. data/src/core/lib/channel/channel_stack_builder.h +3 -3
  279. data/src/core/lib/channel/channel_stack_builder_impl.cc +14 -1
  280. data/src/core/lib/channel/channel_stack_builder_impl.h +3 -3
  281. data/src/core/lib/channel/channel_trace.h +3 -3
  282. data/src/core/lib/channel/channelz.h +3 -3
  283. data/src/core/lib/channel/channelz_registry.h +3 -3
  284. data/src/core/lib/channel/connected_channel.cc +883 -354
  285. data/src/core/lib/channel/connected_channel.h +3 -3
  286. data/src/core/lib/channel/context.h +7 -3
  287. data/src/core/lib/channel/promise_based_filter.cc +532 -260
  288. data/src/core/lib/channel/promise_based_filter.h +124 -44
  289. data/src/core/lib/channel/status_util.h +3 -3
  290. data/src/core/lib/compression/compression_internal.h +3 -3
  291. data/src/core/lib/compression/message_compress.h +3 -3
  292. data/src/core/lib/config/core_configuration.h +3 -3
  293. data/src/core/lib/debug/event_log.h +3 -3
  294. data/src/core/lib/debug/histogram_view.h +3 -3
  295. data/src/core/lib/debug/stats.h +3 -3
  296. data/src/core/lib/debug/stats_data.cc +66 -65
  297. data/src/core/lib/debug/stats_data.h +42 -33
  298. data/src/core/lib/debug/trace.h +4 -26
  299. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +5 -0
  300. data/src/core/lib/event_engine/channel_args_endpoint_config.h +3 -3
  301. data/src/core/lib/event_engine/common_closures.h +3 -3
  302. data/src/core/lib/event_engine/default_event_engine.cc +9 -4
  303. data/src/core/lib/event_engine/default_event_engine.h +30 -6
  304. data/src/core/lib/event_engine/default_event_engine_factory.h +3 -3
  305. data/src/core/lib/event_engine/event_engine.cc +25 -0
  306. data/src/core/lib/event_engine/executor/executor.h +3 -3
  307. data/src/core/lib/event_engine/forkable.cc +11 -6
  308. data/src/core/lib/event_engine/forkable.h +3 -3
  309. data/src/core/lib/event_engine/handle_containers.h +10 -3
  310. data/src/core/lib/event_engine/poller.h +3 -3
  311. data/src/core/lib/event_engine/posix.h +158 -0
  312. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +44 -16
  313. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +14 -4
  314. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +6 -7
  315. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +3 -3
  316. data/src/core/lib/event_engine/posix_engine/event_poller.h +3 -3
  317. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +3 -3
  318. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +3 -3
  319. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +3 -3
  320. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +52 -55
  321. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +46 -13
  322. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +82 -12
  323. data/src/core/lib/event_engine/posix_engine/posix_engine.h +23 -9
  324. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +3 -3
  325. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +60 -7
  326. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +65 -14
  327. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +0 -1
  328. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +6 -6
  329. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -3
  330. data/src/core/lib/event_engine/posix_engine/timer.h +3 -3
  331. data/src/core/lib/event_engine/posix_engine/timer_heap.h +3 -3
  332. data/src/core/lib/event_engine/posix_engine/timer_manager.h +3 -3
  333. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +3 -3
  334. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +3 -3
  335. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +3 -3
  336. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +3 -3
  337. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +3 -3
  338. data/src/core/lib/event_engine/resolved_address.cc +19 -0
  339. data/src/core/lib/event_engine/resolved_address_internal.h +34 -0
  340. data/src/core/lib/event_engine/shim.cc +56 -0
  341. data/src/core/lib/event_engine/shim.h +33 -0
  342. data/src/core/lib/event_engine/slice.cc +1 -1
  343. data/src/core/lib/event_engine/tcp_socket_utils.cc +18 -2
  344. data/src/core/lib/event_engine/tcp_socket_utils.h +8 -3
  345. data/src/core/lib/event_engine/thread_local.cc +29 -0
  346. data/src/core/lib/event_engine/thread_local.h +32 -0
  347. data/src/core/lib/event_engine/thread_pool.cc +41 -65
  348. data/src/core/lib/event_engine/thread_pool.h +21 -17
  349. data/src/core/lib/event_engine/time_util.h +3 -3
  350. data/src/core/lib/event_engine/trace.cc +6 -0
  351. data/src/core/lib/event_engine/trace.h +16 -3
  352. data/src/core/lib/event_engine/utils.cc +2 -2
  353. data/src/core/lib/event_engine/utils.h +12 -4
  354. data/src/core/lib/event_engine/windows/iocp.cc +24 -40
  355. data/src/core/lib/event_engine/windows/iocp.h +3 -3
  356. data/src/core/lib/event_engine/windows/win_socket.cc +56 -33
  357. data/src/core/lib/event_engine/windows/win_socket.h +34 -25
  358. data/src/core/lib/event_engine/windows/windows_endpoint.cc +331 -0
  359. data/src/core/lib/event_engine/windows/windows_endpoint.h +103 -0
  360. data/src/core/lib/event_engine/windows/windows_engine.cc +243 -20
  361. data/src/core/lib/event_engine/windows/windows_engine.h +62 -23
  362. data/src/core/lib/experiments/config.cc +16 -1
  363. data/src/core/lib/experiments/config.h +13 -3
  364. data/src/core/lib/experiments/experiments.cc +14 -8
  365. data/src/core/lib/experiments/experiments.h +80 -21
  366. data/src/core/lib/gpr/alloc.h +3 -3
  367. data/src/core/lib/gpr/spinlock.h +3 -3
  368. data/src/core/lib/gpr/string.h +3 -3
  369. data/src/core/lib/gpr/sync_abseil.cc +15 -7
  370. data/src/core/lib/gpr/time_precise.h +3 -3
  371. data/src/core/lib/gpr/tmpfile.h +3 -3
  372. data/src/core/lib/gpr/useful.h +3 -3
  373. data/src/core/lib/gprpp/atomic_utils.h +3 -3
  374. data/src/core/lib/gprpp/bitset.h +3 -3
  375. data/src/core/lib/gprpp/chunked_vector.h +3 -3
  376. data/src/core/lib/gprpp/construct_destruct.h +3 -3
  377. data/src/core/lib/gprpp/cpp_impl_of.h +3 -3
  378. data/src/core/lib/gprpp/crash.h +3 -3
  379. data/src/core/lib/gprpp/debug_location.h +3 -6
  380. data/src/core/lib/gprpp/dual_ref_counted.h +3 -3
  381. data/src/core/lib/gprpp/env.h +3 -3
  382. data/src/core/lib/gprpp/examine_stack.h +3 -3
  383. data/src/core/lib/gprpp/fork.cc +21 -4
  384. data/src/core/lib/gprpp/fork.h +7 -5
  385. data/src/core/lib/gprpp/global_config.h +3 -3
  386. data/src/core/lib/gprpp/global_config_custom.h +3 -3
  387. data/src/core/lib/gprpp/global_config_env.cc +1 -0
  388. data/src/core/lib/gprpp/global_config_env.h +3 -3
  389. data/src/core/lib/gprpp/global_config_generic.h +3 -3
  390. data/src/core/lib/gprpp/host_port.cc +2 -0
  391. data/src/core/lib/gprpp/host_port.h +3 -3
  392. data/src/core/lib/gprpp/load_file.h +3 -3
  393. data/src/core/lib/gprpp/manual_constructor.h +3 -3
  394. data/src/core/lib/gprpp/match.h +3 -3
  395. data/src/core/lib/gprpp/memory.h +3 -3
  396. data/src/core/lib/gprpp/mpscq.h +3 -3
  397. data/src/core/lib/gprpp/no_destruct.h +3 -3
  398. data/src/core/lib/gprpp/notification.h +3 -3
  399. data/src/core/lib/gprpp/orphanable.h +3 -3
  400. data/src/core/lib/gprpp/overload.h +3 -3
  401. data/src/core/lib/gprpp/packed_table.h +3 -3
  402. data/src/core/lib/gprpp/per_cpu.h +3 -3
  403. data/src/core/lib/gprpp/ref_counted.h +3 -3
  404. data/src/core/lib/gprpp/ref_counted_ptr.h +3 -3
  405. data/src/core/lib/gprpp/single_set_ptr.h +3 -3
  406. data/src/core/lib/gprpp/sorted_pack.h +3 -3
  407. data/src/core/lib/gprpp/stat.h +3 -3
  408. data/src/core/lib/gprpp/status_helper.h +3 -3
  409. data/src/core/lib/gprpp/strerror.cc +2 -0
  410. data/src/core/lib/gprpp/strerror.h +3 -3
  411. data/src/core/lib/gprpp/sync.h +3 -3
  412. data/src/core/lib/gprpp/table.h +3 -3
  413. data/src/core/lib/gprpp/tchar.h +3 -3
  414. data/src/core/lib/gprpp/thd.h +3 -3
  415. data/src/core/lib/gprpp/time.cc +1 -0
  416. data/src/core/lib/gprpp/time.h +3 -3
  417. data/src/core/lib/gprpp/time_averaged_stats.h +3 -3
  418. data/src/core/lib/gprpp/time_util.h +3 -3
  419. data/src/core/lib/gprpp/unique_type_name.h +3 -3
  420. data/src/core/lib/gprpp/validation_errors.h +3 -3
  421. data/src/core/lib/gprpp/work_serializer.h +3 -3
  422. data/src/core/lib/handshaker/proxy_mapper.h +3 -3
  423. data/src/core/lib/handshaker/proxy_mapper_registry.h +3 -3
  424. data/src/core/lib/http/format_request.cc +1 -0
  425. data/src/core/lib/http/format_request.h +3 -3
  426. data/src/core/lib/http/httpcli.cc +1 -0
  427. data/src/core/lib/http/httpcli.h +3 -3
  428. data/src/core/lib/http/httpcli_ssl_credentials.h +3 -3
  429. data/src/core/lib/http/parser.h +3 -3
  430. data/src/core/lib/iomgr/block_annotate.h +3 -3
  431. data/src/core/lib/iomgr/buffer_list.h +3 -3
  432. data/src/core/lib/iomgr/call_combiner.cc +4 -4
  433. data/src/core/lib/iomgr/call_combiner.h +3 -3
  434. data/src/core/lib/iomgr/cfstream_handle.h +3 -3
  435. data/src/core/lib/iomgr/closure.cc +27 -0
  436. data/src/core/lib/iomgr/closure.h +5 -3
  437. data/src/core/lib/iomgr/combiner.h +3 -3
  438. data/src/core/lib/iomgr/dynamic_annotations.h +3 -3
  439. data/src/core/lib/iomgr/endpoint.h +3 -3
  440. data/src/core/lib/iomgr/endpoint_cfstream.h +3 -3
  441. data/src/core/lib/iomgr/endpoint_pair.h +3 -3
  442. data/src/core/lib/iomgr/endpoint_pair_windows.cc +10 -2
  443. data/src/core/lib/iomgr/error.h +3 -3
  444. data/src/core/lib/iomgr/error_cfstream.h +3 -3
  445. data/src/core/lib/iomgr/ev_apple.h +3 -3
  446. data/src/core/lib/iomgr/ev_epoll1_linux.h +3 -3
  447. data/src/core/lib/iomgr/ev_poll_posix.h +3 -3
  448. data/src/core/lib/iomgr/ev_posix.h +3 -3
  449. data/src/core/lib/iomgr/event_engine_shims/closure.cc +62 -0
  450. data/src/core/lib/iomgr/event_engine_shims/closure.h +39 -0
  451. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +430 -0
  452. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +43 -0
  453. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +91 -0
  454. data/src/core/lib/iomgr/event_engine_shims/tcp_client.h +44 -0
  455. data/src/core/lib/iomgr/exec_ctx.h +3 -3
  456. data/src/core/lib/iomgr/executor.h +3 -3
  457. data/src/core/lib/iomgr/fork_posix.cc +5 -4
  458. data/src/core/lib/iomgr/gethostname.h +3 -3
  459. data/src/core/lib/iomgr/grpc_if_nametoindex.h +3 -3
  460. data/src/core/lib/iomgr/internal_errqueue.h +3 -3
  461. data/src/core/lib/iomgr/iocp_windows.h +3 -3
  462. data/src/core/lib/iomgr/iomgr.h +3 -3
  463. data/src/core/lib/iomgr/iomgr_fwd.h +3 -3
  464. data/src/core/lib/iomgr/iomgr_internal.h +3 -3
  465. data/src/core/lib/iomgr/load_file.h +3 -3
  466. data/src/core/lib/iomgr/lockfree_event.h +3 -3
  467. data/src/core/lib/iomgr/nameser.h +3 -3
  468. data/src/core/lib/iomgr/polling_entity.h +3 -3
  469. data/src/core/lib/iomgr/pollset.h +3 -3
  470. data/src/core/lib/iomgr/pollset_set.h +3 -3
  471. data/src/core/lib/iomgr/pollset_set_windows.h +3 -3
  472. data/src/core/lib/iomgr/pollset_windows.cc +2 -2
  473. data/src/core/lib/iomgr/pollset_windows.h +3 -3
  474. data/src/core/lib/iomgr/port.h +3 -3
  475. data/src/core/lib/iomgr/python_util.h +3 -3
  476. data/src/core/lib/iomgr/resolve_address.h +3 -3
  477. data/src/core/lib/iomgr/resolve_address_impl.h +3 -3
  478. data/src/core/lib/iomgr/resolve_address_posix.h +3 -3
  479. data/src/core/lib/iomgr/resolve_address_windows.h +3 -3
  480. data/src/core/lib/iomgr/resolved_address.h +3 -3
  481. data/src/core/lib/iomgr/sockaddr.h +3 -3
  482. data/src/core/lib/iomgr/sockaddr_posix.h +3 -3
  483. data/src/core/lib/iomgr/sockaddr_windows.h +3 -3
  484. data/src/core/lib/iomgr/socket_factory_posix.h +3 -3
  485. data/src/core/lib/iomgr/socket_mutator.h +3 -3
  486. data/src/core/lib/iomgr/socket_utils.h +3 -3
  487. data/src/core/lib/iomgr/socket_utils_posix.h +3 -3
  488. data/src/core/lib/iomgr/socket_windows.h +3 -3
  489. data/src/core/lib/iomgr/systemd_utils.cc +19 -19
  490. data/src/core/lib/iomgr/systemd_utils.h +24 -24
  491. data/src/core/lib/iomgr/tcp_client.h +3 -3
  492. data/src/core/lib/iomgr/tcp_client_posix.cc +12 -0
  493. data/src/core/lib/iomgr/tcp_client_posix.h +3 -3
  494. data/src/core/lib/iomgr/tcp_client_windows.cc +13 -1
  495. data/src/core/lib/iomgr/tcp_posix.cc +49 -65
  496. data/src/core/lib/iomgr/tcp_posix.h +3 -3
  497. data/src/core/lib/iomgr/tcp_server.h +3 -3
  498. data/src/core/lib/iomgr/tcp_server_posix.cc +219 -4
  499. data/src/core/lib/iomgr/tcp_server_utils_posix.h +13 -3
  500. data/src/core/lib/iomgr/tcp_server_windows.cc +4 -6
  501. data/src/core/lib/iomgr/tcp_windows.h +3 -3
  502. data/src/core/lib/iomgr/timer.h +3 -3
  503. data/src/core/lib/iomgr/timer_generic.h +3 -3
  504. data/src/core/lib/iomgr/timer_heap.h +3 -3
  505. data/src/core/lib/iomgr/timer_manager.h +3 -3
  506. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -3
  507. data/src/core/lib/iomgr/wakeup_fd_pipe.h +3 -3
  508. data/src/core/lib/iomgr/wakeup_fd_posix.h +3 -3
  509. data/src/core/lib/json/json.h +3 -3
  510. data/src/core/lib/json/json_args.h +3 -3
  511. data/src/core/lib/json/json_channel_args.h +3 -3
  512. data/src/core/lib/json/json_object_loader.h +3 -3
  513. data/src/core/lib/json/json_reader.cc +1 -0
  514. data/src/core/lib/json/json_util.h +3 -3
  515. data/src/core/lib/load_balancing/lb_policy.cc +9 -0
  516. data/src/core/lib/load_balancing/lb_policy.h +9 -5
  517. data/src/core/lib/load_balancing/lb_policy_factory.h +3 -3
  518. data/src/core/lib/load_balancing/lb_policy_registry.cc +1 -0
  519. data/src/core/lib/load_balancing/lb_policy_registry.h +3 -3
  520. data/src/core/lib/load_balancing/subchannel_interface.h +8 -6
  521. data/src/core/lib/matchers/matchers.cc +1 -0
  522. data/src/core/lib/matchers/matchers.h +3 -3
  523. data/src/core/lib/promise/activity.cc +8 -6
  524. data/src/core/lib/promise/activity.h +52 -66
  525. data/src/core/lib/promise/arena_promise.h +3 -3
  526. data/src/core/lib/promise/context.h +3 -3
  527. data/src/core/lib/promise/detail/basic_join.h +197 -0
  528. data/src/core/lib/promise/detail/basic_seq.h +10 -16
  529. data/src/core/lib/promise/detail/promise_factory.h +3 -3
  530. data/src/core/lib/promise/detail/promise_like.h +3 -3
  531. data/src/core/lib/promise/detail/status.h +3 -3
  532. data/src/core/lib/promise/detail/switch.h +3 -3
  533. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +3 -3
  534. data/src/core/lib/promise/if.h +195 -0
  535. data/src/core/lib/promise/interceptor_list.h +308 -0
  536. data/src/core/lib/promise/intra_activity_waiter.h +9 -3
  537. data/src/core/lib/promise/latch.h +99 -5
  538. data/src/core/lib/promise/loop.h +4 -4
  539. data/src/core/lib/promise/map.h +4 -6
  540. data/src/core/lib/promise/pipe.h +296 -193
  541. data/src/core/lib/promise/poll.h +113 -14
  542. data/src/core/lib/promise/promise.h +4 -5
  543. data/src/core/lib/promise/race.h +6 -9
  544. data/src/core/lib/promise/seq.h +3 -3
  545. data/src/core/lib/promise/sleep.h +3 -3
  546. data/src/core/lib/promise/{pipe.cc → trace.cc} +3 -2
  547. data/src/core/lib/promise/trace.h +24 -0
  548. data/src/core/lib/promise/try_join.h +82 -0
  549. data/src/core/lib/promise/try_seq.h +3 -3
  550. data/src/core/lib/resolver/resolver.h +3 -3
  551. data/src/core/lib/resolver/resolver_factory.h +4 -4
  552. data/src/core/lib/resolver/resolver_registry.cc +15 -0
  553. data/src/core/lib/resolver/resolver_registry.h +3 -3
  554. data/src/core/lib/resolver/server_address.cc +1 -0
  555. data/src/core/lib/resolver/server_address.h +3 -3
  556. data/src/core/lib/resource_quota/api.h +3 -3
  557. data/src/core/lib/resource_quota/arena.cc +36 -9
  558. data/src/core/lib/resource_quota/arena.h +84 -22
  559. data/src/core/lib/resource_quota/memory_quota.h +3 -3
  560. data/src/core/lib/resource_quota/periodic_update.h +3 -3
  561. data/src/core/lib/resource_quota/resource_quota.h +3 -3
  562. data/src/core/lib/resource_quota/thread_quota.h +3 -3
  563. data/src/core/lib/resource_quota/trace.h +3 -3
  564. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  565. data/src/core/lib/security/authorization/authorization_policy_provider.h +3 -3
  566. data/src/core/lib/security/authorization/evaluate_args.h +3 -3
  567. data/src/core/lib/security/authorization/grpc_authorization_engine.h +3 -3
  568. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +3 -3
  569. data/src/core/lib/security/authorization/matchers.h +3 -3
  570. data/src/core/lib/security/authorization/rbac_policy.cc +1 -0
  571. data/src/core/lib/security/authorization/rbac_policy.h +3 -3
  572. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +3 -3
  573. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +3 -3
  574. data/src/core/lib/security/context/security_context.h +3 -3
  575. data/src/core/lib/security/credentials/alts/alts_credentials.h +3 -3
  576. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +3 -3
  577. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +3 -3
  578. data/src/core/lib/security/credentials/call_creds_util.h +3 -3
  579. data/src/core/lib/security/credentials/channel_creds_registry.h +3 -3
  580. data/src/core/lib/security/credentials/composite/composite_credentials.h +3 -3
  581. data/src/core/lib/security/credentials/credentials.h +3 -3
  582. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +1 -0
  583. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +3 -3
  584. data/src/core/lib/security/credentials/external/aws_request_signer.cc +1 -0
  585. data/src/core/lib/security/credentials/external/aws_request_signer.h +3 -3
  586. data/src/core/lib/security/credentials/external/external_account_credentials.cc +1 -0
  587. data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
  588. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +3 -3
  589. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +1 -0
  590. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +3 -3
  591. data/src/core/lib/security/credentials/fake/fake_credentials.h +3 -3
  592. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +3 -3
  593. data/src/core/lib/security/credentials/iam/iam_credentials.cc +1 -0
  594. data/src/core/lib/security/credentials/iam/iam_credentials.h +3 -3
  595. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +3 -3
  596. data/src/core/lib/security/credentials/jwt/json_token.h +3 -3
  597. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +4 -3
  598. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +3 -3
  599. data/src/core/lib/security/credentials/local/local_credentials.h +3 -3
  600. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -3
  601. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +3 -3
  602. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +3 -3
  603. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +3 -3
  604. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +1 -1
  605. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +3 -3
  606. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +3 -3
  607. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +3 -3
  608. data/src/core/lib/security/credentials/tls/tls_credentials.h +3 -3
  609. data/src/core/lib/security/credentials/tls/tls_utils.h +3 -3
  610. data/src/core/lib/security/credentials/xds/xds_credentials.h +3 -3
  611. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +3 -3
  612. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +1 -0
  613. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +3 -3
  614. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +3 -3
  615. data/src/core/lib/security/security_connector/load_system_roots.h +3 -3
  616. data/src/core/lib/security/security_connector/load_system_roots_supported.h +3 -3
  617. data/src/core/lib/security/security_connector/local/local_security_connector.h +3 -3
  618. data/src/core/lib/security/security_connector/security_connector.h +3 -3
  619. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +1 -0
  620. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +3 -3
  621. data/src/core/lib/security/security_connector/ssl_utils.h +3 -3
  622. data/src/core/lib/security/security_connector/ssl_utils_config.h +3 -3
  623. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +3 -3
  624. data/src/core/lib/security/transport/auth_filters.h +27 -5
  625. data/src/core/lib/security/transport/secure_endpoint.h +3 -3
  626. data/src/core/lib/security/transport/security_handshaker.cc +9 -0
  627. data/src/core/lib/security/transport/security_handshaker.h +3 -3
  628. data/src/core/lib/security/transport/server_auth_filter.cc +120 -251
  629. data/src/core/lib/security/transport/tsi_error.h +3 -3
  630. data/src/core/lib/security/util/json_util.h +3 -3
  631. data/src/core/lib/service_config/service_config.h +3 -3
  632. data/src/core/lib/service_config/service_config_call_data.h +3 -3
  633. data/src/core/lib/service_config/service_config_impl.h +3 -3
  634. data/src/core/lib/service_config/service_config_parser.h +3 -3
  635. data/src/core/lib/slice/b64.h +3 -3
  636. data/src/core/lib/slice/percent_encoding.h +3 -3
  637. data/src/core/lib/slice/slice.cc +3 -3
  638. data/src/core/lib/slice/slice.h +14 -21
  639. data/src/core/lib/slice/slice_buffer.h +10 -4
  640. data/src/core/lib/slice/slice_internal.h +3 -3
  641. data/src/core/lib/slice/slice_refcount.cc +20 -0
  642. data/src/core/lib/slice/slice_refcount.h +26 -6
  643. data/src/core/lib/slice/slice_string_helpers.h +3 -3
  644. data/src/core/lib/surface/api_trace.h +3 -3
  645. data/src/core/lib/surface/builtins.h +3 -3
  646. data/src/core/lib/surface/call.cc +866 -252
  647. data/src/core/lib/surface/call.h +31 -3
  648. data/src/core/lib/surface/call_log_batch.cc +1 -0
  649. data/src/core/lib/surface/call_test_only.h +3 -3
  650. data/src/core/lib/surface/call_trace.cc +21 -11
  651. data/src/core/lib/surface/call_trace.h +3 -3
  652. data/src/core/lib/surface/channel.h +3 -3
  653. data/src/core/lib/surface/channel_init.h +3 -3
  654. data/src/core/lib/surface/channel_stack_type.h +3 -3
  655. data/src/core/lib/surface/completion_queue.cc +1 -0
  656. data/src/core/lib/surface/completion_queue.h +3 -3
  657. data/src/core/lib/surface/completion_queue_factory.h +3 -3
  658. data/src/core/lib/surface/event_string.cc +1 -0
  659. data/src/core/lib/surface/event_string.h +3 -3
  660. data/src/core/lib/surface/init.cc +1 -1
  661. data/src/core/lib/surface/init.h +3 -3
  662. data/src/core/lib/surface/init_internally.h +3 -3
  663. data/src/core/lib/surface/lame_client.cc +3 -1
  664. data/src/core/lib/surface/lame_client.h +3 -3
  665. data/src/core/lib/surface/server.cc +273 -27
  666. data/src/core/lib/surface/server.h +6 -3
  667. data/src/core/lib/surface/validate_metadata.h +3 -3
  668. data/src/core/lib/surface/version.cc +2 -2
  669. data/src/core/lib/transport/bdp_estimator.h +3 -3
  670. data/src/core/lib/transport/connectivity_state.h +3 -3
  671. data/src/core/lib/transport/error_utils.h +3 -3
  672. data/src/core/lib/transport/handshaker.cc +11 -0
  673. data/src/core/lib/transport/handshaker.h +4 -4
  674. data/src/core/lib/transport/handshaker_factory.h +3 -3
  675. data/src/core/lib/transport/handshaker_registry.h +3 -3
  676. data/src/core/lib/transport/http2_errors.h +3 -3
  677. data/src/core/lib/transport/http_connect_handshaker.h +3 -3
  678. data/src/core/lib/transport/metadata_batch.cc +11 -0
  679. data/src/core/lib/transport/metadata_batch.h +24 -3
  680. data/src/core/lib/transport/parsed_metadata.h +3 -3
  681. data/src/core/lib/transport/pid_controller.h +3 -3
  682. data/src/core/lib/transport/status_conversion.h +3 -3
  683. data/src/core/lib/transport/tcp_connect_handshaker.cc +0 -1
  684. data/src/core/lib/transport/tcp_connect_handshaker.h +3 -3
  685. data/src/core/lib/transport/timeout_encoding.h +3 -3
  686. data/src/core/lib/transport/transport.cc +3 -8
  687. data/src/core/lib/transport/transport.h +16 -8
  688. data/src/core/lib/transport/transport_fwd.h +3 -3
  689. data/src/core/lib/transport/transport_impl.h +3 -3
  690. data/src/core/lib/transport/transport_op_string.cc +1 -0
  691. data/src/core/lib/uri/uri_parser.cc +1 -1
  692. data/src/core/lib/uri/uri_parser.h +3 -3
  693. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -0
  694. data/src/core/tsi/alts/crypt/gsec.h +3 -3
  695. data/src/core/tsi/alts/frame_protector/alts_counter.h +3 -3
  696. data/src/core/tsi/alts/frame_protector/alts_crypter.h +3 -3
  697. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +3 -3
  698. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +3 -3
  699. data/src/core/tsi/alts/frame_protector/frame_handler.h +3 -3
  700. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +3 -3
  701. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +3 -3
  702. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +3 -3
  703. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +3 -3
  704. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +3 -3
  705. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +3 -3
  706. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +3 -3
  707. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +3 -3
  708. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +3 -3
  709. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +3 -3
  710. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +3 -3
  711. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +3 -3
  712. data/src/core/tsi/fake_transport_security.h +3 -3
  713. data/src/core/tsi/local_transport_security.h +3 -3
  714. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +1 -1
  715. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +3 -3
  716. data/src/core/tsi/ssl/session_cache/ssl_session.h +3 -3
  717. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +3 -3
  718. data/src/core/tsi/ssl_transport_security.cc +113 -24
  719. data/src/core/tsi/ssl_transport_security.h +5 -3
  720. data/src/core/tsi/ssl_transport_security_utils.h +3 -3
  721. data/src/core/tsi/ssl_types.h +3 -3
  722. data/src/core/tsi/transport_security.h +3 -3
  723. data/src/core/tsi/transport_security_grpc.h +3 -3
  724. data/src/core/tsi/transport_security_interface.h +3 -3
  725. data/src/ruby/lib/grpc/version.rb +1 -1
  726. data/src/ruby/pb/generate_proto_ruby.sh +0 -6
  727. data/third_party/abseil-cpp/absl/algorithm/container.h +56 -57
  728. data/third_party/abseil-cpp/absl/base/attributes.h +39 -19
  729. data/third_party/abseil-cpp/absl/base/config.h +44 -3
  730. data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +3 -18
  731. data/third_party/abseil-cpp/absl/base/internal/cycleclock_config.h +55 -0
  732. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +2 -1
  733. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +3 -3
  734. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +2 -2
  735. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +1 -1
  736. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +10 -6
  737. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +23 -24
  738. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +3 -3
  739. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +2 -6
  740. data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +4 -1
  741. data/third_party/abseil-cpp/absl/base/internal/strerror.cc +4 -4
  742. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +14 -10
  743. data/third_party/abseil-cpp/absl/base/internal/thread_annotations.h +9 -0
  744. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +4 -0
  745. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +3 -40
  746. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +62 -0
  747. data/third_party/abseil-cpp/absl/base/macros.h +4 -21
  748. data/third_party/abseil-cpp/absl/base/optimization.h +58 -6
  749. data/third_party/abseil-cpp/absl/base/options.h +1 -7
  750. data/third_party/abseil-cpp/absl/base/policy_checks.h +15 -13
  751. data/third_party/abseil-cpp/absl/container/fixed_array.h +7 -5
  752. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +0 -7
  753. data/third_party/abseil-cpp/absl/container/inlined_vector.h +66 -18
  754. data/third_party/abseil-cpp/absl/container/internal/common.h +3 -3
  755. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +132 -0
  756. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +13 -1
  757. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +4 -55
  758. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +50 -5
  759. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +14 -46
  760. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +110 -32
  761. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +155 -4
  762. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +661 -341
  763. data/third_party/abseil-cpp/absl/crc/crc32c.cc +99 -0
  764. data/third_party/abseil-cpp/absl/crc/crc32c.h +183 -0
  765. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +256 -0
  766. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.h +57 -0
  767. data/third_party/abseil-cpp/absl/crc/internal/crc.cc +468 -0
  768. data/third_party/abseil-cpp/absl/crc/internal/crc.h +91 -0
  769. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +269 -0
  770. data/third_party/abseil-cpp/absl/crc/internal/crc32c.h +39 -0
  771. data/third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h +72 -0
  772. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +130 -0
  773. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +159 -0
  774. data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +179 -0
  775. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy.h +119 -0
  776. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +75 -0
  777. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc +434 -0
  778. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +93 -0
  779. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +725 -0
  780. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +79 -0
  781. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +180 -0
  782. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +1 -1
  783. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +67 -38
  784. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +1 -1
  785. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +12 -13
  786. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +11 -9
  787. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +1 -1
  788. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +40 -85
  789. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +5 -4
  790. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +33 -8
  791. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +3 -2
  792. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +3 -2
  793. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +118 -94
  794. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +7 -6
  795. data/third_party/abseil-cpp/absl/functional/any_invocable.h +5 -2
  796. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +47 -26
  797. data/third_party/abseil-cpp/absl/hash/internal/city.cc +10 -10
  798. data/third_party/abseil-cpp/absl/hash/internal/hash.h +18 -4
  799. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +3 -14
  800. data/third_party/abseil-cpp/absl/memory/memory.h +26 -447
  801. data/third_party/abseil-cpp/absl/meta/type_traits.h +104 -12
  802. data/third_party/abseil-cpp/absl/numeric/bits.h +2 -3
  803. data/third_party/abseil-cpp/absl/numeric/int128.cc +10 -8
  804. data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +14 -6
  805. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +2 -1
  806. data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +1 -1
  807. data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +2 -23
  808. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +9 -9
  809. data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +2 -2
  810. data/third_party/abseil-cpp/absl/random/random.h +6 -6
  811. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +1 -0
  812. data/third_party/abseil-cpp/absl/status/status.cc +19 -12
  813. data/third_party/abseil-cpp/absl/status/status.h +2 -2
  814. data/third_party/abseil-cpp/absl/strings/ascii.cc +5 -5
  815. data/third_party/abseil-cpp/absl/strings/charconv.cc +534 -96
  816. data/third_party/abseil-cpp/absl/strings/cord.cc +92 -40
  817. data/third_party/abseil-cpp/absl/strings/cord.h +71 -80
  818. data/third_party/abseil-cpp/absl/strings/cord_buffer.h +8 -5
  819. data/third_party/abseil-cpp/absl/strings/escaping.cc +73 -62
  820. data/third_party/abseil-cpp/absl/strings/escaping.h +24 -19
  821. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +14 -12
  822. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +4 -4
  823. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +2 -2
  824. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +326 -70
  825. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +8 -4
  826. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +26 -14
  827. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +5 -5
  828. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +9 -7
  829. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h +5 -4
  830. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +7 -15
  831. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +3 -3
  832. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +8 -5
  833. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +7 -7
  834. data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +4 -4
  835. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +93 -0
  836. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +34 -0
  837. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +12 -10
  838. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +7 -9
  839. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +55 -0
  840. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +9 -6
  841. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +14 -7
  842. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +35 -10
  843. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +113 -46
  844. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +126 -29
  845. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -2
  846. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +4 -3
  847. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +49 -287
  848. data/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +351 -0
  849. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +2 -1
  850. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +4 -2
  851. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +215 -181
  852. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +10 -209
  853. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +10 -101
  854. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +2 -1
  855. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.cc +28 -0
  856. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h +57 -0
  857. data/third_party/abseil-cpp/absl/strings/numbers.cc +34 -31
  858. data/third_party/abseil-cpp/absl/strings/str_cat.cc +9 -6
  859. data/third_party/abseil-cpp/absl/strings/str_cat.h +50 -3
  860. data/third_party/abseil-cpp/absl/strings/str_format.h +71 -9
  861. data/third_party/abseil-cpp/absl/strings/string_view.cc +6 -6
  862. data/third_party/abseil-cpp/absl/strings/string_view.h +3 -10
  863. data/third_party/abseil-cpp/absl/strings/substitute.cc +8 -6
  864. data/third_party/abseil-cpp/absl/strings/substitute.h +46 -20
  865. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +20 -17
  866. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +37 -31
  867. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +22 -8
  868. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +104 -55
  869. data/third_party/abseil-cpp/absl/synchronization/mutex.h +85 -46
  870. data/third_party/abseil-cpp/absl/synchronization/notification.cc +0 -1
  871. data/third_party/abseil-cpp/absl/synchronization/notification.h +0 -1
  872. data/third_party/abseil-cpp/absl/time/civil_time.cc +26 -0
  873. data/third_party/abseil-cpp/absl/time/civil_time.h +25 -0
  874. data/third_party/abseil-cpp/absl/time/clock.cc +17 -11
  875. data/third_party/abseil-cpp/absl/time/duration.cc +7 -7
  876. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  877. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1 -1
  878. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +26 -5
  879. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +7 -6
  880. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +36 -35
  881. data/third_party/abseil-cpp/absl/time/time.cc +2 -2
  882. data/third_party/abseil-cpp/absl/time/time.h +253 -158
  883. data/third_party/abseil-cpp/absl/types/internal/span.h +30 -19
  884. data/third_party/abseil-cpp/absl/types/internal/variant.h +28 -40
  885. data/third_party/abseil-cpp/absl/types/span.h +29 -7
  886. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +1 -1
  887. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +1 -2
  888. metadata +73 -8
  889. data/src/core/lib/event_engine/socket_notifier.h +0 -55
  890. data/src/core/lib/promise/for_each.h +0 -155
  891. data/src/core/lib/promise/map_pipe.h +0 -88
  892. data/src/core/lib/promise/try_concurrently.h +0 -342
@@ -28,10 +28,10 @@
28
28
  namespace absl {
29
29
  ABSL_NAMESPACE_BEGIN
30
30
 
31
- namespace span_internal {
32
- // A constexpr min function
33
- constexpr size_t Min(size_t a, size_t b) noexcept { return a < b ? a : b; }
31
+ template <typename T>
32
+ class Span;
34
33
 
34
+ namespace span_internal {
35
35
  // Wrappers for access to container data pointers.
36
36
  template <typename C>
37
37
  constexpr auto GetDataImpl(C& c, char) noexcept // NOLINT(runtime/references)
@@ -99,28 +99,39 @@ bool LessThanImpl(SpanT<T> a, SpanT<T> b) {
99
99
  return std::lexicographical_compare(a.begin(), a.end(), b.begin(), b.end());
100
100
  }
101
101
 
102
- // The `IsConvertible` classes here are needed because of the
103
- // `std::is_convertible` bug in libcxx when compiled with GCC. This build
104
- // configuration is used by Android NDK toolchain. Reference link:
105
- // https://bugs.llvm.org/show_bug.cgi?id=27538.
106
102
  template <typename From, typename To>
107
- struct IsConvertibleHelper {
108
- private:
109
- static std::true_type testval(To);
110
- static std::false_type testval(...);
103
+ using EnableIfConvertibleTo =
104
+ typename std::enable_if<std::is_convertible<From, To>::value>::type;
105
+
106
+ // IsView is true for types where the return type of .data() is the same for
107
+ // mutable and const instances. This isn't foolproof, but it's only used to
108
+ // enable a compiler warning.
109
+ template <typename T, typename = void, typename = void>
110
+ struct IsView {
111
+ static constexpr bool value = false;
112
+ };
111
113
 
114
+ template <typename T>
115
+ struct IsView<
116
+ T, absl::void_t<decltype(span_internal::GetData(std::declval<const T&>()))>,
117
+ absl::void_t<decltype(span_internal::GetData(std::declval<T&>()))>> {
118
+ private:
119
+ using Container = std::remove_const_t<T>;
120
+ using ConstData =
121
+ decltype(span_internal::GetData(std::declval<const Container&>()));
122
+ using MutData = decltype(span_internal::GetData(std::declval<Container&>()));
112
123
  public:
113
- using type = decltype(testval(std::declval<From>()));
124
+ static constexpr bool value = std::is_same<ConstData, MutData>::value;
114
125
  };
115
126
 
116
- template <typename From, typename To>
117
- struct IsConvertible : IsConvertibleHelper<From, To>::type {};
127
+ // These enablers result in 'int' so they can be used as typenames or defaults
128
+ // in template paramters lists.
129
+ template <typename T>
130
+ using EnableIfIsView = std::enable_if_t<IsView<T>::value, int>;
131
+
132
+ template <typename T>
133
+ using EnableIfNotIsView = std::enable_if_t<!IsView<T>::value, int>;
118
134
 
119
- // TODO(zhangxy): replace `IsConvertible` with `std::is_convertible` once the
120
- // older version of libcxx is not supported.
121
- template <typename From, typename To>
122
- using EnableIfConvertibleTo =
123
- typename std::enable_if<IsConvertible<From, To>::value>::type;
124
135
  } // namespace span_internal
125
136
  ABSL_NAMESPACE_END
126
137
  } // namespace absl
@@ -16,8 +16,8 @@
16
16
  // separate file to avoid cluttering the top of the API header with
17
17
  // implementation details.
18
18
 
19
- #ifndef ABSL_TYPES_VARIANT_INTERNAL_H_
20
- #define ABSL_TYPES_VARIANT_INTERNAL_H_
19
+ #ifndef ABSL_TYPES_INTERNAL_VARIANT_H_
20
+ #define ABSL_TYPES_INTERNAL_VARIANT_H_
21
21
 
22
22
  #include <cassert>
23
23
  #include <cstddef>
@@ -449,7 +449,7 @@ struct FlattenIndices;
449
449
 
450
450
  template <std::size_t HeadSize, std::size_t... TailSize>
451
451
  struct FlattenIndices<HeadSize, TailSize...> {
452
- template<class... SizeType>
452
+ template <class... SizeType>
453
453
  static constexpr std::size_t Run(std::size_t head, SizeType... tail) {
454
454
  return head + HeadSize * FlattenIndices<TailSize...>::Run(tail...);
455
455
  }
@@ -498,8 +498,8 @@ struct VisitIndicesVariadicImpl<absl::index_sequence<N...>, EndIndices...> {
498
498
  };
499
499
 
500
500
  template <class Op, class... SizeType>
501
- static VisitIndicesResultT<Op, decltype(EndIndices)...> Run(
502
- Op&& op, SizeType... i) {
501
+ static VisitIndicesResultT<Op, decltype(EndIndices)...> Run(Op&& op,
502
+ SizeType... i) {
503
503
  return VisitIndicesSwitch<NumCasesOfSwitch<EndIndices...>::value>::Run(
504
504
  FlattenedOp<Op>{absl::forward<Op>(op)},
505
505
  FlattenIndices<(EndIndices + std::size_t{1})...>::Run(
@@ -683,13 +683,13 @@ struct VariantCoreAccess {
683
683
  variant_internal::IndexOfConstructedType<Left, QualifiedNew>;
684
684
 
685
685
  void operator()(SizeT<NewIndex::value> /*old_i*/
686
- ) const {
686
+ ) const {
687
687
  Access<NewIndex::value>(*left) = absl::forward<QualifiedNew>(other);
688
688
  }
689
689
 
690
690
  template <std::size_t OldIndex>
691
691
  void operator()(SizeT<OldIndex> /*old_i*/
692
- ) const {
692
+ ) const {
693
693
  using New =
694
694
  typename absl::variant_alternative<NewIndex::value, Left>::type;
695
695
  if (std::is_nothrow_constructible<New, QualifiedNew>::value ||
@@ -868,18 +868,6 @@ struct IsNeitherSelfNorInPlace<Self, in_place_type_t<T>> : std::false_type {};
868
868
  template <class Self, std::size_t I>
869
869
  struct IsNeitherSelfNorInPlace<Self, in_place_index_t<I>> : std::false_type {};
870
870
 
871
- template <class Variant, class T, class = void>
872
- struct ConversionIsPossibleImpl : std::false_type {};
873
-
874
- template <class Variant, class T>
875
- struct ConversionIsPossibleImpl<
876
- Variant, T,
877
- void_t<decltype(ImaginaryFun<Variant>::Run(std::declval<T>(), {}))>>
878
- : std::true_type {};
879
-
880
- template <class Variant, class T>
881
- struct ConversionIsPossible : ConversionIsPossibleImpl<Variant, T>::type {};
882
-
883
871
  template <class Variant, class T>
884
872
  struct IndexOfConstructedType<
885
873
  Variant, T,
@@ -1151,16 +1139,16 @@ struct VariantHelper<variant<Ts...>> {
1151
1139
  // Type metafunction which returns the element type selected if
1152
1140
  // OverloadSet::Overload() is well-formed when called with argument type U.
1153
1141
  template <typename U>
1154
- using BestMatch = decltype(
1155
- variant_internal::OverloadSet<Ts...>::Overload(std::declval<U>()));
1142
+ using BestMatch = decltype(variant_internal::OverloadSet<Ts...>::Overload(
1143
+ std::declval<U>()));
1156
1144
 
1157
1145
  // Type metafunction which returns true if OverloadSet::Overload() is
1158
1146
  // well-formed when called with argument type U.
1159
1147
  // CanAccept can't be just an alias because there is a MSVC bug on parameter
1160
1148
  // pack expansion involving decltype.
1161
1149
  template <typename U>
1162
- struct CanAccept :
1163
- std::integral_constant<bool, !std::is_void<BestMatch<U>>::value> {};
1150
+ struct CanAccept
1151
+ : std::integral_constant<bool, !std::is_void<BestMatch<U>>::value> {};
1164
1152
 
1165
1153
  // Type metafunction which returns true if Other is an instantiation of
1166
1154
  // variant, and variants's converting constructor from Other will be
@@ -1183,8 +1171,8 @@ struct TrivialMoveOnly {
1183
1171
  // A union's defaulted copy/move constructor is deleted if any variant member's
1184
1172
  // copy/move constructor is nontrivial.
1185
1173
  template <typename T>
1186
- struct IsTriviallyMoveConstructible:
1187
- std::is_move_constructible<Union<T, TrivialMoveOnly>> {};
1174
+ struct IsTriviallyMoveConstructible
1175
+ : std::is_move_constructible<Union<T, TrivialMoveOnly>> {};
1188
1176
 
1189
1177
  // To guarantee triviality of all special-member functions that can be trivial,
1190
1178
  // we use a chain of conditional bases for each one.
@@ -1419,14 +1407,14 @@ class VariantMoveAssignBaseNontrivial : protected VariantCopyBase<T...> {
1419
1407
  VariantMoveAssignBaseNontrivial& operator=(
1420
1408
  VariantMoveAssignBaseNontrivial const&) = default;
1421
1409
 
1422
- VariantMoveAssignBaseNontrivial&
1423
- operator=(VariantMoveAssignBaseNontrivial&& other) noexcept(
1424
- absl::conjunction<std::is_nothrow_move_constructible<T>...,
1425
- std::is_nothrow_move_assignable<T>...>::value) {
1426
- VisitIndices<sizeof...(T)>::Run(
1427
- VariantCoreAccess::MakeMoveAssignVisitor(this, &other), other.index_);
1428
- return *this;
1429
- }
1410
+ VariantMoveAssignBaseNontrivial&
1411
+ operator=(VariantMoveAssignBaseNontrivial&& other) noexcept(
1412
+ absl::conjunction<std::is_nothrow_move_constructible<T>...,
1413
+ std::is_nothrow_move_assignable<T>...>::value) {
1414
+ VisitIndices<sizeof...(T)>::Run(
1415
+ VariantCoreAccess::MakeMoveAssignVisitor(this, &other), other.index_);
1416
+ return *this;
1417
+ }
1430
1418
 
1431
1419
  protected:
1432
1420
  using Base::index_;
@@ -1450,12 +1438,12 @@ class VariantCopyAssignBaseNontrivial : protected VariantMoveAssignBase<T...> {
1450
1438
  VariantCopyAssignBaseNontrivial& operator=(
1451
1439
  VariantCopyAssignBaseNontrivial&&) = default;
1452
1440
 
1453
- VariantCopyAssignBaseNontrivial& operator=(
1454
- const VariantCopyAssignBaseNontrivial& other) {
1455
- VisitIndices<sizeof...(T)>::Run(
1456
- VariantCoreAccess::MakeCopyAssignVisitor(this, other), other.index_);
1457
- return *this;
1458
- }
1441
+ VariantCopyAssignBaseNontrivial& operator=(
1442
+ const VariantCopyAssignBaseNontrivial& other) {
1443
+ VisitIndices<sizeof...(T)>::Run(
1444
+ VariantCoreAccess::MakeCopyAssignVisitor(this, other), other.index_);
1445
+ return *this;
1446
+ }
1459
1447
 
1460
1448
  protected:
1461
1449
  using Base::index_;
@@ -1643,4 +1631,4 @@ ABSL_NAMESPACE_END
1643
1631
  } // namespace absl
1644
1632
 
1645
1633
  #endif // !defined(ABSL_USES_STD_VARIANT)
1646
- #endif // ABSL_TYPES_VARIANT_INTERNAL_H_
1634
+ #endif // ABSL_TYPES_INTERNAL_VARIANT_H_
@@ -60,6 +60,7 @@
60
60
  #include <type_traits>
61
61
  #include <utility>
62
62
 
63
+ #include "absl/base/attributes.h"
63
64
  #include "absl/base/internal/throw_delegate.h"
64
65
  #include "absl/base/macros.h"
65
66
  #include "absl/base/optimization.h"
@@ -160,12 +161,12 @@ class Span {
160
161
 
161
162
  // Used to SFINAE-enable a function when the slice elements are const.
162
163
  template <typename U>
163
- using EnableIfConstView =
164
+ using EnableIfValueIsConst =
164
165
  typename std::enable_if<std::is_const<T>::value, U>::type;
165
166
 
166
167
  // Used to SFINAE-enable a function when the slice elements are mutable.
167
168
  template <typename U>
168
- using EnableIfMutableView =
169
+ using EnableIfValueIsMutable =
169
170
  typename std::enable_if<!std::is_const<T>::value, U>::type;
170
171
 
171
172
  public:
@@ -196,13 +197,34 @@ class Span {
196
197
  // Explicit reference constructor for a mutable `Span<T>` type. Can be
197
198
  // replaced with MakeSpan() to infer the type parameter.
198
199
  template <typename V, typename = EnableIfConvertibleFrom<V>,
199
- typename = EnableIfMutableView<V>>
200
- explicit Span(V& v) noexcept // NOLINT(runtime/references)
200
+ typename = EnableIfValueIsMutable<V>,
201
+ typename = span_internal::EnableIfNotIsView<V>>
202
+ explicit Span(
203
+ V& v
204
+ ABSL_ATTRIBUTE_LIFETIME_BOUND) noexcept // NOLINT(runtime/references)
201
205
  : Span(span_internal::GetData(v), v.size()) {}
202
206
 
203
207
  // Implicit reference constructor for a read-only `Span<const T>` type
204
208
  template <typename V, typename = EnableIfConvertibleFrom<V>,
205
- typename = EnableIfConstView<V>>
209
+ typename = EnableIfValueIsConst<V>,
210
+ typename = span_internal::EnableIfNotIsView<V>>
211
+ constexpr Span(
212
+ const V& v
213
+ ABSL_ATTRIBUTE_LIFETIME_BOUND) noexcept // NOLINT(runtime/explicit)
214
+ : Span(span_internal::GetData(v), v.size()) {}
215
+
216
+ // Overloads of the above two functions that are only enabled for view types.
217
+ // This is so we can drop the ABSL_ATTRIBUTE_LIFETIME_BOUND annotation. These
218
+ // overloads must be made unique by using a different template parameter list
219
+ // (hence the = 0 for the IsView enabler).
220
+ template <typename V, typename = EnableIfConvertibleFrom<V>,
221
+ typename = EnableIfValueIsMutable<V>,
222
+ span_internal::EnableIfIsView<V> = 0>
223
+ explicit Span(V& v) noexcept // NOLINT(runtime/references)
224
+ : Span(span_internal::GetData(v), v.size()) {}
225
+ template <typename V, typename = EnableIfConvertibleFrom<V>,
226
+ typename = EnableIfValueIsConst<V>,
227
+ span_internal::EnableIfIsView<V> = 0>
206
228
  constexpr Span(const V& v) noexcept // NOLINT(runtime/explicit)
207
229
  : Span(span_internal::GetData(v), v.size()) {}
208
230
 
@@ -242,7 +264,7 @@ class Span {
242
264
  // Process(ints);
243
265
  //
244
266
  template <typename LazyT = T,
245
- typename = EnableIfConstView<LazyT>>
267
+ typename = EnableIfValueIsConst<LazyT>>
246
268
  Span(std::initializer_list<value_type> v
247
269
  ABSL_ATTRIBUTE_LIFETIME_BOUND) noexcept // NOLINT(runtime/explicit)
248
270
  : Span(v.begin(), v.size()) {}
@@ -398,7 +420,7 @@ class Span {
398
420
  // absl::MakeSpan(vec).subspan(5); // throws std::out_of_range
399
421
  constexpr Span subspan(size_type pos = 0, size_type len = npos) const {
400
422
  return (pos <= size())
401
- ? Span(data() + pos, span_internal::Min(size() - pos, len))
423
+ ? Span(data() + pos, (std::min)(size() - pos, len))
402
424
  : (base_internal::ThrowStdOutOfRange("pos > size()"), Span());
403
425
  }
404
426
 
@@ -129,7 +129,7 @@ int GENERAL_NAME_cmp(const GENERAL_NAME *a, const GENERAL_NAME *b)
129
129
 
130
130
  switch (a->type) {
131
131
  case GEN_X400:
132
- return ASN1_TYPE_cmp(a->d.x400Address, b->d.x400Address);
132
+ return ASN1_STRING_cmp(a->d.x400Address, b->d.x400Address);
133
133
 
134
134
  case GEN_EDIPARTY:
135
135
  return edipartyname_cmp(a->d.ediPartyName, b->d.ediPartyName);
@@ -187,7 +187,7 @@ typedef struct GENERAL_NAME_st {
187
187
  OTHERNAME *otherName; // otherName
188
188
  ASN1_IA5STRING *rfc822Name;
189
189
  ASN1_IA5STRING *dNSName;
190
- ASN1_TYPE *x400Address;
190
+ ASN1_STRING *x400Address;
191
191
  X509_NAME *directoryName;
192
192
  EDIPARTYNAME *ediPartyName;
193
193
  ASN1_IA5STRING *uniformResourceIdentifier;
@@ -199,7 +199,6 @@ typedef struct GENERAL_NAME_st {
199
199
  X509_NAME *dirn; // dirn
200
200
  ASN1_IA5STRING *ia5; // rfc822Name, dNSName, uniformResourceIdentifier
201
201
  ASN1_OBJECT *rid; // registeredID
202
- ASN1_TYPE *other; // x400Address
203
202
  } d;
204
203
  } GENERAL_NAME;
205
204
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grpc
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.52.0.pre2
4
+ version: 1.53.0.pre2
5
5
  platform: ruby
6
6
  authors:
7
7
  - gRPC Authors
8
8
  autorequire:
9
9
  bindir: src/ruby/bin
10
10
  cert_chain: []
11
- date: 2023-01-23 00:00:00.000000000 Z
11
+ date: 2023-03-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-protobuf
@@ -280,6 +280,9 @@ files:
280
280
  - include/grpc/support/thd_id.h
281
281
  - include/grpc/support/time.h
282
282
  - include/grpc/support/workaround_list.h
283
+ - src/core/ext/filters/backend_metrics/backend_metric_filter.cc
284
+ - src/core/ext/filters/backend_metrics/backend_metric_filter.h
285
+ - src/core/ext/filters/backend_metrics/backend_metric_provider.h
283
286
  - src/core/ext/filters/census/grpc_context.cc
284
287
  - src/core/ext/filters/channel_idle/channel_idle_filter.cc
285
288
  - src/core/ext/filters/channel_idle/channel_idle_filter.h
@@ -328,6 +331,7 @@ files:
328
331
  - src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h
329
332
  - src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc
330
333
  - src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h
334
+ - src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h
331
335
  - src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc
332
336
  - src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h
333
337
  - src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc
@@ -337,6 +341,9 @@ files:
337
341
  - src/core/ext/filters/client_channel/lb_policy/rls/rls.cc
338
342
  - src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc
339
343
  - src/core/ext/filters/client_channel/lb_policy/subchannel_list.h
344
+ - src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc
345
+ - src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h
346
+ - src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc
340
347
  - src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc
341
348
  - src/core/ext/filters/client_channel/lb_policy/xds/cds.cc
342
349
  - src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.cc
@@ -611,6 +618,10 @@ files:
611
618
  - src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h
612
619
  - src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c
613
620
  - src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h
621
+ - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c
622
+ - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h
623
+ - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c
624
+ - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h
614
625
  - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c
615
626
  - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h
616
627
  - src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c
@@ -637,6 +648,8 @@ files:
637
648
  - src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h
638
649
  - src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c
639
650
  - src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h
651
+ - src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c
652
+ - src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h
640
653
  - src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c
641
654
  - src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h
642
655
  - src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c
@@ -649,6 +662,8 @@ files:
649
662
  - src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h
650
663
  - src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c
651
664
  - src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h
665
+ - src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c
666
+ - src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h
652
667
  - src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c
653
668
  - src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h
654
669
  - src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c
@@ -947,6 +962,8 @@ files:
947
962
  - src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h
948
963
  - src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c
949
964
  - src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h
965
+ - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c
966
+ - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h
950
967
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c
951
968
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h
952
969
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c
@@ -959,6 +976,8 @@ files:
959
976
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h
960
977
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c
961
978
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h
979
+ - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c
980
+ - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h
962
981
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c
963
982
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h
964
983
  - src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c
@@ -1188,12 +1207,14 @@ files:
1188
1207
  - src/core/lib/event_engine/default_event_engine.h
1189
1208
  - src/core/lib/event_engine/default_event_engine_factory.cc
1190
1209
  - src/core/lib/event_engine/default_event_engine_factory.h
1210
+ - src/core/lib/event_engine/event_engine.cc
1191
1211
  - src/core/lib/event_engine/executor/executor.h
1192
1212
  - src/core/lib/event_engine/forkable.cc
1193
1213
  - src/core/lib/event_engine/forkable.h
1194
1214
  - src/core/lib/event_engine/handle_containers.h
1195
1215
  - src/core/lib/event_engine/memory_allocator.cc
1196
1216
  - src/core/lib/event_engine/poller.h
1217
+ - src/core/lib/event_engine/posix.h
1197
1218
  - src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc
1198
1219
  - src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h
1199
1220
  - src/core/lib/event_engine/posix_engine/ev_poll_posix.cc
@@ -1232,11 +1253,15 @@ files:
1232
1253
  - src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc
1233
1254
  - src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h
1234
1255
  - src/core/lib/event_engine/resolved_address.cc
1256
+ - src/core/lib/event_engine/resolved_address_internal.h
1257
+ - src/core/lib/event_engine/shim.cc
1258
+ - src/core/lib/event_engine/shim.h
1235
1259
  - src/core/lib/event_engine/slice.cc
1236
1260
  - src/core/lib/event_engine/slice_buffer.cc
1237
- - src/core/lib/event_engine/socket_notifier.h
1238
1261
  - src/core/lib/event_engine/tcp_socket_utils.cc
1239
1262
  - src/core/lib/event_engine/tcp_socket_utils.h
1263
+ - src/core/lib/event_engine/thread_local.cc
1264
+ - src/core/lib/event_engine/thread_local.h
1240
1265
  - src/core/lib/event_engine/thread_pool.cc
1241
1266
  - src/core/lib/event_engine/thread_pool.h
1242
1267
  - src/core/lib/event_engine/time_util.cc
@@ -1249,6 +1274,8 @@ files:
1249
1274
  - src/core/lib/event_engine/windows/iocp.h
1250
1275
  - src/core/lib/event_engine/windows/win_socket.cc
1251
1276
  - src/core/lib/event_engine/windows/win_socket.h
1277
+ - src/core/lib/event_engine/windows/windows_endpoint.cc
1278
+ - src/core/lib/event_engine/windows/windows_endpoint.h
1252
1279
  - src/core/lib/event_engine/windows/windows_engine.cc
1253
1280
  - src/core/lib/event_engine/windows/windows_engine.h
1254
1281
  - src/core/lib/experiments/config.cc
@@ -1372,6 +1399,7 @@ files:
1372
1399
  - src/core/lib/iomgr/call_combiner.h
1373
1400
  - src/core/lib/iomgr/cfstream_handle.cc
1374
1401
  - src/core/lib/iomgr/cfstream_handle.h
1402
+ - src/core/lib/iomgr/closure.cc
1375
1403
  - src/core/lib/iomgr/closure.h
1376
1404
  - src/core/lib/iomgr/combiner.cc
1377
1405
  - src/core/lib/iomgr/combiner.h
@@ -1397,6 +1425,12 @@ files:
1397
1425
  - src/core/lib/iomgr/ev_posix.cc
1398
1426
  - src/core/lib/iomgr/ev_posix.h
1399
1427
  - src/core/lib/iomgr/ev_windows.cc
1428
+ - src/core/lib/iomgr/event_engine_shims/closure.cc
1429
+ - src/core/lib/iomgr/event_engine_shims/closure.h
1430
+ - src/core/lib/iomgr/event_engine_shims/endpoint.cc
1431
+ - src/core/lib/iomgr/event_engine_shims/endpoint.h
1432
+ - src/core/lib/iomgr/event_engine_shims/tcp_client.cc
1433
+ - src/core/lib/iomgr/event_engine_shims/tcp_client.h
1400
1434
  - src/core/lib/iomgr/exec_ctx.cc
1401
1435
  - src/core/lib/iomgr/exec_ctx.h
1402
1436
  - src/core/lib/iomgr/executor.cc
@@ -1521,19 +1555,19 @@ files:
1521
1555
  - src/core/lib/promise/activity.h
1522
1556
  - src/core/lib/promise/arena_promise.h
1523
1557
  - src/core/lib/promise/context.h
1558
+ - src/core/lib/promise/detail/basic_join.h
1524
1559
  - src/core/lib/promise/detail/basic_seq.h
1525
1560
  - src/core/lib/promise/detail/promise_factory.h
1526
1561
  - src/core/lib/promise/detail/promise_like.h
1527
1562
  - src/core/lib/promise/detail/status.h
1528
1563
  - src/core/lib/promise/detail/switch.h
1529
1564
  - src/core/lib/promise/exec_ctx_wakeup_scheduler.h
1530
- - src/core/lib/promise/for_each.h
1565
+ - src/core/lib/promise/if.h
1566
+ - src/core/lib/promise/interceptor_list.h
1531
1567
  - src/core/lib/promise/intra_activity_waiter.h
1532
1568
  - src/core/lib/promise/latch.h
1533
1569
  - src/core/lib/promise/loop.h
1534
1570
  - src/core/lib/promise/map.h
1535
- - src/core/lib/promise/map_pipe.h
1536
- - src/core/lib/promise/pipe.cc
1537
1571
  - src/core/lib/promise/pipe.h
1538
1572
  - src/core/lib/promise/poll.h
1539
1573
  - src/core/lib/promise/promise.h
@@ -1541,7 +1575,9 @@ files:
1541
1575
  - src/core/lib/promise/seq.h
1542
1576
  - src/core/lib/promise/sleep.cc
1543
1577
  - src/core/lib/promise/sleep.h
1544
- - src/core/lib/promise/try_concurrently.h
1578
+ - src/core/lib/promise/trace.cc
1579
+ - src/core/lib/promise/trace.h
1580
+ - src/core/lib/promise/try_join.h
1545
1581
  - src/core/lib/promise/try_seq.h
1546
1582
  - src/core/lib/resolver/resolver.cc
1547
1583
  - src/core/lib/resolver/resolver.h
@@ -1696,6 +1732,7 @@ files:
1696
1732
  - src/core/lib/slice/slice_buffer.cc
1697
1733
  - src/core/lib/slice/slice_buffer.h
1698
1734
  - src/core/lib/slice/slice_internal.h
1735
+ - src/core/lib/slice/slice_refcount.cc
1699
1736
  - src/core/lib/slice/slice_refcount.h
1700
1737
  - src/core/lib/slice/slice_string_helpers.cc
1701
1738
  - src/core/lib/slice/slice_string_helpers.h
@@ -1963,6 +2000,7 @@ files:
1963
2000
  - third_party/abseil-cpp/absl/base/internal/atomic_hook.h
1964
2001
  - third_party/abseil-cpp/absl/base/internal/cycleclock.cc
1965
2002
  - third_party/abseil-cpp/absl/base/internal/cycleclock.h
2003
+ - third_party/abseil-cpp/absl/base/internal/cycleclock_config.h
1966
2004
  - third_party/abseil-cpp/absl/base/internal/direct_mmap.h
1967
2005
  - third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h
1968
2006
  - third_party/abseil-cpp/absl/base/internal/endian.h
@@ -2001,6 +2039,7 @@ files:
2001
2039
  - third_party/abseil-cpp/absl/base/internal/unaligned_access.h
2002
2040
  - third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc
2003
2041
  - third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h
2042
+ - third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h
2004
2043
  - third_party/abseil-cpp/absl/base/log_severity.cc
2005
2044
  - third_party/abseil-cpp/absl/base/log_severity.h
2006
2045
  - third_party/abseil-cpp/absl/base/macros.h
@@ -2016,6 +2055,7 @@ files:
2016
2055
  - third_party/abseil-cpp/absl/container/flat_hash_set.h
2017
2056
  - third_party/abseil-cpp/absl/container/inlined_vector.h
2018
2057
  - third_party/abseil-cpp/absl/container/internal/common.h
2058
+ - third_party/abseil-cpp/absl/container/internal/common_policy_traits.h
2019
2059
  - third_party/abseil-cpp/absl/container/internal/compressed_tuple.h
2020
2060
  - third_party/abseil-cpp/absl/container/internal/container_memory.h
2021
2061
  - third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h
@@ -2029,6 +2069,25 @@ files:
2029
2069
  - third_party/abseil-cpp/absl/container/internal/raw_hash_map.h
2030
2070
  - third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc
2031
2071
  - third_party/abseil-cpp/absl/container/internal/raw_hash_set.h
2072
+ - third_party/abseil-cpp/absl/crc/crc32c.cc
2073
+ - third_party/abseil-cpp/absl/crc/crc32c.h
2074
+ - third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc
2075
+ - third_party/abseil-cpp/absl/crc/internal/cpu_detect.h
2076
+ - third_party/abseil-cpp/absl/crc/internal/crc.cc
2077
+ - third_party/abseil-cpp/absl/crc/internal/crc.h
2078
+ - third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h
2079
+ - third_party/abseil-cpp/absl/crc/internal/crc32c.h
2080
+ - third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h
2081
+ - third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc
2082
+ - third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h
2083
+ - third_party/abseil-cpp/absl/crc/internal/crc_internal.h
2084
+ - third_party/abseil-cpp/absl/crc/internal/crc_memcpy.h
2085
+ - third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc
2086
+ - third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc
2087
+ - third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc
2088
+ - third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc
2089
+ - third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h
2090
+ - third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h
2032
2091
  - third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc
2033
2092
  - third_party/abseil-cpp/absl/debugging/internal/address_is_readable.h
2034
2093
  - third_party/abseil-cpp/absl/debugging/internal/demangle.cc
@@ -2178,8 +2237,11 @@ files:
2178
2237
  - third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h
2179
2238
  - third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h
2180
2239
  - third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h
2240
+ - third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc
2241
+ - third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h
2181
2242
  - third_party/abseil-cpp/absl/strings/internal/escaping.cc
2182
2243
  - third_party/abseil-cpp/absl/strings/internal/escaping.h
2244
+ - third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h
2183
2245
  - third_party/abseil-cpp/absl/strings/internal/memutil.cc
2184
2246
  - third_party/abseil-cpp/absl/strings/internal/memutil.h
2185
2247
  - third_party/abseil-cpp/absl/strings/internal/ostringstream.cc
@@ -2191,6 +2253,7 @@ files:
2191
2253
  - third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc
2192
2254
  - third_party/abseil-cpp/absl/strings/internal/str_format/bind.h
2193
2255
  - third_party/abseil-cpp/absl/strings/internal/str_format/checker.h
2256
+ - third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h
2194
2257
  - third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc
2195
2258
  - third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
2196
2259
  - third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc
@@ -2202,6 +2265,8 @@ files:
2202
2265
  - third_party/abseil-cpp/absl/strings/internal/str_join_internal.h
2203
2266
  - third_party/abseil-cpp/absl/strings/internal/str_split_internal.h
2204
2267
  - third_party/abseil-cpp/absl/strings/internal/string_constant.h
2268
+ - third_party/abseil-cpp/absl/strings/internal/stringify_sink.cc
2269
+ - third_party/abseil-cpp/absl/strings/internal/stringify_sink.h
2205
2270
  - third_party/abseil-cpp/absl/strings/internal/utf8.cc
2206
2271
  - third_party/abseil-cpp/absl/strings/internal/utf8.h
2207
2272
  - third_party/abseil-cpp/absl/strings/match.cc
@@ -2993,7 +3058,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
2993
3058
  - !ruby/object:Gem::Version
2994
3059
  version: 1.3.1
2995
3060
  requirements: []
2996
- rubygems_version: 3.4.5
3061
+ rubygems_version: 3.4.7
2997
3062
  signing_key:
2998
3063
  specification_version: 4
2999
3064
  summary: GRPC system in Ruby
@@ -1,55 +0,0 @@
1
- // Copyright 2022 gRPC authors.
2
- //
3
- // Licensed under the Apache License, Version 2.0 (the "License");
4
- // you may not use this file except in compliance with the License.
5
- // You may obtain a copy of the License at
6
- //
7
- // http://www.apache.org/licenses/LICENSE-2.0
8
- //
9
- // Unless required by applicable law or agreed to in writing, software
10
- // distributed under the License is distributed on an "AS IS" BASIS,
11
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- // See the License for the specific language governing permissions and
13
- // limitations under the License.
14
- #ifndef GRPC_CORE_LIB_EVENT_ENGINE_SOCKET_NOTIFIER_H
15
- #define GRPC_CORE_LIB_EVENT_ENGINE_SOCKET_NOTIFIER_H
16
-
17
- #include <grpc/support/port_platform.h>
18
-
19
- #include "absl/status/status.h"
20
-
21
- #include <grpc/event_engine/event_engine.h>
22
-
23
- namespace grpc_event_engine {
24
- namespace experimental {
25
-
26
- // Generically wraps a socket/fd, and manages the registration of callbacks and
27
- // triggering of notifications on it.
28
- class SocketNotifier {
29
- public:
30
- virtual ~SocketNotifier() = default;
31
- // Schedule on_read to be invoked when the underlying socket
32
- // becomes readable.
33
- // If the socket is already readable, the callback will be executed as soon as
34
- // possible.
35
- virtual void NotifyOnRead(EventEngine::Closure* on_read) = 0;
36
- // Schedule on_write to be invoked when the underlying socket
37
- // becomes writable.
38
- // If the socket is already writable, the callback will be executed as soon as
39
- // possible.
40
- virtual void NotifyOnWrite(EventEngine::Closure* on_write) = 0;
41
- // Set a readable event on the underlying socket.
42
- virtual void SetReadable() = 0;
43
- // Set a writable event on the underlying socket.
44
- virtual void SetWritable() = 0;
45
- // Shutdown a SocketNotifier. After this operation, NotifyXXX and SetXXX
46
- // operations cannot be performed.
47
- virtual void MaybeShutdown(absl::Status why) = 0;
48
- // Returns true if the SocketNotifier has been shutdown.
49
- virtual bool IsShutdown() = 0;
50
- };
51
-
52
- } // namespace experimental
53
- } // namespace grpc_event_engine
54
-
55
- #endif // GRPC_CORE_LIB_EVENT_ENGINE_SOCKET_NOTIFIER_H