grpc 1.48.0 → 1.49.0.pre1

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 (715) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +104 -41
  3. data/include/grpc/event_engine/event_engine.h +19 -16
  4. data/include/grpc/impl/codegen/grpc_types.h +3 -8
  5. data/include/grpc/impl/codegen/port_platform.h +0 -8
  6. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +3 -3
  7. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +2 -2
  8. data/src/core/ext/filters/client_channel/client_channel.cc +117 -200
  9. data/src/core/ext/filters/client_channel/client_channel.h +15 -8
  10. data/src/core/ext/filters/client_channel/client_channel_factory.cc +0 -29
  11. data/src/core/ext/filters/client_channel/client_channel_factory.h +2 -10
  12. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +1 -1
  13. data/src/core/ext/filters/client_channel/config_selector.h +12 -4
  14. data/src/core/ext/filters/client_channel/connector.h +4 -5
  15. data/src/core/ext/filters/client_channel/http_proxy.cc +53 -65
  16. data/src/core/ext/filters/client_channel/http_proxy.h +12 -9
  17. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +14 -12
  18. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +6 -6
  19. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +100 -124
  20. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +12 -3
  21. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +5 -1
  22. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +1 -0
  23. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -2
  24. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +1 -1
  25. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +169 -63
  26. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +25 -1
  27. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +15 -19
  28. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +66 -78
  29. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +44 -44
  30. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +6 -5
  31. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +65 -77
  32. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +15 -14
  33. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +19 -14
  34. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +60 -67
  35. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +40 -49
  36. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +81 -97
  37. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +53 -61
  38. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +171 -102
  39. data/src/core/ext/filters/client_channel/proxy_mapper.h +13 -14
  40. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +19 -16
  41. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +8 -7
  42. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +4 -8
  43. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +431 -145
  44. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +170 -99
  45. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +20 -7
  46. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +17 -15
  47. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +7 -17
  48. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +11 -0
  49. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +13 -14
  50. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +3 -4
  51. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +5 -6
  52. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +4 -13
  53. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +162 -165
  54. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +37 -30
  55. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +7 -10
  56. data/src/core/ext/filters/client_channel/retry_filter.cc +0 -7
  57. data/src/core/ext/filters/client_channel/retry_service_config.cc +30 -19
  58. data/src/core/ext/filters/client_channel/retry_service_config.h +6 -9
  59. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +6 -7
  60. data/src/core/ext/filters/client_channel/subchannel.cc +49 -89
  61. data/src/core/ext/filters/client_channel/subchannel.h +8 -8
  62. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +1 -1
  63. data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +6 -76
  64. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +16 -25
  65. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +3 -4
  66. data/src/core/ext/filters/deadline/deadline_filter.cc +6 -6
  67. data/src/core/ext/filters/deadline/deadline_filter.h +2 -3
  68. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +1 -3
  69. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +1 -1
  70. data/src/core/ext/filters/fault_injection/service_config_parser.cc +17 -12
  71. data/src/core/ext/filters/fault_injection/service_config_parser.h +4 -5
  72. data/src/core/ext/filters/http/client/http_client_filter.cc +2 -3
  73. data/src/core/ext/filters/http/client/http_client_filter.h +1 -1
  74. data/src/core/ext/filters/http/client_authority_filter.cc +1 -2
  75. data/src/core/ext/filters/http/client_authority_filter.h +1 -1
  76. data/src/core/ext/filters/http/server/http_server_filter.cc +2 -3
  77. data/src/core/ext/filters/http/server/http_server_filter.h +1 -1
  78. data/src/core/ext/filters/message_size/message_size_filter.cc +13 -7
  79. data/src/core/ext/filters/message_size/message_size_filter.h +3 -6
  80. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +16 -12
  81. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +4 -6
  82. data/src/core/ext/filters/server_config_selector/server_config_selector.h +5 -0
  83. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +3 -5
  84. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +35 -62
  85. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +62 -89
  86. data/src/core/ext/transport/chttp2/server/chttp2_server.h +4 -6
  87. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +130 -165
  88. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +3 -2
  89. data/src/core/ext/transport/chttp2/transport/flow_control.cc +67 -2
  90. data/src/core/ext/transport/chttp2/transport/flow_control.h +1 -0
  91. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +7 -1
  92. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +25 -8
  93. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +4 -0
  94. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +0 -1
  95. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +8 -2
  96. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +2 -10
  97. data/src/core/ext/transport/chttp2/transport/internal.h +2 -1
  98. data/src/core/ext/transport/inproc/inproc_transport.cc +40 -74
  99. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +5 -5
  100. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +30 -10
  101. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +4 -4
  102. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +24 -8
  103. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +8 -327
  104. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +83 -1723
  105. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +352 -0
  106. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1768 -0
  107. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +2 -2
  108. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +12 -4
  109. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +6 -4
  110. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +33 -4
  111. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +1 -1
  112. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +6 -2
  113. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +1 -1
  114. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +6 -2
  115. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +6 -2
  116. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +12 -4
  117. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +1 -1
  118. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +6 -2
  119. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +1 -1
  120. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +7 -3
  121. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +14 -14
  122. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +90 -30
  123. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +21 -19
  124. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +124 -34
  125. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +3 -3
  126. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +18 -6
  127. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +23 -22
  128. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +153 -48
  129. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +1 -1
  130. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +6 -2
  131. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +1 -1
  132. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +6 -2
  133. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +11 -11
  134. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +84 -28
  135. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +7 -7
  136. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +42 -14
  137. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +1 -1
  138. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +6 -2
  139. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +25 -23
  140. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +156 -48
  141. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +7 -7
  142. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +42 -14
  143. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +1 -1
  144. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +6 -2
  145. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +1 -1
  146. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +6 -2
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +2 -2
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +12 -4
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +12 -12
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +78 -26
  151. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +9 -9
  152. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +54 -18
  153. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +1 -1
  154. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +6 -2
  155. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +21 -20
  156. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +117 -44
  157. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +1 -1
  158. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +6 -2
  159. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +2 -2
  160. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +12 -4
  161. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +6 -2
  162. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +1 -1
  163. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +6 -2
  164. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +1 -1
  165. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +6 -2
  166. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +3 -3
  167. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +18 -6
  168. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +5 -5
  169. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +36 -12
  170. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +3 -3
  171. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +30 -10
  172. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +1 -1
  173. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +6 -2
  174. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +37 -13
  175. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +170 -15
  176. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +5 -5
  177. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +42 -14
  178. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +1 -1
  179. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +6 -2
  180. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +7 -4
  181. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +36 -4
  182. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +1 -1
  183. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +6 -2
  184. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +6 -6
  185. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +48 -16
  186. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +8 -8
  187. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +54 -18
  188. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +21 -9
  189. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +100 -14
  190. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +7 -22
  191. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +36 -77
  192. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +121 -76
  193. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +647 -163
  194. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +3 -3
  195. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +18 -6
  196. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +34 -15
  197. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +161 -22
  198. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +1 -1
  199. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +6 -2
  200. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +1 -1
  201. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +6 -2
  202. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +2 -2
  203. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +12 -4
  204. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +1 -1
  205. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +6 -2
  206. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +1 -1
  207. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +6 -2
  208. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +46 -0
  209. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +98 -0
  210. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +1 -1
  211. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +6 -2
  212. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +2 -2
  213. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +12 -4
  214. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +1 -0
  215. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +1 -0
  216. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +2 -2
  217. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +12 -4
  218. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +1 -1
  219. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +6 -2
  220. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +1 -1
  221. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +6 -2
  222. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +2 -2
  223. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +30 -10
  224. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +2 -2
  225. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +18 -6
  226. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +11 -4
  227. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +58 -4
  228. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +1 -1
  229. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +6 -2
  230. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +35 -27
  231. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +177 -52
  232. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +6 -2
  233. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +1 -1
  234. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +6 -2
  235. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +10 -8
  236. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +66 -14
  237. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +3 -3
  238. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +18 -6
  239. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +5 -5
  240. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +42 -14
  241. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +2 -2
  242. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +12 -4
  243. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +1 -1
  244. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +6 -2
  245. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +131 -16
  246. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +632 -12
  247. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +2 -2
  248. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +12 -4
  249. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +5 -5
  250. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +30 -10
  251. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +1 -1
  252. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +6 -2
  253. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +4 -4
  254. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +24 -8
  255. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +4 -4
  256. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +24 -8
  257. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +2 -2
  258. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +12 -4
  259. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +1 -1
  260. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +6 -2
  261. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +1 -1
  262. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +6 -2
  263. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +1 -1
  264. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +6 -2
  265. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +3 -3
  266. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +18 -6
  267. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +1 -1
  268. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +12 -4
  269. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +2 -2
  270. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +12 -4
  271. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +3 -3
  272. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +18 -6
  273. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +7 -7
  274. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +42 -14
  275. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +5 -5
  276. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +30 -10
  277. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +3 -3
  278. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +18 -6
  279. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +1 -1
  280. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +6 -2
  281. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +12 -4
  282. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +2 -2
  283. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +18 -6
  284. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +63 -0
  285. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +202 -0
  286. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +1 -1
  287. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +6 -2
  288. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +6 -2
  289. data/src/core/ext/upb-generated/google/api/annotations.upb.h +1 -1
  290. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +11 -11
  291. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +66 -22
  292. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +9 -9
  293. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +72 -24
  294. data/src/core/ext/upb-generated/google/api/http.upb.c +3 -3
  295. data/src/core/ext/upb-generated/google/api/http.upb.h +18 -6
  296. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +1 -1
  297. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +6 -2
  298. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +1 -1
  299. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +6 -2
  300. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +44 -43
  301. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +177 -55
  302. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +1 -1
  303. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +6 -2
  304. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +1 -1
  305. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +6 -2
  306. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +2 -2
  307. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +18 -6
  308. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +1 -1
  309. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +6 -2
  310. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +6 -6
  311. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +54 -18
  312. data/src/core/ext/upb-generated/google/rpc/status.upb.c +1 -1
  313. data/src/core/ext/upb-generated/google/rpc/status.upb.h +6 -2
  314. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +2 -2
  315. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +24 -8
  316. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +6 -2
  317. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +7 -7
  318. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +60 -20
  319. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +1 -1
  320. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +12 -4
  321. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +2 -2
  322. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +12 -4
  323. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +6 -6
  324. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +54 -18
  325. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +2 -2
  326. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +12 -4
  327. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +7 -7
  328. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +42 -14
  329. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +3 -3
  330. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +23 -11
  331. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +1 -1
  332. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +7 -3
  333. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +7 -3
  334. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +1 -1
  335. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +7 -3
  336. data/src/core/ext/upb-generated/validate/validate.upb.c +22 -22
  337. data/src/core/ext/upb-generated/validate/validate.upb.h +139 -47
  338. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +3 -3
  339. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +23 -11
  340. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +1 -1
  341. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +7 -3
  342. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +3 -3
  343. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +27 -11
  344. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +1 -1
  345. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +7 -3
  346. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +1 -1
  347. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +6 -2
  348. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +2 -2
  349. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +12 -4
  350. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +1 -1
  351. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +6 -2
  352. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +1 -1
  353. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +6 -2
  354. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +1 -1
  355. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +6 -2
  356. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +1 -1
  357. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +12 -4
  358. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +1 -1
  359. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +6 -2
  360. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +6 -2
  361. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +1 -1
  362. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +6 -2
  363. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +6 -6
  364. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +54 -18
  365. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +2 -2
  366. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +12 -4
  367. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +1 -1
  368. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +12 -4
  369. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +1 -1
  370. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +6 -2
  371. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +67 -274
  372. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +0 -85
  373. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +256 -0
  374. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +115 -0
  375. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +14 -11
  376. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +107 -107
  377. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +191 -187
  378. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +156 -154
  379. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +186 -183
  380. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +136 -134
  381. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +16 -16
  382. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +162 -139
  383. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +5 -0
  384. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +39 -31
  385. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +12 -8
  386. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +5 -0
  387. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +72 -75
  388. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +0 -5
  389. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +713 -670
  390. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +10 -0
  391. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +150 -139
  392. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +5 -0
  393. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +47 -0
  394. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +35 -0
  395. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +16 -12
  396. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +46 -25
  397. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +477 -466
  398. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +21 -18
  399. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +153 -84
  400. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +35 -0
  401. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +113 -113
  402. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +29 -28
  403. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +69 -0
  404. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +40 -0
  405. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +92 -90
  406. data/src/core/ext/xds/upb_utils.h +0 -21
  407. data/src/core/ext/xds/xds_api.cc +53 -86
  408. data/src/core/ext/xds/xds_api.h +19 -28
  409. data/src/core/ext/xds/xds_bootstrap.cc +39 -52
  410. data/src/core/ext/xds/xds_bootstrap.h +28 -8
  411. data/src/core/ext/xds/xds_certificate_provider.h +9 -0
  412. data/src/core/ext/xds/xds_channel_stack_modifier.cc +6 -4
  413. data/src/core/ext/xds/xds_channel_stack_modifier.h +8 -0
  414. data/src/core/ext/xds/xds_client.cc +555 -1214
  415. data/src/core/ext/xds/xds_client.h +16 -44
  416. data/src/core/ext/xds/xds_client_grpc.cc +291 -0
  417. data/src/core/ext/xds/xds_client_grpc.h +102 -0
  418. data/src/core/ext/xds/xds_cluster.cc +92 -103
  419. data/src/core/ext/xds/xds_cluster.h +6 -5
  420. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +10 -14
  421. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +1 -0
  422. data/src/core/ext/xds/xds_common_types.cc +134 -110
  423. data/src/core/ext/xds/xds_common_types.h +6 -7
  424. data/src/core/ext/xds/xds_endpoint.cc +80 -80
  425. data/src/core/ext/xds/xds_endpoint.h +4 -4
  426. data/src/core/ext/xds/xds_http_fault_filter.cc +4 -11
  427. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  428. data/src/core/ext/xds/xds_http_filters.h +3 -3
  429. data/src/core/ext/xds/xds_http_rbac_filter.cc +39 -58
  430. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -3
  431. data/src/core/ext/xds/xds_lb_policy_registry.cc +17 -20
  432. data/src/core/ext/xds/xds_lb_policy_registry.h +4 -4
  433. data/src/core/ext/xds/xds_listener.cc +329 -299
  434. data/src/core/ext/xds/xds_listener.h +4 -4
  435. data/src/core/ext/xds/xds_resource_type.h +13 -2
  436. data/src/core/ext/xds/xds_route_config.cc +180 -177
  437. data/src/core/ext/xds/xds_route_config.h +31 -17
  438. data/src/core/ext/xds/xds_routing.cc +3 -6
  439. data/src/core/ext/xds/xds_routing.h +7 -9
  440. data/src/core/ext/xds/xds_server_config_fetcher.cc +76 -81
  441. data/src/core/ext/xds/xds_transport.h +86 -0
  442. data/src/core/ext/xds/xds_transport_grpc.cc +349 -0
  443. data/src/core/ext/xds/xds_transport_grpc.h +135 -0
  444. data/src/core/lib/address_utils/parse_address.cc +19 -17
  445. data/src/core/lib/address_utils/parse_address.h +8 -5
  446. data/src/core/lib/avl/avl.h +47 -25
  447. data/src/core/lib/channel/call_tracer.h +1 -1
  448. data/src/core/lib/channel/channel_args.cc +88 -19
  449. data/src/core/lib/channel/channel_args.h +113 -62
  450. data/src/core/lib/channel/channel_stack.cc +0 -1
  451. data/src/core/lib/channel/channel_stack_builder.cc +3 -3
  452. data/src/core/lib/channel/channel_stack_builder.h +2 -2
  453. data/src/core/lib/channel/channel_stack_builder_impl.cc +2 -4
  454. data/src/core/lib/channel/channelz.cc +27 -37
  455. data/src/core/lib/channel/channelz.h +9 -0
  456. data/src/core/lib/channel/promise_based_filter.h +0 -1
  457. data/src/core/lib/config/core_configuration.h +48 -35
  458. data/src/core/lib/debug/stats.cc +12 -15
  459. data/src/core/lib/debug/stats.h +11 -3
  460. data/src/core/lib/event_engine/{event_engine.cc → default_event_engine.cc} +9 -5
  461. data/src/core/lib/event_engine/{event_engine_factory.h → default_event_engine.h} +4 -8
  462. data/src/core/lib/event_engine/default_event_engine_factory.cc +20 -3
  463. data/src/core/lib/event_engine/default_event_engine_factory.h +33 -0
  464. data/src/core/lib/event_engine/executor/executor.h +38 -0
  465. data/src/core/lib/event_engine/executor/threaded_executor.cc +36 -0
  466. data/src/core/lib/event_engine/executor/threaded_executor.h +44 -0
  467. data/src/core/lib/event_engine/forkable.cc +98 -0
  468. data/src/core/lib/event_engine/forkable.h +61 -0
  469. data/src/core/lib/event_engine/poller.h +54 -0
  470. data/src/core/lib/event_engine/{iomgr_engine/iomgr_engine.cc → posix_engine/posix_engine.cc} +30 -47
  471. data/src/core/lib/event_engine/{iomgr_engine/iomgr_engine.h → posix_engine/posix_engine.h} +27 -28
  472. data/src/core/lib/event_engine/{iomgr_engine → posix_engine}/timer.cc +4 -5
  473. data/src/core/lib/event_engine/{iomgr_engine → posix_engine}/timer.h +8 -8
  474. data/src/core/lib/event_engine/{iomgr_engine → posix_engine}/timer_heap.cc +4 -4
  475. data/src/core/lib/event_engine/{iomgr_engine → posix_engine}/timer_heap.h +5 -5
  476. data/src/core/lib/event_engine/{iomgr_engine → posix_engine}/timer_manager.cc +46 -10
  477. data/src/core/lib/event_engine/{iomgr_engine → posix_engine}/timer_manager.h +17 -8
  478. data/src/core/lib/event_engine/promise.h +11 -2
  479. data/src/core/lib/event_engine/socket_notifier.h +55 -0
  480. data/src/core/lib/event_engine/{iomgr_engine/thread_pool.cc → thread_pool.cc} +49 -14
  481. data/src/core/lib/event_engine/{iomgr_engine/thread_pool.h → thread_pool.h} +21 -10
  482. data/src/core/lib/event_engine/utils.cc +49 -0
  483. data/src/core/lib/event_engine/utils.h +40 -0
  484. data/src/core/lib/event_engine/windows/iocp.cc +149 -0
  485. data/src/core/lib/event_engine/windows/iocp.h +68 -0
  486. data/src/core/lib/event_engine/windows/win_socket.cc +196 -0
  487. data/src/core/lib/event_engine/windows/win_socket.h +120 -0
  488. data/src/core/lib/event_engine/windows/windows_engine.cc +159 -0
  489. data/src/core/lib/event_engine/windows/windows_engine.h +120 -0
  490. data/src/core/lib/gpr/time.cc +11 -9
  491. data/src/core/lib/gpr/useful.h +29 -0
  492. data/src/core/lib/gprpp/bitset.h +3 -13
  493. data/src/core/lib/gprpp/debug_location.h +39 -7
  494. data/src/core/lib/gprpp/manual_constructor.h +0 -1
  495. data/src/core/lib/gprpp/no_destruct.h +94 -0
  496. data/src/core/lib/gprpp/ref_counted_ptr.h +0 -1
  497. data/src/core/lib/gprpp/status_helper.cc +1 -0
  498. data/src/core/lib/gprpp/table.h +0 -1
  499. data/src/core/lib/{event_engine/iomgr_engine → gprpp}/time_averaged_stats.cc +3 -5
  500. data/src/core/lib/{event_engine/iomgr_engine → gprpp}/time_averaged_stats.h +5 -7
  501. data/src/core/lib/{iomgr → gprpp}/work_serializer.cc +34 -18
  502. data/src/core/lib/{iomgr → gprpp}/work_serializer.h +21 -27
  503. data/src/core/lib/http/httpcli.cc +12 -24
  504. data/src/core/lib/http/httpcli_security_connector.cc +11 -11
  505. data/src/core/lib/iomgr/call_combiner.cc +0 -26
  506. data/src/core/lib/iomgr/closure.h +0 -9
  507. data/src/core/lib/iomgr/combiner.cc +0 -20
  508. data/src/core/lib/iomgr/endpoint_pair_posix.cc +2 -1
  509. data/src/core/lib/iomgr/error.cc +0 -773
  510. data/src/core/lib/iomgr/error.h +0 -145
  511. data/src/core/lib/iomgr/error_cfstream.cc +0 -5
  512. data/src/core/lib/iomgr/ev_poll_posix.cc +17 -9
  513. data/src/core/lib/iomgr/exec_ctx.cc +0 -12
  514. data/src/core/lib/iomgr/executor.cc +0 -10
  515. data/src/core/lib/iomgr/executor.h +0 -3
  516. data/src/core/lib/iomgr/lockfree_event.cc +0 -17
  517. data/src/core/lib/iomgr/port.h +3 -0
  518. data/src/core/lib/iomgr/resolve_address.h +29 -6
  519. data/src/core/lib/iomgr/resolve_address_posix.cc +38 -8
  520. data/src/core/lib/iomgr/resolve_address_posix.h +19 -5
  521. data/src/core/lib/iomgr/resolve_address_windows.cc +40 -10
  522. data/src/core/lib/iomgr/resolve_address_windows.h +19 -5
  523. data/src/core/lib/iomgr/socket_windows.h +0 -2
  524. data/src/core/lib/iomgr/tcp_posix.cc +118 -6
  525. data/src/core/lib/iomgr/timer_generic.cc +6 -8
  526. data/src/core/lib/json/json.h +19 -22
  527. data/src/core/lib/json/json_args.h +34 -0
  528. data/src/core/lib/json/json_object_loader.cc +233 -0
  529. data/src/core/lib/json/json_object_loader.h +618 -0
  530. data/src/core/lib/json/json_reader.cc +86 -62
  531. data/src/core/lib/json/json_util.cc +8 -36
  532. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy.cc +3 -44
  533. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy.h +15 -24
  534. data/src/core/lib/load_balancing/lb_policy_factory.h +49 -0
  535. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy_registry.cc +49 -72
  536. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy_registry.h +27 -27
  537. data/src/core/{ext/filters/client_channel → lib/load_balancing}/subchannel_interface.h +6 -6
  538. data/src/core/lib/promise/activity.h +56 -8
  539. data/src/core/lib/promise/arena_promise.h +84 -81
  540. data/src/core/lib/promise/context.h +0 -1
  541. data/src/core/lib/promise/detail/basic_seq.h +43 -23
  542. data/src/core/lib/promise/detail/promise_factory.h +0 -1
  543. data/src/core/lib/promise/map.h +0 -1
  544. data/src/core/lib/promise/seq.h +25 -4
  545. data/src/core/lib/promise/sleep.cc +38 -42
  546. data/src/core/lib/promise/sleep.h +27 -24
  547. data/src/core/lib/promise/try_seq.h +26 -6
  548. data/src/core/lib/resolver/resolver.cc +0 -47
  549. data/src/core/lib/resolver/resolver.h +2 -12
  550. data/src/core/lib/resolver/resolver_factory.h +2 -3
  551. data/src/core/lib/resolver/resolver_registry.cc +1 -1
  552. data/src/core/lib/resolver/resolver_registry.h +2 -3
  553. data/src/core/lib/resolver/server_address.cc +11 -15
  554. data/src/core/lib/resolver/server_address.h +4 -8
  555. data/src/core/lib/resource_quota/api.cc +1 -1
  556. data/src/core/lib/resource_quota/arena.cc +21 -1
  557. data/src/core/lib/resource_quota/arena.h +24 -2
  558. data/src/core/lib/resource_quota/memory_quota.cc +157 -17
  559. data/src/core/lib/resource_quota/memory_quota.h +98 -17
  560. data/src/core/lib/resource_quota/periodic_update.cc +79 -0
  561. data/src/core/lib/resource_quota/periodic_update.h +71 -0
  562. data/src/core/lib/security/authorization/evaluate_args.cc +10 -7
  563. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +1 -2
  564. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -1
  565. data/src/core/lib/security/authorization/matchers.cc +13 -10
  566. data/src/core/lib/security/authorization/rbac_policy.cc +0 -1
  567. data/src/core/lib/security/credentials/alts/alts_credentials.cc +2 -3
  568. data/src/core/lib/security/credentials/alts/alts_credentials.h +3 -4
  569. data/src/core/lib/security/credentials/composite/composite_credentials.cc +3 -7
  570. data/src/core/lib/security/credentials/composite/composite_credentials.h +2 -4
  571. data/src/core/lib/security/credentials/credentials.h +16 -12
  572. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +18 -11
  573. data/src/core/lib/security/credentials/external/external_account_credentials.cc +32 -23
  574. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +5 -6
  575. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -6
  576. data/src/core/lib/security/credentials/fake/fake_credentials.cc +3 -12
  577. data/src/core/lib/security/credentials/fake/fake_credentials.h +0 -4
  578. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +29 -26
  579. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +1 -3
  580. data/src/core/lib/security/credentials/iam/iam_credentials.cc +0 -1
  581. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +3 -3
  582. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +3 -4
  583. data/src/core/lib/security/credentials/jwt/json_token.cc +12 -3
  584. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +4 -8
  585. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +11 -13
  586. data/src/core/lib/security/credentials/local/local_credentials.cc +3 -4
  587. data/src/core/lib/security/credentials/local/local_credentials.h +3 -4
  588. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +17 -18
  589. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +0 -1
  590. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +13 -21
  591. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +3 -4
  592. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +6 -0
  593. data/src/core/lib/security/credentials/tls/tls_credentials.cc +13 -25
  594. data/src/core/lib/security/credentials/tls/tls_credentials.h +3 -4
  595. data/src/core/lib/security/credentials/xds/xds_credentials.cc +13 -30
  596. data/src/core/lib/security/credentials/xds/xds_credentials.h +3 -3
  597. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +10 -18
  598. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +26 -38
  599. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +2 -2
  600. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +5 -5
  601. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +6 -5
  602. data/src/core/lib/security/security_connector/local/local_security_connector.cc +13 -11
  603. data/src/core/lib/security/security_connector/local/local_security_connector.h +2 -2
  604. data/src/core/lib/security/security_connector/security_connector.h +5 -3
  605. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +5 -4
  606. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +5 -5
  607. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +5 -5
  608. data/src/core/lib/security/transport/auth_filters.h +1 -1
  609. data/src/core/lib/security/transport/client_auth_filter.cc +3 -4
  610. data/src/core/lib/security/transport/security_handshaker.cc +32 -44
  611. data/src/core/lib/security/transport/security_handshaker.h +2 -1
  612. data/src/core/lib/service_config/service_config.h +11 -0
  613. data/src/core/lib/service_config/service_config_impl.cc +98 -97
  614. data/src/core/lib/service_config/service_config_impl.h +11 -13
  615. data/src/core/lib/service_config/service_config_parser.cc +26 -27
  616. data/src/core/lib/service_config/service_config_parser.h +10 -22
  617. data/src/core/lib/slice/percent_encoding.cc +4 -13
  618. data/src/core/lib/slice/slice.cc +10 -4
  619. data/src/core/lib/surface/call.cc +8 -2
  620. data/src/core/lib/surface/channel.cc +6 -6
  621. data/src/core/lib/surface/channel.h +1 -1
  622. data/src/core/lib/surface/completion_queue.cc +0 -2
  623. data/src/core/lib/surface/completion_queue.h +0 -3
  624. data/src/core/lib/surface/init.cc +2 -6
  625. data/src/core/lib/surface/lame_client.cc +2 -3
  626. data/src/core/lib/surface/lame_client.h +1 -1
  627. data/src/core/lib/surface/server.cc +7 -12
  628. data/src/core/lib/surface/server.h +7 -7
  629. data/src/core/lib/surface/validate_metadata.cc +4 -14
  630. data/src/core/lib/surface/version.cc +2 -2
  631. data/src/core/lib/transport/connectivity_state.cc +0 -1
  632. data/src/core/lib/transport/connectivity_state.h +1 -1
  633. data/src/core/lib/transport/error_utils.cc +0 -36
  634. data/src/core/lib/transport/handshaker.cc +7 -9
  635. data/src/core/lib/transport/handshaker.h +4 -5
  636. data/src/core/lib/transport/handshaker_factory.h +2 -3
  637. data/src/core/lib/transport/handshaker_registry.cc +2 -1
  638. data/src/core/lib/transport/handshaker_registry.h +2 -4
  639. data/src/core/lib/transport/http_connect_handshaker.cc +16 -16
  640. data/src/core/lib/transport/metadata_batch.cc +5 -0
  641. data/src/core/lib/transport/metadata_batch.h +52 -7
  642. data/src/core/lib/transport/parsed_metadata.h +0 -1
  643. data/src/core/lib/transport/tcp_connect_handshaker.cc +12 -18
  644. data/src/core/lib/transport/transport.h +0 -7
  645. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +40 -21
  646. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +1 -1
  647. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +14 -7
  648. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +1 -1
  649. data/src/core/tsi/fake_transport_security.cc +53 -30
  650. data/src/core/tsi/local_transport_security.cc +9 -5
  651. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +10 -1
  652. data/src/core/tsi/ssl_transport_security.cc +47 -23
  653. data/src/core/tsi/transport_security.cc +18 -6
  654. data/src/core/tsi/transport_security.h +2 -1
  655. data/src/core/tsi/transport_security_interface.h +17 -5
  656. data/src/ruby/ext/grpc/extconf.rb +2 -0
  657. data/src/ruby/ext/grpc/rb_loader.c +6 -2
  658. data/src/ruby/lib/grpc/version.rb +1 -1
  659. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +4 -0
  660. data/third_party/abseil-cpp/absl/functional/any_invocable.h +313 -0
  661. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +857 -0
  662. data/third_party/upb/third_party/utf8_range/utf8_range.h +1 -1
  663. data/third_party/upb/upb/arena.c +277 -0
  664. data/third_party/upb/upb/arena.h +225 -0
  665. data/third_party/upb/upb/array.c +114 -0
  666. data/third_party/upb/upb/array.h +83 -0
  667. data/third_party/upb/upb/collections.h +36 -0
  668. data/third_party/upb/upb/decode.c +161 -65
  669. data/third_party/upb/upb/decode.h +1 -0
  670. data/third_party/upb/upb/decode_fast.c +1 -1
  671. data/third_party/upb/upb/def.c +10 -2
  672. data/third_party/upb/upb/def.h +8 -1
  673. data/third_party/upb/upb/def.hpp +7 -4
  674. data/third_party/upb/upb/encode.c +29 -20
  675. data/third_party/upb/upb/encode.h +16 -6
  676. data/third_party/upb/upb/extension_registry.c +93 -0
  677. data/third_party/upb/upb/extension_registry.h +84 -0
  678. data/third_party/upb/upb/{decode_internal.h → internal/decode.h} +5 -5
  679. data/third_party/upb/upb/internal/table.h +385 -0
  680. data/third_party/upb/upb/{upb_internal.h → internal/upb.h} +3 -3
  681. data/third_party/upb/upb/internal/vsnprintf_compat.h +52 -0
  682. data/third_party/upb/upb/json_decode.c +1512 -0
  683. data/third_party/upb/upb/json_decode.h +47 -0
  684. data/third_party/upb/upb/json_encode.c +7 -3
  685. data/third_party/upb/upb/json_encode.h +6 -3
  686. data/third_party/upb/upb/map.c +108 -0
  687. data/third_party/upb/upb/map.h +117 -0
  688. data/third_party/upb/upb/message_value.h +66 -0
  689. data/third_party/upb/upb/mini_table.c +1147 -0
  690. data/third_party/upb/upb/mini_table.h +189 -0
  691. data/third_party/upb/upb/mini_table.hpp +112 -0
  692. data/third_party/upb/upb/msg.c +2 -62
  693. data/third_party/upb/upb/msg.h +2 -45
  694. data/third_party/upb/upb/msg_internal.h +28 -22
  695. data/third_party/upb/upb/port_def.inc +2 -1
  696. data/third_party/upb/upb/port_undef.inc +1 -0
  697. data/third_party/upb/upb/reflection.c +2 -159
  698. data/third_party/upb/upb/reflection.h +2 -112
  699. data/third_party/upb/upb/status.c +86 -0
  700. data/third_party/upb/upb/status.h +66 -0
  701. data/third_party/upb/upb/table.c +2 -2
  702. data/third_party/upb/upb/table_internal.h +3 -352
  703. data/third_party/upb/upb/text_encode.c +3 -2
  704. data/third_party/upb/upb/upb.c +4 -290
  705. data/third_party/upb/upb/upb.h +7 -196
  706. metadata +90 -38
  707. data/src/core/ext/filters/client_channel/lb_policy_factory.h +0 -50
  708. data/src/core/lib/iomgr/error_internal.h +0 -66
  709. data/src/core/lib/iomgr/executor/mpmcqueue.cc +0 -182
  710. data/src/core/lib/iomgr/executor/mpmcqueue.h +0 -171
  711. data/src/core/lib/iomgr/executor/threadpool.cc +0 -136
  712. data/src/core/lib/iomgr/executor/threadpool.h +0 -150
  713. data/src/core/lib/iomgr/time_averaged_stats.cc +0 -64
  714. data/src/core/lib/iomgr/time_averaged_stats.h +0 -72
  715. data/src/core/lib/promise/detail/switch.h +0 -1455
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ea0a69d9cc5c472e310ca36f21dc4830d95d49ddd2bd95358674cd6724d5a03d
4
- data.tar.gz: 0eacd18bab809ec4778212942bff35ed5c982ae15024c9a6f8b9e8dac8dcbc7e
3
+ metadata.gz: a89884274926e65602298cd6b3c31fd3762a647b4f04e680665e2913e87a02cf
4
+ data.tar.gz: d8202a79b476e3dc0f79ceac579062ecb8e6551bcda6c65829d7530e9ddffe17
5
5
  SHA512:
