diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 02158a59..2e009465 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -46,10 +46,17 @@ jobs: df -h displayName: Manage disk space - script: | - sudo fallocate -l 10GiB /swapfile || true - sudo chmod 600 /swapfile || true - sudo mkswap /swapfile || true - sudo swapon /swapfile || true + SWAPFILE=/swapfile + # If there is already a swapfile, disable it and remove it + if swapon --show | grep -q $SWAPFILE; then + echo "Disabling existing swapfile..." + sudo swapoff $SWAPFILE || true + fi + [ -f "$SWAPFILE" ] && sudo rm -f $SWAPFILE + sudo fallocate -l 10GiB $SWAPFILE + sudo chmod 600 $SWAPFILE + sudo mkswap $SWAPFILE + sudo swapon $SWAPFILE displayName: Create swap file # configure qemu binfmt-misc running. This allows us to run docker containers # embedded qemu-static diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index cde77002..d08eed2c 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -5,7 +5,7 @@ jobs: - job: osx pool: - vmImage: macOS-13 + vmImage: macOS-15 strategy: matrix: osx_64_: diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_.yaml index 3934aa60..153d3261 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_.yaml @@ -37,9 +37,8 @@ python: - 3.11.* *_cpython - 3.12.* *_cpython - 3.13.* *_cp313 -- 3.9.* *_cpython re2: -- 2024.07.02 +- 2025.08.12 target_platform: - linux-64 zip_keys: diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_.yaml index 400584fb..06797b46 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_.yaml @@ -37,9 +37,8 @@ python: - 3.11.* *_cpython - 3.12.* *_cpython - 3.13.* *_cp313 -- 3.9.* *_cpython re2: -- 2024.07.02 +- 2025.08.12 target_platform: - linux-aarch64 zip_keys: diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_.yaml index 1e60068b..7aeba617 100644 --- a/.ci_support/linux_ppc64le_.yaml +++ b/.ci_support/linux_ppc64le_.yaml @@ -37,9 +37,8 @@ python: - 3.11.* *_cpython - 3.12.* *_cpython - 3.13.* *_cp313 -- 3.9.* *_cpython re2: -- 2024.07.02 +- 2025.08.12 target_platform: - linux-ppc64le zip_keys: diff --git a/.ci_support/migrations/python313.yaml b/.ci_support/migrations/python313.yaml deleted file mode 100644 index f9389e3b..00000000 --- a/.ci_support/migrations/python313.yaml +++ /dev/null @@ -1,46 +0,0 @@ -migrator_ts: 1724712607 -__migrator: - commit_message: Rebuild for python 3.13 - migration_number: 1 - operation: key_add - primary_key: python - ordering: - python: - - 3.6.* *_cpython - - 3.7.* *_cpython - - 3.8.* *_cpython - - 3.9.* *_cpython - - 3.10.* *_cpython - - 3.11.* *_cpython - - 3.12.* *_cpython - - 3.13.* *_cp313 # new entry - - 3.6.* *_73_pypy - - 3.7.* *_73_pypy - - 3.8.* *_73_pypy - - 3.9.* *_73_pypy - paused: false - longterm: true - pr_limit: 20 - max_solver_attempts: 3 # this will make the bot retry "not solvable" stuff 12 times - exclude: - # this shouldn't attempt to modify the python feedstocks - - python - - pypy3.6 - - pypy-meta - - cross-python - - python_abi - # see https://github.com/conda-forge/scipy-feedstock/pull/283 - - scipy - exclude_pinned_pkgs: false - additional_zip_keys: - - channel_sources - -python: -- 3.13.* *_cp313 -channel_sources: -- conda-forge/label/python_rc,conda-forge -# additional entries to add for zip_keys -numpy: -- 2 -python_impl: -- cpython diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_.yaml index eb90c3fe..ded41e32 100644 --- a/.ci_support/osx_64_.yaml +++ b/.ci_support/osx_64_.yaml @@ -39,9 +39,8 @@ python: - 3.11.* *_cpython - 3.12.* *_cpython - 3.13.* *_cp313 -- 3.9.* *_cpython re2: -- 2024.07.02 +- 2025.08.12 target_platform: - osx-64 zip_keys: diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_.yaml index 180551eb..bbcafcd1 100644 --- a/.ci_support/osx_arm64_.yaml +++ b/.ci_support/osx_arm64_.yaml @@ -39,9 +39,8 @@ python: - 3.11.* *_cpython - 3.12.* *_cpython - 3.13.* *_cp313 -- 3.9.* *_cpython re2: -- 2024.07.02 +- 2025.08.12 target_platform: - osx-arm64 zip_keys: diff --git a/.ci_support/win_64_.yaml b/.ci_support/win_64_.yaml index bf811c7d..9824215a 100644 --- a/.ci_support/win_64_.yaml +++ b/.ci_support/win_64_.yaml @@ -27,9 +27,8 @@ python: - 3.11.* *_cpython - 3.12.* *_cpython - 3.13.* *_cp313 -- 3.9.* *_cpython re2: -- 2024.07.02 +- 2025.08.12 target_platform: - win-64 zlib: diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 4577cced..2962fdc7 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "1.74.1" %} +{% set version = "1.75.0" %} # core package & vendored libs use different version scheme than CPP libs, see # top of https://github.com/grpc/grpc/blob/v{{ version }}/CMakeLists.txt @@ -19,7 +19,7 @@ package: source: - url: https://github.com/grpc/grpc/archive/v{{ version.replace(".pre", "-pre") }}.tar.gz - sha256: 7bf97c11cf3808d650a3a025bbf9c5f922c844a590826285067765dfd055d228 + sha256: 31d6c01c3bfa0a3584532665715e487703eb10d76bb30b4875e57d139c13bbf9 patches: - patches/0001-windows-ssl-lib-names.patch - patches/0002-fix-win-setup-cmds.patch @@ -193,6 +193,7 @@ outputs: run: - python - {{ pin_subpackage('libgrpc', exact=True) }} + - typing-extensions >=4.12,<5 test: source_files: - examples/python/helloworld/ diff --git a/recipe/patches/0001-windows-ssl-lib-names.patch b/recipe/patches/0001-windows-ssl-lib-names.patch index 79973447..6a129c2e 100644 --- a/recipe/patches/0001-windows-ssl-lib-names.patch +++ b/recipe/patches/0001-windows-ssl-lib-names.patch @@ -1,4 +1,4 @@ -From e59f750d772dc50b105b7cb72cb07049dabc06d4 Mon Sep 17 00:00:00 2001 +From d31df2e44c72e00b4eed156e9b56838c2ce4d409 Mon Sep 17 00:00:00 2001 From: Jonathan Helmus Date: Mon, 17 Feb 2020 15:45:06 -0600 Subject: [PATCH 01/14] windows ssl lib names @@ -11,10 +11,10 @@ Co-Authored-By: Marius van Niekerk 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/setup.py b/setup.py -index 39ca17e824..3a879f037b 100644 +index 503cc2b4fa..152645b1df 100644 --- a/setup.py +++ b/setup.py -@@ -367,10 +367,10 @@ if "win32" in sys.platform: +@@ -369,10 +369,10 @@ if "win32" in sys.platform: "ws2_32", ) if BUILD_WITH_SYSTEM_OPENSSL: diff --git a/recipe/patches/0002-fix-win-setup-cmds.patch b/recipe/patches/0002-fix-win-setup-cmds.patch index 282fb348..d67655c0 100644 --- a/recipe/patches/0002-fix-win-setup-cmds.patch +++ b/recipe/patches/0002-fix-win-setup-cmds.patch @@ -1,4 +1,4 @@ -From 55e49713af0b46a795eba6d1c31f3f2caa4004e7 Mon Sep 17 00:00:00 2001 +From f10a11f6412dfa21e547dc72d9e01f8bba5cabb3 Mon Sep 17 00:00:00 2001 From: Mike Sarahan Date: Tue, 18 Feb 2020 13:53:05 -0600 Subject: [PATCH 02/14] fix win setup cmds @@ -12,10 +12,10 @@ Co-Authored-By: H. Vetinari 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py -index 3a879f037b..adfec063fd 100644 +index 152645b1df..a73cc24346 100644 --- a/setup.py +++ b/setup.py -@@ -209,6 +209,9 @@ ENABLE_DOCUMENTATION_BUILD = _env_bool_value( +@@ -211,6 +211,9 @@ ENABLE_DOCUMENTATION_BUILD = _env_bool_value( def check_linker_need_libatomic(): @@ -25,7 +25,7 @@ index 3a879f037b..adfec063fd 100644 """Test if linker on system needs libatomic.""" code_test = ( b"#include \n" -@@ -266,9 +269,6 @@ if EXTRA_ENV_COMPILE_ARGS is None: +@@ -268,9 +271,6 @@ if EXTRA_ENV_COMPILE_ARGS is None: # MSVC by defaults uses C++14 and C89 so both needs to be configured. EXTRA_ENV_COMPILE_ARGS += " /std:c++17" EXTRA_ENV_COMPILE_ARGS += " /std:c11" diff --git a/recipe/patches/0003-Link-against-grpc-and-abseil.patch b/recipe/patches/0003-Link-against-grpc-and-abseil.patch index f2c2b00a..8be12c63 100644 --- a/recipe/patches/0003-Link-against-grpc-and-abseil.patch +++ b/recipe/patches/0003-Link-against-grpc-and-abseil.patch @@ -1,4 +1,4 @@ -From 03a57b7b1d8ce206503d8670d0865e47b8ade4fb Mon Sep 17 00:00:00 2001 +From 906c60346084305e436287fb06da86c6debd0216 Mon Sep 17 00:00:00 2001 From: Marius van Niekerk Date: Mon, 13 Jun 2022 17:13:07 -0400 Subject: [PATCH 03/14] Link against grpc and abseil @@ -9,10 +9,10 @@ Co-Authored-By: H. Vetinari 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/setup.py b/setup.py -index adfec063fd..266a690474 100644 +index a73cc24346..824d8aa016 100644 --- a/setup.py +++ b/setup.py -@@ -180,6 +180,8 @@ BUILD_WITH_STATIC_LIBSTDCXX = _env_bool_value( +@@ -182,6 +182,8 @@ BUILD_WITH_STATIC_LIBSTDCXX = _env_bool_value( "GRPC_PYTHON_BUILD_WITH_STATIC_LIBSTDCXX", "False" ) @@ -21,7 +21,7 @@ index adfec063fd..266a690474 100644 # For local development use only: This skips building gRPC Core and its # dependencies, including protobuf and boringssl. This allows "incremental" # compilation by first building gRPC Core using make, then building only the -@@ -378,10 +380,20 @@ if BUILD_WITH_SYSTEM_CARES: +@@ -380,10 +382,20 @@ if BUILD_WITH_SYSTEM_CARES: if BUILD_WITH_SYSTEM_RE2: EXTENSION_LIBRARIES += ("re2",) if BUILD_WITH_SYSTEM_ABSL: @@ -46,7 +46,7 @@ index adfec063fd..266a690474 100644 DEFINE_MACROS = (("_WIN32_WINNT", 0x600),) asm_files = [] -@@ -493,6 +505,9 @@ def cython_extensions_and_necessity(): +@@ -495,6 +507,9 @@ def cython_extensions_and_necessity(): prefix + "libgrpc.a", ] core_c_files = [] diff --git a/recipe/patches/0004-force-protoc-executable.patch b/recipe/patches/0004-force-protoc-executable.patch index 309050af..3dbf7280 100644 --- a/recipe/patches/0004-force-protoc-executable.patch +++ b/recipe/patches/0004-force-protoc-executable.patch @@ -1,4 +1,4 @@ -From e8d9bf8d039be5566356767abede27369aeebc6b Mon Sep 17 00:00:00 2001 +From 1e09c50f603babd53c47fe68c55ded23744cf4e0 Mon Sep 17 00:00:00 2001 From: "Uwe L. Korn" Date: Fri, 11 Sep 2020 14:20:04 +0200 Subject: [PATCH 04/14] force protoc executable diff --git a/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch b/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch index b639bf5d..a3e61b77 100644 --- a/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch +++ b/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch @@ -1,4 +1,4 @@ -From 125988603f3967381fc3e7d71673decd1ae46601 Mon Sep 17 00:00:00 2001 +From 19f402ca8c02c116a3865fd376f2b4d90b96bfeb Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 23 Aug 2022 11:45:20 +0200 Subject: [PATCH 05/14] mark linkages of grpc{,_unsecure} as private @@ -13,10 +13,10 @@ Co-Authored-By: Mark Harfouche 1 file changed, 60 insertions(+), 50 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index ded1f310f1..87cb862d5b 100644 +index 67f7511a4e..45badf99e6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -3069,35 +3069,40 @@ target_include_directories(grpc +@@ -3097,35 +3097,40 @@ target_include_directories(grpc ${_gRPC_ZLIB_INCLUDE_DIR} ) target_link_libraries(grpc @@ -84,7 +84,7 @@ index ded1f310f1..87cb862d5b 100644 endif() foreach(_hdr -@@ -3791,32 +3796,37 @@ target_include_directories(grpc_unsecure +@@ -3824,32 +3829,37 @@ target_include_directories(grpc_unsecure ${_gRPC_ZLIB_INCLUDE_DIR} ) target_link_libraries(grpc_unsecure diff --git a/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch b/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch index c29d02f7..2ac9ee00 100644 --- a/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch +++ b/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch @@ -1,4 +1,4 @@ -From 9f78d07830de049a63a049d76396b4c683c34c1b Mon Sep 17 00:00:00 2001 +From fd5fcee8d84cf4b1a2370ce6230eb3bf77487925 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Thu, 29 Feb 2024 20:31:21 +1100 Subject: [PATCH 06/14] for main targets, set *_DLL_EXPORTS when building and @@ -9,10 +9,10 @@ Subject: [PATCH 06/14] for main targets, set *_DLL_EXPORTS when building and 1 file changed, 10 insertions(+), 26 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 87cb862d5b..62d5c071ef 100644 +index 45badf99e6..73e4150f76 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -2063,10 +2063,8 @@ if(WIN32 AND MSVC) +@@ -2080,10 +2080,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -25,7 +25,7 @@ index 87cb862d5b..62d5c071ef 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gpr.pdb -@@ -3042,11 +3040,8 @@ if(WIN32 AND MSVC) +@@ -3070,11 +3068,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -39,7 +39,7 @@ index 87cb862d5b..62d5c071ef 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc.pdb -@@ -3769,11 +3764,8 @@ if(WIN32 AND MSVC) +@@ -3802,11 +3797,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -53,7 +53,7 @@ index 87cb862d5b..62d5c071ef 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_unsecure.pdb -@@ -4791,12 +4783,8 @@ if(WIN32 AND MSVC) +@@ -4824,12 +4816,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -68,7 +68,7 @@ index 87cb862d5b..62d5c071ef 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++.pdb -@@ -5531,12 +5519,8 @@ if(WIN32 AND MSVC) +@@ -5568,12 +5556,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) diff --git a/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch b/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch index e9a8faa5..254956f8 100644 --- a/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch +++ b/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch @@ -1,4 +1,4 @@ -From 0ba32ed44b95387512a233d90491e058610c5078 Mon Sep 17 00:00:00 2001 +From 64aeaa9d104aa3c1415f1f406d56edf40db8115d Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 26 Sep 2023 18:25:54 +1100 Subject: [PATCH 07/14] add missing linkages for gRPC_BUILD_TESTS=ON @@ -14,10 +14,10 @@ For some tests, re2 and c-ares have just been forgotten as dependencies. 1 file changed, 11 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 62d5c071ef..8fbff7d105 100644 +index 73e4150f76..42ce6b2d80 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -3229,6 +3229,7 @@ target_link_libraries(grpc_test_util +@@ -3257,6 +3257,7 @@ target_link_libraries(grpc_test_util ${_gRPC_ALLTARGETS_LIBRARIES} absl::failure_signal_handler absl::stacktrace @@ -25,7 +25,7 @@ index 62d5c071ef..8fbff7d105 100644 absl::symbolize absl::log_initialize grpc -@@ -3304,6 +3305,7 @@ target_link_libraries(grpc_test_util_unsecure +@@ -3332,6 +3333,7 @@ target_link_libraries(grpc_test_util_unsecure ${_gRPC_ALLTARGETS_LIBRARIES} absl::failure_signal_handler absl::stacktrace @@ -33,7 +33,7 @@ index 62d5c071ef..8fbff7d105 100644 absl::symbolize absl::log_initialize grpc_unsecure -@@ -8335,6 +8337,7 @@ target_include_directories(authorization_matchers_test +@@ -8378,6 +8380,7 @@ target_include_directories(authorization_matchers_test ) target_link_libraries(authorization_matchers_test @@ -41,7 +41,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -17316,6 +17319,7 @@ target_include_directories(grpc_authorization_engine_test +@@ -17794,6 +17797,7 @@ target_include_directories(grpc_authorization_engine_test ) target_link_libraries(grpc_authorization_engine_test @@ -49,7 +49,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -19776,6 +19780,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -20267,6 +20271,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) ) target_link_libraries(httpcli_test @@ -57,7 +57,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc++_test_util -@@ -21869,6 +21874,7 @@ target_include_directories(matchers_test +@@ -22569,6 +22574,7 @@ target_include_directories(matchers_test ) target_link_libraries(matchers_test @@ -65,7 +65,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -26804,6 +26810,7 @@ target_include_directories(resolve_address_using_ares_resolver_test +@@ -27550,6 +27556,7 @@ target_include_directories(resolve_address_using_ares_resolver_test ) target_link_libraries(resolve_address_using_ares_resolver_test @@ -73,7 +73,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -26892,6 +26899,7 @@ target_include_directories(resolve_address_using_native_resolver_test +@@ -27638,6 +27645,7 @@ target_include_directories(resolve_address_using_native_resolver_test ) target_link_libraries(resolve_address_using_native_resolver_test @@ -81,7 +81,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -35879,6 +35887,7 @@ target_include_directories(xds_common_types_test +@@ -36847,6 +36855,7 @@ target_include_directories(xds_common_types_test ) target_link_libraries(xds_common_types_test @@ -89,7 +89,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc++ -@@ -36530,6 +36539,7 @@ target_include_directories(xds_credentials_test +@@ -37498,6 +37507,7 @@ target_include_directories(xds_credentials_test ) target_link_libraries(xds_credentials_test @@ -97,7 +97,7 @@ index 62d5c071ef..8fbff7d105 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -41495,6 +41505,7 @@ target_include_directories(xds_listener_resource_type_test +@@ -42463,6 +42473,7 @@ target_include_directories(xds_listener_resource_type_test ) target_link_libraries(xds_listener_resource_type_test diff --git a/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch b/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch index ea063d90..4cf446d8 100644 --- a/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch +++ b/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch @@ -1,4 +1,4 @@ -From 57cfc464e60bdec0d5ed6e512712c9d3f0d80b0d Mon Sep 17 00:00:00 2001 +From 8d16666ba1df8932f696d81fea79d6767f64659a Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Fri, 28 Feb 2025 22:07:19 +1100 Subject: [PATCH 08/14] add enable_testing so tests get run @@ -8,7 +8,7 @@ Subject: [PATCH 08/14] add enable_testing so tests get run 1 file changed, 4 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 8fbff7d105..79e813214d 100644 +index 42ce6b2d80..0716a5d02a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,6 +51,10 @@ option(gRPC_BUILD_TESTS "Build tests" OFF) diff --git a/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch b/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch index 2b192a98..8ece21a7 100644 --- a/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch +++ b/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch @@ -1,4 +1,4 @@ -From f0f753d9020755c5146ea97dbadf28ad9a9ec054 Mon Sep 17 00:00:00 2001 +From ae9f54d90a40865079020371084082a6803ae376 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Fri, 28 Feb 2025 15:09:41 +1100 Subject: [PATCH 09/14] unvendor upb and utf8_range, use protobuf's version @@ -9,7 +9,7 @@ Subject: [PATCH 09/14] unvendor upb and utf8_range, use protobuf's version 2 files changed, 16 insertions(+), 684 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 79e813214d..fe69e4cc58 100644 +index 0716a5d02a..a4c4bd0b0f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -352,11 +352,15 @@ else() @@ -29,7 +29,7 @@ index 79e813214d..fe69e4cc58 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) find_library(LIBRT rt) if(LIBRT) -@@ -3072,8 +3076,6 @@ target_link_libraries(grpc +@@ -3100,8 +3104,6 @@ target_link_libraries(grpc PRIVATE ${_gRPC_ALLTARGETS_LIBRARIES} # vendored libs PRIVATE ${_gRPC_ADDRESS_SORTING_LIBRARIES} @@ -38,7 +38,7 @@ index 79e813214d..fe69e4cc58 100644 # external dependencies used within grpc PRIVATE ${_gRPC_CARES_LIBRARIES} PRIVATE ${_gRPC_RE2_LIBRARIES} -@@ -3798,7 +3800,6 @@ target_link_libraries(grpc_unsecure +@@ -3831,7 +3833,6 @@ target_link_libraries(grpc_unsecure PRIVATE ${_gRPC_ALLTARGETS_LIBRARIES} # vendored libs PRIVATE ${_gRPC_ADDRESS_SORTING_LIBRARIES} @@ -46,7 +46,7 @@ index 79e813214d..fe69e4cc58 100644 # external dependencies used within grpc PRIVATE ${_gRPC_ZLIB_LIBRARIES} PRIVATE ${_gRPC_CARES_LIBRARIES} -@@ -3964,672 +3965,6 @@ target_link_libraries(gtest +@@ -3997,672 +3998,6 @@ target_link_libraries(gtest endif() @@ -719,7 +719,7 @@ index 79e813214d..fe69e4cc58 100644 if(gRPC_BUILD_TESTS) -@@ -6118,7 +5453,6 @@ target_include_directories(grpc_authorization_provider +@@ -6158,7 +5493,6 @@ target_include_directories(grpc_authorization_provider ) target_link_libraries(grpc_authorization_provider ${_gRPC_ALLTARGETS_LIBRARIES} @@ -727,7 +727,7 @@ index 79e813214d..fe69e4cc58 100644 ${_gRPC_RE2_LIBRARIES} ${_gRPC_ZLIB_LIBRARIES} absl::config -@@ -47339,8 +46673,8 @@ generate_pkgconfig( +@@ -48863,8 +48197,8 @@ generate_pkgconfig( "${gRPC_CORE_VERSION}" "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" "libcares openssl re2 zlib" @@ -738,7 +738,7 @@ index 79e813214d..fe69e4cc58 100644 "grpc.pc") # grpc_unsecure .pc file -@@ -47350,8 +46684,8 @@ generate_pkgconfig( +@@ -48874,8 +48208,8 @@ generate_pkgconfig( "${gRPC_CORE_VERSION}" "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" "libcares zlib" @@ -749,9 +749,9 @@ index 79e813214d..fe69e4cc58 100644 "grpc_unsecure.pc") # grpc++ .pc file -@@ -47361,8 +46695,8 @@ generate_pkgconfig( +@@ -48885,8 +48219,8 @@ generate_pkgconfig( "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_dynamic_annotations absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_layout absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_prefetch absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_strings_internal absl_synchronization absl_time absl_type_traits absl_utility gpr grpc" "libcares openssl re2 zlib" - "-lgrpc++" - "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" @@ -760,7 +760,7 @@ index 79e813214d..fe69e4cc58 100644 "grpc++.pc") # grpc++_unsecure .pc file -@@ -47372,8 +46706,8 @@ generate_pkgconfig( +@@ -48896,8 +48230,8 @@ generate_pkgconfig( "${gRPC_CPP_VERSION}" "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc_unsecure" "libcares zlib" @@ -771,9 +771,9 @@ index 79e813214d..fe69e4cc58 100644 "grpc++_unsecure.pc") # grpcpp_otel_plugin .pc file -@@ -47383,6 +46717,6 @@ generate_pkgconfig( +@@ -48907,6 +48241,6 @@ generate_pkgconfig( "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc grpc++ opentelemetry_api" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_dynamic_annotations absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_layout absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_prefetch absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_strings_internal absl_synchronization absl_time absl_type_traits absl_utility gpr grpc grpc++ opentelemetry_api" "libcares openssl re2 zlib" - "-lgrpcpp_otel_plugin" - "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" diff --git a/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch b/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch index 41ee05f5..6781d030 100644 --- a/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch +++ b/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch @@ -1,4 +1,4 @@ -From e6febfb1b4f8dc2937a6e19f738757f675891c28 Mon Sep 17 00:00:00 2001 +From 96d0cbeacecb1e572e24a6c3ee75ebf0f62128b0 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 2 Mar 2025 08:22:39 +1100 Subject: [PATCH 10/14] reduce buildtests_cxx target to end2end tests @@ -12,14 +12,76 @@ as intended. Plus four support libraries (`grpc{,++}_test{,_config,_util}`) and the vendored gtest When rebasing, use `git show | grep -e "^-.*end2end_"` to ensure that conflict -resolution didn't accidentally remove an end2end test; for any new end2end tests, +resolution didn't accidentally remove an (non-xds) end2end test; for any new end2end tests, ensure to rename the guard from gRPC_BUILD_TESTS to gRPC_CF_TESTS + +Due to running into the 6h timeout, we remove the xds_* tests, most of which take 10+ minutes +to compile, compare with the timings below. + +``` +2025-08-08T08:44:51.7026562Z [3596/8027] Building CXX object CMakeFiles/test_cpp_end2end_tls_credentials_test.dir/test/cpp/end2end/tls_credentials_test.cc.o +2025-08-08T08:44:52.4521352Z [3597/8027] Building CXX object CMakeFiles/xds_cluster_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T08:54:05.5536236Z [3844/8027] Building CXX object CMakeFiles/xds_cluster_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T08:54:13.1026993Z [3845/8027] Building CXX object CMakeFiles/xds_cluster_type_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T09:03:08.5626467Z [4093/8027] Building CXX object CMakeFiles/xds_cluster_type_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T09:03:13.7959640Z [4094/8027] Building CXX object CMakeFiles/xds_core_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T09:12:13.4537287Z [4339/8027] Building CXX object CMakeFiles/xds_core_end2end_test.dir/test/cpp/util/tls_test_utils.cc.o +2025-08-08T09:12:16.5984319Z [4340/8027] Building CXX object CMakeFiles/xds_credentials_end2end_test.dir/gens/src/proto/grpc/testing/echo.pb.cc.o +---------------------------- +2025-08-08T09:13:02.1385556Z [4358/8027] Building CXX object CMakeFiles/xds_credentials_end2end_test.dir/test/cpp/end2end/xds/xds_credentials_end2end_test.cc.o +2025-08-08T09:13:03.1831969Z [4359/8027] Building CXX object CMakeFiles/xds_csds_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T09:24:00.9950004Z [4651/8027] Building CXX object CMakeFiles/xds_csds_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T09:24:01.2910360Z [4652/8027] Building CXX object CMakeFiles/xds_enabled_server_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T09:33:01.4250126Z [4897/8027] Building CXX object CMakeFiles/xds_enabled_server_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T09:33:05.3160061Z [4898/8027] Building CXX object CMakeFiles/xds_fallback_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T09:41:58.4796900Z [5143/8027] Building CXX object CMakeFiles/xds_fallback_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T09:41:59.2388396Z [5144/8027] Building CXX object CMakeFiles/xds_fault_injection_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T09:51:03.2442859Z [5393/8027] Building CXX object CMakeFiles/xds_fault_injection_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T09:51:04.5423270Z [5394/8027] Building CXX object CMakeFiles/xds_gcp_authn_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T10:00:05.2411591Z [5641/8027] Building CXX object CMakeFiles/xds_gcp_authn_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:00:06.5342156Z [5642/8027] Building CXX object CMakeFiles/xds_http_connect_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T10:09:11.3460336Z [5890/8027] Building CXX object CMakeFiles/xds_http_connect_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:09:11.9078535Z [5891/8027] Building CXX object CMakeFiles/xds_outlier_detection_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T10:18:19.6581935Z [6140/8027] Building CXX object CMakeFiles/xds_outlier_detection_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:18:20.9690035Z [6141/8027] Building CXX object CMakeFiles/xds_override_host_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T10:27:31.8386017Z [6391/8027] Building CXX object CMakeFiles/xds_override_host_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:27:35.0628420Z [6392/8027] Building CXX object CMakeFiles/xds_pick_first_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T10:36:37.4679378Z [6642/8027] Building CXX object CMakeFiles/xds_pick_first_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:36:40.6525610Z [6643/8027] Building CXX object CMakeFiles/xds_ring_hash_end2end_test.dir/gens/src/proto/grpc/testing/echo.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T10:45:40.6789520Z [6890/8027] Building CXX object CMakeFiles/xds_ring_hash_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:45:41.1625523Z [6891/8027] Building CXX object CMakeFiles/xds_rls_end2end_test.dir/gens/src/proto/grpc/lookup/v1/rls.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v +2025-08-08T10:54:46.9382069Z [7141/8027] Building CXX object CMakeFiles/xds_rls_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T10:54:47.9069979Z [7142/8027] Building CXX object CMakeFiles/xds_routing_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v +2025-08-08T11:04:02.6418027Z [7392/8027] Building CXX object CMakeFiles/xds_routing_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T11:04:02.8659404Z [7393/8027] Building CXX object CMakeFiles/xds_security_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v^v^v^ +2025-08-08T11:13:35.5518487Z [7651/8027] Building CXX object CMakeFiles/xds_security_end2end_test.dir/test/cpp/end2end/xds/xds_utils.cc.o +2025-08-08T11:13:37.4659668Z [7652/8027] Building CXX object CMakeFiles/xds_wrr_end2end_test.dir/gens/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc.o + [...] ^v^v^v^v^v^v^v^v^v^v +2025-08-08T11:22:34.6491490Z [7900/8027] Building CXX object CMakeFiles/xds_wrr_end2end_test.dir/test/cpp/util/tls_test_utils.cc.o +2025-08-08T11:22:34.6749979Z [7901/8027] Creating library symlink third_party/benchmark/src/libbenchmark_main.so.1 third_party/benchmark/src/libbenchmark_main.so +``` --- - CMakeLists.txt | 703 +++++-------------------------------------------- - 1 file changed, 60 insertions(+), 643 deletions(-) + CMakeLists.txt | 730 +++---------------------------------------------- + 1 file changed, 42 insertions(+), 688 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index fe69e4cc58..78a6c44791 100644 +index a4c4bd0b0f..3feaac57b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,11 +47,12 @@ set(gRPC_INSTALL_SHAREDIR "share/grpc" CACHE STRING "Installation directory for @@ -36,16 +98,7 @@ index fe69e4cc58..78a6c44791 100644 enable_testing() endif() -@@ -90,7 +91,7 @@ set_property(CACHE gRPC_SSL_PROVIDER PROPERTY STRINGS "module" "package") - set(gRPC_PROTOBUF_PROVIDER "module" CACHE STRING "Provider of protobuf library") - set_property(CACHE gRPC_PROTOBUF_PROVIDER PROPERTY STRINGS "module" "package") - --if(gRPC_BUILD_TESTS) -+if(gRPC_BUILD_TESTS OR gRPC_CF_TESTS) - set(gRPC_BENCHMARK_PROVIDER "module" CACHE STRING "Provider of benchmark library") - set_property(CACHE gRPC_BENCHMARK_PROVIDER PROPERTY STRINGS "module" "package") - else() -@@ -739,7 +740,7 @@ protobuf_generate_grpc_cpp_with_import_path_correction( +@@ -742,7 +743,7 @@ protobuf_generate_grpc_cpp_with_import_path_correction( # This enables CMake to build the project without requiring submodules # in the third_party directory as long as test builds are disabled. @@ -54,7 +107,7 @@ index fe69e4cc58..78a6c44791 100644 protobuf_generate_grpc_cpp_with_import_path_correction( src/proto/grpc/testing/benchmark_service.proto src/proto/grpc/testing/benchmark_service.proto ) -@@ -1278,167 +1279,16 @@ endif() +@@ -1281,167 +1282,16 @@ endif() if(gRPC_BUILD_TESTS) add_custom_target(buildtests_c) @@ -222,7 +275,7 @@ index fe69e4cc58..78a6c44791 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx end2end_chaotic_good_no_logging_test) endif() -@@ -1454,461 +1304,39 @@ if(gRPC_BUILD_TESTS) +@@ -1459,520 +1309,24 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx end2end_posix_no_logging_test) add_dependencies(buildtests_cxx end2end_posix_test) add_dependencies(buildtests_cxx end2end_test) @@ -342,6 +395,7 @@ index fe69e4cc58..78a6c44791 100644 - add_dependencies(buildtests_cxx initial_settings_frame_bad_client_test) - add_dependencies(buildtests_cxx insecure_credentials_test) - add_dependencies(buildtests_cxx insecure_security_connector_test) +- add_dependencies(buildtests_cxx instrument_test) - add_dependencies(buildtests_cxx inter_activity_latch_test) - add_dependencies(buildtests_cxx inter_activity_mutex_test) - add_dependencies(buildtests_cxx inter_activity_pipe_test) @@ -362,6 +416,8 @@ index fe69e4cc58..78a6c44791 100644 - add_dependencies(buildtests_cxx jwt_verifier_test) - add_dependencies(buildtests_cxx lame_client_test) - add_dependencies(buildtests_cxx latch_test) +- add_dependencies(buildtests_cxx latent_see_service_test) +- add_dependencies(buildtests_cxx latent_see_test) - add_dependencies(buildtests_cxx layout_test) - add_dependencies(buildtests_cxx lb_get_cpu_stats_test) - add_dependencies(buildtests_cxx lb_load_data_store_test) @@ -540,6 +596,10 @@ index fe69e4cc58..78a6c44791 100644 - add_dependencies(buildtests_cxx socket_utils_test) - endif() - add_dependencies(buildtests_cxx sorted_pack_test) + add_dependencies(buildtests_cxx spiffe_bundle_map_end2end_test) +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx spiffe_ssl_transport_security_test) +- endif() - add_dependencies(buildtests_cxx spiffe_utils_test) - add_dependencies(buildtests_cxx spinlock_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) @@ -557,6 +617,7 @@ index fe69e4cc58..78a6c44791 100644 - add_dependencies(buildtests_cxx status_flag_test) - add_dependencies(buildtests_cxx status_helper_test) - add_dependencies(buildtests_cxx status_util_test) +- add_dependencies(buildtests_cxx stream_data_queue_test) - add_dependencies(buildtests_cxx stream_leak_with_queued_flow_control_update_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx streaming_throughput_test) @@ -653,6 +714,7 @@ index fe69e4cc58..78a6c44791 100644 - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx work_serializer_test) - endif() +- add_dependencies(buildtests_cxx writable_streams_test) - add_dependencies(buildtests_cxx write_size_policy_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx writes_per_rpc_test) @@ -661,70 +723,80 @@ index fe69e4cc58..78a6c44791 100644 - add_dependencies(buildtests_cxx xds_bootstrap_test) - add_dependencies(buildtests_cxx xds_certificate_provider_test) - add_dependencies(buildtests_cxx xds_client_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_cluster_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_cluster_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_cluster_resource_type_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_cluster_type_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_cluster_type_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_common_types_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_core_end2end_test) - endif() - add_dependencies(buildtests_cxx xds_credentials_end2end_test) +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_core_end2end_test) +- endif() +- add_dependencies(buildtests_cxx xds_credentials_end2end_test) - add_dependencies(buildtests_cxx xds_credentials_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_csds_end2end_test) - endif() - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_enabled_server_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_csds_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_enabled_server_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_endpoint_resource_type_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_fallback_end2end_test) - endif() -@@ -1921,18 +1349,12 @@ if(gRPC_BUILD_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_http_connect_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_fallback_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_fault_injection_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_gcp_authn_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_http_connect_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_http_filters_test) - add_dependencies(buildtests_cxx xds_lb_policy_registry_test) - add_dependencies(buildtests_cxx xds_listener_resource_type_test) - add_dependencies(buildtests_cxx xds_metadata_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_outlier_detection_end2end_test) - endif() - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_override_host_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_outlier_detection_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_override_host_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_override_host_lb_config_parser_test) - add_dependencies(buildtests_cxx xds_override_host_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_pick_first_end2end_test) - endif() -@@ -1942,20 +1364,15 @@ if(gRPC_BUILD_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_rls_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_pick_first_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_ring_hash_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_rls_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_route_config_resource_type_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_routing_end2end_test) - endif() - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_security_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_routing_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_security_end2end_test) +- endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_security_spiffe_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_stats_watcher_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_wrr_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_wrr_end2end_test) +- endif() - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx ztrace_collector_test) - endif() add_custom_target(buildtests DEPENDS buildtests_c buildtests_cxx) -@@ -3169,7 +2586,7 @@ if(gRPC_INSTALL) +@@ -3197,7 +2551,7 @@ if(gRPC_INSTALL) ) endif() @@ -733,7 +805,7 @@ index fe69e4cc58..78a6c44791 100644 add_library(grpc_test_util test/core/event_engine/test_init.cc -@@ -3891,7 +3308,7 @@ if(gRPC_INSTALL) +@@ -3924,7 +3278,7 @@ if(gRPC_INSTALL) ) endif() @@ -742,7 +814,7 @@ index fe69e4cc58..78a6c44791 100644 add_library(gtest third_party/googletest/googlemock/src/gmock-cardinalities.cc -@@ -4613,7 +4030,7 @@ if(gRPC_INSTALL) +@@ -4650,7 +4004,7 @@ if(gRPC_INSTALL) endif() endif() @@ -751,7 +823,7 @@ index fe69e4cc58..78a6c44791 100644 add_library(grpc++_test src/cpp/client/channel_test_peer.cc -@@ -4686,7 +4103,7 @@ foreach(_hdr +@@ -4723,7 +4077,7 @@ foreach(_hdr endforeach() endif() @@ -760,7 +832,7 @@ index fe69e4cc58..78a6c44791 100644 add_library(grpc++_test_config test/cpp/util/test_config_cc.cc -@@ -4738,7 +4155,7 @@ target_link_libraries(grpc++_test_config +@@ -4775,7 +4129,7 @@ target_link_libraries(grpc++_test_config endif() @@ -769,7 +841,7 @@ index fe69e4cc58..78a6c44791 100644 add_library(grpc++_test_util src/core/util/subprocess_posix.cc -@@ -6056,7 +5473,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -6099,7 +5453,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -778,7 +850,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(admin_services_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/csds.pb.cc -@@ -7472,7 +6889,7 @@ target_link_libraries(arena_test +@@ -7515,7 +6869,7 @@ target_link_libraries(arena_test endif() @@ -787,7 +859,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(async_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc -@@ -10727,7 +10144,7 @@ target_link_libraries(client_authority_filter_test +@@ -10847,7 +10201,7 @@ target_link_libraries(client_authority_filter_test endif() @@ -796,7 +868,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(client_callback_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -10972,7 +10389,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -11092,7 +10446,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -805,7 +877,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(client_interceptors_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -11049,7 +10466,7 @@ target_link_libraries(client_interceptors_end2end_test +@@ -11169,7 +10523,7 @@ target_link_libraries(client_interceptors_end2end_test endif() @@ -814,7 +886,7 @@ index fe69e4cc58..78a6c44791 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(client_lb_end2end_test -@@ -11743,7 +11160,7 @@ target_link_libraries(connectivity_state_test +@@ -11863,7 +11217,7 @@ target_link_libraries(connectivity_state_test endif() @@ -823,7 +895,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(context_allocator_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -12599,7 +12016,7 @@ target_link_libraries(duplicate_header_bad_client_test +@@ -12719,7 +12073,7 @@ target_link_libraries(duplicate_header_bad_client_test endif() @@ -832,7 +904,7 @@ index fe69e4cc58..78a6c44791 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(end2end_chaotic_good_no_logging_test -@@ -12703,7 +12120,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -12823,7 +12177,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -841,7 +913,7 @@ index fe69e4cc58..78a6c44791 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(end2end_chaotic_good_test -@@ -12895,7 +12312,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -13015,7 +12369,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -850,7 +922,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_http2_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -12997,7 +12414,7 @@ target_link_libraries(end2end_http2_no_logging_test +@@ -13117,7 +12471,7 @@ target_link_libraries(end2end_http2_no_logging_test endif() @@ -859,7 +931,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_http2_security_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13099,7 +12516,7 @@ target_link_libraries(end2end_http2_security_no_logging_test +@@ -13219,7 +12573,7 @@ target_link_libraries(end2end_http2_security_no_logging_test endif() @@ -868,7 +940,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_http2_security_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13289,7 +12706,7 @@ target_link_libraries(end2end_http2_security_test +@@ -13409,7 +12763,7 @@ target_link_libraries(end2end_http2_security_test endif() @@ -877,7 +949,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_http2_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13479,7 +12896,7 @@ target_link_libraries(end2end_http2_test +@@ -13599,7 +12953,7 @@ target_link_libraries(end2end_http2_test endif() @@ -886,7 +958,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_inproc_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13581,7 +12998,7 @@ target_link_libraries(end2end_inproc_no_logging_test +@@ -13701,7 +13055,7 @@ target_link_libraries(end2end_inproc_no_logging_test endif() @@ -895,16 +967,16 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_inproc_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13771,7 +13188,7 @@ target_link_libraries(end2end_inproc_test +@@ -13891,7 +13245,7 @@ target_link_libraries(end2end_inproc_test endif() -if(gRPC_BUILD_TESTS) +if(gRPC_CF_TESTS) - add_executable(end2end_posix_no_logging_test + add_executable(end2end_ph2_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13873,7 +13290,7 @@ target_link_libraries(end2end_posix_no_logging_test +@@ -14285,7 +13639,7 @@ target_link_libraries(end2end_posix_no_logging_test endif() @@ -913,7 +985,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_posix_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -14063,7 +13480,7 @@ target_link_libraries(end2end_posix_test +@@ -14475,7 +13829,7 @@ target_link_libraries(end2end_posix_test endif() @@ -922,7 +994,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -16201,7 +15618,7 @@ target_link_libraries(gcp_authentication_filter_test +@@ -16679,7 +16033,7 @@ target_link_libraries(gcp_authentication_filter_test endif() @@ -931,7 +1003,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(generic_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -16708,7 +16125,7 @@ target_link_libraries(grpc_authorization_policy_provider_test +@@ -17186,7 +16540,7 @@ target_link_libraries(grpc_authorization_policy_provider_test endif() @@ -940,7 +1012,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(grpc_authz_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -17722,7 +17139,7 @@ target_link_libraries(grpclb_api_test +@@ -18200,7 +17554,7 @@ target_link_libraries(grpclb_api_test endif() @@ -949,7 +1021,7 @@ index fe69e4cc58..78a6c44791 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(grpclb_end2end_test -@@ -18493,7 +17910,7 @@ target_link_libraries(headers_bad_client_test +@@ -18974,7 +18328,7 @@ target_link_libraries(headers_bad_client_test endif() @@ -958,7 +1030,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(health_service_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc -@@ -19174,7 +18591,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -19665,7 +19019,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -967,7 +1039,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(hybrid_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -21306,7 +20723,7 @@ target_link_libraries(memory_quota_test +@@ -22006,7 +21360,7 @@ target_link_libraries(memory_quota_test endif() @@ -976,7 +1048,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(memory_usage_test src/core/util/time.cc -@@ -22314,7 +21731,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -23043,7 +22397,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -985,7 +1057,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(orca_service_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/orca_service.pb.cc -@@ -23717,7 +23134,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -24448,7 +23802,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -994,7 +1066,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(port_sharing_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -25644,7 +25061,7 @@ target_link_libraries(random_early_detection_test +@@ -26389,7 +25743,7 @@ target_link_libraries(random_early_detection_test endif() @@ -1003,7 +1075,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(raw_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -26246,7 +25663,7 @@ target_link_libraries(resolve_address_using_native_resolver_test +@@ -26992,7 +26346,7 @@ target_link_libraries(resolve_address_using_native_resolver_test endif() @@ -1012,7 +1084,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(resource_quota_end2end_stress_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -26528,7 +25945,7 @@ target_link_libraries(ring_hash_test +@@ -27274,7 +26628,7 @@ target_link_libraries(ring_hash_test endif() @@ -1021,7 +1093,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(rls_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lookup/v1/rls.pb.cc -@@ -27467,7 +26884,7 @@ target_link_libraries(server_early_return_test +@@ -28213,7 +27567,7 @@ target_link_libraries(server_early_return_test endif() @@ -1030,7 +1102,7 @@ index fe69e4cc58..78a6c44791 100644 add_executable(server_interceptors_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -27753,7 +27170,7 @@ target_link_libraries(server_test +@@ -28499,7 +27853,7 @@ target_link_libraries(server_test endif() @@ -1039,192 +1111,39 @@ index fe69e4cc58..78a6c44791 100644 add_executable(service_config_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -29609,7 +29026,7 @@ target_link_libraries(test_core_credentials_transport_ssl_ssl_credentials_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - - add_executable(test_core_credentials_transport_tls_tls_credentials_test - test/core/credentials/transport/tls/tls_credentials_test.cc -@@ -29971,7 +29388,7 @@ target_link_libraries(test_cpp_client_credentials_test +@@ -29115,7 +28469,7 @@ target_link_libraries(sorted_pack_test endif() -if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) ++if(gRPC_BUILD_TESTS OR gRPC_CF_TESTS) - add_executable(test_cpp_end2end_ssl_credentials_test + add_executable(spiffe_bundle_map_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -30047,7 +29464,7 @@ target_link_libraries(test_cpp_end2end_ssl_credentials_test +@@ -30524,7 +29878,7 @@ target_link_libraries(test_core_credentials_transport_ssl_ssl_credentials_test endif() -if(gRPC_BUILD_TESTS) +if(gRPC_CF_TESTS) - add_executable(test_cpp_end2end_tls_credentials_test - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -33302,7 +32719,7 @@ target_link_libraries(xds_client_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_cluster_end2end_test -@@ -34345,7 +33762,7 @@ target_link_libraries(xds_cluster_resource_type_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_cluster_type_end2end_test -@@ -35235,7 +34652,7 @@ target_link_libraries(xds_common_types_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) + add_executable(test_core_credentials_transport_tls_tls_credentials_test + test/core/credentials/transport/tls/tls_credentials_test.cc +@@ -30886,7 +30240,7 @@ target_link_libraries(test_cpp_client_credentials_test - add_executable(xds_core_end2end_test -@@ -35766,7 +35183,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() - endif() -if(gRPC_BUILD_TESTS) +if(gRPC_CF_TESTS) - add_executable(xds_credentials_end2end_test + add_executable(test_cpp_end2end_ssl_credentials_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -35885,7 +35302,7 @@ target_link_libraries(xds_credentials_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_csds_end2end_test -@@ -36508,7 +35925,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_enabled_server_end2end_test -@@ -37353,7 +36770,7 @@ target_link_libraries(xds_endpoint_resource_type_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_fallback_end2end_test -@@ -37883,7 +37300,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_fault_injection_end2end_test -@@ -38421,7 +37838,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_gcp_authn_end2end_test -@@ -38955,7 +38372,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_http_connect_end2end_test -@@ -41156,7 +40573,7 @@ target_link_libraries(xds_metadata_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_outlier_detection_end2end_test -@@ -41694,7 +41111,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_override_host_end2end_test -@@ -42323,7 +41740,7 @@ target_link_libraries(xds_override_host_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_pick_first_end2end_test -@@ -42862,7 +42279,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -30962,7 +30316,7 @@ target_link_libraries(test_cpp_end2end_ssl_credentials_test - add_executable(xds_ring_hash_end2end_test -@@ -43397,7 +42814,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() - endif() -if(gRPC_BUILD_TESTS) +if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_rls_end2end_test -@@ -44338,7 +43755,7 @@ target_link_libraries(xds_route_config_resource_type_test - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_routing_end2end_test -@@ -44876,7 +44293,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - endif() - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_security_end2end_test -@@ -46010,7 +45427,7 @@ target_link_libraries(xds_stats_watcher_test - - - endif() --if(gRPC_BUILD_TESTS) -+if(gRPC_CF_TESTS) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(xds_wrr_end2end_test + add_executable(test_cpp_end2end_tls_credentials_test + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc diff --git a/recipe/patches/0011-build-grpcio-tools-from-source.patch b/recipe/patches/0011-build-grpcio-tools-from-source.patch index 1fd4dd9f..4eafba85 100644 --- a/recipe/patches/0011-build-grpcio-tools-from-source.patch +++ b/recipe/patches/0011-build-grpcio-tools-from-source.patch @@ -1,4 +1,4 @@ -From 5f3bd75e2f965b48db34f5c1c484f5331b85df3c Mon Sep 17 00:00:00 2001 +From bf8b63f2b038cc659a4bc4f53f9fb7d99010724f Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 4 Mar 2025 08:53:30 +1100 Subject: [PATCH 11/14] build grpcio-tools from source @@ -8,7 +8,7 @@ Subject: [PATCH 11/14] build grpcio-tools from source 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/tools/distrib/python/grpcio_tools/setup.py b/tools/distrib/python/grpcio_tools/setup.py -index c70bf65192..c005ea6ec0 100644 +index 6d65e831b8..4e7b83ad46 100644 --- a/tools/distrib/python/grpcio_tools/setup.py +++ b/tools/distrib/python/grpcio_tools/setup.py @@ -15,6 +15,7 @@ @@ -19,7 +19,7 @@ index c70bf65192..c005ea6ec0 100644 import platform import re import shlex -@@ -177,12 +178,9 @@ EXTRA_ENV_LINK_ARGS = os.environ.get("GRPC_PYTHON_LDFLAGS", None) +@@ -181,12 +182,9 @@ EXTRA_ENV_LINK_ARGS = os.environ.get("GRPC_PYTHON_LDFLAGS", None) if EXTRA_ENV_COMPILE_ARGS is None: EXTRA_ENV_COMPILE_ARGS = "" if "win32" in sys.platform: @@ -34,7 +34,7 @@ index c70bf65192..c005ea6ec0 100644 elif "linux" in sys.platform: # GCC by defaults uses C17 so only C++17 needs to be specified. EXTRA_ENV_COMPILE_ARGS += " -std=c++17" -@@ -241,14 +239,16 @@ EXTRA_LINK_ARGS = shlex.split(EXTRA_ENV_LINK_ARGS) +@@ -245,14 +243,16 @@ EXTRA_LINK_ARGS = shlex.split(EXTRA_ENV_LINK_ARGS) if BUILD_WITH_STATIC_LIBSTDCXX: EXTRA_LINK_ARGS.append("-static-libstdc++") @@ -54,7 +54,7 @@ index c70bf65192..c005ea6ec0 100644 GRPC_PYTHON_TOOLS_PACKAGE = "grpc_tools" GRPC_PYTHON_PROTO_RESOURCES_NAME = "_proto" -@@ -290,16 +290,34 @@ def package_data(): +@@ -294,16 +294,34 @@ def package_data(): return {GRPC_PYTHON_TOOLS_PACKAGE: proto_files} @@ -91,7 +91,7 @@ index c70bf65192..c005ea6ec0 100644 ] + CC_FILES plugin_ext = Extension( -@@ -307,10 +325,11 @@ def extension_modules(): +@@ -311,10 +329,11 @@ def extension_modules(): sources=plugin_sources, include_dirs=[ ".", diff --git a/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch b/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch index 26d03159..ee602058 100644 --- a/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch +++ b/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch @@ -1,4 +1,4 @@ -From 54e97a6a208a9b11d4edc9dae544c2edd49a8d0b Mon Sep 17 00:00:00 2001 +From 3f2d2ab204fcca6b7f23248c73f5b9a620fbbcd3 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sat, 1 Mar 2025 08:06:28 +1100 Subject: [PATCH 12/14] add linkage to openssl to grpc_unsecure @@ -12,10 +12,10 @@ https://github.com/grpc/grpc/blob/v1.69.0/src/core/tsi/ssl_transport_security_ut 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 78a6c44791..6f12f7d34b 100644 +index 3feaac57b8..fd9922887b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -3143,6 +3143,7 @@ add_library(grpc_unsecure +@@ -3113,6 +3113,7 @@ add_library(grpc_unsecure src/core/tsi/alts/handshaker/transport_security_common_api.cc src/core/tsi/fake_transport_security.cc src/core/tsi/local_transport_security.cc @@ -23,7 +23,7 @@ index 78a6c44791..6f12f7d34b 100644 src/core/tsi/transport_security.cc src/core/tsi/transport_security_grpc.cc src/core/util/backoff.cc -@@ -3221,6 +3222,7 @@ target_link_libraries(grpc_unsecure +@@ -3191,6 +3192,7 @@ target_link_libraries(grpc_unsecure PRIVATE ${_gRPC_ZLIB_LIBRARIES} PRIVATE ${_gRPC_CARES_LIBRARIES} # external dependencies that need to available at runtime diff --git a/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch b/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch index 422b0898..bba62e26 100644 --- a/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch +++ b/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch @@ -1,4 +1,4 @@ -From 5e6dd7c23446e750a0afd8348e30ed94539325f5 Mon Sep 17 00:00:00 2001 +From b1fdcac4453db4b104e61d630a527fe06f3d53ef Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 5 Mar 2025 13:21:01 +1100 Subject: [PATCH 13/14] reduce grpc symbol explosion with autogenerated export @@ -38,10 +38,10 @@ other consumers end up linking to them. 1 file changed, 24 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6f12f7d34b..39a14e3fe9 100644 +index fd9922887b..a6d018ecd3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -2453,6 +2453,30 @@ add_library(grpc +@@ -2418,6 +2418,30 @@ add_library(grpc src/core/xds/xds_client/xds_client.cc ) diff --git a/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch b/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch index 6df3d879..02646e18 100644 --- a/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch +++ b/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch @@ -1,4 +1,4 @@ -From e2876e4b05d6e1e96f253f56ce69e88beefa1de7 Mon Sep 17 00:00:00 2001 +From 5ccdc8b9ea6765b1c6d8744642732d870e0ee0b9 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 2 Mar 2025 07:16:19 +1100 Subject: [PATCH 14/14] update GRPC_DLL instances where necessary @@ -8,22 +8,25 @@ Subject: [PATCH 14/14] update GRPC_DLL instances where necessary src/core/config/core_configuration.h | 2 +- src/core/credentials/call/json_util.h | 2 +- .../transport/tls/grpc_tls_certificate_provider.h | 2 +- + src/core/credentials/transport/tls/spiffe_utils.h | 4 ++-- src/core/ext/transport/chttp2/server/chttp2_server.h | 2 +- src/core/ext/transport/inproc/inproc_transport.h | 2 +- src/core/lib/channel/channel_args.h | 4 ++-- src/core/lib/debug/trace_flags.h | 2 +- src/core/lib/experiments/config.h | 4 ++-- src/core/lib/iomgr/iomgr.h | 2 +- + src/core/lib/iomgr/socket_mutator.h | 2 +- src/core/lib/promise/activity.h | 2 +- src/core/lib/resource_quota/thread_quota.h | 2 +- src/core/lib/surface/call.h | 4 ++-- src/core/lib/surface/completion_queue.h | 8 ++++---- src/core/transport/auth_context.h | 2 +- + src/core/tsi/ssl_transport_security.h | 2 +- src/core/util/json/json_reader.cc | 2 +- src/core/util/json/json_reader.h | 2 +- src/core/util/load_file.h | 2 +- src/core/util/time.h | 4 ++-- - 19 files changed, 26 insertions(+), 26 deletions(-) + 22 files changed, 30 insertions(+), 30 deletions(-) diff --git a/include/grpc/event_engine/event_engine.h b/include/grpc/event_engine/event_engine.h index d2c91ca596..1abaa7ac6f 100644 @@ -39,10 +42,10 @@ index d2c91ca596..1abaa7ac6f 100644 /// Thin wrapper around a platform-specific sockaddr type. A sockaddr struct /// exists on all platforms that gRPC supports. diff --git a/src/core/config/core_configuration.h b/src/core/config/core_configuration.h -index b3522d9294..c71eec8655 100644 +index e6b779bc96..0803899034 100644 --- a/src/core/config/core_configuration.h +++ b/src/core/config/core_configuration.h -@@ -39,7 +39,7 @@ namespace grpc_core { +@@ -40,7 +40,7 @@ namespace grpc_core { // Global singleton that stores library configuration - factories, etc... // that plugins might choose to extend. @@ -65,10 +68,10 @@ index da7ff0a771..d1f6a52fdf 100644 grpc_error_handle* error); diff --git a/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h b/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h -index d69aa6e7d5..9514cf6275 100644 +index b3d38f6155..91084b9e3a 100644 --- a/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +++ b/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h -@@ -106,7 +106,7 @@ class StaticDataCertificateProvider final +@@ -107,7 +107,7 @@ class StaticDataCertificateProvider final UniqueTypeName type() const override; @@ -77,6 +80,28 @@ index d69aa6e7d5..9514cf6275 100644 private: struct WatcherInfo { +diff --git a/src/core/credentials/transport/tls/spiffe_utils.h b/src/core/credentials/transport/tls/spiffe_utils.h +index 1c4f011e47..274e6f5b15 100644 +--- a/src/core/credentials/transport/tls/spiffe_utils.h ++++ b/src/core/credentials/transport/tls/spiffe_utils.h +@@ -86,7 +86,7 @@ class SpiffeBundle final { + // SpiffeBundles should be used by loading a SpiffeBundleMap via + // SpiffeBundleMap::FromFile + SpiffeBundle() = default; +- ~SpiffeBundle(); ++ GRPC_DLL ~SpiffeBundle(); + SpiffeBundle(const SpiffeBundle& other); + SpiffeBundle& operator=(const SpiffeBundle& other); + +@@ -136,7 +136,7 @@ class SpiffeBundleMap final { + // returned value represents a valid and SPIFFE Bundle Map. + // The only supported use is configuring X509 roots for a given trust domain - + // no other SPIFFE Bundle configurations are supported. +- static absl::StatusOr FromFile(absl::string_view file_path); ++ GRPC_DLL static absl::StatusOr FromFile(absl::string_view file_path); + + // Returns the roots for a given trust domain in the SPIFFE Bundle Map. + absl::StatusOr> GetRoots( diff --git a/src/core/ext/transport/chttp2/server/chttp2_server.h b/src/core/ext/transport/chttp2/server/chttp2_server.h index 14d62cb513..90f2fb2252 100644 --- a/src/core/ext/transport/chttp2/server/chttp2_server.h @@ -166,8 +191,21 @@ index 280471fae8..506c6e3682 100644 /// Returns true if the caller is a worker thread for any background poller. bool grpc_iomgr_is_any_background_poller_thread(); +diff --git a/src/core/lib/iomgr/socket_mutator.h b/src/core/lib/iomgr/socket_mutator.h +index 9ce180b345..17f484660c 100644 +--- a/src/core/lib/iomgr/socket_mutator.h ++++ b/src/core/lib/iomgr/socket_mutator.h +@@ -67,7 +67,7 @@ void grpc_socket_mutator_init(grpc_socket_mutator* mutator, + const grpc_socket_mutator_vtable* vtable); + + /// Wrap \a mutator as a grpc_arg +-grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator* mutator); ++GRPC_DLL grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator* mutator); + + /// Perform the file descriptor mutation operation of \a mutator on \a fd + bool grpc_socket_mutator_mutate_fd(grpc_socket_mutator* mutator, int fd, diff --git a/src/core/lib/promise/activity.h b/src/core/lib/promise/activity.h -index f3aa85925a..673a5beca2 100644 +index b77013b8e0..a95c6af554 100644 --- a/src/core/lib/promise/activity.h +++ b/src/core/lib/promise/activity.h @@ -75,7 +75,7 @@ struct Unwakeable final : public Wakeable { @@ -193,10 +231,10 @@ index 18a6e13e7f..83594ba83b 100644 private: Mutex mu_; diff --git a/src/core/lib/surface/call.h b/src/core/lib/surface/call.h -index bc7220ac60..baec12c33c 100644 +index 9dd89db733..91908e1651 100644 --- a/src/core/lib/surface/call.h +++ b/src/core/lib/surface/call.h -@@ -302,9 +302,9 @@ grpc_compression_algorithm grpc_call_compression_for_level( +@@ -303,9 +303,9 @@ grpc_compression_algorithm grpc_call_compression_for_level( // Did this client call receive a trailers-only response // TODO(markdroth): This is currently available only to the C++ API. // Move to surface API if requested by other languages. @@ -238,7 +276,7 @@ index d99c7a248c..d68ce75f8c 100644 void (*done)(void* done_arg, grpc_cq_completion* storage), void* done_arg, grpc_cq_completion* storage, diff --git a/src/core/transport/auth_context.h b/src/core/transport/auth_context.h -index e603660042..2b0ba4cc07 100644 +index dbadba9744..e113226990 100644 --- a/src/core/transport/auth_context.h +++ b/src/core/transport/auth_context.h @@ -49,7 +49,7 @@ struct grpc_auth_property_array { @@ -250,6 +288,18 @@ index e603660042..2b0ba4cc07 100644 #define GRPC_AUTH_CONTEXT_ARG "grpc.auth_context" +diff --git a/src/core/tsi/ssl_transport_security.h b/src/core/tsi/ssl_transport_security.h +index 820d562d05..60524c7ecb 100644 +--- a/src/core/tsi/ssl_transport_security.h ++++ b/src/core/tsi/ssl_transport_security.h +@@ -448,6 +448,6 @@ tsi_result tsi_ssl_extract_x509_subject_names_from_pem_cert( + tsi_result tsi_ssl_get_cert_chain_contents(STACK_OF(X509) * peer_chain, + tsi_peer_property* property); + +-bool IsRootCertInfoEmpty(const RootCertInfo* root_cert_info); ++GRPC_DLL bool IsRootCertInfoEmpty(const RootCertInfo* root_cert_info); + + #endif // GRPC_SRC_CORE_TSI_SSL_TRANSPORT_SECURITY_H diff --git a/src/core/util/json/json_reader.cc b/src/core/util/json/json_reader.cc index 5b437af925..d9c2a609c6 100644 --- a/src/core/util/json/json_reader.cc