diff --git a/BUILD b/BUILD index 7650d9b14e9..44e2bc04771 100644 --- a/BUILD +++ b/BUILD @@ -373,10 +373,29 @@ grpc_cc_library( ], ) +grpc_cc_library( + name = "channel_fwd", + hdrs = [ + "src/core/lib/channel/channel_fwd.h", + ], + language = "c++", + tags = ["grpc-autodeps"], +) + +grpc_cc_library( + name = "transport_fwd", + hdrs = [ + "src/core/lib/transport/transport_fwd.h", + ], + language = "c++", + tags = ["grpc-autodeps"], +) + grpc_cc_library( name = "atomic_utils", language = "c++", public_hdrs = ["src/core/lib/gprpp/atomic_utils.h"], + tags = ["grpc-autodeps"], deps = ["gpr_platform"], ) @@ -450,6 +469,7 @@ grpc_cc_library( }, ], standalone = True, + tags = ["grpc_avoid_dep"], visibility = [ "@grpc:public", ], @@ -634,7 +654,9 @@ grpc_cc_library( external_deps = [ "absl/base:core_headers", "absl/container:flat_hash_map", + "absl/hash", "absl/memory", + "absl/meta:type_traits", "absl/status", "absl/strings", "absl/synchronization", @@ -648,7 +670,11 @@ grpc_cc_library( "include/grpcpp/security/binder_credentials.h", ], deps = [ + "arena", + "channel_args_preconditioning", + "channel_stack_type", "config", + "debug_location", "gpr", "gpr_base", "gpr_platform", @@ -657,9 +683,13 @@ grpc_cc_library( "grpc_base", "grpc_client_channel", "grpc_codegen", + "iomgr_fwd", "iomgr_port", "orphanable", + "ref_counted_ptr", + "slice", "slice_refcount", + "transport_fwd", ], ) @@ -782,6 +812,7 @@ grpc_cc_library( deps = [ "gpr_base", "grpc_base", + "grpc_codegen", "grpc_trace", ], ) @@ -1012,6 +1043,7 @@ grpc_cc_library( "gpr_codegen", "gpr_platform", "grpc_codegen", + "grpc_public_hdrs", ], ) @@ -2587,6 +2619,7 @@ grpc_cc_library( "bitset", "channel_args", "channel_args_preconditioning", + "channel_fwd", "channel_init", "channel_stack_builder", "channel_stack_type", @@ -2628,6 +2661,7 @@ grpc_cc_library( "table", "thread_quota", "time", + "transport_fwd", "uri_parser", "useful", ], @@ -2693,10 +2727,12 @@ grpc_cc_library( visibility = ["@grpc:alt_grpc_base_legacy"], deps = [ "channel_args", + "channel_fwd", "channel_stack_type", "gpr_base", "gpr_platform", "ref_counted_ptr", + "transport_fwd", ], ) @@ -2987,6 +3023,7 @@ grpc_cc_library( visibility = ["@grpc:client_channel"], deps = [ "arena", + "channel_fwd", "channel_init", "channel_stack_type", "chunked_vector", @@ -3041,15 +3078,24 @@ grpc_cc_library( hdrs = [ "src/core/ext/filters/server_config_selector/server_config_selector.h", ], - external_deps = ["absl/status:statusor"], + external_deps = [ + "absl/status:statusor", + "absl/strings", + ], language = "c++", tags = ["grpc-autodeps"], deps = [ "channel_args", "dual_ref_counted", + "error", "gpr_platform", "grpc_base", + "grpc_codegen", "grpc_service_config", + "ref_counted", + "ref_counted_ptr", + "service_config_parser", + "useful", ], ) @@ -3061,16 +3107,30 @@ grpc_cc_library( hdrs = [ "src/core/ext/filters/server_config_selector/server_config_selector_filter.h", ], + external_deps = [ + "absl/base:core_headers", + "absl/memory", + "absl/status", + "absl/status:statusor", + "absl/types:optional", + ], language = "c++", tags = ["grpc-autodeps"], deps = [ "arena", + "arena_promise", + "channel_args", + "channel_fwd", + "context", "error", + "gpr_base", "gpr_platform", "grpc_base", "grpc_server_config_selector", "grpc_service_config", + "poll", "promise", + "ref_counted_ptr", ], ) @@ -3095,20 +3155,40 @@ grpc_cc_library( hdrs = [ "src/core/ext/filters/channel_idle/channel_idle_filter.h", ], + external_deps = [ + "absl/status", + "absl/status:statusor", + "absl/types:optional", + ], tags = ["grpc-autodeps"], deps = [ + "activity", + "arena_promise", "channel_args", + "channel_fwd", + "channel_init", "channel_stack_builder", + "channel_stack_type", + "closure", "config", + "debug_location", + "error", + "exec_ctx", "exec_ctx_wakeup_scheduler", + "gpr_base", "gpr_platform", "grpc_base", + "grpc_codegen", + "grpc_trace", "idle_filter_state", - "iomgr_timer", "loop", + "orphanable", + "poll", "promise", + "ref_counted_ptr", "single_set_ptr", "sleep", + "time", "try_seq", ], ) @@ -3121,16 +3201,28 @@ grpc_cc_library( hdrs = [ "src/core/ext/filters/deadline/deadline_filter.h", ], + external_deps = ["absl/types:optional"], language = "c++", tags = ["grpc-autodeps"], deps = [ + "arena", + "channel_args", + "channel_fwd", + "channel_init", "channel_stack_builder", + "channel_stack_type", + "closure", "config", + "debug_location", + "error", + "exec_ctx", "gpr_base", "gpr_platform", "grpc_base", + "grpc_codegen", + "grpc_public_hdrs", "iomgr_timer", - "slice", + "time", ], ) @@ -3142,18 +3234,26 @@ grpc_cc_library( hdrs = [ "src/core/ext/filters/http/client_authority_filter.h", ], - external_deps = ["absl/status:statusor"], + external_deps = [ + "absl/status", + "absl/status:statusor", + "absl/strings", + "absl/types:optional", + ], language = "c++", tags = ["grpc-autodeps"], deps = [ + "arena_promise", "channel_args", + "channel_fwd", + "channel_init", "channel_stack_builder", "channel_stack_type", "config", - "gpr_base", "gpr_platform", "grpc_base", "grpc_codegen", + "poll", "slice", ], ) @@ -3166,20 +3266,32 @@ grpc_cc_library( hdrs = [ "src/core/ext/filters/message_size/message_size_filter.h", ], - external_deps = ["absl/strings:str_format"], + external_deps = [ + "absl/memory", + "absl/strings", + "absl/strings:str_format", + "absl/types:optional", + ], language = "c++", tags = ["grpc-autodeps"], deps = [ "channel_args", + "channel_fwd", + "channel_init", "channel_stack_builder", + "channel_stack_type", + "closure", "config", + "debug_location", + "error", "gpr_base", "gpr_platform", "grpc_base", "grpc_codegen", + "grpc_public_hdrs", "grpc_service_config", - "ref_counted", - "ref_counted_ptr", + "json", + "orphanable", "service_config_parser", ], ) @@ -3194,14 +3306,25 @@ grpc_cc_library( "src/core/ext/filters/fault_injection/fault_injection_filter.h", "src/core/ext/filters/fault_injection/service_config_parser.h", ], - external_deps = ["absl/strings"], + external_deps = [ + "absl/memory", + "absl/status", + "absl/strings", + "absl/types:optional", + "absl/utility", + ], language = "c++", deps = [ + "config", + "context", "gpr_base", "grpc_base", "grpc_service_config", + "grpc_trace", "json_util", + "poll", "sleep", + "time", "try_seq", ], ) @@ -3216,19 +3339,36 @@ grpc_cc_library( "src/core/ext/filters/rbac/rbac_filter.h", "src/core/ext/filters/rbac/rbac_service_config_parser.h", ], - external_deps = ["absl/strings:str_format"], + external_deps = [ + "absl/memory", + "absl/status", + "absl/status:statusor", + "absl/strings", + "absl/strings:str_format", + ], language = "c++", tags = ["grpc-autodeps"], deps = [ "channel_args", + "channel_fwd", + "closure", "config", + "debug_location", + "error", + "gpr_base", "gpr_platform", "grpc_authorization_base", "grpc_base", + "grpc_codegen", + "grpc_matchers", + "grpc_public_hdrs", "grpc_rbac_engine", + "grpc_security_base", "grpc_service_config", + "json", "json_util", "service_config_parser", + "transport_fwd", ], ) @@ -3248,21 +3388,38 @@ grpc_cc_library( "src/core/ext/filters/http/server/http_server_filter.h", ], external_deps = [ + "absl/base:core_headers", + "absl/meta:type_traits", + "absl/status", "absl/strings:str_format", "absl/strings", "absl/types:optional", + "absl/utility", ], language = "c++", visibility = ["@grpc:http"], deps = [ + "arena", + "basic_seq", "call_push_pull", + "channel_fwd", + "channel_init", + "channel_stack_type", "config", + "context", + "debug_location", "gpr_base", "grpc_base", + "grpc_codegen", "grpc_message_size_filter", + "grpc_trace", + "latch", + "orphanable", + "poll", "promise", "seq", "slice", + "transport_fwd", ], ) @@ -3479,12 +3636,15 @@ grpc_cc_library( "src/core/lib/security/credentials/xds/xds_credentials.h", ], external_deps = [ + "absl/container:inlined_vector", "absl/functional:bind_front", "absl/memory", + "absl/status", "absl/status:statusor", "absl/strings", "absl/strings:str_format", - "absl/container:inlined_vector", + "absl/types:optional", + "absl/types:variant", "upb_lib", "upb_textformat_lib", "upb_json_lib", @@ -3494,7 +3654,9 @@ grpc_cc_library( language = "c++", deps = [ "channel_creds_registry", + "channel_fwd", "config", + "debug_location", "envoy_admin_upb", "envoy_config_cluster_upb", "envoy_config_cluster_upbdefs", @@ -3545,6 +3707,7 @@ grpc_cc_library( "grpc_security_base", "grpc_sockaddr", "grpc_tls_credentials", + "grpc_trace", "grpc_transport_chttp2_client_connector", "iomgr_timer", "json", @@ -3556,12 +3719,16 @@ grpc_cc_library( "protobuf_timestamp_upb", "protobuf_wrappers_upb", "ref_counted_ptr", + "resolved_address", "rls_config_upb", "rls_config_upbdefs", "slice", "slice_refcount", "sockaddr_utils", + "time", + "tsi_ssl_credentials", "uri_parser", + "useful", "xds_type_upb", "xds_type_upbdefs", ], @@ -3578,12 +3745,18 @@ grpc_cc_library( language = "c++", tags = ["grpc-autodeps"], deps = [ + "channel_args", + "channel_fwd", "channel_init", "channel_stack_builder", + "channel_stack_type", "config", "gpr_platform", "grpc_base", + "grpc_codegen", "ref_counted", + "ref_counted_ptr", + "useful", ], ) @@ -3592,23 +3765,46 @@ grpc_cc_library( srcs = [ "src/core/ext/xds/xds_server_config_fetcher.cc", ], - external_deps = ["absl/strings"], + external_deps = [ + "absl/base:core_headers", + "absl/container:inlined_vector", + "absl/status", + "absl/status:statusor", + "absl/strings", + "absl/types:optional", + "absl/types:variant", + ], language = "c++", tags = ["grpc-autodeps"], deps = [ "channel_args", + "channel_args_preconditioning", + "channel_fwd", "config", + "error", + "exec_ctx", "gpr_base", "gpr_platform", "grpc_base", + "grpc_codegen", + "grpc_public_hdrs", + "grpc_secure", + "grpc_security_base", "grpc_server_config_selector", "grpc_server_config_selector_filter", + "grpc_service_config", "grpc_service_config_impl", "grpc_sockaddr", + "grpc_tls_credentials", + "grpc_trace", "grpc_xds_channel_stack_modifier", "grpc_xds_client", - "slice", + "iomgr_fwd", + "ref_counted_ptr", + "resolved_address", + "slice_refcount", "sockaddr_utils", + "unique_type_name", "uri_parser", ], ) @@ -3637,17 +3833,18 @@ grpc_cc_library( hdrs = [ "src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h", ], - external_deps = ["absl/strings"], language = "c++", tags = ["grpc-autodeps"], deps = [ "error", - "gpr_base", "gpr_platform", - "grpc_base", + "grpc_secure", + "grpc_tls_credentials", "grpc_xds_client", + "json", "json_util", - "ref_counted", + "ref_counted_ptr", + "time", ], ) @@ -4111,21 +4308,33 @@ grpc_cc_library( "src/cpp/server/load_reporter/constants.h", ], external_deps = [ + "absl/container:inlined_vector", + "absl/meta:type_traits", + "absl/status", "absl/strings", "absl/strings:str_format", + "absl/types:optional", "opencensus-stats", + "opencensus-tags", ], language = "c++", deps = [ + "channel_fwd", + "channel_init", + "channel_stack_type", "config", + "context", "error", "gpr", "grpc++_base", "grpc_base", + "grpc_codegen", "grpc_lb_policy_grpclb", "grpc_security_base", "grpc_sockaddr", + "poll", "promise", + "resolved_address", "seq", "slice", "uri_parser", @@ -4503,6 +4712,7 @@ grpc_cc_library( language = "c++", deps = [ "arena", + "channel_fwd", "config", "debug_location", "dual_ref_counted", @@ -5577,6 +5787,7 @@ grpc_cc_library( "slice", "sockaddr_utils", "tcp_connect_handshaker", + "transport_fwd", "unique_type_name", "uri_parser", ], @@ -5624,6 +5835,7 @@ grpc_cc_library( "slice", "sockaddr_utils", "time", + "transport_fwd", "unique_type_name", "uri_parser", "useful", @@ -5639,12 +5851,30 @@ grpc_cc_library( hdrs = [ "src/core/ext/transport/inproc/inproc_transport.h", ], + external_deps = [ + "absl/status", + "absl/status:statusor", + "absl/strings", + "absl/types:optional", + ], language = "c++", deps = [ + "arena", + "channel_args_preconditioning", + "channel_stack_type", + "config", + "debug_location", "gpr_base", "grpc_base", + "grpc_codegen", "grpc_trace", + "iomgr_fwd", + "orphanable", + "ref_counted_ptr", "slice", + "time", + "transport_fwd", + "useful", ], ) diff --git a/CMakeLists.txt b/CMakeLists.txt index 80d74f95d05..e7aa97e9fcf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2352,6 +2352,24 @@ foreach(_hdr include/grpc/slice.h include/grpc/slice_buffer.h include/grpc/status.h + include/grpc/support/alloc.h + include/grpc/support/atm.h + include/grpc/support/atm_gcc_atomic.h + include/grpc/support/atm_gcc_sync.h + include/grpc/support/atm_windows.h + include/grpc/support/cpu.h + include/grpc/support/log.h + include/grpc/support/log_windows.h + include/grpc/support/port_platform.h + include/grpc/support/string_util.h + include/grpc/support/sync.h + include/grpc/support/sync_abseil.h + include/grpc/support/sync_custom.h + include/grpc/support/sync_generic.h + include/grpc/support/sync_posix.h + include/grpc/support/sync_windows.h + include/grpc/support/thd_id.h + include/grpc/support/time.h include/grpc/support/workaround_list.h ) string(REPLACE "include/" "" _path ${_hdr}) @@ -2895,6 +2913,24 @@ foreach(_hdr include/grpc/slice.h include/grpc/slice_buffer.h include/grpc/status.h + include/grpc/support/alloc.h + include/grpc/support/atm.h + include/grpc/support/atm_gcc_atomic.h + include/grpc/support/atm_gcc_sync.h + include/grpc/support/atm_windows.h + include/grpc/support/cpu.h + include/grpc/support/log.h + include/grpc/support/log_windows.h + include/grpc/support/port_platform.h + include/grpc/support/string_util.h + include/grpc/support/sync.h + include/grpc/support/sync_abseil.h + include/grpc/support/sync_custom.h + include/grpc/support/sync_generic.h + include/grpc/support/sync_posix.h + include/grpc/support/sync_windows.h + include/grpc/support/thd_id.h + include/grpc/support/time.h include/grpc/support/workaround_list.h ) string(REPLACE "include/" "" _path ${_hdr}) @@ -3172,37 +3208,6 @@ foreach(_hdr include/grpc++/support/stub_options.h include/grpc++/support/sync_stream.h include/grpc++/support/time.h - include/grpc/byte_buffer.h - include/grpc/byte_buffer_reader.h - include/grpc/compression.h - include/grpc/fork.h - include/grpc/grpc.h - include/grpc/grpc_posix.h - include/grpc/grpc_security.h - include/grpc/grpc_security_constants.h - include/grpc/load_reporting.h - include/grpc/slice.h - include/grpc/slice_buffer.h - include/grpc/status.h - include/grpc/support/alloc.h - include/grpc/support/atm.h - include/grpc/support/atm_gcc_atomic.h - include/grpc/support/atm_gcc_sync.h - include/grpc/support/atm_windows.h - include/grpc/support/cpu.h - include/grpc/support/log.h - include/grpc/support/log_windows.h - include/grpc/support/port_platform.h - include/grpc/support/string_util.h - include/grpc/support/sync.h - include/grpc/support/sync_abseil.h - include/grpc/support/sync_custom.h - include/grpc/support/sync_generic.h - include/grpc/support/sync_posix.h - include/grpc/support/sync_windows.h - include/grpc/support/thd_id.h - include/grpc/support/time.h - include/grpc/support/workaround_list.h include/grpcpp/alarm.h include/grpcpp/channel.h include/grpcpp/client_context.h @@ -3862,37 +3867,6 @@ foreach(_hdr include/grpc++/support/stub_options.h include/grpc++/support/sync_stream.h include/grpc++/support/time.h - include/grpc/byte_buffer.h - include/grpc/byte_buffer_reader.h - include/grpc/compression.h - include/grpc/fork.h - include/grpc/grpc.h - include/grpc/grpc_posix.h - include/grpc/grpc_security.h - include/grpc/grpc_security_constants.h - include/grpc/load_reporting.h - include/grpc/slice.h - include/grpc/slice_buffer.h - include/grpc/status.h - include/grpc/support/alloc.h - include/grpc/support/atm.h - include/grpc/support/atm_gcc_atomic.h - include/grpc/support/atm_gcc_sync.h - include/grpc/support/atm_windows.h - include/grpc/support/cpu.h - include/grpc/support/log.h - include/grpc/support/log_windows.h - include/grpc/support/port_platform.h - include/grpc/support/string_util.h - include/grpc/support/sync.h - include/grpc/support/sync_abseil.h - include/grpc/support/sync_custom.h - include/grpc/support/sync_generic.h - include/grpc/support/sync_posix.h - include/grpc/support/sync_windows.h - include/grpc/support/thd_id.h - include/grpc/support/time.h - include/grpc/support/workaround_list.h include/grpcpp/alarm.h include/grpcpp/channel.h include/grpcpp/client_context.h diff --git a/Makefile b/Makefile index dd1a6ac63a9..bb9b3eb6d10 100644 --- a/Makefile +++ b/Makefile @@ -1702,6 +1702,24 @@ PUBLIC_HEADERS_C += \ include/grpc/slice.h \ include/grpc/slice_buffer.h \ include/grpc/status.h \ + include/grpc/support/alloc.h \ + include/grpc/support/atm.h \ + include/grpc/support/atm_gcc_atomic.h \ + include/grpc/support/atm_gcc_sync.h \ + include/grpc/support/atm_windows.h \ + include/grpc/support/cpu.h \ + include/grpc/support/log.h \ + include/grpc/support/log_windows.h \ + include/grpc/support/port_platform.h \ + include/grpc/support/string_util.h \ + include/grpc/support/sync.h \ + include/grpc/support/sync_abseil.h \ + include/grpc/support/sync_custom.h \ + include/grpc/support/sync_generic.h \ + include/grpc/support/sync_posix.h \ + include/grpc/support/sync_windows.h \ + include/grpc/support/thd_id.h \ + include/grpc/support/time.h \ include/grpc/support/workaround_list.h \ LIBGRPC_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC_SRC)))) @@ -2087,6 +2105,24 @@ PUBLIC_HEADERS_C += \ include/grpc/slice.h \ include/grpc/slice_buffer.h \ include/grpc/status.h \ + include/grpc/support/alloc.h \ + include/grpc/support/atm.h \ + include/grpc/support/atm_gcc_atomic.h \ + include/grpc/support/atm_gcc_sync.h \ + include/grpc/support/atm_windows.h \ + include/grpc/support/cpu.h \ + include/grpc/support/log.h \ + include/grpc/support/log_windows.h \ + include/grpc/support/port_platform.h \ + include/grpc/support/string_util.h \ + include/grpc/support/sync.h \ + include/grpc/support/sync_abseil.h \ + include/grpc/support/sync_custom.h \ + include/grpc/support/sync_generic.h \ + include/grpc/support/sync_posix.h \ + include/grpc/support/sync_windows.h \ + include/grpc/support/thd_id.h \ + include/grpc/support/time.h \ include/grpc/support/workaround_list.h \ LIBGRPC_UNSECURE_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(LIBGRPC_UNSECURE_SRC)))) diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml index ab922ad3a11..dc5543387c8 100644 --- a/build_autogenerated.yaml +++ b/build_autogenerated.yaml @@ -313,6 +313,24 @@ libs: - include/grpc/slice.h - include/grpc/slice_buffer.h - include/grpc/status.h + - include/grpc/support/alloc.h + - include/grpc/support/atm.h + - include/grpc/support/atm_gcc_atomic.h + - include/grpc/support/atm_gcc_sync.h + - include/grpc/support/atm_windows.h + - include/grpc/support/cpu.h + - include/grpc/support/log.h + - include/grpc/support/log_windows.h + - include/grpc/support/port_platform.h + - include/grpc/support/string_util.h + - include/grpc/support/sync.h + - include/grpc/support/sync_abseil.h + - include/grpc/support/sync_custom.h + - include/grpc/support/sync_generic.h + - include/grpc/support/sync_posix.h + - include/grpc/support/sync_windows.h + - include/grpc/support/thd_id.h + - include/grpc/support/time.h - include/grpc/support/workaround_list.h headers: - src/core/ext/filters/channel_idle/channel_idle_filter.h @@ -710,6 +728,7 @@ libs: - src/core/lib/channel/call_tracer.h - src/core/lib/channel/channel_args.h - src/core/lib/channel/channel_args_preconditioning.h + - src/core/lib/channel/channel_fwd.h - src/core/lib/channel/channel_stack.h - src/core/lib/channel/channel_stack_builder.h - src/core/lib/channel/channel_stack_builder_impl.h @@ -945,6 +964,7 @@ libs: - src/core/lib/transport/tcp_connect_handshaker.h - src/core/lib/transport/timeout_encoding.h - src/core/lib/transport/transport.h + - src/core/lib/transport/transport_fwd.h - src/core/lib/transport/transport_impl.h - src/core/lib/uri/uri_parser.h - src/core/tsi/alts/crypt/gsec.h @@ -1788,6 +1808,24 @@ libs: - include/grpc/slice.h - include/grpc/slice_buffer.h - include/grpc/status.h + - include/grpc/support/alloc.h + - include/grpc/support/atm.h + - include/grpc/support/atm_gcc_atomic.h + - include/grpc/support/atm_gcc_sync.h + - include/grpc/support/atm_windows.h + - include/grpc/support/cpu.h + - include/grpc/support/log.h + - include/grpc/support/log_windows.h + - include/grpc/support/port_platform.h + - include/grpc/support/string_util.h + - include/grpc/support/sync.h + - include/grpc/support/sync_abseil.h + - include/grpc/support/sync_custom.h + - include/grpc/support/sync_generic.h + - include/grpc/support/sync_posix.h + - include/grpc/support/sync_windows.h + - include/grpc/support/thd_id.h + - include/grpc/support/time.h - include/grpc/support/workaround_list.h headers: - src/core/ext/filters/channel_idle/channel_idle_filter.h @@ -1894,6 +1932,7 @@ libs: - src/core/lib/channel/call_tracer.h - src/core/lib/channel/channel_args.h - src/core/lib/channel/channel_args_preconditioning.h + - src/core/lib/channel/channel_fwd.h - src/core/lib/channel/channel_stack.h - src/core/lib/channel/channel_stack_builder.h - src/core/lib/channel/channel_stack_builder_impl.h @@ -2096,6 +2135,7 @@ libs: - src/core/lib/transport/tcp_connect_handshaker.h - src/core/lib/transport/timeout_encoding.h - src/core/lib/transport/transport.h + - src/core/lib/transport/transport_fwd.h - src/core/lib/transport/transport_impl.h - src/core/lib/uri/uri_parser.h - src/core/tsi/fake_transport_security.h @@ -2528,37 +2568,6 @@ libs: - include/grpc++/support/stub_options.h - include/grpc++/support/sync_stream.h - include/grpc++/support/time.h - - include/grpc/byte_buffer.h - - include/grpc/byte_buffer_reader.h - - include/grpc/compression.h - - include/grpc/fork.h - - include/grpc/grpc.h - - include/grpc/grpc_posix.h - - include/grpc/grpc_security.h - - include/grpc/grpc_security_constants.h - - include/grpc/load_reporting.h - - include/grpc/slice.h - - include/grpc/slice_buffer.h - - include/grpc/status.h - - include/grpc/support/alloc.h - - include/grpc/support/atm.h - - include/grpc/support/atm_gcc_atomic.h - - include/grpc/support/atm_gcc_sync.h - - include/grpc/support/atm_windows.h - - include/grpc/support/cpu.h - - include/grpc/support/log.h - - include/grpc/support/log_windows.h - - include/grpc/support/port_platform.h - - include/grpc/support/string_util.h - - include/grpc/support/sync.h - - include/grpc/support/sync_abseil.h - - include/grpc/support/sync_custom.h - - include/grpc/support/sync_generic.h - - include/grpc/support/sync_posix.h - - include/grpc/support/sync_windows.h - - include/grpc/support/thd_id.h - - include/grpc/support/time.h - - include/grpc/support/workaround_list.h - include/grpcpp/alarm.h - include/grpcpp/channel.h - include/grpcpp/client_context.h @@ -2948,37 +2957,6 @@ libs: - include/grpc++/support/stub_options.h - include/grpc++/support/sync_stream.h - include/grpc++/support/time.h - - include/grpc/byte_buffer.h - - include/grpc/byte_buffer_reader.h - - include/grpc/compression.h - - include/grpc/fork.h - - include/grpc/grpc.h - - include/grpc/grpc_posix.h - - include/grpc/grpc_security.h - - include/grpc/grpc_security_constants.h - - include/grpc/load_reporting.h - - include/grpc/slice.h - - include/grpc/slice_buffer.h - - include/grpc/status.h - - include/grpc/support/alloc.h - - include/grpc/support/atm.h - - include/grpc/support/atm_gcc_atomic.h - - include/grpc/support/atm_gcc_sync.h - - include/grpc/support/atm_windows.h - - include/grpc/support/cpu.h - - include/grpc/support/log.h - - include/grpc/support/log_windows.h - - include/grpc/support/port_platform.h - - include/grpc/support/string_util.h - - include/grpc/support/sync.h - - include/grpc/support/sync_abseil.h - - include/grpc/support/sync_custom.h - - include/grpc/support/sync_generic.h - - include/grpc/support/sync_posix.h - - include/grpc/support/sync_windows.h - - include/grpc/support/thd_id.h - - include/grpc/support/time.h - - include/grpc/support/workaround_list.h - include/grpcpp/alarm.h - include/grpcpp/channel.h - include/grpcpp/client_context.h diff --git a/gRPC-C++.podspec b/gRPC-C++.podspec index ae6c3b4afd6..de889b5da37 100644 --- a/gRPC-C++.podspec +++ b/gRPC-C++.podspec @@ -652,6 +652,7 @@ Pod::Spec.new do |s| 'src/core/lib/channel/call_tracer.h', 'src/core/lib/channel/channel_args.h', 'src/core/lib/channel/channel_args_preconditioning.h', + 'src/core/lib/channel/channel_fwd.h', 'src/core/lib/channel/channel_stack.h', 'src/core/lib/channel/channel_stack_builder.h', 'src/core/lib/channel/channel_stack_builder_impl.h', @@ -915,6 +916,7 @@ Pod::Spec.new do |s| 'src/core/lib/transport/tcp_connect_handshaker.h', 'src/core/lib/transport/timeout_encoding.h', 'src/core/lib/transport/transport.h', + 'src/core/lib/transport/transport_fwd.h', 'src/core/lib/transport/transport_impl.h', 'src/core/lib/uri/uri_parser.h', 'src/core/tsi/alts/crypt/gsec.h', @@ -1468,6 +1470,7 @@ Pod::Spec.new do |s| 'src/core/lib/channel/call_tracer.h', 'src/core/lib/channel/channel_args.h', 'src/core/lib/channel/channel_args_preconditioning.h', + 'src/core/lib/channel/channel_fwd.h', 'src/core/lib/channel/channel_stack.h', 'src/core/lib/channel/channel_stack_builder.h', 'src/core/lib/channel/channel_stack_builder_impl.h', @@ -1731,6 +1734,7 @@ Pod::Spec.new do |s| 'src/core/lib/transport/tcp_connect_handshaker.h', 'src/core/lib/transport/timeout_encoding.h', 'src/core/lib/transport/transport.h', + 'src/core/lib/transport/transport_fwd.h', 'src/core/lib/transport/transport_impl.h', 'src/core/lib/uri/uri_parser.h', 'src/core/tsi/alts/crypt/gsec.h', diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec index 497c0cac902..88052395952 100644 --- a/gRPC-Core.podspec +++ b/gRPC-Core.podspec @@ -995,6 +995,7 @@ Pod::Spec.new do |s| 'src/core/lib/channel/channel_args.h', 'src/core/lib/channel/channel_args_preconditioning.cc', 'src/core/lib/channel/channel_args_preconditioning.h', + 'src/core/lib/channel/channel_fwd.h', 'src/core/lib/channel/channel_stack.cc', 'src/core/lib/channel/channel_stack.h', 'src/core/lib/channel/channel_stack_builder.cc', @@ -1528,6 +1529,7 @@ Pod::Spec.new do |s| 'src/core/lib/transport/timeout_encoding.h', 'src/core/lib/transport/transport.cc', 'src/core/lib/transport/transport.h', + 'src/core/lib/transport/transport_fwd.h', 'src/core/lib/transport/transport_impl.h', 'src/core/lib/transport/transport_op_string.cc', 'src/core/lib/uri/uri_parser.cc', @@ -2067,6 +2069,7 @@ Pod::Spec.new do |s| 'src/core/lib/channel/call_tracer.h', 'src/core/lib/channel/channel_args.h', 'src/core/lib/channel/channel_args_preconditioning.h', + 'src/core/lib/channel/channel_fwd.h', 'src/core/lib/channel/channel_stack.h', 'src/core/lib/channel/channel_stack_builder.h', 'src/core/lib/channel/channel_stack_builder_impl.h', @@ -2330,6 +2333,7 @@ Pod::Spec.new do |s| 'src/core/lib/transport/tcp_connect_handshaker.h', 'src/core/lib/transport/timeout_encoding.h', 'src/core/lib/transport/transport.h', + 'src/core/lib/transport/transport_fwd.h', 'src/core/lib/transport/transport_impl.h', 'src/core/lib/uri/uri_parser.h', 'src/core/tsi/alts/crypt/gsec.h', diff --git a/grpc.gemspec b/grpc.gemspec index d7efe2b87a9..e694e5409df 100644 --- a/grpc.gemspec +++ b/grpc.gemspec @@ -908,6 +908,7 @@ Gem::Specification.new do |s| s.files += %w( src/core/lib/channel/channel_args.h ) s.files += %w( src/core/lib/channel/channel_args_preconditioning.cc ) s.files += %w( src/core/lib/channel/channel_args_preconditioning.h ) + s.files += %w( src/core/lib/channel/channel_fwd.h ) s.files += %w( src/core/lib/channel/channel_stack.cc ) s.files += %w( src/core/lib/channel/channel_stack.h ) s.files += %w( src/core/lib/channel/channel_stack_builder.cc ) @@ -1441,6 +1442,7 @@ Gem::Specification.new do |s| s.files += %w( src/core/lib/transport/timeout_encoding.h ) s.files += %w( src/core/lib/transport/transport.cc ) s.files += %w( src/core/lib/transport/transport.h ) + s.files += %w( src/core/lib/transport/transport_fwd.h ) s.files += %w( src/core/lib/transport/transport_impl.h ) s.files += %w( src/core/lib/transport/transport_op_string.cc ) s.files += %w( src/core/lib/uri/uri_parser.cc ) diff --git a/package.xml b/package.xml index 1f6973713c2..98bf3e60b90 100644 --- a/package.xml +++ b/package.xml @@ -890,6 +890,7 @@ + @@ -1423,6 +1424,7 @@ + diff --git a/src/core/ext/filters/census/grpc_context.cc b/src/core/ext/filters/census/grpc_context.cc index 6659f701c27..de09ad9f3bd 100644 --- a/src/core/ext/filters/census/grpc_context.cc +++ b/src/core/ext/filters/census/grpc_context.cc @@ -20,7 +20,10 @@ #include #include +#include +#include "src/core/lib/channel/context.h" +#include "src/core/lib/debug/trace.h" #include "src/core/lib/surface/api_trace.h" #include "src/core/lib/surface/call.h" diff --git a/src/core/ext/filters/channel_idle/channel_idle_filter.cc b/src/core/ext/filters/channel_idle/channel_idle_filter.cc index 7357ea4342b..63ecf229fa5 100644 --- a/src/core/ext/filters/channel_idle/channel_idle_filter.cc +++ b/src/core/ext/filters/channel_idle/channel_idle_filter.cc @@ -19,22 +19,34 @@ #include "src/core/ext/filters/channel_idle/channel_idle_filter.h" -#include #include -#include -#include +#include +#include + +#include "absl/types/optional.h" + +#include +#include #include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/promise_based_filter.h" #include "src/core/lib/config/core_configuration.h" -#include "src/core/lib/iomgr/timer.h" +#include "src/core/lib/debug/trace.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/gprpp/orphanable.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/iomgr/exec_ctx.h" #include "src/core/lib/promise/exec_ctx_wakeup_scheduler.h" #include "src/core/lib/promise/loop.h" +#include "src/core/lib/promise/poll.h" #include "src/core/lib/promise/promise.h" #include "src/core/lib/promise/sleep.h" #include "src/core/lib/promise/try_seq.h" +#include "src/core/lib/surface/channel_init.h" +#include "src/core/lib/surface/channel_stack_type.h" #include "src/core/lib/transport/http2_errors.h" namespace grpc_core { diff --git a/src/core/ext/filters/channel_idle/channel_idle_filter.h b/src/core/ext/filters/channel_idle/channel_idle_filter.h index 021c6164fcc..4f24f382c75 100644 --- a/src/core/ext/filters/channel_idle/channel_idle_filter.h +++ b/src/core/ext/filters/channel_idle/channel_idle_filter.h @@ -17,9 +17,25 @@ #include +#include + +#include "absl/status/status.h" +#include "absl/status/statusor.h" + +#include + #include "src/core/ext/filters/channel_idle/idle_filter_state.h" +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/single_set_ptr.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/promise/activity.h" +#include "src/core/lib/promise/arena_promise.h" +#include "src/core/lib/transport/connectivity_state.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/channel_idle/idle_filter_state.h b/src/core/ext/filters/channel_idle/idle_filter_state.h index f70c3c853be..b8cef4b03f6 100644 --- a/src/core/ext/filters/channel_idle/idle_filter_state.h +++ b/src/core/ext/filters/channel_idle/idle_filter_state.h @@ -17,6 +17,8 @@ #include +#include + #include namespace grpc_core { diff --git a/src/core/ext/filters/client_channel/channel_connectivity.cc b/src/core/ext/filters/client_channel/channel_connectivity.cc index bb68d4cb52b..6039840f6d6 100644 --- a/src/core/ext/filters/client_channel/channel_connectivity.cc +++ b/src/core/ext/filters/client_channel/channel_connectivity.cc @@ -25,8 +25,8 @@ #include #include "src/core/ext/filters/client_channel/client_channel.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/dual_ref_counted.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" diff --git a/src/core/ext/filters/client_channel/client_channel.h b/src/core/ext/filters/client_channel/client_channel.h index a0838a24311..c18eabfd27a 100644 --- a/src/core/ext/filters/client_channel/client_channel.h +++ b/src/core/ext/filters/client_channel/client_channel.h @@ -44,8 +44,8 @@ #include "src/core/ext/filters/client_channel/subchannel.h" #include "src/core/ext/filters/client_channel/subchannel_pool_interface.h" #include "src/core/lib/channel/call_tracer.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channelz.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/gpr/time_precise.h" diff --git a/src/core/ext/filters/client_channel/config_selector.h b/src/core/ext/filters/client_channel/config_selector.h index 5ed1fea544b..ea5555e3f36 100644 --- a/src/core/ext/filters/client_channel/config_selector.h +++ b/src/core/ext/filters/client_channel/config_selector.h @@ -28,7 +28,7 @@ #include #include -#include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/gprpp/ref_counted.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/iomgr/error.h" diff --git a/src/core/ext/filters/client_channel/connector.h b/src/core/ext/filters/client_channel/connector.h index 53080919ab0..6057f2044f1 100644 --- a/src/core/ext/filters/client_channel/connector.h +++ b/src/core/ext/filters/client_channel/connector.h @@ -29,7 +29,7 @@ #include "src/core/lib/iomgr/error.h" #include "src/core/lib/iomgr/iomgr_fwd.h" #include "src/core/lib/iomgr/resolved_address.h" -#include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" namespace grpc_core { diff --git a/src/core/ext/filters/client_channel/dynamic_filters.h b/src/core/ext/filters/client_channel/dynamic_filters.h index 4210d998748..3f812a7f015 100644 --- a/src/core/ext/filters/client_channel/dynamic_filters.h +++ b/src/core/ext/filters/client_channel/dynamic_filters.h @@ -24,7 +24,7 @@ #include #include -#include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/gpr/time_precise.h" #include "src/core/lib/gprpp/debug_location.h" diff --git a/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h b/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h index 838e2ef1cae..e1441ab0ddd 100644 --- a/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +++ b/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h @@ -21,6 +21,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" extern const grpc_channel_filter grpc_client_load_reporting_filter; diff --git a/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc b/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc index 212654fff03..c08be683fab 100644 --- a/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +++ b/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc @@ -23,7 +23,6 @@ #include #include #include -#include #include #include "absl/memory/memory.h" diff --git a/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc b/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc index 55f1a37f0a2..7dfe637d61c 100644 --- a/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +++ b/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc @@ -63,7 +63,7 @@ #include "src/core/ext/xds/xds_route_config.h" #include "src/core/ext/xds/xds_routing.h" #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/channel/channel_stack_builder.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/status_util.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/debug/trace.h" diff --git a/src/core/ext/filters/client_channel/retry_filter.cc b/src/core/ext/filters/client_channel/retry_filter.cc index 3520a7332f0..5f0633a2cf2 100644 --- a/src/core/ext/filters/client_channel/retry_filter.cc +++ b/src/core/ext/filters/client_channel/retry_filter.cc @@ -47,7 +47,6 @@ #include "src/core/lib/backoff/backoff.h" #include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/channel/status_util.h" #include "src/core/lib/debug/trace.h" diff --git a/src/core/ext/filters/client_channel/retry_filter.h b/src/core/ext/filters/client_channel/retry_filter.h index a96df8af1fc..f00c52f76d6 100644 --- a/src/core/ext/filters/client_channel/retry_filter.h +++ b/src/core/ext/filters/client_channel/retry_filter.h @@ -19,6 +19,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" namespace grpc_core { diff --git a/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc b/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc index cebe903eabc..a5bfbb64b18 100644 --- a/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +++ b/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc @@ -29,6 +29,7 @@ #include #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/context.h" diff --git a/src/core/ext/filters/client_channel/subchannel.cc b/src/core/ext/filters/client_channel/subchannel.cc index ea2e2177618..69a876838b9 100644 --- a/src/core/ext/filters/client_channel/subchannel.cc +++ b/src/core/ext/filters/client_channel/subchannel.cc @@ -42,6 +42,7 @@ #include "src/core/lib/address_utils/sockaddr_utils.h" #include "src/core/lib/backoff/backoff.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channel_stack_builder_impl.h" #include "src/core/lib/channel/channel_trace.h" diff --git a/src/core/ext/filters/client_channel/subchannel.h b/src/core/ext/filters/client_channel/subchannel.h index 23b68f222e5..696b370ab52 100644 --- a/src/core/ext/filters/client_channel/subchannel.h +++ b/src/core/ext/filters/client_channel/subchannel.h @@ -36,7 +36,7 @@ #include "src/core/ext/filters/client_channel/connector.h" #include "src/core/ext/filters/client_channel/subchannel_pool_interface.h" #include "src/core/lib/backoff/backoff.h" -#include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/gpr/time_precise.h" #include "src/core/lib/gprpp/debug_location.h" diff --git a/src/core/ext/filters/deadline/deadline_filter.cc b/src/core/ext/filters/deadline/deadline_filter.cc index a6358512a87..369cc7fd218 100644 --- a/src/core/ext/filters/deadline/deadline_filter.cc +++ b/src/core/ext/filters/deadline/deadline_filter.cc @@ -18,19 +18,23 @@ #include "src/core/ext/filters/deadline/deadline_filter.h" -#include -#include +#include -#include +#include "absl/types/optional.h" + +#include #include -#include -#include +#include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/config/core_configuration.h" -#include "src/core/lib/gprpp/memory.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/iomgr/exec_ctx.h" #include "src/core/lib/iomgr/timer.h" -#include "src/core/lib/slice/slice_internal.h" +#include "src/core/lib/surface/channel_init.h" +#include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/metadata_batch.h" namespace grpc_core { diff --git a/src/core/ext/filters/deadline/deadline_filter.h b/src/core/ext/filters/deadline/deadline_filter.h index 6aaa1a05dfb..dd35ed2071b 100644 --- a/src/core/ext/filters/deadline/deadline_filter.h +++ b/src/core/ext/filters/deadline/deadline_filter.h @@ -19,8 +19,15 @@ #include +#include + +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/iomgr/timer.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/call_combiner.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/resource_quota/arena.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { class TimerState; diff --git a/src/core/ext/filters/fault_injection/fault_injection_filter.cc b/src/core/ext/filters/fault_injection/fault_injection_filter.cc index 68c0e042619..48f467587d7 100644 --- a/src/core/ext/filters/fault_injection/fault_injection_filter.cc +++ b/src/core/ext/filters/fault_injection/fault_injection_filter.cc @@ -18,21 +18,40 @@ #include "src/core/ext/filters/fault_injection/fault_injection_filter.h" +#include +#include + +#include #include +#include +#include +#include +#include +#include "absl/status/status.h" #include "absl/strings/numbers.h" +#include "absl/strings/str_cat.h" +#include "absl/strings/string_view.h" +#include "absl/types/optional.h" +#include "absl/utility/utility.h" #include -#include #include #include "src/core/ext/filters/fault_injection/service_config_parser.h" #include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/context.h" #include "src/core/lib/channel/status_util.h" +#include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/debug/trace.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/exec_ctx.h" +#include "src/core/lib/promise/context.h" +#include "src/core/lib/promise/poll.h" #include "src/core/lib/promise/sleep.h" #include "src/core/lib/promise/try_seq.h" #include "src/core/lib/service_config/service_config_call_data.h" -#include "src/core/lib/transport/status_conversion.h" +#include "src/core/lib/transport/metadata_batch.h" #include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/fault_injection/fault_injection_filter.h b/src/core/ext/filters/fault_injection/fault_injection_filter.h index 49c6c0e31a8..2b0d783661d 100644 --- a/src/core/ext/filters/fault_injection/fault_injection_filter.h +++ b/src/core/ext/filters/fault_injection/fault_injection_filter.h @@ -19,9 +19,14 @@ #include -#include "src/core/ext/filters/fault_injection/service_config_parser.h" -#include "src/core/lib/channel/channel_stack.h" +#include + +#include "absl/status/statusor.h" + +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/promise/arena_promise.h" #include "src/core/lib/transport/transport.h" // Channel arg key for enabling parsing fault injection via method config. diff --git a/src/core/ext/filters/fault_injection/service_config_parser.cc b/src/core/ext/filters/fault_injection/service_config_parser.cc index df5d302697d..452c706f1a7 100644 --- a/src/core/ext/filters/fault_injection/service_config_parser.cc +++ b/src/core/ext/filters/fault_injection/service_config_parser.cc @@ -18,15 +18,18 @@ #include "src/core/ext/filters/fault_injection/service_config_parser.h" +#include +#include #include +#include "absl/memory/memory.h" #include "absl/strings/str_cat.h" -#include "absl/strings/string_view.h" + +#include #include "src/core/ext/filters/fault_injection/fault_injection_filter.h" #include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/status_util.h" -#include "src/core/lib/gpr/string.h" #include "src/core/lib/json/json_util.h" namespace grpc_core { diff --git a/src/core/ext/filters/fault_injection/service_config_parser.h b/src/core/ext/filters/fault_injection/service_config_parser.h index 8354b0f4bc6..219924b2c99 100644 --- a/src/core/ext/filters/fault_injection/service_config_parser.h +++ b/src/core/ext/filters/fault_injection/service_config_parser.h @@ -19,10 +19,24 @@ #include +#include +#include + +#include +#include +#include +#include #include +#include "absl/strings/string_view.h" + +#include +#include + #include "src/core/lib/config/core_configuration.h" -#include "src/core/lib/iomgr/exec_ctx.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/json/json.h" #include "src/core/lib/service_config/service_config_parser.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/client/http_client_filter.cc b/src/core/ext/filters/http/client/http_client_filter.cc index 47c325562e6..3c1a84d3ed1 100644 --- a/src/core/ext/filters/http/client/http_client_filter.cc +++ b/src/core/ext/filters/http/client/http_client_filter.cc @@ -19,25 +19,36 @@ #include "src/core/ext/filters/http/client/http_client_filter.h" -#include -#include - +#include +#include #include +#include #include +#include "absl/status/status.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" +#include "absl/strings/string_view.h" +#include "absl/types/optional.h" +#include "absl/utility/utility.h" #include -#include -#include +#include +#include #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/promise/call_push_pull.h" +#include "src/core/lib/promise/context.h" +#include "src/core/lib/promise/detail/basic_seq.h" +#include "src/core/lib/promise/latch.h" +#include "src/core/lib/promise/poll.h" #include "src/core/lib/promise/seq.h" +#include "src/core/lib/resource_quota/arena.h" #include "src/core/lib/slice/percent_encoding.h" #include "src/core/lib/transport/status_conversion.h" +#include "src/core/lib/transport/transport_fwd.h" #include "src/core/lib/transport/transport_impl.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/client/http_client_filter.h b/src/core/ext/filters/http/client/http_client_filter.h index 845d4e645b3..b39c498a411 100644 --- a/src/core/ext/filters/http/client/http_client_filter.h +++ b/src/core/ext/filters/http/client/http_client_filter.h @@ -20,8 +20,15 @@ #include -#include "src/core/lib/channel/channel_stack.h" +#include "absl/status/statusor.h" + +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/promise/arena_promise.h" +#include "src/core/lib/slice/slice.h" +#include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/client_authority_filter.cc b/src/core/ext/filters/http/client_authority_filter.cc index 0f2d7214c9c..882430c34cc 100644 --- a/src/core/ext/filters/http/client_authority_filter.cc +++ b/src/core/ext/filters/http/client_authority_filter.cc @@ -20,22 +20,23 @@ #include "src/core/ext/filters/http/client_authority_filter.h" -#include #include -#include -#include -#include -#include +#include -#include "src/core/ext/filters/http/client_authority_filter.h" +#include "absl/status/status.h" +#include "absl/strings/string_view.h" +#include "absl/types/optional.h" + +#include + +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/config/core_configuration.h" -#include "src/core/lib/gpr/string.h" -#include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/slice/slice_string_helpers.h" -#include "src/core/lib/surface/call.h" +#include "src/core/lib/promise/poll.h" +#include "src/core/lib/surface/channel_init.h" #include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/metadata_batch.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/client_authority_filter.h b/src/core/ext/filters/http/client_authority_filter.h index f049e30442e..d5220eebd6d 100644 --- a/src/core/ext/filters/http/client_authority_filter.h +++ b/src/core/ext/filters/http/client_authority_filter.h @@ -21,13 +21,16 @@ #include -#include "absl/status/statusor.h" +#include -#include +#include "absl/status/statusor.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/promise/arena_promise.h" #include "src/core/lib/slice/slice.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/http_filters_plugin.cc b/src/core/ext/filters/http/http_filters_plugin.cc index 3bd6e6a1887..42964ac5fcc 100644 --- a/src/core/ext/filters/http/http_filters_plugin.cc +++ b/src/core/ext/filters/http/http_filters_plugin.cc @@ -20,13 +20,21 @@ #include +#include "absl/types/optional.h" + +#include + #include "src/core/ext/filters/http/client/http_client_filter.h" #include "src/core/ext/filters/http/message_compress/message_compress_filter.h" #include "src/core/ext/filters/http/message_compress/message_decompress_filter.h" #include "src/core/ext/filters/http/server/http_server_filter.h" +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/config/core_configuration.h" -#include "src/core/lib/surface/call.h" +#include "src/core/lib/surface/channel_init.h" +#include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/transport_fwd.h" #include "src/core/lib/transport/transport_impl.h" static bool is_building_http_like_transport( diff --git a/src/core/ext/filters/http/message_compress/message_compress_filter.cc b/src/core/ext/filters/http/message_compress/message_compress_filter.cc index d354c0220b4..6387050e087 100644 --- a/src/core/ext/filters/http/message_compress/message_compress_filter.cc +++ b/src/core/ext/filters/http/message_compress/message_compress_filter.cc @@ -20,25 +20,37 @@ #include "src/core/ext/filters/http/message_compress/message_compress_filter.h" -#include -#include +#include +#include +#include +#include +#include + +#include "absl/meta/type_traits.h" #include "absl/types/optional.h" #include +#include +#include +#include #include -#include #include -#include "src/core/lib/channel/channel_args.h" #include "src/core/lib/compression/compression_internal.h" #include "src/core/lib/compression/message_compress.h" -#include "src/core/lib/gpr/string.h" -#include "src/core/lib/gprpp/manual_constructor.h" +#include "src/core/lib/debug/trace.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/gprpp/orphanable.h" +#include "src/core/lib/iomgr/call_combiner.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/profiling/timers.h" #include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/slice/slice_string_helpers.h" #include "src/core/lib/surface/call.h" +#include "src/core/lib/transport/byte_stream.h" +#include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport.h" namespace { diff --git a/src/core/ext/filters/http/message_compress/message_compress_filter.h b/src/core/ext/filters/http/message_compress/message_compress_filter.h index e163e3cf98f..4593a276af5 100644 --- a/src/core/ext/filters/http/message_compress/message_compress_filter.h +++ b/src/core/ext/filters/http/message_compress/message_compress_filter.h @@ -21,8 +21,7 @@ #include -#include - +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" /** Compression filter for outgoing data. diff --git a/src/core/ext/filters/http/message_compress/message_decompress_filter.cc b/src/core/ext/filters/http/message_compress/message_decompress_filter.cc index 02120046261..9bb3da48a8a 100644 --- a/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +++ b/src/core/ext/filters/http/message_compress/message_decompress_filter.cc @@ -20,24 +20,36 @@ #include "src/core/ext/filters/http/message_compress/message_decompress_filter.h" -#include +#include #include +#include +#include +#include + #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" +#include "absl/types/optional.h" -#include +#include +#include #include -#include +#include #include #include "src/core/ext/filters/message_size/message_size_filter.h" #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/compression/compression_internal.h" #include "src/core/lib/compression/message_compress.h" -#include "src/core/lib/gpr/string.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/gprpp/orphanable.h" +#include "src/core/lib/iomgr/call_combiner.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/profiling/timers.h" #include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/slice/slice_string_helpers.h" +#include "src/core/lib/transport/byte_stream.h" +#include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { namespace { diff --git a/src/core/ext/filters/http/message_compress/message_decompress_filter.h b/src/core/ext/filters/http/message_compress/message_decompress_filter.h index f19a4ca0cbd..52addca71f1 100644 --- a/src/core/ext/filters/http/message_compress/message_decompress_filter.h +++ b/src/core/ext/filters/http/message_compress/message_decompress_filter.h @@ -21,6 +21,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/server/http_server_filter.cc b/src/core/ext/filters/http/server/http_server_filter.cc index e571137fd74..aeee76a4e08 100644 --- a/src/core/ext/filters/http/server/http_server_filter.cc +++ b/src/core/ext/filters/http/server/http_server_filter.cc @@ -20,22 +20,29 @@ #include "src/core/ext/filters/http/server/http_server_filter.h" -#include +#include +#include -#include -#include -#include +#include "absl/base/attributes.h" +#include "absl/status/status.h" +#include "absl/types/optional.h" +#include "absl/utility/utility.h" + +#include #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/gprpp/manual_constructor.h" -#include "src/core/lib/profiling/timers.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/promise/call_push_pull.h" +#include "src/core/lib/promise/context.h" +#include "src/core/lib/promise/detail/basic_seq.h" +#include "src/core/lib/promise/latch.h" +#include "src/core/lib/promise/poll.h" #include "src/core/lib/promise/promise.h" #include "src/core/lib/promise/seq.h" -#include "src/core/lib/slice/b64.h" +#include "src/core/lib/resource_quota/arena.h" #include "src/core/lib/slice/percent_encoding.h" -#include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/slice/slice_string_helpers.h" +#include "src/core/lib/slice/slice.h" +#include "src/core/lib/transport/metadata_batch.h" namespace grpc_core { diff --git a/src/core/ext/filters/http/server/http_server_filter.h b/src/core/ext/filters/http/server/http_server_filter.h index aff346c69e0..49eabb5ac9a 100644 --- a/src/core/ext/filters/http/server/http_server_filter.h +++ b/src/core/ext/filters/http/server/http_server_filter.h @@ -21,8 +21,13 @@ #include -#include "src/core/lib/channel/channel_stack.h" +#include "absl/status/statusor.h" + +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/promise/arena_promise.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc b/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc index a3f5e3faf6d..182edbc57a3 100644 --- a/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc +++ b/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc @@ -20,35 +20,54 @@ #include "src/core/ext/filters/load_reporting/server_load_reporting_filter.h" -#include +#include +#include +#include +#include #include +#include +#include "absl/container/inlined_vector.h" +#include "absl/meta/type_traits.h" +#include "absl/status/status.h" #include "absl/strings/ascii.h" +#include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" +#include "absl/strings/string_view.h" +#include "absl/types/optional.h" +#include "opencensus/tags/tag_key.h" #include -#include -#include +#include +#include #include +#include -#include "src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h" #include "src/core/ext/filters/load_reporting/registered_opencensus_objects.h" -#include "src/core/ext/filters/load_reporting/server_load_reporting_filter.h" #include "src/core/lib/address_utils/parse_address.h" +#include "src/core/lib/channel/call_finalization.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder.h" -#include "src/core/lib/channel/context.h" #include "src/core/lib/config/core_configuration.h" -#include "src/core/lib/iomgr/resolve_address.h" +#include "src/core/lib/iomgr/resolved_address.h" #include "src/core/lib/iomgr/sockaddr.h" #include "src/core/lib/iomgr/socket_utils.h" +#include "src/core/lib/promise/context.h" +#include "src/core/lib/promise/poll.h" #include "src/core/lib/promise/promise.h" #include "src/core/lib/promise/seq.h" #include "src/core/lib/security/context/security_context.h" -#include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/surface/call.h" +#include "src/core/lib/slice/slice.h" +#include "src/core/lib/surface/channel_init.h" +#include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/metadata_batch.h" #include "src/core/lib/uri/uri_parser.h" +#include "src/cpp/server/load_reporter/constants.h" + +// IWYU pragma: no_include "opencensus/stats/recording.h" namespace grpc_core { diff --git a/src/core/ext/filters/load_reporting/server_load_reporting_filter.h b/src/core/ext/filters/load_reporting/server_load_reporting_filter.h index 92fd152ee81..f7ea3304c33 100644 --- a/src/core/ext/filters/load_reporting/server_load_reporting_filter.h +++ b/src/core/ext/filters/load_reporting/server_load_reporting_filter.h @@ -21,10 +21,16 @@ #include +#include + #include -#include "src/core/lib/channel/channel_stack.h" +#include "absl/status/statusor.h" + +#include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/promise/arena_promise.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/message_size/message_size_filter.cc b/src/core/ext/filters/message_size/message_size_filter.cc index 3b2d435248f..b5145a6d4fb 100644 --- a/src/core/ext/filters/message_size/message_size_filter.cc +++ b/src/core/ext/filters/message_size/message_size_filter.cc @@ -18,24 +18,35 @@ #include "src/core/ext/filters/message_size/message_size_filter.h" -#include -#include - +#include +#include +#include +#include +#include +#include + +#include "absl/memory/memory.h" #include "absl/strings/str_format.h" +#include "absl/types/optional.h" #include -#include +#include #include -#include "src/core/ext/filters/message_size/message_size_filter.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/gpr/string.h" -#include "src/core/lib/gprpp/ref_counted.h" -#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/gprpp/orphanable.h" +#include "src/core/lib/iomgr/call_combiner.h" +#include "src/core/lib/iomgr/closure.h" #include "src/core/lib/service_config/service_config_call_data.h" -#include "src/core/lib/surface/call.h" +#include "src/core/lib/surface/channel_init.h" +#include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/byte_stream.h" +#include "src/core/lib/transport/transport.h" static void recv_message_ready(void* user_data, grpc_error_handle error); static void recv_trailing_metadata_ready(void* user_data, diff --git a/src/core/ext/filters/message_size/message_size_filter.h b/src/core/ext/filters/message_size/message_size_filter.h index c5427d9f089..d58861c417e 100644 --- a/src/core/ext/filters/message_size/message_size_filter.h +++ b/src/core/ext/filters/message_size/message_size_filter.h @@ -19,8 +19,21 @@ #include +#include + +#include + +#include "absl/strings/string_view.h" + +#include + +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/context.h" #include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/json/json.h" #include "src/core/lib/service_config/service_config_parser.h" extern const grpc_channel_filter grpc_message_size_filter; diff --git a/src/core/ext/filters/rbac/rbac_filter.cc b/src/core/ext/filters/rbac/rbac_filter.cc index 1c7d24400f0..5c8b622dd8b 100644 --- a/src/core/ext/filters/rbac/rbac_filter.cc +++ b/src/core/ext/filters/rbac/rbac_filter.cc @@ -18,10 +18,21 @@ #include "src/core/ext/filters/rbac/rbac_filter.h" +#include +#include + +#include +#include + #include "src/core/ext/filters/rbac/rbac_service_config_parser.h" +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/security/authorization/authorization_engine.h" #include "src/core/lib/security/authorization/grpc_authorization_engine.h" +#include "src/core/lib/security/context/security_context.h" #include "src/core/lib/service_config/service_config_call_data.h" -#include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport_fwd.h" namespace grpc_core { diff --git a/src/core/ext/filters/rbac/rbac_filter.h b/src/core/ext/filters/rbac/rbac_filter.h index 1c8a31e6854..30297d7c541 100644 --- a/src/core/ext/filters/rbac/rbac_filter.h +++ b/src/core/ext/filters/rbac/rbac_filter.h @@ -19,8 +19,16 @@ #include +#include + +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/context.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/security/authorization/evaluate_args.h" +#include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/rbac/rbac_service_config_parser.cc b/src/core/ext/filters/rbac/rbac_service_config_parser.cc index 08d045abc96..aeb07b2373f 100644 --- a/src/core/ext/filters/rbac/rbac_service_config_parser.cc +++ b/src/core/ext/filters/rbac/rbac_service_config_parser.cc @@ -18,10 +18,21 @@ #include "src/core/ext/filters/rbac/rbac_service_config_parser.h" +#include + +#include +#include + +#include "absl/memory/memory.h" +#include "absl/status/status.h" +#include "absl/status/statusor.h" #include "absl/strings/str_format.h" +#include + #include "src/core/lib/channel/channel_args.h" #include "src/core/lib/json/json_util.h" +#include "src/core/lib/matchers/matchers.h" #include "src/core/lib/transport/error_utils.h" namespace grpc_core { diff --git a/src/core/ext/filters/rbac/rbac_service_config_parser.h b/src/core/ext/filters/rbac/rbac_service_config_parser.h index b9b57a4b342..52846e6a0f7 100644 --- a/src/core/ext/filters/rbac/rbac_service_config_parser.h +++ b/src/core/ext/filters/rbac/rbac_service_config_parser.h @@ -19,10 +19,22 @@ #include +#include + +#include +#include +#include #include +#include "absl/strings/string_view.h" + +#include + #include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/json/json.h" #include "src/core/lib/security/authorization/grpc_authorization_engine.h" +#include "src/core/lib/security/authorization/rbac_policy.h" #include "src/core/lib/service_config/service_config_parser.h" namespace grpc_core { diff --git a/src/core/ext/filters/server_config_selector/server_config_selector.cc b/src/core/ext/filters/server_config_selector/server_config_selector.cc index 8d21905cd98..96105879e86 100644 --- a/src/core/ext/filters/server_config_selector/server_config_selector.cc +++ b/src/core/ext/filters/server_config_selector/server_config_selector.cc @@ -19,6 +19,7 @@ #include "src/core/ext/filters/server_config_selector/server_config_selector.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/gpr/useful.h" namespace grpc_core { namespace { diff --git a/src/core/ext/filters/server_config_selector/server_config_selector.h b/src/core/ext/filters/server_config_selector/server_config_selector.h index 590763f66ab..2e4ea069f7f 100644 --- a/src/core/ext/filters/server_config_selector/server_config_selector.h +++ b/src/core/ext/filters/server_config_selector/server_config_selector.h @@ -19,10 +19,19 @@ #include +#include + #include "absl/status/statusor.h" +#include "absl/strings/string_view.h" + +#include #include "src/core/lib/gprpp/dual_ref_counted.h" +#include "src/core/lib/gprpp/ref_counted.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/service_config/service_config.h" +#include "src/core/lib/service_config/service_config_parser.h" #include "src/core/lib/transport/metadata_batch.h" namespace grpc_core { diff --git a/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc b/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc index bb1b9a77955..4489a857a02 100644 --- a/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +++ b/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc @@ -16,13 +16,33 @@ #include "src/core/ext/filters/server_config_selector/server_config_selector_filter.h" +#include +#include +#include +#include + +#include "absl/base/thread_annotations.h" +#include "absl/memory/memory.h" +#include "absl/status/status.h" +#include "absl/status/statusor.h" +#include "absl/types/optional.h" + +#include + #include "src/core/ext/filters/server_config_selector/server_config_selector.h" +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/context.h" #include "src/core/lib/channel/promise_based_filter.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/sync.h" #include "src/core/lib/iomgr/error.h" +#include "src/core/lib/promise/arena_promise.h" +#include "src/core/lib/promise/context.h" +#include "src/core/lib/promise/poll.h" #include "src/core/lib/promise/promise.h" #include "src/core/lib/resource_quota/arena.h" #include "src/core/lib/service_config/service_config_call_data.h" -#include "src/core/lib/transport/error_utils.h" +#include "src/core/lib/transport/transport.h" namespace grpc_core { diff --git a/src/core/ext/filters/server_config_selector/server_config_selector_filter.h b/src/core/ext/filters/server_config_selector/server_config_selector_filter.h index 370a229be48..36c43a6cd11 100644 --- a/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +++ b/src/core/ext/filters/server_config_selector/server_config_selector_filter.h @@ -21,6 +21,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" namespace grpc_core { diff --git a/src/core/ext/transport/chttp2/client/chttp2_connector.cc b/src/core/ext/transport/chttp2/client/chttp2_connector.cc index ff939cacb13..ec2f01f7235 100644 --- a/src/core/ext/transport/chttp2/client/chttp2_connector.cc +++ b/src/core/ext/transport/chttp2/client/chttp2_connector.cc @@ -45,7 +45,6 @@ #include "src/core/lib/address_utils/sockaddr_utils.h" #include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/channel_args_preconditioning.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channelz.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/debug/trace.h" @@ -68,6 +67,7 @@ #include "src/core/lib/transport/handshaker_registry.h" #include "src/core/lib/transport/tcp_connect_handshaker.h" #include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" #ifdef GPR_SUPPORT_CHANNELS_FROM_FD diff --git a/src/core/ext/transport/chttp2/server/chttp2_server.cc b/src/core/ext/transport/chttp2/server/chttp2_server.cc index cd21d92760b..ebe5c5582b9 100644 --- a/src/core/ext/transport/chttp2/server/chttp2_server.cc +++ b/src/core/ext/transport/chttp2/server/chttp2_server.cc @@ -52,7 +52,6 @@ #include "src/core/ext/transport/chttp2/transport/internal.h" #include "src/core/lib/address_utils/sockaddr_utils.h" #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channelz.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/debug/trace.h" @@ -86,6 +85,7 @@ #include "src/core/lib/transport/handshaker.h" #include "src/core/lib/transport/handshaker_registry.h" #include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" #include "src/core/lib/uri/uri_parser.h" #ifdef GPR_SUPPORT_CHANNELS_FROM_FD diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.cc b/src/core/ext/transport/chttp2/transport/chttp2_transport.cc index cdaadc654d8..03117833352 100644 --- a/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.cc @@ -57,7 +57,6 @@ #include "src/core/ext/transport/chttp2/transport/stream_map.h" #include "src/core/ext/transport/chttp2/transport/varint.h" #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/debug/stats.h" #include "src/core/lib/gpr/useful.h" #include "src/core/lib/gprpp/bitset.h" diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.h b/src/core/ext/transport/chttp2/transport/chttp2_transport.h index 193908292a0..a9ea7b60157 100644 --- a/src/core/ext/transport/chttp2/transport/chttp2_transport.h +++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.h @@ -29,7 +29,7 @@ #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/iomgr/closure.h" #include "src/core/lib/iomgr/endpoint.h" -#include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" extern grpc_core::TraceFlag grpc_http_trace; extern grpc_core::TraceFlag grpc_keepalive_trace; diff --git a/src/core/ext/transport/chttp2/transport/internal.h b/src/core/ext/transport/chttp2/transport/internal.h index 015a78eddaf..d859766eadf 100644 --- a/src/core/ext/transport/chttp2/transport/internal.h +++ b/src/core/ext/transport/chttp2/transport/internal.h @@ -64,6 +64,7 @@ #include "src/core/lib/transport/connectivity_state.h" #include "src/core/lib/transport/metadata_batch.h" #include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" #include "src/core/lib/transport/transport_impl.h" namespace grpc_core { diff --git a/src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc b/src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc index 1ff0a52d4be..8e9b3d2e3b0 100644 --- a/src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc +++ b/src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc @@ -20,15 +20,19 @@ #include "src/core/ext/transport/cronet/client/secure/cronet_channel_create.h" -#include -#include +#include "absl/status/statusor.h" -#include #include #include "src/core/ext/transport/cronet/transport/cronet_transport.h" -#include "src/core/lib/resource_quota/api.h" +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_args_preconditioning.h" +#include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/iomgr/exec_ctx.h" #include "src/core/lib/surface/channel.h" +#include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/transport_fwd.h" #include "src/core/lib/transport/transport_impl.h" // Cronet transport object diff --git a/src/core/ext/transport/cronet/client/secure/cronet_channel_create.h b/src/core/ext/transport/cronet/client/secure/cronet_channel_create.h index 7427f9fb21d..4dec0051491 100644 --- a/src/core/ext/transport/cronet/client/secure/cronet_channel_create.h +++ b/src/core/ext/transport/cronet/client/secure/cronet_channel_create.h @@ -21,7 +21,7 @@ #include -#include +#include #ifdef __cplusplus extern "C" { diff --git a/src/core/ext/transport/cronet/transport/cronet_api_phony.cc b/src/core/ext/transport/cronet/transport/cronet_api_phony.cc index 0499112b9c2..7946daad9be 100644 --- a/src/core/ext/transport/cronet/transport/cronet_api_phony.cc +++ b/src/core/ext/transport/cronet/transport/cronet_api_phony.cc @@ -21,8 +21,6 @@ library, so we can build it in all environments */ #include -#include - #include "third_party/objective_c/Cronet/bidirectional_stream_c.h" #include diff --git a/src/core/ext/transport/cronet/transport/cronet_transport.cc b/src/core/ext/transport/cronet/transport/cronet_transport.cc index 30809eef0da..c9b7e127232 100644 --- a/src/core/ext/transport/cronet/transport/cronet_transport.cc +++ b/src/core/ext/transport/cronet/transport/cronet_transport.cc @@ -20,32 +20,49 @@ #include "src/core/ext/transport/cronet/transport/cronet_transport.h" +#include +#include #include +#include +#include #include +#include +#include "absl/strings/match.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" +#include "absl/strings/string_view.h" #include "third_party/objective_c/Cronet/bidirectional_stream_c.h" +#include #include +#include #include #include +#include #include "src/core/ext/transport/chttp2/transport/bin_decoder.h" #include "src/core/ext/transport/chttp2/transport/bin_encoder.h" #include "src/core/ext/transport/cronet/transport/cronet_status.h" #include "src/core/lib/debug/trace.h" -#include "src/core/lib/gpr/string.h" +#include "src/core/lib/gprpp/debug_location.h" #include "src/core/lib/gprpp/manual_constructor.h" +#include "src/core/lib/gprpp/orphanable.h" +#include "src/core/lib/iomgr/closure.h" #include "src/core/lib/iomgr/endpoint.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/iomgr/exec_ctx.h" +#include "src/core/lib/iomgr/iomgr_fwd.h" +#include "src/core/lib/iomgr/pollset.h" +#include "src/core/lib/resource_quota/arena.h" +#include "src/core/lib/slice/slice.h" #include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/slice/slice_string_helpers.h" -#include "src/core/lib/surface/channel.h" +#include "src/core/lib/slice/slice_refcount.h" #include "src/core/lib/surface/validate_metadata.h" +#include "src/core/lib/transport/byte_stream.h" #include "src/core/lib/transport/metadata_batch.h" -#include "src/core/lib/transport/timeout_encoding.h" +#include "src/core/lib/transport/transport.h" #include "src/core/lib/transport/transport_impl.h" #define GRPC_HEADER_SIZE_IN_BYTES 5 diff --git a/src/core/ext/transport/cronet/transport/cronet_transport.h b/src/core/ext/transport/cronet/transport/cronet_transport.h index fb7e149f10f..8ed98edfa14 100644 --- a/src/core/ext/transport/cronet/transport/cronet_transport.h +++ b/src/core/ext/transport/cronet/transport/cronet_transport.h @@ -21,7 +21,9 @@ #include -#include "src/core/lib/transport/transport.h" +#include + +#include "src/core/lib/transport/transport_fwd.h" grpc_transport* grpc_create_cronet_transport(void* engine, const char* target, const grpc_channel_args* args, diff --git a/src/core/ext/transport/inproc/inproc_plugin.cc b/src/core/ext/transport/inproc/inproc_plugin.cc index 34de19aecc0..e0abdbbe638 100644 --- a/src/core/ext/transport/inproc/inproc_plugin.cc +++ b/src/core/ext/transport/inproc/inproc_plugin.cc @@ -18,7 +18,6 @@ #include -#include "src/core/ext/transport/inproc/inproc_transport.h" #include "src/core/lib/debug/trace.h" grpc_core::TraceFlag grpc_inproc_trace(false, "inproc"); diff --git a/src/core/ext/transport/inproc/inproc_transport.cc b/src/core/ext/transport/inproc/inproc_transport.cc index 2fbe4886cde..7b1146bab88 100644 --- a/src/core/ext/transport/inproc/inproc_transport.cc +++ b/src/core/ext/transport/inproc/inproc_transport.cc @@ -20,22 +20,58 @@ #include "src/core/ext/transport/inproc/inproc_transport.h" +#include #include +#include +#include +#include +#include +#include + +#include "absl/status/status.h" +#include "absl/status/statusor.h" +#include "absl/strings/str_cat.h" +#include "absl/strings/string_view.h" +#include "absl/types/optional.h" + +#include +#include +#include +#include +#include #include -#include +#include #include -#include #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_args_preconditioning.h" +#include "src/core/lib/channel/channelz.h" +#include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/gpr/useful.h" +#include "src/core/lib/gprpp/debug_location.h" #include "src/core/lib/gprpp/manual_constructor.h" -#include "src/core/lib/resource_quota/api.h" +#include "src/core/lib/gprpp/orphanable.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/iomgr/endpoint.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/iomgr/exec_ctx.h" +#include "src/core/lib/iomgr/iomgr_fwd.h" +#include "src/core/lib/iomgr/pollset.h" +#include "src/core/lib/resource_quota/arena.h" +#include "src/core/lib/slice/slice.h" #include "src/core/lib/slice/slice_internal.h" #include "src/core/lib/surface/api_trace.h" #include "src/core/lib/surface/channel.h" +#include "src/core/lib/surface/channel_stack_type.h" #include "src/core/lib/surface/server.h" +#include "src/core/lib/transport/byte_stream.h" #include "src/core/lib/transport/connectivity_state.h" -#include "src/core/lib/transport/error_utils.h" +#include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" #include "src/core/lib/transport/transport_impl.h" #define INPROC_LOG(...) \ diff --git a/src/core/ext/transport/inproc/inproc_transport.h b/src/core/ext/transport/inproc/inproc_transport.h index 0ff22ffa59d..465d9b41b78 100644 --- a/src/core/ext/transport/inproc/inproc_transport.h +++ b/src/core/ext/transport/inproc/inproc_transport.h @@ -21,7 +21,9 @@ #include -#include "src/core/lib/transport/transport_impl.h" +#include + +#include "src/core/lib/debug/trace.h" grpc_channel* grpc_inproc_channel_create(grpc_server* server, const grpc_channel_args* args, diff --git a/src/core/ext/xds/certificate_provider_factory.h b/src/core/ext/xds/certificate_provider_factory.h index e9bba790de8..ec59054818e 100644 --- a/src/core/ext/xds/certificate_provider_factory.h +++ b/src/core/ext/xds/certificate_provider_factory.h @@ -21,9 +21,14 @@ #include +#include + +#include + +#include "src/core/lib/gprpp/ref_counted.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/iomgr/error.h" #include "src/core/lib/json/json.h" -#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" namespace grpc_core { diff --git a/src/core/ext/xds/certificate_provider_registry.cc b/src/core/ext/xds/certificate_provider_registry.cc index 8802f2be657..f126a762f9f 100644 --- a/src/core/ext/xds/certificate_provider_registry.cc +++ b/src/core/ext/xds/certificate_provider_registry.cc @@ -20,8 +20,14 @@ #include "src/core/ext/xds/certificate_provider_registry.h" +#include + +#include + #include "absl/container/inlined_vector.h" +#include + namespace grpc_core { namespace { diff --git a/src/core/ext/xds/certificate_provider_registry.h b/src/core/ext/xds/certificate_provider_registry.h index 38979765a1c..d25ecf5e494 100644 --- a/src/core/ext/xds/certificate_provider_registry.h +++ b/src/core/ext/xds/certificate_provider_registry.h @@ -21,7 +21,9 @@ #include -#include +#include + +#include "absl/strings/string_view.h" #include "src/core/ext/xds/certificate_provider_factory.h" diff --git a/src/core/ext/xds/certificate_provider_store.cc b/src/core/ext/xds/certificate_provider_store.cc index 4e281a978c2..e83414baeb0 100644 --- a/src/core/ext/xds/certificate_provider_store.cc +++ b/src/core/ext/xds/certificate_provider_store.cc @@ -20,6 +20,8 @@ #include "src/core/ext/xds/certificate_provider_store.h" +#include + #include "src/core/ext/xds/certificate_provider_registry.h" namespace grpc_core { diff --git a/src/core/ext/xds/certificate_provider_store.h b/src/core/ext/xds/certificate_provider_store.h index eadc318902a..b9f33042080 100644 --- a/src/core/ext/xds/certificate_provider_store.h +++ b/src/core/ext/xds/certificate_provider_store.h @@ -22,13 +22,22 @@ #include #include +#include +#include +#include "absl/base/thread_annotations.h" #include "absl/strings/string_view.h" +#include + #include "src/core/ext/xds/certificate_provider_factory.h" +#include "src/core/lib/gpr/useful.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/sync.h" +#include "src/core/lib/gprpp/unique_type_name.h" +#include "src/core/lib/iomgr/iomgr_fwd.h" +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h" #include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" namespace grpc_core { diff --git a/src/core/ext/xds/file_watcher_certificate_provider_factory.cc b/src/core/ext/xds/file_watcher_certificate_provider_factory.cc index 939eec249c8..0ab7f74459e 100644 --- a/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +++ b/src/core/ext/xds/file_watcher_certificate_provider_factory.cc @@ -20,11 +20,20 @@ #include "src/core/ext/xds/file_watcher_certificate_provider_factory.h" +#include +#include +#include + +#include "absl/memory/memory.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" +#include +#include + #include "src/core/ext/xds/certificate_provider_registry.h" #include "src/core/lib/json/json_util.h" +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" namespace grpc_core { diff --git a/src/core/ext/xds/file_watcher_certificate_provider_factory.h b/src/core/ext/xds/file_watcher_certificate_provider_factory.h index 10b0037efbd..a1c3900ff10 100644 --- a/src/core/ext/xds/file_watcher_certificate_provider_factory.h +++ b/src/core/ext/xds/file_watcher_certificate_provider_factory.h @@ -21,7 +21,15 @@ #include +#include + +#include + #include "src/core/ext/xds/certificate_provider_factory.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/json/json.h" namespace grpc_core { diff --git a/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc b/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc index 95137bb3159..16813f49cfa 100644 --- a/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc +++ b/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc @@ -20,14 +20,8 @@ #include "src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h" -#include -#include +#include -#include "absl/strings/str_cat.h" - -#include - -#include "src/core/lib/gpr/string.h" #include "src/core/lib/iomgr/error.h" #include "src/core/lib/json/json_util.h" diff --git a/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h b/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h index 8d1f19a817e..5597471a5e1 100644 --- a/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h +++ b/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h @@ -21,9 +21,19 @@ #include +#include + +#include +#include + +#include + #include "src/core/ext/xds/certificate_provider_factory.h" -#include "src/core/lib/backoff/backoff.h" -#include "src/core/lib/gprpp/ref_counted.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/json/json.h" +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" namespace grpc_core { diff --git a/src/core/ext/xds/upb_utils.h b/src/core/ext/xds/upb_utils.h index be1d7ebb255..9141c68b568 100644 --- a/src/core/ext/xds/upb_utils.h +++ b/src/core/ext/xds/upb_utils.h @@ -22,9 +22,8 @@ #include #include "absl/strings/string_view.h" -#include "upb/text_encode.h" +#include "upb/def.h" #include "upb/upb.h" -#include "upb/upb.hpp" #include "src/core/ext/xds/certificate_provider_store.h" #include "src/core/ext/xds/xds_bootstrap.h" diff --git a/src/core/ext/xds/xds_api.cc b/src/core/ext/xds/xds_api.cc index 026d53fb4b2..37be3b867aa 100644 --- a/src/core/ext/xds/xds_api.cc +++ b/src/core/ext/xds/xds_api.cc @@ -18,11 +18,16 @@ #include "src/core/ext/xds/xds_api.h" +#include +#include + +#include #include #include #include #include "absl/strings/str_cat.h" +#include "absl/strings/strip.h" #include "envoy/admin/v3/config_dump.upb.h" #include "envoy/config/core/v3/base.upb.h" #include "envoy/config/endpoint/v3/load_report.upb.h" @@ -31,34 +36,28 @@ #include "envoy/service/load_stats/v3/lrs.upb.h" #include "envoy/service/load_stats/v3/lrs.upbdefs.h" #include "envoy/service/status/v3/csds.upb.h" -#include "envoy/service/status/v3/csds.upbdefs.h" #include "google/protobuf/any.upb.h" +#include "google/protobuf/duration.upb.h" #include "google/protobuf/struct.upb.h" #include "google/protobuf/timestamp.upb.h" -#include "google/protobuf/wrappers.upb.h" #include "google/rpc/status.upb.h" +#include "upb/def.h" #include "upb/text_encode.h" #include "upb/upb.h" #include "upb/upb.hpp" -#include -#include -#include +#include +#include +#include +#include #include "src/core/ext/xds/upb_utils.h" -#include "src/core/ext/xds/xds_common_types.h" -#include "src/core/ext/xds/xds_resource_type.h" -#include "src/core/ext/xds/xds_routing.h" -#include "src/core/lib/address_utils/parse_address.h" -#include "src/core/lib/address_utils/sockaddr_utils.h" -#include "src/core/lib/gpr/env.h" -#include "src/core/lib/gpr/string.h" -#include "src/core/lib/gprpp/host_port.h" +#include "src/core/ext/xds/xds_client.h" #include "src/core/lib/iomgr/error.h" -#include "src/core/lib/iomgr/sockaddr.h" -#include "src/core/lib/iomgr/socket_utils.h" -#include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/uri/uri_parser.h" +#include "src/core/lib/json/json.h" + +// IWYU pragma: no_include "upb/msg_internal.h" +// IWYU pragma: no_include namespace grpc_core { diff --git a/src/core/ext/xds/xds_api.h b/src/core/ext/xds/xds_api.h index 959c2d5a075..be46aa7458b 100644 --- a/src/core/ext/xds/xds_api.h +++ b/src/core/ext/xds/xds_api.h @@ -19,22 +19,29 @@ #include -#include +#include +#include #include +#include +#include +#include +#include "absl/status/status.h" +#include "absl/strings/string_view.h" #include "envoy/admin/v3/config_dump.upb.h" #include "upb/def.hpp" #include +#include "src/core/ext/xds/certificate_provider_store.h" #include "src/core/ext/xds/upb_utils.h" #include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/ext/xds/xds_client_stats.h" -#include "src/core/ext/xds/xds_http_filters.h" -#include "src/core/lib/channel/status_util.h" -#include "src/core/lib/matchers/matchers.h" -#include "src/core/lib/resolver/server_address.h" +#include "src/core/lib/debug/trace.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_bootstrap.cc b/src/core/ext/xds/xds_bootstrap.cc index b61a58e1eb3..dc5359f67f8 100644 --- a/src/core/ext/xds/xds_bootstrap.cc +++ b/src/core/ext/xds/xds_bootstrap.cc @@ -18,29 +18,29 @@ #include "src/core/ext/xds/xds_bootstrap.h" -#include #include +#include +#include #include +#include "absl/memory/memory.h" +#include "absl/strings/match.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" #include "absl/strings/string_view.h" -#include +#include +#include "src/core/ext/xds/certificate_provider_factory.h" #include "src/core/ext/xds/certificate_provider_registry.h" -#include "src/core/ext/xds/xds_api.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/gpr/env.h" #include "src/core/lib/gpr/string.h" -#include "src/core/lib/iomgr/load_file.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/json/json_util.h" #include "src/core/lib/security/credentials/channel_creds_registry.h" -#include "src/core/lib/security/credentials/credentials.h" -#include "src/core/lib/security/credentials/fake/fake_credentials.h" -#include "src/core/lib/slice/slice_internal.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_bootstrap.h b/src/core/ext/xds/xds_bootstrap.h index 36f38d99945..6b8c4e1eb72 100644 --- a/src/core/ext/xds/xds_bootstrap.h +++ b/src/core/ext/xds/xds_bootstrap.h @@ -19,21 +19,17 @@ #include +#include #include #include #include -#include #include "absl/container/inlined_vector.h" - -#include +#include "absl/strings/string_view.h" #include "src/core/ext/xds/certificate_provider_store.h" -#include "src/core/lib/gprpp/memory.h" -#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/iomgr/error.h" #include "src/core/lib/json/json.h" -#include "src/core/lib/security/credentials/credentials.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_certificate_provider.cc b/src/core/ext/xds/xds_certificate_provider.cc index f7dca9bc4bc..e8749979f4b 100644 --- a/src/core/ext/xds/xds_certificate_provider.cc +++ b/src/core/ext/xds/xds_certificate_provider.cc @@ -20,8 +20,17 @@ #include "src/core/ext/xds/xds_certificate_provider.h" +#include + #include "absl/functional/bind_front.h" -#include "absl/strings/str_cat.h" +#include "absl/memory/memory.h" +#include "absl/types/optional.h" + +#include + +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/security/security_connector/ssl_utils.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_certificate_provider.h b/src/core/ext/xds/xds_certificate_provider.h index 2631713d235..3066c402505 100644 --- a/src/core/ext/xds/xds_certificate_provider.h +++ b/src/core/ext/xds/xds_certificate_provider.h @@ -21,8 +21,23 @@ #include -#include "src/core/ext/xds/xds_api.h" +#include +#include +#include +#include + +#include "absl/base/thread_annotations.h" +#include "absl/strings/string_view.h" + +#include +#include + +#include "src/core/lib/gpr/useful.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/sync.h" +#include "src/core/lib/gprpp/unique_type_name.h" #include "src/core/lib/matchers/matchers.h" +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h" #include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" #define GRPC_ARG_XDS_CERTIFICATE_PROVIDER \ diff --git a/src/core/ext/xds/xds_channel_stack_modifier.cc b/src/core/ext/xds/xds_channel_stack_modifier.cc index 1298aeee48c..fed7349c282 100644 --- a/src/core/ext/xds/xds_channel_stack_modifier.cc +++ b/src/core/ext/xds/xds_channel_stack_modifier.cc @@ -20,8 +20,17 @@ #include "src/core/ext/xds/xds_channel_stack_modifier.h" +#include +#include + +#include + +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/gpr/useful.h" #include "src/core/lib/surface/channel_init.h" +#include "src/core/lib/surface/channel_stack_type.h" namespace grpc_core { namespace { diff --git a/src/core/ext/xds/xds_channel_stack_modifier.h b/src/core/ext/xds/xds_channel_stack_modifier.h index 0a164c2c41c..dc69feacfc0 100644 --- a/src/core/ext/xds/xds_channel_stack_modifier.h +++ b/src/core/ext/xds/xds_channel_stack_modifier.h @@ -21,11 +21,15 @@ #include +#include #include -#include "src/core/lib/channel/channel_stack.h" +#include + +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/gprpp/ref_counted.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_client.cc b/src/core/ext/xds/xds_client.cc index 4998c81add3..84bcd77cd42 100644 --- a/src/core/ext/xds/xds_client.cc +++ b/src/core/ext/xds/xds_client.cc @@ -22,45 +22,62 @@ #include #include +#include + #include "absl/container/inlined_vector.h" +#include "absl/strings/match.h" +#include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" +#include "absl/strings/str_split.h" #include "absl/strings/string_view.h" +#include "absl/strings/strip.h" +#include #include #include +#include +#include +#include +#include #include +#include +#include #include #include "src/core/ext/filters/client_channel/client_channel.h" +#include "src/core/ext/xds/upb_utils.h" #include "src/core/ext/xds/xds_api.h" #include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/ext/xds/xds_channel_args.h" #include "src/core/ext/xds/xds_client_stats.h" -#include "src/core/ext/xds/xds_cluster.h" #include "src/core/ext/xds/xds_cluster_specifier_plugin.h" -#include "src/core/ext/xds/xds_endpoint.h" #include "src/core/ext/xds/xds_http_filters.h" -#include "src/core/ext/xds/xds_listener.h" -#include "src/core/lib/address_utils/sockaddr_utils.h" #include "src/core/lib/backoff/backoff.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/gpr/env.h" -#include "src/core/lib/gpr/string.h" +#include "src/core/lib/gpr/useful.h" +#include "src/core/lib/gprpp/debug_location.h" #include "src/core/lib/gprpp/memory.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/sync.h" -#include "src/core/lib/iomgr/sockaddr.h" +#include "src/core/lib/iomgr/closure.h" +#include "src/core/lib/iomgr/load_file.h" +#include "src/core/lib/iomgr/pollset_set.h" #include "src/core/lib/iomgr/timer.h" #include "src/core/lib/security/credentials/channel_creds_registry.h" +#include "src/core/lib/security/credentials/credentials.h" +#include "src/core/lib/slice/slice.h" #include "src/core/lib/slice/slice_internal.h" -#include "src/core/lib/slice/slice_string_helpers.h" +#include "src/core/lib/slice/slice_refcount.h" #include "src/core/lib/surface/call.h" #include "src/core/lib/surface/channel.h" #include "src/core/lib/surface/lame_client.h" +#include "src/core/lib/transport/connectivity_state.h" #include "src/core/lib/uri/uri_parser.h" #define GRPC_XDS_INITIAL_CONNECT_BACKOFF_SECONDS 1 diff --git a/src/core/ext/xds/xds_client.h b/src/core/ext/xds/xds_client.h index 5fe050cc1b6..5d8211f51e4 100644 --- a/src/core/ext/xds/xds_client.h +++ b/src/core/ext/xds/xds_client.h @@ -19,23 +19,36 @@ #include +#include +#include #include +#include +#include #include +#include "absl/base/thread_annotations.h" +#include "absl/status/status.h" +#include "absl/status/statusor.h" #include "absl/strings/string_view.h" -#include "absl/types/optional.h" +#include "upb/def.hpp" +#include + +#include "src/core/ext/xds/certificate_provider_store.h" #include "src/core/ext/xds/xds_api.h" #include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/ext/xds/xds_client_stats.h" #include "src/core/ext/xds/xds_resource_type.h" -#include "src/core/lib/channel/channelz.h" +#include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/dual_ref_counted.h" -#include "src/core/lib/gprpp/memory.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/gprpp/ref_counted.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/sync.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/iomgr/exec_ctx.h" +#include "src/core/lib/iomgr/iomgr_fwd.h" #include "src/core/lib/iomgr/work_serializer.h" #include "src/core/lib/uri/uri_parser.h" diff --git a/src/core/ext/xds/xds_client_stats.cc b/src/core/ext/xds/xds_client_stats.cc index 3cd26527bca..116dc663990 100644 --- a/src/core/ext/xds/xds_client_stats.cc +++ b/src/core/ext/xds/xds_client_stats.cc @@ -20,12 +20,11 @@ #include "src/core/ext/xds/xds_client_stats.h" -#include - -#include -#include +#include #include "src/core/ext/xds/xds_client.h" +#include "src/core/lib/debug/trace.h" +#include "src/core/lib/gprpp/debug_location.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_client_stats.h b/src/core/ext/xds/xds_client_stats.h index 9ed5cf4a8c6..bc42dc085db 100644 --- a/src/core/ext/xds/xds_client_stats.h +++ b/src/core/ext/xds/xds_client_stats.h @@ -22,19 +22,20 @@ #include #include +#include #include #include +#include -#include "absl/strings/str_cat.h" +#include "absl/base/thread_annotations.h" #include "absl/strings/str_format.h" #include "absl/strings/string_view.h" #include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/lib/gpr/useful.h" -#include "src/core/lib/gprpp/memory.h" #include "src/core/lib/gprpp/ref_counted.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/gprpp/sync.h" -#include "src/core/lib/iomgr/exec_ctx.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_cluster.cc b/src/core/ext/xds/xds_cluster.cc index 769f469e39a..621c68d9421 100644 --- a/src/core/ext/xds/xds_cluster.cc +++ b/src/core/ext/xds/xds_cluster.cc @@ -18,7 +18,14 @@ #include "src/core/ext/xds/xds_cluster.h" +#include + +#include +#include + #include "absl/container/inlined_vector.h" +#include "absl/memory/memory.h" +#include "absl/status/status.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" @@ -32,16 +39,21 @@ #include "envoy/config/endpoint/v3/endpoint.upb.h" #include "envoy/config/endpoint/v3/endpoint_components.upb.h" #include "envoy/extensions/clusters/aggregate/v3/cluster.upb.h" +#include "envoy/extensions/transport_sockets/tls/v3/tls.upb.h" #include "google/protobuf/any.upb.h" +#include "google/protobuf/duration.upb.h" #include "google/protobuf/wrappers.upb.h" +#include "upb/text_encode.h" +#include "upb/upb.h" -#include +#include #include "src/core/ext/xds/xds_common_types.h" -#include "src/core/ext/xds/xds_route_config.h" -#include "src/core/lib/gpr/env.h" -#include "src/core/lib/gpr/string.h" +#include "src/core/ext/xds/xds_resource_type.h" +#include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/host_port.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_cluster.h b/src/core/ext/xds/xds_cluster.h index 8ded668101e..3b5ae737161 100644 --- a/src/core/ext/xds/xds_cluster.h +++ b/src/core/ext/xds/xds_cluster.h @@ -19,16 +19,24 @@ #include +#include + +#include +#include #include #include +#include "absl/status/statusor.h" +#include "absl/strings/string_view.h" #include "absl/types/optional.h" #include "envoy/config/cluster/v3/cluster.upbdefs.h" #include "envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h" #include "envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h" +#include "upb/def.h" #include "src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h" -#include "src/core/ext/xds/xds_client.h" +#include "src/core/ext/xds/upb_utils.h" +#include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/ext/xds/xds_common_types.h" #include "src/core/ext/xds/xds_resource_type_impl.h" diff --git a/src/core/ext/xds/xds_cluster_specifier_plugin.cc b/src/core/ext/xds/xds_cluster_specifier_plugin.cc index e13f2283dfe..705ead8c9f4 100644 --- a/src/core/ext/xds/xds_cluster_specifier_plugin.cc +++ b/src/core/ext/xds/xds_cluster_specifier_plugin.cc @@ -18,14 +18,23 @@ #include "src/core/ext/xds/xds_cluster_specifier_plugin.h" -#include "absl/strings/str_format.h" -#include "envoy/extensions/filters/http/router/v3/router.upb.h" -#include "envoy/extensions/filters/http/router/v3/router.upbdefs.h" -#include "google/protobuf/duration.upb.h" +#include + +#include +#include +#include + +#include "absl/memory/memory.h" +#include "absl/status/status.h" +#include "absl/strings/str_cat.h" #include "upb/json_encode.h" +#include "upb/upb.hpp" + +#include #include "src/core/ext/filters/client_channel/lb_policy_registry.h" -#include "src/core/ext/xds/upb_utils.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/json/json.h" #include "src/proto/grpc/lookup/v1/rls_config.upb.h" #include "src/proto/grpc/lookup/v1/rls_config.upbdefs.h" diff --git a/src/core/ext/xds/xds_cluster_specifier_plugin.h b/src/core/ext/xds/xds_cluster_specifier_plugin.h index 54513b02915..710128bf3d8 100644 --- a/src/core/ext/xds/xds_cluster_specifier_plugin.h +++ b/src/core/ext/xds/xds_cluster_specifier_plugin.h @@ -20,19 +20,12 @@ #include #include -#include #include #include "absl/status/statusor.h" -#include "absl/strings/str_cat.h" #include "absl/strings/string_view.h" -#include "google/protobuf/any.upb.h" #include "upb/def.h" - -#include - -#include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/json/json.h" +#include "upb/upb.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_common_types.cc b/src/core/ext/xds/xds_common_types.cc index 37083181321..b4389d7c672 100644 --- a/src/core/ext/xds/xds_common_types.cc +++ b/src/core/ext/xds/xds_common_types.cc @@ -18,19 +18,30 @@ #include "src/core/ext/xds/xds_common_types.h" +#include + +#include +#include +#include + #include "absl/container/inlined_vector.h" +#include "absl/status/status.h" #include "absl/status/statusor.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" +#include "absl/strings/strip.h" #include "envoy/extensions/transport_sockets/tls/v3/common.upb.h" #include "envoy/extensions/transport_sockets/tls/v3/tls.upb.h" #include "envoy/type/matcher/v3/regex.upb.h" #include "envoy/type/matcher/v3/string.upb.h" #include "google/protobuf/any.upb.h" #include "google/protobuf/wrappers.upb.h" +#include "upb/upb.h" #include "xds/type/v3/typed_struct.upb.h" +#include "src/core/ext/xds/certificate_provider_store.h" + namespace grpc_core { // diff --git a/src/core/ext/xds/xds_common_types.h b/src/core/ext/xds/xds_common_types.h index c5e118bd828..19704a1d5fc 100644 --- a/src/core/ext/xds/xds_common_types.h +++ b/src/core/ext/xds/xds_common_types.h @@ -22,12 +22,14 @@ #include #include -#include "absl/strings/str_format.h" +#include "absl/strings/string_view.h" #include "envoy/extensions/transport_sockets/tls/v3/tls.upb.h" #include "google/protobuf/any.upb.h" #include "google/protobuf/duration.upb.h" #include "src/core/ext/xds/upb_utils.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/matchers/matchers.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_endpoint.cc b/src/core/ext/xds/xds_endpoint.cc index 89f433f6ede..2b7c1cc5796 100644 --- a/src/core/ext/xds/xds_endpoint.cc +++ b/src/core/ext/xds/xds_endpoint.cc @@ -18,7 +18,14 @@ #include "src/core/ext/xds/xds_endpoint.h" +#include + +#include +#include +#include + #include "absl/memory/memory.h" +#include "absl/status/status.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_join.h" #include "envoy/config/core/v3/address.upb.h" @@ -30,12 +37,15 @@ #include "envoy/type/v3/percent.upb.h" #include "google/protobuf/wrappers.upb.h" #include "upb/text_encode.h" -#include "upb/upb.h" -#include "upb/upb.hpp" + +#include #include "src/core/ext/xds/upb_utils.h" +#include "src/core/ext/xds/xds_resource_type.h" #include "src/core/lib/address_utils/parse_address.h" -#include "src/core/lib/address_utils/sockaddr_utils.h" +#include "src/core/lib/debug/trace.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/iomgr/resolved_address.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_endpoint.h b/src/core/ext/xds/xds_endpoint.h index d3ce9cb0a0d..e5ed5ff3644 100644 --- a/src/core/ext/xds/xds_endpoint.h +++ b/src/core/ext/xds/xds_endpoint.h @@ -19,16 +19,23 @@ #include +#include + #include -#include +#include #include +#include #include "absl/container/inlined_vector.h" +#include "absl/status/statusor.h" +#include "absl/strings/string_view.h" #include "envoy/config/endpoint/v3/endpoint.upbdefs.h" +#include "upb/def.h" -#include "src/core/ext/xds/xds_client.h" +#include "src/core/ext/xds/upb_utils.h" #include "src/core/ext/xds/xds_client_stats.h" #include "src/core/ext/xds/xds_resource_type_impl.h" +#include "src/core/lib/gprpp/ref_counted.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/resolver/server_address.h" diff --git a/src/core/ext/xds/xds_http_fault_filter.cc b/src/core/ext/xds/xds_http_fault_filter.cc index bda8189a840..2a10d2fd277 100644 --- a/src/core/ext/xds/xds_http_fault_filter.cc +++ b/src/core/ext/xds/xds_http_fault_filter.cc @@ -18,29 +18,31 @@ #include "src/core/ext/xds/xds_http_fault_filter.h" +#include + +#include #include +#include +#include "absl/status/status.h" #include "absl/status/statusor.h" #include "absl/strings/str_cat.h" -#include "absl/strings/str_format.h" #include "absl/strings/string_view.h" #include "envoy/extensions/filters/common/fault/v3/fault.upb.h" #include "envoy/extensions/filters/http/fault/v3/fault.upb.h" #include "envoy/extensions/filters/http/fault/v3/fault.upbdefs.h" #include "envoy/type/v3/percent.upb.h" -#include "google/protobuf/any.upb.h" -#include "google/protobuf/duration.upb.h" #include "google/protobuf/wrappers.upb.h" #include "upb/def.h" -#include +#include #include "src/core/ext/filters/fault_injection/fault_injection_filter.h" #include "src/core/ext/xds/xds_common_types.h" #include "src/core/ext/xds/xds_http_filters.h" #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/status_util.h" +#include "src/core/lib/gprpp/time.h" #include "src/core/lib/json/json.h" #include "src/core/lib/transport/status_conversion.h" diff --git a/src/core/ext/xds/xds_http_fault_filter.h b/src/core/ext/xds/xds_http_fault_filter.h index edc46e126a0..fe937ef8d84 100644 --- a/src/core/ext/xds/xds_http_fault_filter.h +++ b/src/core/ext/xds/xds_http_fault_filter.h @@ -21,10 +21,12 @@ #include "absl/status/statusor.h" #include "upb/def.h" +#include "upb/upb.h" -#include +#include #include "src/core/ext/xds/xds_http_filters.h" +#include "src/core/lib/channel/channel_fwd.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_http_filters.cc b/src/core/ext/xds/xds_http_filters.cc index f2f28144fd0..46da4dca6ac 100644 --- a/src/core/ext/xds/xds_http_filters.cc +++ b/src/core/ext/xds/xds_http_filters.cc @@ -18,6 +18,13 @@ #include "src/core/ext/xds/xds_http_filters.h" +#include +#include +#include +#include + +#include "absl/memory/memory.h" +#include "absl/status/status.h" #include "envoy/extensions/filters/http/router/v3/router.upb.h" #include "envoy/extensions/filters/http/router/v3/router.upbdefs.h" diff --git a/src/core/ext/xds/xds_http_filters.h b/src/core/ext/xds/xds_http_filters.h index 5500bff2c72..5eb88020687 100644 --- a/src/core/ext/xds/xds_http_filters.h +++ b/src/core/ext/xds/xds_http_filters.h @@ -26,12 +26,12 @@ #include "absl/status/statusor.h" #include "absl/strings/str_cat.h" #include "absl/strings/string_view.h" -#include "google/protobuf/any.upb.h" #include "upb/def.h" +#include "upb/upb.h" -#include +#include -#include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/json/json.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_http_rbac_filter.cc b/src/core/ext/xds/xds_http_rbac_filter.cc index 14cbbd30920..80bb1a3832c 100644 --- a/src/core/ext/xds/xds_http_rbac_filter.cc +++ b/src/core/ext/xds/xds_http_rbac_filter.cc @@ -18,7 +18,20 @@ #include "src/core/ext/xds/xds_http_rbac_filter.h" +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "absl/status/status.h" +#include "absl/strings/match.h" #include "absl/strings/str_format.h" +#include "absl/strings/string_view.h" #include "envoy/config/core/v3/address.upb.h" #include "envoy/config/rbac/v3/rbac.upb.h" #include "envoy/config/route/v3/route_components.upb.h" @@ -35,6 +48,9 @@ #include "src/core/ext/filters/rbac/rbac_service_config_parser.h" #include "src/core/ext/xds/upb_utils.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/gprpp/debug_location.h" +#include "src/core/lib/gprpp/status_helper.h" +#include "src/core/lib/json/json.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_http_rbac_filter.h b/src/core/ext/xds/xds_http_rbac_filter.h index 785cd5dbc5c..4cfa503ca28 100644 --- a/src/core/ext/xds/xds_http_rbac_filter.h +++ b/src/core/ext/xds/xds_http_rbac_filter.h @@ -19,7 +19,14 @@ #include +#include "absl/status/statusor.h" +#include "upb/def.h" +#include "upb/upb.h" + +#include + #include "src/core/ext/xds/xds_http_filters.h" +#include "src/core/lib/channel/channel_fwd.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_listener.cc b/src/core/ext/xds/xds_listener.cc index 51e59f05bd4..bfdbb554c92 100644 --- a/src/core/ext/xds/xds_listener.cc +++ b/src/core/ext/xds/xds_listener.cc @@ -18,10 +18,18 @@ #include "src/core/ext/xds/xds_listener.h" +#include + +#include +#include +#include + +#include "absl/container/inlined_vector.h" +#include "absl/memory/memory.h" +#include "absl/status/status.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" -#include "absl/strings/str_split.h" #include "envoy/config/core/v3/address.upb.h" #include "envoy/config/core/v3/base.upb.h" #include "envoy/config/core/v3/config_source.upb.h" @@ -30,18 +38,28 @@ #include "envoy/config/listener/v3/listener.upb.h" #include "envoy/config/listener/v3/listener.upbdefs.h" #include "envoy/config/listener/v3/listener_components.upb.h" +#include "envoy/config/route/v3/route.upb.h" #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h" #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h" +#include "envoy/extensions/transport_sockets/tls/v3/tls.upb.h" +#include "google/protobuf/any.upb.h" +#include "google/protobuf/duration.upb.h" #include "google/protobuf/wrappers.upb.h" #include "upb/text_encode.h" #include "upb/upb.h" -#include "upb/upb.hpp" + +#include #include "src/core/ext/xds/xds_common_types.h" +#include "src/core/ext/xds/xds_resource_type.h" #include "src/core/lib/address_utils/parse_address.h" #include "src/core/lib/address_utils/sockaddr_utils.h" +#include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/host_port.h" +#include "src/core/lib/gprpp/status_helper.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/iomgr/sockaddr.h" +#include "src/core/lib/json/json.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_listener.h b/src/core/ext/xds/xds_listener.h index dd9bb4508a3..14692d71f61 100644 --- a/src/core/ext/xds/xds_listener.h +++ b/src/core/ext/xds/xds_listener.h @@ -19,8 +19,14 @@ #include +#include +#include + +#include #include +#include #include +#include #include #include @@ -29,12 +35,15 @@ #include "absl/types/optional.h" #include "envoy/config/listener/v3/listener.upbdefs.h" #include "envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h" +#include "upb/def.h" -#include "src/core/ext/xds/xds_client.h" +#include "src/core/ext/xds/upb_utils.h" #include "src/core/ext/xds/xds_common_types.h" #include "src/core/ext/xds/xds_http_filters.h" #include "src/core/ext/xds/xds_resource_type_impl.h" #include "src/core/ext/xds/xds_route_config.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/resolved_address.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_resource_type.h b/src/core/ext/xds/xds_resource_type.h index ddaf56d4290..0440ff57112 100644 --- a/src/core/ext/xds/xds_resource_type.h +++ b/src/core/ext/xds/xds_resource_type.h @@ -21,6 +21,7 @@ #include "absl/status/statusor.h" #include "absl/strings/string_view.h" +#include "upb/def.h" #include "src/core/ext/xds/upb_utils.h" diff --git a/src/core/ext/xds/xds_resource_type_impl.h b/src/core/ext/xds/xds_resource_type_impl.h index 94ebe8edeaa..db47ab624c9 100644 --- a/src/core/ext/xds/xds_resource_type_impl.h +++ b/src/core/ext/xds/xds_resource_type_impl.h @@ -16,8 +16,13 @@ #include +#include + +#include "absl/strings/string_view.h" + #include "src/core/ext/xds/xds_client.h" #include "src/core/ext/xds/xds_resource_type.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" #ifndef GRPC_CORE_EXT_XDS_XDS_RESOURCE_TYPE_IMPL_H #define GRPC_CORE_EXT_XDS_XDS_RESOURCE_TYPE_IMPL_H diff --git a/src/core/ext/xds/xds_route_config.cc b/src/core/ext/xds/xds_route_config.cc index 0e572c77bdd..24c407a272d 100644 --- a/src/core/ext/xds/xds_route_config.cc +++ b/src/core/ext/xds/xds_route_config.cc @@ -16,37 +16,65 @@ #include +#include "src/core/ext/xds/xds_route_config.h" + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + #include "absl/memory/memory.h" +#include "absl/status/status.h" +#include "absl/status/statusor.h" #include "absl/strings/str_cat.h" #include "absl/strings/str_format.h" #include "absl/strings/str_join.h" #include "absl/strings/str_split.h" #include "absl/strings/string_view.h" +#include "absl/types/optional.h" +#include "absl/types/variant.h" #include "envoy/config/core/v3/base.upb.h" #include "envoy/config/core/v3/extension.upb.h" #include "envoy/config/route/v3/route.upb.h" #include "envoy/config/route/v3/route.upbdefs.h" #include "envoy/config/route/v3/route_components.upb.h" -#include "envoy/config/route/v3/route_components.upbdefs.h" #include "envoy/type/matcher/v3/regex.upb.h" -#include "envoy/type/matcher/v3/string.upb.h" #include "envoy/type/v3/percent.upb.h" #include "envoy/type/v3/range.upb.h" #include "google/protobuf/any.upb.h" +#include "google/protobuf/duration.upb.h" #include "google/protobuf/wrappers.upb.h" +#include "re2/re2.h" +#include "upb/def.h" #include "upb/text_encode.h" #include "upb/upb.h" -#include "upb/upb.hpp" + +#include +#include +#include #include "src/core/ext/xds/upb_utils.h" -#include "src/core/ext/xds/xds_api.h" #include "src/core/ext/xds/xds_cluster_specifier_plugin.h" #include "src/core/ext/xds/xds_common_types.h" +#include "src/core/ext/xds/xds_http_filters.h" #include "src/core/ext/xds/xds_resource_type.h" +#include "src/core/ext/xds/xds_resource_type_impl.h" #include "src/core/ext/xds/xds_routing.h" +#include "src/core/lib/channel/status_util.h" +#include "src/core/lib/debug/trace.h" #include "src/core/lib/gpr/env.h" #include "src/core/lib/gpr/string.h" +#include "src/core/lib/gprpp/status_helper.h" +#include "src/core/lib/gprpp/time.h" #include "src/core/lib/iomgr/error.h" +#include "src/core/lib/matchers/matchers.h" #include "src/core/lib/transport/error_utils.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_route_config.h b/src/core/ext/xds/xds_route_config.h index dd719b0c86c..5abdd081e24 100644 --- a/src/core/ext/xds/xds_route_config.h +++ b/src/core/ext/xds/xds_route_config.h @@ -19,22 +19,31 @@ #include +#include +#include + +#include #include +#include #include #include +#include "absl/status/statusor.h" +#include "absl/strings/string_view.h" #include "absl/types/optional.h" #include "absl/types/variant.h" #include "envoy/config/route/v3/route.upb.h" #include "envoy/config/route/v3/route.upbdefs.h" #include "re2/re2.h" +#include "upb/def.h" -#include "src/core/ext/xds/xds_client.h" +#include "src/core/ext/xds/upb_utils.h" #include "src/core/ext/xds/xds_cluster_specifier_plugin.h" -#include "src/core/ext/xds/xds_common_types.h" #include "src/core/ext/xds/xds_http_filters.h" #include "src/core/ext/xds/xds_resource_type_impl.h" #include "src/core/lib/channel/status_util.h" +#include "src/core/lib/gprpp/time.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/matchers/matchers.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_routing.cc b/src/core/ext/xds/xds_routing.cc index f075bfc0f70..4db09922eeb 100644 --- a/src/core/ext/xds/xds_routing.cc +++ b/src/core/ext/xds/xds_routing.cc @@ -20,7 +20,23 @@ #include "src/core/ext/xds/xds_routing.h" +#include +#include + +#include #include +#include + +#include "absl/status/status.h" +#include "absl/status/statusor.h" +#include "absl/strings/match.h" +#include "absl/strings/str_cat.h" + +#include + +#include "src/core/ext/xds/xds_http_filters.h" +#include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/matchers/matchers.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_routing.h b/src/core/ext/xds/xds_routing.h index 18df4ce44d9..e9f74f9a93f 100644 --- a/src/core/ext/xds/xds_routing.h +++ b/src/core/ext/xds/xds_routing.h @@ -21,15 +21,20 @@ #include +#include + +#include +#include #include #include "absl/strings/string_view.h" +#include "absl/types/optional.h" -#include +#include #include "src/core/ext/xds/xds_listener.h" #include "src/core/ext/xds/xds_route_config.h" -#include "src/core/lib/matchers/matchers.h" +#include "src/core/lib/iomgr/error.h" #include "src/core/lib/transport/metadata_batch.h" namespace grpc_core { diff --git a/src/core/ext/xds/xds_server_config_fetcher.cc b/src/core/ext/xds/xds_server_config_fetcher.cc index b3908dec798..c2e5eb4dd19 100644 --- a/src/core/ext/xds/xds_server_config_fetcher.cc +++ b/src/core/ext/xds/xds_server_config_fetcher.cc @@ -18,32 +18,82 @@ #include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "absl/base/thread_annotations.h" +#include "absl/container/inlined_vector.h" +#include "absl/status/status.h" +#include "absl/status/statusor.h" +#include "absl/strings/match.h" +#include "absl/strings/numbers.h" +#include "absl/strings/str_cat.h" #include "absl/strings/str_join.h" #include "absl/strings/str_replace.h" +#include "absl/strings/string_view.h" +#include "absl/types/optional.h" +#include "absl/types/variant.h" + +#include +#include +#include +#include +#include +#include #include "src/core/ext/filters/server_config_selector/server_config_selector.h" #include "src/core/ext/filters/server_config_selector/server_config_selector_filter.h" +#include "src/core/ext/xds/certificate_provider_store.h" +#include "src/core/ext/xds/xds_bootstrap.h" #include "src/core/ext/xds/xds_certificate_provider.h" #include "src/core/ext/xds/xds_channel_stack_modifier.h" #include "src/core/ext/xds/xds_client.h" +#include "src/core/ext/xds/xds_common_types.h" +#include "src/core/ext/xds/xds_http_filters.h" #include "src/core/ext/xds/xds_listener.h" +#include "src/core/ext/xds/xds_resource_type_impl.h" #include "src/core/ext/xds/xds_route_config.h" #include "src/core/ext/xds/xds_routing.h" #include "src/core/lib/address_utils/parse_address.h" #include "src/core/lib/address_utils/sockaddr_utils.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_args_preconditioning.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/config/core_configuration.h" +#include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/host_port.h" +#include "src/core/lib/gprpp/ref_counted_ptr.h" +#include "src/core/lib/gprpp/sync.h" +#include "src/core/lib/gprpp/unique_type_name.h" +#include "src/core/lib/iomgr/endpoint.h" +#include "src/core/lib/iomgr/error.h" +#include "src/core/lib/iomgr/exec_ctx.h" +#include "src/core/lib/iomgr/iomgr_fwd.h" +#include "src/core/lib/iomgr/resolved_address.h" #include "src/core/lib/iomgr/sockaddr.h" #include "src/core/lib/iomgr/socket_utils.h" +#include "src/core/lib/security/credentials/credentials.h" +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h" +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" #include "src/core/lib/security/credentials/xds/xds_credentials.h" +#include "src/core/lib/service_config/service_config.h" #include "src/core/lib/service_config/service_config_impl.h" -#include "src/core/lib/slice/slice_internal.h" #include "src/core/lib/surface/api_trace.h" #include "src/core/lib/surface/server.h" #include "src/core/lib/transport/error_utils.h" +#include "src/core/lib/transport/metadata_batch.h" #include "src/core/lib/uri/uri_parser.h" +// IWYU pragma: no_include + namespace grpc_core { namespace { diff --git a/src/core/lib/channel/channel_fwd.h b/src/core/lib/channel/channel_fwd.h new file mode 100644 index 00000000000..d63dfa94d72 --- /dev/null +++ b/src/core/lib/channel/channel_fwd.h @@ -0,0 +1,26 @@ +// Copyright 2022 gRPC authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef GRPC_CORE_LIB_CHANNEL_CHANNEL_FWD_H +#define GRPC_CORE_LIB_CHANNEL_CHANNEL_FWD_H + +typedef struct grpc_channel_stack grpc_channel_stack; +typedef struct grpc_channel_filter grpc_channel_filter; + +typedef struct grpc_channel_element grpc_channel_element; +typedef struct grpc_call_element grpc_call_element; + +typedef struct grpc_call_stack grpc_call_stack; + +#endif // GRPC_CORE_LIB_CHANNEL_CHANNEL_FWD_H diff --git a/src/core/lib/channel/channel_stack.h b/src/core/lib/channel/channel_stack.h index a0e3a9ad57b..b555263b8ba 100644 --- a/src/core/lib/channel/channel_stack.h +++ b/src/core/lib/channel/channel_stack.h @@ -56,6 +56,7 @@ #include #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/debug/trace.h" #include "src/core/lib/gpr/time_precise.h" @@ -70,17 +71,6 @@ #include "src/core/lib/resource_quota/arena.h" #include "src/core/lib/transport/transport.h" -struct grpc_call_element; -struct grpc_call_stack; -struct grpc_channel_element; -struct grpc_channel_stack; - -typedef struct grpc_channel_element grpc_channel_element; -typedef struct grpc_call_element grpc_call_element; - -typedef struct grpc_channel_stack grpc_channel_stack; -typedef struct grpc_call_stack grpc_call_stack; - struct grpc_channel_element_args { grpc_channel_stack* channel_stack; const grpc_channel_args* channel_args; diff --git a/src/core/lib/channel/channel_stack_builder.h b/src/core/lib/channel/channel_stack_builder.h index a53914f5fb8..e85bf111bc8 100644 --- a/src/core/lib/channel/channel_stack_builder.h +++ b/src/core/lib/channel/channel_stack_builder.h @@ -26,13 +26,10 @@ #include #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" #include "src/core/lib/surface/channel_stack_type.h" - -typedef struct grpc_channel_stack grpc_channel_stack; -typedef struct grpc_channel_element grpc_channel_element; -typedef struct grpc_channel_filter grpc_channel_filter; -typedef struct grpc_transport grpc_transport; +#include "src/core/lib/transport/transport_fwd.h" namespace grpc_core { diff --git a/src/core/lib/channel/channel_stack_builder_impl.h b/src/core/lib/channel/channel_stack_builder_impl.h index a7b6641ef97..b466c5e42e2 100644 --- a/src/core/lib/channel/channel_stack_builder_impl.h +++ b/src/core/lib/channel/channel_stack_builder_impl.h @@ -19,6 +19,7 @@ #include "absl/status/statusor.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" diff --git a/src/core/lib/channel/connected_channel.cc b/src/core/lib/channel/connected_channel.cc index 2d77bbdd67e..10cef0874fa 100644 --- a/src/core/lib/channel/connected_channel.cc +++ b/src/core/lib/channel/connected_channel.cc @@ -32,6 +32,7 @@ #include "src/core/lib/iomgr/error.h" #include "src/core/lib/iomgr/polling_entity.h" #include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" #define MAX_BUFFER_LENGTH 8192 diff --git a/src/core/lib/channel/connected_channel.h b/src/core/lib/channel/connected_channel.h index a7ddc788b2a..ea1428310e9 100644 --- a/src/core/lib/channel/connected_channel.h +++ b/src/core/lib/channel/connected_channel.h @@ -21,6 +21,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/transport/transport.h" diff --git a/src/core/lib/channel/promise_based_filter.h b/src/core/lib/channel/promise_based_filter.h index cda9e7db4aa..d574da084e0 100644 --- a/src/core/lib/channel/promise_based_filter.h +++ b/src/core/lib/channel/promise_based_filter.h @@ -37,6 +37,7 @@ #include "src/core/lib/channel/call_finalization.h" #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/gprpp/debug_location.h" diff --git a/src/core/lib/surface/call.cc b/src/core/lib/surface/call.cc index df705744a81..b4ac68b32d1 100644 --- a/src/core/lib/surface/call.cc +++ b/src/core/lib/surface/call.cc @@ -51,7 +51,6 @@ #include #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channelz.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/compression/compression_internal.h" diff --git a/src/core/lib/surface/call.h b/src/core/lib/surface/call.h index a4f392c0d69..f7d06c65e64 100644 --- a/src/core/lib/surface/call.h +++ b/src/core/lib/surface/call.h @@ -30,7 +30,7 @@ #include #include -#include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/ref_counted_ptr.h" diff --git a/src/core/lib/surface/channel.h b/src/core/lib/surface/channel.h index 79ccecfc94e..b57ead0a993 100644 --- a/src/core/lib/surface/channel.h +++ b/src/core/lib/surface/channel.h @@ -40,6 +40,7 @@ #include #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" // IWYU pragma: keep #include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channelz.h" @@ -53,6 +54,7 @@ #include "src/core/lib/resource_quota/memory_quota.h" #include "src/core/lib/slice/slice.h" #include "src/core/lib/surface/channel_stack_type.h" +#include "src/core/lib/transport/transport_fwd.h" /** The same as grpc_channel_destroy, but doesn't create an ExecCtx, and so * is safe to use from within core. */ diff --git a/src/core/lib/surface/channel_ping.cc b/src/core/lib/surface/channel_ping.cc index 15c51bd1d71..fec4d7503f8 100644 --- a/src/core/lib/surface/channel_ping.cc +++ b/src/core/lib/surface/channel_ping.cc @@ -22,8 +22,8 @@ #include #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/debug/trace.h" #include "src/core/lib/iomgr/closure.h" #include "src/core/lib/iomgr/error.h" diff --git a/src/core/lib/surface/lame_client.cc b/src/core/lib/surface/lame_client.cc index 4cc268c1b0d..6764f5adc2c 100644 --- a/src/core/lib/surface/lame_client.cc +++ b/src/core/lib/surface/lame_client.cc @@ -33,7 +33,7 @@ #include "src/core/lib/channel/channel_args.h" #include "src/core/lib/channel/channel_args_preconditioning.h" -#include "src/core/lib/channel/channel_stack_builder.h" +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/promise_based_filter.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/debug/trace.h" diff --git a/src/core/lib/surface/lame_client.h b/src/core/lib/surface/lame_client.h index a78a08abcf7..f272226cc4f 100644 --- a/src/core/lib/surface/lame_client.h +++ b/src/core/lib/surface/lame_client.h @@ -30,7 +30,7 @@ #include #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/channel/channel_stack.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/promise_based_filter.h" #include "src/core/lib/gprpp/sync.h" #include "src/core/lib/iomgr/error.h" diff --git a/src/core/lib/surface/server.h b/src/core/lib/surface/server.h index d94849dc020..510ccdca8ab 100644 --- a/src/core/lib/surface/server.h +++ b/src/core/lib/surface/server.h @@ -43,8 +43,8 @@ #include #include "src/core/lib/channel/channel_args.h" +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/channelz.h" #include "src/core/lib/debug/trace.h" #include "src/core/lib/gprpp/cpp_impl_of.h" @@ -64,6 +64,7 @@ #include "src/core/lib/surface/completion_queue.h" #include "src/core/lib/transport/metadata_batch.h" #include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" struct grpc_server_config_fetcher; diff --git a/src/core/lib/transport/transport.h b/src/core/lib/transport/transport.h index ec468b9e5cb..069c53df87f 100644 --- a/src/core/lib/transport/transport.h +++ b/src/core/lib/transport/transport.h @@ -58,6 +58,7 @@ #include "src/core/lib/transport/byte_stream.h" #include "src/core/lib/transport/connectivity_state.h" #include "src/core/lib/transport/metadata_batch.h" +#include "src/core/lib/transport/transport_fwd.h" struct grpc_transport_stream_op_batch_payload; @@ -156,8 +157,6 @@ using NextPromiseFactory = /* forward declarations */ -typedef struct grpc_transport grpc_transport; - /* grpc_stream doesn't actually exist. It's used as a typesafe opaque pointer for whatever data the transport wants to track for a stream. */ diff --git a/src/core/lib/transport/transport_fwd.h b/src/core/lib/transport/transport_fwd.h new file mode 100644 index 00000000000..8bba44251d9 --- /dev/null +++ b/src/core/lib/transport/transport_fwd.h @@ -0,0 +1,20 @@ +// Copyright 2022 gRPC authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef GRPC_CORE_LIB_TRANSPORT_TRANSPORT_FWD_H +#define GRPC_CORE_LIB_TRANSPORT_TRANSPORT_FWD_H + +typedef struct grpc_transport grpc_transport; + +#endif // GRPC_CORE_LIB_TRANSPORT_TRANSPORT_FWD_H diff --git a/src/core/lib/transport/transport_impl.h b/src/core/lib/transport/transport_impl.h index 8a6bf80e7aa..9018cc2ae85 100644 --- a/src/core/lib/transport/transport_impl.h +++ b/src/core/lib/transport/transport_impl.h @@ -32,6 +32,7 @@ #include "src/core/lib/promise/arena_promise.h" #include "src/core/lib/resource_quota/arena.h" #include "src/core/lib/transport/transport.h" +#include "src/core/lib/transport/transport_fwd.h" typedef struct grpc_transport_vtable { /* Memory required for a single stream element - this is allocated by upper diff --git a/src/core/lib/transport/transport_op_string.cc b/src/core/lib/transport/transport_op_string.cc index 7dac379591b..685c2d80104 100644 --- a/src/core/lib/transport/transport_op_string.cc +++ b/src/core/lib/transport/transport_op_string.cc @@ -29,6 +29,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/iomgr/error.h" diff --git a/src/cpp/common/channel_filter.h b/src/cpp/common/channel_filter.h index 105b973229d..fc10c2cac6f 100644 --- a/src/cpp/common/channel_filter.h +++ b/src/cpp/common/channel_filter.h @@ -32,8 +32,8 @@ #include #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/channel/context.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/iomgr/closure.h" diff --git a/src/cpp/ext/filters/census/channel_filter.h b/src/cpp/ext/filters/census/channel_filter.h index 2b167c8b254..176f17fe0a8 100644 --- a/src/cpp/ext/filters/census/channel_filter.h +++ b/src/cpp/ext/filters/census/channel_filter.h @@ -21,8 +21,8 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" -#include "src/core/lib/channel/channel_stack_builder.h" #include "src/core/lib/iomgr/error.h" #include "src/cpp/common/channel_filter.h" diff --git a/src/cpp/ext/filters/census/client_filter.h b/src/cpp/ext/filters/census/client_filter.h index a7c431719d7..54342e19794 100644 --- a/src/cpp/ext/filters/census/client_filter.h +++ b/src/cpp/ext/filters/census/client_filter.h @@ -21,6 +21,7 @@ #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/iomgr/error.h" #include "src/cpp/common/channel_filter.h" diff --git a/src/cpp/ext/filters/census/server_filter.h b/src/cpp/ext/filters/census/server_filter.h index 07542d374e2..d5cf021d615 100644 --- a/src/cpp/ext/filters/census/server_filter.h +++ b/src/cpp/ext/filters/census/server_filter.h @@ -33,6 +33,7 @@ #include #include +#include "src/core/lib/channel/channel_fwd.h" #include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/iomgr/closure.h" diff --git a/test/core/client_channel/certificate_provider_registry_test.cc b/test/core/client_channel/certificate_provider_registry_test.cc index b6a65f42ba2..ee744250441 100644 --- a/test/core/client_channel/certificate_provider_registry_test.cc +++ b/test/core/client_channel/certificate_provider_registry_test.cc @@ -22,6 +22,7 @@ #include +#include "src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h" #include "test/core/util/test_config.h" namespace grpc_core { diff --git a/test/core/xds/BUILD b/test/core/xds/BUILD index 1ef10d6cceb..32ee2b2c0fa 100644 --- a/test/core/xds/BUILD +++ b/test/core/xds/BUILD @@ -78,6 +78,7 @@ grpc_cc_test( deps = [ "//:gpr", "//:grpc", + "//:grpc_base", "//:grpc_opencensus_plugin", "//:grpc_xds_channel_stack_modifier", "//test/core/util:grpc_test_util", diff --git a/test/core/xds/xds_channel_stack_modifier_test.cc b/test/core/xds/xds_channel_stack_modifier_test.cc index 781def47044..3bf4a7a4b1f 100644 --- a/test/core/xds/xds_channel_stack_modifier_test.cc +++ b/test/core/xds/xds_channel_stack_modifier_test.cc @@ -23,6 +23,7 @@ #include #include +#include "src/core/lib/channel/channel_stack.h" #include "src/core/lib/channel/channel_stack_builder_impl.h" #include "src/core/lib/config/core_configuration.h" #include "src/core/lib/surface/channel_init.h" diff --git a/tools/distrib/fix_build_deps.py b/tools/distrib/fix_build_deps.py index 9b4cacf63a3..8e6c36ec900 100755 --- a/tools/distrib/fix_build_deps.py +++ b/tools/distrib/fix_build_deps.py @@ -186,6 +186,8 @@ INTERNAL_DEPS = { 'protobuf_timestamp_upb', 'google/protobuf/wrappers.upb.h': 'protobuf_wrappers_upb', + 'grpc/status.h': + 'grpc_public_hdrs', 'src/proto/grpc/channelz/channelz.grpc.pb.h': '//src/proto/grpc/channelz:channelz_proto', 'src/proto/grpc/core/stats.pb.h': @@ -237,7 +239,10 @@ def grpc_cc_library(name, if select_deps or 'nofixdeps' in tags or 'grpc-autodeps' not in tags: no_update.add(name) score = len(public_hdrs + hdrs) - if 'avoid_dep' in tags: + # avoid_dep is the internal way of saying prefer something else + # we add grpc_avoid_dep to allow internal grpc-only stuff to avoid each + # other, whilst not biasing dependent projects + if 'avoid_dep' in tags or 'grpc_avoid_dep' in tags: score += 1000000 if 'nofixdeps' in tags: score += 1000 @@ -318,16 +323,12 @@ for library in sorted(consumes.keys()): if hdr in vendors: vendor = choose_vendor(library, vendors[hdr]) if vendor: - if library == 'grpc++_xds_client': - print('choose %s for %s' % (vendor, hdr)) deps.add(vendor) continue if 'include/' + hdr in vendors: vendor = choose_vendor(library, vendors['include/' + hdr]) if vendor: - if library == 'grpc++_xds_client': - print('choose %s for %s' % (vendor, hdr)) deps.add(vendor) continue diff --git a/tools/dockerfile/grpc_iwyu/iwyu.sh b/tools/dockerfile/grpc_iwyu/iwyu.sh index f964aa052ea..0a092a90869 100755 --- a/tools/dockerfile/grpc_iwyu/iwyu.sh +++ b/tools/dockerfile/grpc_iwyu/iwyu.sh @@ -40,8 +40,7 @@ sed -i 's,^#!/usr/bin/env python,#!/usr/bin/env python3,g' ${IWYU_ROOT}/iwyu/fix cat compile_commands.json | sed "s,\"file\": \",\"file\": \"${IWYU_ROOT}/,g" > compile_commands_for_iwyu.json export ENABLED_MODULES=' - src/core/ext/filters/client_channel - src/core/ext/transport/chttp2 + src/core/ext src/core/lib/avl src/core/lib/channel src/core/lib/config @@ -58,12 +57,18 @@ export ENABLED_MODULES=' src/cpp ' +export DISABLED_MODULES=' + src/core/ext/transport/binder +' + export INCLUSION_REGEX=`echo $ENABLED_MODULES | sed 's/ /|/g' | sed 's,\\(.*\\),^(\\1)/,g'` +export EXCLUSION_REGEX=`echo $DISABLED_MODULES | sed 's/ /|/g' | sed 's,\\(.*\\),^(\\1)/,g'` # figure out which files to include cat compile_commands.json | jq -r '.[].file' \ | grep -E $INCLUSION_REGEX \ | grep -v -E "/upb-generated/|/upbdefs-generated/" \ + | grep -v -E $EXCLUSION_REGEX \ | sort \ > iwyu_files0.txt diff --git a/tools/doxygen/Doxyfile.c++.internal b/tools/doxygen/Doxyfile.c++.internal index 840060259eb..de39f0fe7d1 100644 --- a/tools/doxygen/Doxyfile.c++.internal +++ b/tools/doxygen/Doxyfile.c++.internal @@ -1891,6 +1891,7 @@ src/core/lib/channel/channel_args.cc \ src/core/lib/channel/channel_args.h \ src/core/lib/channel/channel_args_preconditioning.cc \ src/core/lib/channel/channel_args_preconditioning.h \ +src/core/lib/channel/channel_fwd.h \ src/core/lib/channel/channel_stack.cc \ src/core/lib/channel/channel_stack.h \ src/core/lib/channel/channel_stack_builder.cc \ @@ -2424,6 +2425,7 @@ src/core/lib/transport/timeout_encoding.cc \ src/core/lib/transport/timeout_encoding.h \ src/core/lib/transport/transport.cc \ src/core/lib/transport/transport.h \ +src/core/lib/transport/transport_fwd.h \ src/core/lib/transport/transport_impl.h \ src/core/lib/transport/transport_op_string.cc \ src/core/lib/uri/uri_parser.cc \ diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal index 0189f3ce809..89453f77184 100644 --- a/tools/doxygen/Doxyfile.core.internal +++ b/tools/doxygen/Doxyfile.core.internal @@ -1682,6 +1682,7 @@ src/core/lib/channel/channel_args.cc \ src/core/lib/channel/channel_args.h \ src/core/lib/channel/channel_args_preconditioning.cc \ src/core/lib/channel/channel_args_preconditioning.h \ +src/core/lib/channel/channel_fwd.h \ src/core/lib/channel/channel_stack.cc \ src/core/lib/channel/channel_stack.h \ src/core/lib/channel/channel_stack_builder.cc \ @@ -2220,6 +2221,7 @@ src/core/lib/transport/timeout_encoding.cc \ src/core/lib/transport/timeout_encoding.h \ src/core/lib/transport/transport.cc \ src/core/lib/transport/transport.h \ +src/core/lib/transport/transport_fwd.h \ src/core/lib/transport/transport_impl.h \ src/core/lib/transport/transport_op_string.cc \ src/core/lib/uri/uri_parser.cc \