6
- metadata.gz: d9797b091654ef90cd3a06374539652b65bfb4373de7e8a19b46613f6781dea2e6c526863b374491ca6d69308ad6fafb0da604ac5f78b91ed04b212be55abf4f
7
- data.tar.gz: 78171fb26df047e100e9260e4534ff58a2b131ad9931730915fb1d6314caf15350257e368c909699cd675dafb86d310666d985cdd9a7a6ba7644a5e97119063e
6
+ metadata.gz: d97f76265f48423817b7906f0e843096b3302da0c8ad5e3062026f677ae2b6ff1b78e5fdb1c373478aa3062cbdfeab6e6480a3a235ae842c754daee237f6c426
7
+ data.tar.gz: 5af53fb656fb3a8ba256ff89b12e6ebec8b9f1048fab56e73665d7b991e56f01967e015ecde7410e0c78b12b851b52a9a6c2993af9e3bc146de7eb35855209cb
data/Makefile CHANGED
@@ -453,9 +453,9 @@ E = @echo
453
453
  Q = @
454
454
  endif
455
455
 
456
- CORE_VERSION = 26.0.0
457
- CPP_VERSION = 1.48.0
458
- CSHARP_VERSION = 2.48.0
456
+ CORE_VERSION = 27.0.0
457
+ CPP_VERSION = 1.49.0-pre1
458
+ CSHARP_VERSION = 2.49.0-pre1
459
459
 
460
460
  CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES))
461
461
  CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS)
@@ -491,7 +491,7 @@ SHARED_EXT_CORE = dll
491
491
  SHARED_EXT_CPP = dll
492
492
  SHARED_EXT_CSHARP = dll
493
493
  SHARED_PREFIX =
494
- SHARED_VERSION_CORE = -26
494
+ SHARED_VERSION_CORE = -27
495
495
  SHARED_VERSION_CPP = -1
496
496
  SHARED_VERSION_CSHARP = -2
497
497
  else ifeq ($(SYSTEM),Darwin)
@@ -881,8 +881,8 @@ $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE):
881
881
  ifeq ($(SYSTEM),Darwin)
882
882
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
883
883
  else
884
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.26 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
885
- $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.26
884
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.27 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
885
+ $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.27
886
886
  $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so
887
887
  endif
888
888
  endif
@@ -1008,8 +1008,8 @@ $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGPR_OB
1008
1008
  ifeq ($(SYSTEM),Darwin)
1009
1009
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1010
1010
  else
1011
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.26 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1012
- $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.26
1011
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.27 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1012
+ $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.27
1013
1013
  $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so
1014
1014
  endif
1015
1015
  endif
@@ -1037,7 +1037,6 @@ LIBGRPC_SRC = \
1037
1037
  src/core/ext/filters/client_channel/global_subchannel_pool.cc \
1038
1038
  src/core/ext/filters/client_channel/health/health_check_client.cc \
1039
1039
  src/core/ext/filters/client_channel/http_proxy.cc \
1040
- src/core/ext/filters/client_channel/lb_policy.cc \
1041
1040
  src/core/ext/filters/client_channel/lb_policy/address_filtering.cc \
1042
1041
  src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc \
1043
1042
  src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc \
@@ -1057,7 +1056,6 @@ LIBGRPC_SRC = \
1057
1056
  src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc \
1058
1057
  src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc \
1059
1058
  src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc \
1060
- src/core/ext/filters/client_channel/lb_policy_registry.cc \
1061
1059
  src/core/ext/filters/client_channel/local_subchannel_pool.cc \
1062
1060
  src/core/ext/filters/client_channel/proxy_mapper_registry.cc \
1063
1061
  src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc \
@@ -1126,6 +1124,7 @@ LIBGRPC_SRC = \
1126
1124
  src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c \
1127
1125
  src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c \
1128
1126
  src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c \
1127
+ src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c \
1129
1128
  src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c \
1130
1129
  src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c \
1131
1130
  src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c \
@@ -1179,6 +1178,7 @@ LIBGRPC_SRC = \
1179
1178
  src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c \
1180
1179
  src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c \
1181
1180
  src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c \
1181
+ src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c \
1182
1182
  src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c \
1183
1183
  src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c \
1184
1184
  src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c \
@@ -1219,6 +1219,7 @@ LIBGRPC_SRC = \
1219
1219
  src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c \
1220
1220
  src/core/ext/upb-generated/envoy/type/v3/percent.upb.c \
1221
1221
  src/core/ext/upb-generated/envoy/type/v3/range.upb.c \
1222
+ src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c \
1222
1223
  src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c \
1223
1224
  src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c \
1224
1225
  src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c \
@@ -1270,6 +1271,7 @@ LIBGRPC_SRC = \
1270
1271
  src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c \
1271
1272
  src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c \
1272
1273
  src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c \
1274
+ src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c \
1273
1275
  src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c \
1274
1276
  src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c \
1275
1277
  src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c \
@@ -1323,6 +1325,7 @@ LIBGRPC_SRC = \
1323
1325
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c \
1324
1326
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c \
1325
1327
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c \
1328
+ src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c \
1326
1329
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c \
1327
1330
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c \
1328
1331
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c \
@@ -1361,6 +1364,7 @@ LIBGRPC_SRC = \
1361
1364
  src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c \
1362
1365
  src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c \
1363
1366
  src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c \
1367
+ src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c \
1364
1368
  src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c \
1365
1369
  src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c \
1366
1370
  src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c \
@@ -1409,6 +1413,7 @@ LIBGRPC_SRC = \
1409
1413
  src/core/ext/xds/xds_certificate_provider.cc \
1410
1414
  src/core/ext/xds/xds_channel_stack_modifier.cc \
1411
1415
  src/core/ext/xds/xds_client.cc \
1416
+ src/core/ext/xds/xds_client_grpc.cc \
1412
1417
  src/core/ext/xds/xds_client_stats.cc \
1413
1418
  src/core/ext/xds/xds_cluster.cc \
1414
1419
  src/core/ext/xds/xds_cluster_specifier_plugin.cc \
@@ -1423,6 +1428,7 @@ LIBGRPC_SRC = \
1423
1428
  src/core/ext/xds/xds_route_config.cc \
1424
1429
  src/core/ext/xds/xds_routing.cc \
1425
1430
  src/core/ext/xds/xds_server_config_fetcher.cc \
1431
+ src/core/ext/xds/xds_transport_grpc.cc \
1426
1432
  src/core/lib/address_utils/parse_address.cc \
1427
1433
  src/core/lib/address_utils/sockaddr_utils.cc \
1428
1434
  src/core/lib/backoff/backoff.cc \
@@ -1445,21 +1451,28 @@ LIBGRPC_SRC = \
1445
1451
  src/core/lib/debug/stats_data.cc \
1446
1452
  src/core/lib/debug/trace.cc \
1447
1453
  src/core/lib/event_engine/channel_args_endpoint_config.cc \
1454
+ src/core/lib/event_engine/default_event_engine.cc \
1448
1455
  src/core/lib/event_engine/default_event_engine_factory.cc \
1449
- src/core/lib/event_engine/event_engine.cc \
1450
- src/core/lib/event_engine/iomgr_engine/iomgr_engine.cc \
1451
- src/core/lib/event_engine/iomgr_engine/thread_pool.cc \
1452
- src/core/lib/event_engine/iomgr_engine/time_averaged_stats.cc \
1453
- src/core/lib/event_engine/iomgr_engine/timer.cc \
1454
- src/core/lib/event_engine/iomgr_engine/timer_heap.cc \
1455
- src/core/lib/event_engine/iomgr_engine/timer_manager.cc \
1456
+ src/core/lib/event_engine/executor/threaded_executor.cc \
1457
+ src/core/lib/event_engine/forkable.cc \
1456
1458
  src/core/lib/event_engine/memory_allocator.cc \
1459
+ src/core/lib/event_engine/posix_engine/posix_engine.cc \
1460
+ src/core/lib/event_engine/posix_engine/timer.cc \
1461
+ src/core/lib/event_engine/posix_engine/timer_heap.cc \
1462
+ src/core/lib/event_engine/posix_engine/timer_manager.cc \
1457
1463
  src/core/lib/event_engine/resolved_address.cc \
1458
1464
  src/core/lib/event_engine/slice.cc \
1459
1465
  src/core/lib/event_engine/slice_buffer.cc \
1466
+ src/core/lib/event_engine/thread_pool.cc \
1460
1467
  src/core/lib/event_engine/trace.cc \
1468
+ src/core/lib/event_engine/utils.cc \
1469
+ src/core/lib/event_engine/windows/iocp.cc \
1470
+ src/core/lib/event_engine/windows/win_socket.cc \
1471
+ src/core/lib/event_engine/windows/windows_engine.cc \
1461
1472
  src/core/lib/gprpp/status_helper.cc \
1462
1473
  src/core/lib/gprpp/time.cc \
1474
+ src/core/lib/gprpp/time_averaged_stats.cc \
1475
+ src/core/lib/gprpp/work_serializer.cc \
1463
1476
  src/core/lib/http/format_request.cc \
1464
1477
  src/core/lib/http/httpcli.cc \
1465
1478
  src/core/lib/http/httpcli_security_connector.cc \
@@ -1482,8 +1495,6 @@ LIBGRPC_SRC = \
1482
1495
  src/core/lib/iomgr/ev_windows.cc \
1483
1496
  src/core/lib/iomgr/exec_ctx.cc \
1484
1497
  src/core/lib/iomgr/executor.cc \
1485
- src/core/lib/iomgr/executor/mpmcqueue.cc \
1486
- src/core/lib/iomgr/executor/threadpool.cc \
1487
1498
  src/core/lib/iomgr/fork_posix.cc \
1488
1499
  src/core/lib/iomgr/fork_windows.cc \
1489
1500
  src/core/lib/iomgr/gethostname_fallback.cc \
@@ -1528,7 +1539,6 @@ LIBGRPC_SRC = \
1528
1539
  src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc \
1529
1540
  src/core/lib/iomgr/tcp_server_windows.cc \
1530
1541
  src/core/lib/iomgr/tcp_windows.cc \
1531
- src/core/lib/iomgr/time_averaged_stats.cc \
1532
1542
  src/core/lib/iomgr/timer.cc \
1533
1543
  src/core/lib/iomgr/timer_generic.cc \
1534
1544
  src/core/lib/iomgr/timer_heap.cc \
@@ -1539,10 +1549,12 @@ LIBGRPC_SRC = \
1539
1549
  src/core/lib/iomgr/wakeup_fd_nospecial.cc \
1540
1550
  src/core/lib/iomgr/wakeup_fd_pipe.cc \
1541
1551
  src/core/lib/iomgr/wakeup_fd_posix.cc \
1542
- src/core/lib/iomgr/work_serializer.cc \
1552
+ src/core/lib/json/json_object_loader.cc \
1543
1553
  src/core/lib/json/json_reader.cc \
1544
1554
  src/core/lib/json/json_util.cc \
1545
1555
  src/core/lib/json/json_writer.cc \
1556
+ src/core/lib/load_balancing/lb_policy.cc \
1557
+ src/core/lib/load_balancing/lb_policy_registry.cc \
1546
1558
  src/core/lib/matchers/matchers.cc \
1547
1559
  src/core/lib/promise/activity.cc \
1548
1560
  src/core/lib/promise/sleep.cc \
@@ -1552,6 +1564,7 @@ LIBGRPC_SRC = \
1552
1564
  src/core/lib/resource_quota/api.cc \
1553
1565
  src/core/lib/resource_quota/arena.cc \
1554
1566
  src/core/lib/resource_quota/memory_quota.cc \
1567
+ src/core/lib/resource_quota/periodic_update.cc \
1555
1568
  src/core/lib/resource_quota/resource_quota.cc \
1556
1569
  src/core/lib/resource_quota/thread_quota.cc \
1557
1570
  src/core/lib/resource_quota/trace.cc \
@@ -1709,6 +1722,21 @@ PUBLIC_HEADERS_C += \
1709
1722
  include/grpc/grpc_posix.h \
1710
1723
  include/grpc/grpc_security.h \
1711
1724
  include/grpc/grpc_security_constants.h \
1725
+ include/grpc/impl/codegen/atm.h \
1726
+ include/grpc/impl/codegen/atm_gcc_atomic.h \
1727
+ include/grpc/impl/codegen/atm_gcc_sync.h \
1728
+ include/grpc/impl/codegen/atm_windows.h \
1729
+ include/grpc/impl/codegen/fork.h \
1730
+ include/grpc/impl/codegen/gpr_slice.h \
1731
+ include/grpc/impl/codegen/gpr_types.h \
1732
+ include/grpc/impl/codegen/log.h \
1733
+ include/grpc/impl/codegen/port_platform.h \
1734
+ include/grpc/impl/codegen/sync.h \
1735
+ include/grpc/impl/codegen/sync_abseil.h \
1736
+ include/grpc/impl/codegen/sync_custom.h \
1737
+ include/grpc/impl/codegen/sync_generic.h \
1738
+ include/grpc/impl/codegen/sync_posix.h \
1739
+ include/grpc/impl/codegen/sync_windows.h \
1712
1740
  include/grpc/load_reporting.h \
1713
1741
  include/grpc/slice.h \
1714
1742
  include/grpc/slice_buffer.h \
@@ -1769,8 +1797,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGRPC_
1769
1797
  ifeq ($(SYSTEM),Darwin)
1770
1798
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libupb.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1771
1799
  else
1772
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.26 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libupb.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1773
- $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.26
1800
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.27 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libupb.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1801
+ $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.27
1774
1802
  $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so
1775
1803
  endif
1776
1804
  endif
@@ -1802,7 +1830,6 @@ LIBGRPC_UNSECURE_SRC = \
1802
1830
  src/core/ext/filters/client_channel/global_subchannel_pool.cc \
1803
1831
  src/core/ext/filters/client_channel/health/health_check_client.cc \
1804
1832
  src/core/ext/filters/client_channel/http_proxy.cc \
1805
- src/core/ext/filters/client_channel/lb_policy.cc \
1806
1833
  src/core/ext/filters/client_channel/lb_policy/address_filtering.cc \
1807
1834
  src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc \
1808
1835
  src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc \
@@ -1818,7 +1845,6 @@ LIBGRPC_UNSECURE_SRC = \
1818
1845
  src/core/ext/filters/client_channel/lb_policy/rls/rls.cc \
1819
1846
  src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
1820
1847
  src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc \
1821
- src/core/ext/filters/client_channel/lb_policy_registry.cc \
1822
1848
  src/core/ext/filters/client_channel/local_subchannel_pool.cc \
1823
1849
  src/core/ext/filters/client_channel/proxy_mapper_registry.cc \
1824
1850
  src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc \
@@ -1851,7 +1877,6 @@ LIBGRPC_UNSECURE_SRC = \
1851
1877
  src/core/ext/filters/http/message_compress/message_decompress_filter.cc \
1852
1878
  src/core/ext/filters/http/server/http_server_filter.cc \
1853
1879
  src/core/ext/filters/message_size/message_size_filter.cc \
1854
- src/core/ext/transport/chttp2/alpn/alpn.cc \
1855
1880
  src/core/ext/transport/chttp2/client/chttp2_connector.cc \
1856
1881
  src/core/ext/transport/chttp2/server/chttp2_server.cc \
1857
1882
  src/core/ext/transport/chttp2/transport/bin_decoder.cc \
@@ -1916,21 +1941,28 @@ LIBGRPC_UNSECURE_SRC = \
1916
1941
  src/core/lib/debug/stats_data.cc \
1917
1942
  src/core/lib/debug/trace.cc \
1918
1943
  src/core/lib/event_engine/channel_args_endpoint_config.cc \
1944
+ src/core/lib/event_engine/default_event_engine.cc \
1919
1945
  src/core/lib/event_engine/default_event_engine_factory.cc \
1920
- src/core/lib/event_engine/event_engine.cc \
1921
- src/core/lib/event_engine/iomgr_engine/iomgr_engine.cc \
1922
- src/core/lib/event_engine/iomgr_engine/thread_pool.cc \
1923
- src/core/lib/event_engine/iomgr_engine/time_averaged_stats.cc \
1924
- src/core/lib/event_engine/iomgr_engine/timer.cc \
1925
- src/core/lib/event_engine/iomgr_engine/timer_heap.cc \
1926
- src/core/lib/event_engine/iomgr_engine/timer_manager.cc \
1946
+ src/core/lib/event_engine/executor/threaded_executor.cc \
1947
+ src/core/lib/event_engine/forkable.cc \
1927
1948
  src/core/lib/event_engine/memory_allocator.cc \
1949
+ src/core/lib/event_engine/posix_engine/posix_engine.cc \
1950
+ src/core/lib/event_engine/posix_engine/timer.cc \
1951
+ src/core/lib/event_engine/posix_engine/timer_heap.cc \
1952
+ src/core/lib/event_engine/posix_engine/timer_manager.cc \
1928
1953
  src/core/lib/event_engine/resolved_address.cc \
1929
1954
  src/core/lib/event_engine/slice.cc \
1930
1955
  src/core/lib/event_engine/slice_buffer.cc \
1956
+ src/core/lib/event_engine/thread_pool.cc \
1931
1957
  src/core/lib/event_engine/trace.cc \
1958
+ src/core/lib/event_engine/utils.cc \
1959
+ src/core/lib/event_engine/windows/iocp.cc \
1960
+ src/core/lib/event_engine/windows/win_socket.cc \
1961
+ src/core/lib/event_engine/windows/windows_engine.cc \
1932
1962
  src/core/lib/gprpp/status_helper.cc \
1933
1963
  src/core/lib/gprpp/time.cc \
1964
+ src/core/lib/gprpp/time_averaged_stats.cc \
1965
+ src/core/lib/gprpp/work_serializer.cc \
1934
1966
  src/core/lib/http/format_request.cc \
1935
1967
  src/core/lib/http/httpcli.cc \
1936
1968
  src/core/lib/http/parser.cc \
@@ -1952,8 +1984,6 @@ LIBGRPC_UNSECURE_SRC = \
1952
1984
  src/core/lib/iomgr/ev_windows.cc \
1953
1985
  src/core/lib/iomgr/exec_ctx.cc \
1954
1986
  src/core/lib/iomgr/executor.cc \
1955
- src/core/lib/iomgr/executor/mpmcqueue.cc \
1956
- src/core/lib/iomgr/executor/threadpool.cc \
1957
1987
  src/core/lib/iomgr/fork_posix.cc \
1958
1988
  src/core/lib/iomgr/fork_windows.cc \
1959
1989
  src/core/lib/iomgr/gethostname_fallback.cc \
@@ -1998,7 +2028,6 @@ LIBGRPC_UNSECURE_SRC = \
1998
2028
  src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc \
1999
2029
  src/core/lib/iomgr/tcp_server_windows.cc \
2000
2030
  src/core/lib/iomgr/tcp_windows.cc \
2001
- src/core/lib/iomgr/time_averaged_stats.cc \
2002
2031
  src/core/lib/iomgr/timer.cc \
2003
2032
  src/core/lib/iomgr/timer_generic.cc \
2004
2033
  src/core/lib/iomgr/timer_heap.cc \
@@ -2009,10 +2038,12 @@ LIBGRPC_UNSECURE_SRC = \
2009
2038
  src/core/lib/iomgr/wakeup_fd_nospecial.cc \
2010
2039
  src/core/lib/iomgr/wakeup_fd_pipe.cc \
2011
2040
  src/core/lib/iomgr/wakeup_fd_posix.cc \
2012
- src/core/lib/iomgr/work_serializer.cc \
2041
+ src/core/lib/json/json_object_loader.cc \
2013
2042
  src/core/lib/json/json_reader.cc \
2014
2043
  src/core/lib/json/json_util.cc \
2015
2044
  src/core/lib/json/json_writer.cc \
2045
+ src/core/lib/load_balancing/lb_policy.cc \
2046
+ src/core/lib/load_balancing/lb_policy_registry.cc \
2016
2047
  src/core/lib/promise/activity.cc \
2017
2048
  src/core/lib/promise/sleep.cc \
2018
2049
  src/core/lib/resolver/resolver.cc \
@@ -2021,6 +2052,7 @@ LIBGRPC_UNSECURE_SRC = \
2021
2052
  src/core/lib/resource_quota/api.cc \
2022
2053
  src/core/lib/resource_quota/arena.cc \
2023
2054
  src/core/lib/resource_quota/memory_quota.cc \
2055
+ src/core/lib/resource_quota/periodic_update.cc \
2024
2056
  src/core/lib/resource_quota/resource_quota.cc \
2025
2057
  src/core/lib/resource_quota/thread_quota.cc \
2026
2058
  src/core/lib/resource_quota/trace.cc \
@@ -2116,6 +2148,21 @@ PUBLIC_HEADERS_C += \
2116
2148
  include/grpc/grpc_posix.h \
2117
2149
  include/grpc/grpc_security.h \
2118
2150
  include/grpc/grpc_security_constants.h \
2151
+ include/grpc/impl/codegen/atm.h \
2152
+ include/grpc/impl/codegen/atm_gcc_atomic.h \
2153
+ include/grpc/impl/codegen/atm_gcc_sync.h \
2154
+ include/grpc/impl/codegen/atm_windows.h \
2155
+ include/grpc/impl/codegen/fork.h \
2156
+ include/grpc/impl/codegen/gpr_slice.h \
2157
+ include/grpc/impl/codegen/gpr_types.h \
2158
+ include/grpc/impl/codegen/log.h \
2159
+ include/grpc/impl/codegen/port_platform.h \
2160
+ include/grpc/impl/codegen/sync.h \
2161
+ include/grpc/impl/codegen/sync_abseil.h \
2162
+ include/grpc/impl/codegen/sync_custom.h \
2163
+ include/grpc/impl/codegen/sync_generic.h \
2164
+ include/grpc/impl/codegen/sync_posix.h \
2165
+ include/grpc/impl/codegen/sync_windows.h \
2119
2166
  include/grpc/load_reporting.h \
2120
2167
  include/grpc/slice.h \
2121
2168
  include/grpc/slice_buffer.h \
@@ -2166,8 +2213,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $
2166
2213
  ifeq ($(SYSTEM),Darwin)
2167
2214
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2168
2215
  else
2169
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.26 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2170
- $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.26
2216
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.27 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2217
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.27
2171
2218
  $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so
2172
2219
  endif
2173
2220
  endif
@@ -2526,13 +2573,20 @@ LIBUPB_SRC = \
2526
2573
  third_party/upb/third_party/utf8_range/naive.c \
2527
2574
  third_party/upb/third_party/utf8_range/range2-neon.c \
2528
2575
  third_party/upb/third_party/utf8_range/range2-sse.c \
2576
+ third_party/upb/upb/arena.c \
2577
+ third_party/upb/upb/array.c \
2529
2578
  third_party/upb/upb/decode_fast.c \
2530
2579
  third_party/upb/upb/decode.c \
2531
2580
  third_party/upb/upb/def.c \
2532
2581
  third_party/upb/upb/encode.c \
2582
+ third_party/upb/upb/extension_registry.c \
2583
+ third_party/upb/upb/json_decode.c \
2533
2584
  third_party/upb/upb/json_encode.c \
2585
+ third_party/upb/upb/map.c \
2586
+ third_party/upb/upb/mini_table.c \
2534
2587
  third_party/upb/upb/msg.c \
2535
2588
  third_party/upb/upb/reflection.c \
2589
+ third_party/upb/upb/status.c \
2536
2590
  third_party/upb/upb/table.c \
2537
2591
  third_party/upb/upb/text_encode.c \
2538
2592
  third_party/upb/upb/upb.c \
@@ -2566,8 +2620,8 @@ $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBUPB_OB
2566
2620
  ifeq ($(SYSTEM),Darwin)
2567
2621
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2568
2622
  else
2569
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb.so.26 -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2570
- $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so.26
2623
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb.so.27 -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2624
+ $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so.27
2571
2625
  $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so
2572
2626
  endif
2573
2627
  endif
@@ -2848,9 +2902,11 @@ src/core/ext/filters/rbac/rbac_filter.cc: $(OPENSSL_DEP)
2848
2902
  src/core/ext/filters/rbac/rbac_service_config_parser.cc: $(OPENSSL_DEP)
2849
2903
  src/core/ext/filters/server_config_selector/server_config_selector.cc: $(OPENSSL_DEP)
2850
2904
  src/core/ext/filters/server_config_selector/server_config_selector_filter.cc: $(OPENSSL_DEP)
2905
+ src/core/ext/transport/chttp2/alpn/alpn.cc: $(OPENSSL_DEP)
2851
2906
  src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c: $(OPENSSL_DEP)
2852
2907
  src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c: $(OPENSSL_DEP)
2853
2908
  src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c: $(OPENSSL_DEP)
2909
+ src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c: $(OPENSSL_DEP)
2854
2910
  src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c: $(OPENSSL_DEP)
2855
2911
  src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c: $(OPENSSL_DEP)
2856
2912
  src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c: $(OPENSSL_DEP)
@@ -2904,6 +2960,7 @@ src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c: $(OPENSSL_DEP
2904
2960
  src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c: $(OPENSSL_DEP)
2905
2961
  src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c: $(OPENSSL_DEP)
2906
2962
  src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c: $(OPENSSL_DEP)
2963
+ src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c: $(OPENSSL_DEP)
2907
2964
  src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c: $(OPENSSL_DEP)
2908
2965
  src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c: $(OPENSSL_DEP)
2909
2966
  src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c: $(OPENSSL_DEP)
@@ -2944,6 +3001,7 @@ src/core/ext/upb-generated/envoy/type/v3/http.upb.c: $(OPENSSL_DEP)
2944
3001
  src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c: $(OPENSSL_DEP)
2945
3002
  src/core/ext/upb-generated/envoy/type/v3/percent.upb.c: $(OPENSSL_DEP)
2946
3003
  src/core/ext/upb-generated/envoy/type/v3/range.upb.c: $(OPENSSL_DEP)
3004
+ src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c: $(OPENSSL_DEP)
2947
3005
  src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c: $(OPENSSL_DEP)
2948
3006
  src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c: $(OPENSSL_DEP)
2949
3007
  src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c: $(OPENSSL_DEP)
@@ -2979,6 +3037,7 @@ src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c: $(OPENSSL_DEP)
2979
3037
  src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c: $(OPENSSL_DEP)
2980
3038
  src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c: $(OPENSSL_DEP)
2981
3039
  src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c: $(OPENSSL_DEP)
3040
+ src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c: $(OPENSSL_DEP)
2982
3041
  src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c: $(OPENSSL_DEP)
2983
3042
  src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c: $(OPENSSL_DEP)
2984
3043
  src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c: $(OPENSSL_DEP)
@@ -3032,6 +3091,7 @@ src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c: $(OPE
3032
3091
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c: $(OPENSSL_DEP)
3033
3092
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c: $(OPENSSL_DEP)
3034
3093
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c: $(OPENSSL_DEP)
3094
+ src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c: $(OPENSSL_DEP)
3035
3095
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c: $(OPENSSL_DEP)
3036
3096
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c: $(OPENSSL_DEP)
3037
3097
  src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c: $(OPENSSL_DEP)
@@ -3070,6 +3130,7 @@ src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c: $(OPENSSL_DEP)
3070
3130
  src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c: $(OPENSSL_DEP)
3071
3131
  src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c: $(OPENSSL_DEP)
3072
3132
  src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c: $(OPENSSL_DEP)
3133
+ src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c: $(OPENSSL_DEP)
3073
3134
  src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c: $(OPENSSL_DEP)
3074
3135
  src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c: $(OPENSSL_DEP)
3075
3136
  src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c: $(OPENSSL_DEP)
@@ -3117,6 +3178,7 @@ src/core/ext/xds/xds_bootstrap.cc: $(OPENSSL_DEP)
3117
3178
  src/core/ext/xds/xds_certificate_provider.cc: $(OPENSSL_DEP)
3118
3179
  src/core/ext/xds/xds_channel_stack_modifier.cc: $(OPENSSL_DEP)
3119
3180
  src/core/ext/xds/xds_client.cc: $(OPENSSL_DEP)
3181
+ src/core/ext/xds/xds_client_grpc.cc: $(OPENSSL_DEP)
3120
3182
  src/core/ext/xds/xds_client_stats.cc: $(OPENSSL_DEP)
3121
3183
  src/core/ext/xds/xds_cluster.cc: $(OPENSSL_DEP)
3122
3184
  src/core/ext/xds/xds_cluster_specifier_plugin.cc: $(OPENSSL_DEP)
@@ -3131,6 +3193,7 @@ src/core/ext/xds/xds_resource_type.cc: $(OPENSSL_DEP)
3131
3193
  src/core/ext/xds/xds_route_config.cc: $(OPENSSL_DEP)
3132
3194
  src/core/ext/xds/xds_routing.cc: $(OPENSSL_DEP)
3133
3195
  src/core/ext/xds/xds_server_config_fetcher.cc: $(OPENSSL_DEP)
3196
+ src/core/ext/xds/xds_transport_grpc.cc: $(OPENSSL_DEP)
3134
3197
  src/core/lib/http/httpcli_security_connector.cc: $(OPENSSL_DEP)
3135
3198
  src/core/lib/matchers/matchers.cc: $(OPENSSL_DEP)
3136
3199
  src/core/lib/security/authorization/grpc_authorization_engine.cc: $(OPENSSL_DEP)
@@ -19,6 +19,7 @@
19
19
  #include <functional>
20
20
  #include <vector>
21
21
 
22
+ #include "absl/functional/any_invocable.h"
22
23
  #include "absl/status/status.h"
23
24
  #include "absl/status/statusor.h"
24
25
 
@@ -172,7 +173,7 @@ class EventEngine {
172
173
  /// For failed read operations, implementations should pass the appropriate
173
174
  /// statuses to \a on_read. For example, callbacks might expect to receive
174
175
  /// CANCELLED on endpoint shutdown.
175
- virtual void Read(std::function<void(absl::Status)> on_read,
176
+ virtual void Read(absl::AnyInvocable<void(absl::Status)> on_read,
176
177
  SliceBuffer* buffer, const ReadArgs* args) = 0;
177
178
  /// A struct representing optional arguments that may be provided to an
178
179
  /// EventEngine Endpoint Write API call.
@@ -206,7 +207,7 @@ class EventEngine {
206
207
  /// For failed write operations, implementations should pass the appropriate
207
208
  /// statuses to \a on_writable. For example, callbacks might expect to
208
209
  /// receive CANCELLED on endpoint shutdown.
209
- virtual void Write(std::function<void(absl::Status)> on_writable,
210
+ virtual void Write(absl::AnyInvocable<void(absl::Status)> on_writable,
210
211
  SliceBuffer* data, const WriteArgs* args) = 0;
211
212
  /// Returns an address in the format described in DNSResolver. The returned
212
213
  /// values are expected to remain valid for the life of the Endpoint.
@@ -221,14 +222,14 @@ class EventEngine {
221
222
  /// expect to receive DEADLINE_EXCEEDED statuses when appropriate, or
222
223
  /// CANCELLED statuses on EventEngine shutdown.
223
224
  using OnConnectCallback =
224
- std::function<void(absl::StatusOr<std::unique_ptr<Endpoint>>)>;
225
+ absl::AnyInvocable<void(absl::StatusOr<std::unique_ptr<Endpoint>>)>;
225
226
 
226
227
  /// Listens for incoming connection requests from gRPC clients and initiates
227
228
  /// request processing once connections are established.
228
229
  class Listener {
229
230
  public:
230
231
  /// Called when the listener has accepted a new client connection.
231
- using AcceptCallback = std::function<void(
232
+ using AcceptCallback = absl::AnyInvocable<void(
232
233
  std::unique_ptr<Endpoint>, MemoryAllocator memory_allocator)>;
233
234
  virtual ~Listener() = default;
234
235
  /// Bind an address/port to this Listener.
@@ -256,7 +257,7 @@ class EventEngine {
256
257
  /// MemoryAllocators for Endpoint construction.
257
258
  virtual absl::StatusOr<std::unique_ptr<Listener>> CreateListener(
258
259
  Listener::AcceptCallback on_accept,
259
- std::function<void(absl::Status)> on_shutdown,
260
+ absl::AnyInvocable<void(absl::Status)> on_shutdown,
260
261
  const EndpointConfig& config,
261
262
  std::unique_ptr<MemoryAllocatorFactory> memory_allocator_factory) = 0;
262
263
  /// Creates a client network connection to a remote network listener.
@@ -308,12 +309,13 @@ class EventEngine {
308
309
  /// Called with the collection of sockaddrs that were resolved from a given
309
310
  /// target address.
310
311
  using LookupHostnameCallback =
311
- std::function<void(absl::StatusOr<std::vector<ResolvedAddress>>)>;
312
+ absl::AnyInvocable<void(absl::StatusOr<std::vector<ResolvedAddress>>)>;
312
313
  /// Called with a collection of SRV records.
313
314
  using LookupSRVCallback =
314
- std::function<void(absl::StatusOr<std::vector<SRVRecord>>)>;
315
+ absl::AnyInvocable<void(absl::StatusOr<std::vector<SRVRecord>>)>;
315
316
  /// Called with the result of a TXT record lookup
316
- using LookupTXTCallback = std::function<void(absl::StatusOr<std::string>)>;
317
+ using LookupTXTCallback =
318
+ absl::AnyInvocable<void(absl::StatusOr<std::string>)>;
317
319
 
318
320
  virtual ~DNSResolver() = default;
319
321
 
@@ -381,13 +383,13 @@ class EventEngine {
381
383
  /// Asynchronously executes a task as soon as possible.
382
384
  ///
383
385
  /// \a Closures scheduled with \a Run cannot be cancelled. Unlike the
384
- /// overloaded \a Closure alternative, the std::function version's \a closure
385
- /// will be deleted by the EventEngine after the closure has been run.
386
+ /// overloaded \a Closure alternative, the absl::AnyInvocable version's \a
387
+ /// closure will be deleted by the EventEngine after the closure has been run.
386
388
  ///
387
389
  /// This version of \a Run may be less performant than the \a Closure version
388
390
  /// in some scenarios. This overload is useful in situations where performance
389
391
  /// is not a critical concern.
390
- virtual void Run(std::function<void()> closure) = 0;
392
+ virtual void Run(absl::AnyInvocable<void()> closure) = 0;
391
393
  /// Synonymous with scheduling an alarm to run after duration \a when.
392
394
  ///
393
395
  /// The \a closure will execute when time \a when arrives unless it has been
@@ -398,22 +400,23 @@ class EventEngine {
398
400
  ///
399
401
  /// The \a closure will execute when time \a when arrives unless it has been
400
402
  /// cancelled via the \a Cancel method. If cancelled, the closure will not be
401
- /// run. Unilke the overloaded \a Closure alternative, the std::function
403
+ /// run. Unilke the overloaded \a Closure alternative, the absl::AnyInvocable
402
404
  /// version's \a closure will be deleted by the EventEngine after the closure
403
405
  /// has been run, or upon cancellation.
404
406
  ///
405
407
  /// This version of \a RunAfter may be less performant than the \a Closure
406
408
  /// version in some scenarios. This overload is useful in situations where
407
409
  /// performance is not a critical concern.
408
- virtual TaskHandle RunAfter(Duration when, std::function<void()> closure) = 0;
410
+ virtual TaskHandle RunAfter(Duration when,
411
+ absl::AnyInvocable<void()> closure) = 0;
409
412
  /// Request cancellation of a task.
410
413
  ///
411
414
  /// If the associated closure has already been scheduled to run, it will not
412
415
  /// be cancelled, and this function will return false.
413
416
  ///
414
417
  /// If the associated callback has not been scheduled to run, it will be
415
- /// cancelled, and the associated std::function or \a Closure* will not be
416
- /// executed. In this case, Cancel will return true.
418
+ /// cancelled, and the associated absl::AnyInvocable or \a Closure* will not
419
+ /// be executed. In this case, Cancel will return true.
417
420
  ///
418
421
  /// Implementation note: closures should be destroyed in a timely manner after
419
422
  /// execution or cancelliation (milliseconds), since any state bound to the
@@ -432,7 +435,7 @@ class EventEngine {
432
435
  /// created, applications must set a custom EventEngine factory method *before*
433
436
  /// grpc is initialized.
434
437
  void SetDefaultEventEngineFactory(
435
- std::function<std::unique_ptr<EventEngine>()> factory);
438
+ absl::AnyInvocable<std::unique_ptr<EventEngine>()> factory);
436
439
 
437
440
  /// Create an EventEngine using the default factory.
438
441
  std::unique_ptr<EventEngine> CreateEventEngine();
@@ -524,14 +524,11 @@ typedef enum grpc_call_error {
524
524
  /** Signal that GRPC_INITIAL_METADATA_WAIT_FOR_READY was explicitly set
525
525
  by the calling application. */
526
526
  #define GRPC_INITIAL_METADATA_WAIT_FOR_READY_EXPLICITLY_SET (0x00000080u)
527
- /** Signal that the initial metadata should be corked */
528
- #define GRPC_INITIAL_METADATA_CORKED (0x00000100u)
529
527
 
530
528
  /** Mask of all valid flags */
531
- #define GRPC_INITIAL_METADATA_USED_MASK \
532
- (GRPC_INITIAL_METADATA_WAIT_FOR_READY_EXPLICITLY_SET | \
533
- GRPC_INITIAL_METADATA_WAIT_FOR_READY | GRPC_INITIAL_METADATA_CORKED | \
534
- GRPC_WRITE_THROUGH)
529
+ #define GRPC_INITIAL_METADATA_USED_MASK \
530
+ (GRPC_INITIAL_METADATA_WAIT_FOR_READY_EXPLICITLY_SET | \
531
+ GRPC_INITIAL_METADATA_WAIT_FOR_READY | GRPC_WRITE_THROUGH)
535
532
 
536
533
  /** A single metadata element */
537
534
  typedef struct grpc_metadata {
@@ -586,8 +583,6 @@ typedef struct {
586
583
  grpc_slice method;
587
584
  grpc_slice host;
588
585
  gpr_timespec deadline;
589
- uint32_t flags;
590
- void* reserved;
591
586
  } grpc_call_details;
592
587
 
593
588
  typedef enum {