From: JinWang An Date: Wed, 1 Dec 2021 08:53:25 +0000 (+0900) Subject: Imported Upstream version 1.41.0 X-Git-Tag: upstream/1.41.0^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2cbdc95f7308919f1c0019c7edced2f114c46703;p=platform%2Fupstream%2Fgrpc.git Imported Upstream version 1.41.0 --- diff --git a/.clang-format b/.clang-format index 7460950..953705e 100644 --- a/.clang-format +++ b/.clang-format @@ -3,7 +3,44 @@ Language: Cpp BasedOnStyle: Google DerivePointerAlignment: false PointerAlignment: Left -IncludeBlocks: Preserve +IncludeBlocks: Regroup +IncludeCategories: + # port_platform.h is before almost everything + - Regex: '^' + Priority: -100 + # ruby.h is even more first if it's included + - Regex: '^' + Priority: -200 + # Some platforms (namely msys) need wchar to be included BEFORE + # anything else, especially strsafe.h. + - Regex: '^' + Priority: 5 + # use priority 100+ for grpc headers so they sort last + # 'system' headers - include things that have " in the names to make them + # stand out and get fixed + - Regex: '^(<|")grpc' + Priority: 100 + # similary using include/ to get system headers should stand out and get + # fixed + - Regex: '^"include/' + Priority: 100 + # source headers go last + - Regex: '^"(src|test)/' + Priority: 101 + # not-grpc headers follow + # first, non system headers that are included like <> - these are all + # local carveouts, and get sorted below c++ but before non grpc "" files + - Regex: '^<(openssl/|uv\.h|ares\.h|address_sorting/|gmock/|gtest/|zlib|benchmark/|google/)' + Priority: 30 + # first C system headers - they have a . in the filename + - Regex: '^<.*\.' + Priority: 10 + # then C++ system headers - no ., the only thing that will match now + - Regex: '^<' + Priority: 20 + # finally other "" includes go between system headers and our headers + - Regex: '^"' + Priority: 40 --- Language: ObjC BasedOnStyle: Google diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..af02580 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,32 @@ +src/core/ext/upb-generated/** linguist-generated=true +src/core/ext/upbdefs-generated/** linguist-generated=true +Makefile linguist-generated=true +BUILD.gn linguist-generated=true +CMakeLists.txt linguist-generated=true +build_autogenerated.yaml linguist-generated=true +config.m4 linguist-generated=true +config.w32 linguist-generated=true +gRPC-C++.podspec linguist-generated=true +gRPC-Core.podspec linguist-generated=true +gRPC-ProtoRPC.podspec linguist-generated=true +gRPC-RxLibrary.podspec linguist-generated=true +gRPC.podspec linguist-generated=true +grpc.gemspec linguist-generated=true +grpc.gyp linguist-generated=true +grpc.def linguist-generated=true +package.xml linguist-generated=true +binding.gyp linguist-generated=true +src/python/grpcio/grpc_core_dependencies.py linguist-generated=true +src/ruby/ext/grpc/rb_grpc_imports.generated.h linguist-generated=true +src/ruby/ext/grpc/rb_grpc_imports.generated.c linguist-generated=true +test/core/end2end/end2end_tests.cc linguist-generated=true +test/core/end2end/end2end_nosec_tests.cc linguist-generated=true +test/core/surface/public_headers_must_be_c89.c linguist-generated=true +tools/doxygen/Doxyfile.c++.internal linguist-generated=true +tools/doxygen/Doxyfile.core.internal linguist-generated=true +tools/run_tests/sources_and_headers.json linguist-generated=true +tools/run_tests/tests.json linguist-generated=true +tools/run_tests/generated/tests.json linguist-generated=true +tools/run_tests/generated/sources_and_headers.json linguist-generated=true +src/core/lib/transport/static_metadata.h linguist-generated=true +src/core/lib/transport/static_metadata.cc linguist-generated=true diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index a191005..111533e 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -2,7 +2,7 @@ name: Report a bug about: Create a report to help us improve labels: kind/bug, priority/P2 -assignees: yashykt +assignees: drfloob --- diff --git a/.github/ISSUE_TEMPLATE/cleanup_request.md b/.github/ISSUE_TEMPLATE/cleanup_request.md index 98b0a5a..6652601 100644 --- a/.github/ISSUE_TEMPLATE/cleanup_request.md +++ b/.github/ISSUE_TEMPLATE/cleanup_request.md @@ -2,7 +2,7 @@ name: Request a cleanup about: Suggest a cleanup in our repository labels: kind/internal cleanup, priority/P2 -assignees: yashykt +assignees: drfloob --- diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index b6a5493..adc5b1c 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -2,7 +2,7 @@ name: Request a feature about: Suggest an idea for this project labels: kind/enhancement, priority/P2 -assignees: yashykt +assignees: drfloob --- diff --git a/.github/ISSUE_TEMPLATE/question.md b/.github/ISSUE_TEMPLATE/question.md index b92cd62..770a386 100644 --- a/.github/ISSUE_TEMPLATE/question.md +++ b/.github/ISSUE_TEMPLATE/question.md @@ -2,7 +2,7 @@ name: Ask a question about: Ask a question labels: kind/question, priority/P3 -assignees: yashykt +assignees: drfloob --- diff --git a/.github/labeler.yml b/.github/labeler.yml new file mode 100644 index 0000000..ed627b2 --- /dev/null +++ b/.github/labeler.yml @@ -0,0 +1,15 @@ +lang/core: +- src/core/** +- include/grpc/** +- test/core/** +- tools/codegen/core/** + +lang/c++: +- src/cpp/** +- include/grpc++/** +- include/grpcpp/** +- test/cpp/** + +area/infra: +- .github/** + diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 380c2bd..5424b01 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -8,4 +8,4 @@ If you know who should review your pull request, please remove the mentioning be --> -@yashykt +@drfloob diff --git a/.github/workflows/happy-pancakes.yml b/.github/workflows/happy-pancakes.yml new file mode 100644 index 0000000..6b90c44 --- /dev/null +++ b/.github/workflows/happy-pancakes.yml @@ -0,0 +1,74 @@ +name: Happy Pancakes +on: + pull_request: + types: [opened, edited, labeled, unlabeled, synchronize, ready_for_review, auto_merge_enabled, auto_merge_disabled] +jobs: + check_status: + name: Check Required Status or force-merge label + runs-on: ubuntu-latest + steps: + # Cancel current runs if they're still running + # (saves processing on fast pushes) + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@0.9.1 + with: + access_token: ${{ github.token }} + # Wait until our required statuses are ready or failed + # Unless force-merge is present, and then just be good. + - name: Check Status + uses: actions/github-script@v4 + with: + script: | + function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); + } + let pull = await github.pulls.get({ + owner: "grpc", + repo: "grpc", + pull_number: ${{ github.event.pull_request.number }} + }); + for (var i = 0; i < pull.data.labels.length; i++) { + let label = pull.data.labels[i]; + if (label.name == "force-merge") { + console.log("Saw force-merge label"); + return; + } + } + while (true) { + var need = new Set(); + need.add("Bazel Basic build for C/C++"); + need.add("Portability Tests Linux [Build Only] (internal CI)"); + for (var page=1;; page++) { + console.log("***** page " + page); + let statuses = await github.repos.listCommitStatusesForRef({ + owner: "grpc", + repo: "grpc", + ref: "${{ github.event.pull_request.head.sha }}", + per_page: 100, + page: page + }); + for (var i = 0; i < statuses.data.length; i++) { + let status = statuses.data[i]; + console.log(status.context, status.state, need); + if (need.has(status.context)) { + if (status.state == "success") { + need.delete(status.context); + } else if (status.state == "pending") { + // do nothing + } else { + core.setFailed("Required status failed: " + status.context); + return; + } + } + } + if (statuses.data.length < 100) { + break; + } + } + if (need.size == 0) { + return; + } + // Sleep 15 minutes between polls + await sleep(15 * 60 * 1000); + } + diff --git a/.github/workflows/pr-auto-fix.yaml b/.github/workflows/pr-auto-fix.yaml new file mode 100644 index 0000000..8cb40ae --- /dev/null +++ b/.github/workflows/pr-auto-fix.yaml @@ -0,0 +1,76 @@ +name: PR AutoFix +on: [push] +jobs: + PRAutoFix: + runs-on: ubuntu-latest + steps: + # Cache bazel build + - name: Cache bazel + uses: actions/cache@v2 + env: + cache-name: bazel-cache + with: + path: ~/.cache/bazel + key: ${{ runner.os }}-${{ env.cache-name }} + # Cancel current runs if they're still running + # (saves processing on fast pushes) + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@0.9.1 + with: + access_token: ${{ github.token }} + # Allow opt-out for some users + - name: Should I Stay Or Should I Go + uses: actions/github-script@v4 + id: check + with: + script: | + // If you'd like not to run this code on your commits, add your github user id here: + NO_AUTOFIX_USERS = [] + const { owner, repo } = context.repo + if (NO_AUTOFIX_USERS.includes(context.actor)) { + console.log('Cancelling'); + const run_id = "${{ github.run_id }}"; + await github.actions.cancelWorkflowRun({ owner, repo, run_id }); + return 'go'; + } else { + return 'stay'; + } + - name: Wait for cancellation + run: sleep 60 + if: steps.check.outputs.result == 'go' + - name: Should build? + run: test "${{ steps.check.outputs.result }}" = "stay" + # Setup to run sanity suite + - name: Install Python Interpreter + uses: actions/setup-python@v2 + with: + python-version: 3.8 + - name: Install Python Packages + run: | + python -m pip install --upgrade pip + pip install pyyaml mako virtualenv + sudo apt-get install python-dev + - name: Check out repository code + uses: actions/checkout@v2 + with: + submodules: True + fetch-depth: 0 + # Run the things! + - name: clang-tidy fixes + run: ${{ github.workspace }}/tools/distrib/clang_tidy_code.sh --fix --only-changed || true + - name: Run sanitize + run: ${{ github.workspace }}/tools/distrib/sanitize.sh + # Report back with a PR if things are broken + - name: Create Pull Request + uses: peter-evans/create-pull-request@v3 + with: + delete-branch: true + branch-suffix: short-commit-hash + commit-message: "Automated change: Fix sanity tests" + title: Automated fix for ${{ github.ref }} + body: | + PanCakes to the rescue! + + We noticed that our 'sanity' test was going to fail, but we think we can fix that automatically, so we put together this PR to do just that! + + If you'd like to opt-out of these PR's, add yourself to NO_AUTOFIX_USERS in .github/workflows/pr-auto-fix.yaml diff --git a/.github/workflows/pr-auto-tag.yaml b/.github/workflows/pr-auto-tag.yaml new file mode 100644 index 0000000..22041f6 --- /dev/null +++ b/.github/workflows/pr-auto-tag.yaml @@ -0,0 +1,12 @@ +name: PR AutoTag +on: + pull_request_target: + types: [opened, reopened, synchronized, edited] +jobs: + triage: + runs-on: ubuntu-latest + steps: + - uses: actions/labeler@v3 + with: + repo-token: "${{ secrets.GITHUB_TOKEN }}" + diff --git a/BUILD b/BUILD index 6997bbe..39ee9f9 100644 --- a/BUILD +++ b/BUILD @@ -109,11 +109,11 @@ config_setting( python_config_settings() # This should be updated along with build_handwritten.yaml -g_stands_for = "guileless" # @unused +g_stands_for = "goat" # @unused -core_version = "18.0.0" # @unused +core_version = "19.0.0" # @unused -version = "1.40.0" # @unused +version = "1.41.0" # @unused GPR_PUBLIC_HDRS = [ "include/grpc/support/alloc.h", @@ -323,6 +323,7 @@ grpc_cc_library( language = "c++", public_hdrs = GPR_PUBLIC_HDRS, standalone = True, + tags = ["avoid_dep"], visibility = ["@grpc:public"], deps = [ "gpr_base", @@ -330,6 +331,13 @@ grpc_cc_library( ) grpc_cc_library( + name = "atomic_utils", + language = "c++", + public_hdrs = ["src/core/lib/gprpp/atomic_utils.h"], + deps = ["gpr_platform"], +) + +grpc_cc_library( name = "grpc_unsecure", srcs = [ "src/core/lib/security/authorization/authorization_policy_provider_null_vtable.cc", @@ -340,8 +348,10 @@ grpc_cc_library( language = "c++", public_hdrs = GRPC_PUBLIC_HDRS, standalone = True, + tags = ["avoid_dep"], visibility = ["@grpc:public"], deps = [ + "config", "gpr_base", "grpc_base_c", "grpc_common", @@ -379,6 +389,7 @@ grpc_cc_library( "@grpc:public", ], deps = [ + "config", "gpr_base", "grpc_base_c", "grpc_common", @@ -513,6 +524,7 @@ grpc_cc_library( ], language = "c++", standalone = True, + tags = ["avoid_dep"], visibility = ["@grpc:public"], deps = [ "gpr", @@ -587,6 +599,7 @@ grpc_cc_library( public_hdrs = [ "include/grpc/census.h", ], + visibility = ["@grpc:public"], deps = [ "gpr_base", "grpc_base_c", @@ -638,7 +651,6 @@ grpc_cc_library( "src/core/lib/gpr/time_posix.cc", "src/core/lib/gpr/time_precise.cc", "src/core/lib/gpr/time_windows.cc", - "src/core/lib/gpr/tls_pthread.cc", "src/core/lib/gpr/tmpfile_msys.cc", "src/core/lib/gpr/tmpfile_posix.cc", "src/core/lib/gpr/tmpfile_windows.cc", @@ -666,15 +678,9 @@ grpc_cc_library( "src/core/lib/gpr/string.h", "src/core/lib/gpr/string_windows.h", "src/core/lib/gpr/time_precise.h", - "src/core/lib/gpr/tls.h", - "src/core/lib/gpr/tls_gcc.h", - "src/core/lib/gpr/tls_msvc.h", - "src/core/lib/gpr/tls_pthread.h", - "src/core/lib/gpr/tls_stdcpp.h", "src/core/lib/gpr/tmpfile.h", "src/core/lib/gpr/useful.h", "src/core/lib/gprpp/arena.h", - "src/core/lib/gprpp/atomic.h", "src/core/lib/gprpp/examine_stack.h", "src/core/lib/gprpp/fork.h", "src/core/lib/gprpp/global_config.h", @@ -709,14 +715,36 @@ grpc_cc_library( public_hdrs = GPR_PUBLIC_HDRS, visibility = ["@grpc:alt_gpr_base_legacy"], deps = [ + "construct_destruct", "debug_location", "google_api_upb", "gpr_codegen", + "gpr_tls", "grpc_codegen", ], ) grpc_cc_library( + name = "gpr_tls", + hdrs = ["src/core/lib/gpr/tls.h"], + deps = ["gpr_platform"], +) + +grpc_cc_library( + name = "capture", + external_deps = ["absl/utility"], + language = "c++", + public_hdrs = ["src/core/lib/gprpp/capture.h"], + deps = ["gpr_platform"], +) + +grpc_cc_library( + name = "construct_destruct", + language = "c++", + public_hdrs = ["src/core/lib/gprpp/construct_destruct.h"], +) + +grpc_cc_library( name = "gpr_codegen", language = "c++", public_hdrs = [ @@ -763,13 +791,17 @@ grpc_cc_library( ) grpc_cc_library( - name = "atomic", + name = "config", + srcs = [ + "src/core/lib/config/core_configuration.cc", + ], language = "c++", public_hdrs = [ - "src/core/lib/gprpp/atomic.h", + "src/core/lib/config/core_configuration.h", ], deps = [ - "gpr", + "gpr_platform", + "handshaker_registry", ], ) @@ -835,11 +867,334 @@ grpc_cc_library( ) grpc_cc_library( + name = "poll", + external_deps = [ + "absl/types:variant", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/poll.h", + ], + deps = ["gpr_platform"], +) + +grpc_cc_library( + name = "context", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/context.h", + ], + deps = [ + "gpr_platform", + "gpr_tls", + ], +) + +grpc_cc_library( + name = "map", + language = "c++", + public_hdrs = ["src/core/lib/promise/map.h"], + deps = [ + "gpr_platform", + "poll", + "promise_like", + ], +) + +grpc_cc_library( + name = "promise", + external_deps = [ + "absl/types:optional", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/promise.h", + ], + deps = [ + "gpr_platform", + "poll", + "promise_like", + ], +) + +grpc_cc_library( + name = "promise_like", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/detail/promise_like.h", + ], + deps = [ + "gpr_platform", + "poll", + ], +) + +grpc_cc_library( + name = "promise_factory", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/detail/promise_factory.h", + ], + deps = [ + "gpr_platform", + "poll", + "promise_like", + ], +) + +grpc_cc_library( + name = "if", + external_deps = [ + "absl/status:statusor", + ], + language = "c++", + public_hdrs = ["src/core/lib/promise/if.h"], + deps = [ + "gpr_platform", + "poll", + "promise_factory", + ], +) + +grpc_cc_library( + name = "promise_status", + external_deps = [ + "absl/status", + "absl/status:statusor", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/detail/status.h", + ], + deps = ["gpr_platform"], +) + +grpc_cc_library( + name = "race", + language = "c++", + public_hdrs = ["src/core/lib/promise/race.h"], + deps = [ + "gpr_platform", + "poll", + ], +) + +grpc_cc_library( + name = "loop", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/loop.h", + ], + deps = [ + "gpr_platform", + "poll", + "promise_factory", + ], +) + +grpc_cc_library( + name = "switch", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/detail/switch.h", + ], + deps = ["gpr_platform"], +) + +grpc_cc_library( + name = "basic_join", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/detail/basic_join.h", + ], + deps = [ + "bitset", + "construct_destruct", + "gpr_platform", + "poll", + "promise_factory", + ], +) + +grpc_cc_library( + name = "join", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/join.h", + ], + deps = [ + "basic_join", + "gpr_platform", + ], +) + +grpc_cc_library( + name = "try_join", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/try_join.h", + ], + deps = [ + "basic_join", + "gpr_platform", + "promise_status", + ], +) + +grpc_cc_library( + name = "basic_seq", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/detail/basic_seq.h", + ], + deps = [ + "construct_destruct", + "gpr_platform", + "poll", + "promise_factory", + "switch", + ], +) + +grpc_cc_library( + name = "seq", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/seq.h", + ], + deps = [ + "basic_seq", + "gpr_platform", + ], +) + +grpc_cc_library( + name = "try_seq", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/try_seq.h", + ], + deps = [ + "basic_seq", + "gpr_platform", + "promise_status", + ], +) + +grpc_cc_library( + name = "activity", + srcs = [ + "src/core/lib/promise/activity.cc", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/activity.h", + ], + deps = [ + "atomic_utils", + "construct_destruct", + "context", + "gpr_base", + "gpr_codegen", + "poll", + "promise_factory", + "promise_status", + ], +) + +grpc_cc_library( + name = "wait_set", + external_deps = [ + "absl/container:flat_hash_set", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/wait_set.h", + ], + deps = [ + "activity", + "gpr_platform", + ], +) + +grpc_cc_library( + name = "intra_activity_waiter", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/intra_activity_waiter.h", + ], + deps = [ + "activity", + "gpr_platform", + ], +) + +grpc_cc_library( + name = "latch", + external_deps = [ + "absl/status", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/latch.h", + ], + deps = [ + "activity", + "gpr_platform", + "intra_activity_waiter", + ], +) + +grpc_cc_library( + name = "observable", + language = "c++", + public_hdrs = [ + "src/core/lib/promise/observable.h", + ], + deps = [ + "activity", + "gpr_platform", + "wait_set", + ], +) + +grpc_cc_library( + name = "pipe", + external_deps = [ + "absl/status", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/promise/pipe.h", + ], + deps = [ + "activity", + "gpr_platform", + "intra_activity_waiter", + ], +) + +grpc_cc_library( + name = "for_each", + external_deps = [ + "absl/status", + "absl/types:variant", + ], + language = "c++", + public_hdrs = ["src/core/lib/promise/for_each.h"], + deps = [ + "gpr_platform", + "poll", + "promise_factory", + ], +) + +grpc_cc_library( name = "ref_counted", language = "c++", public_hdrs = ["src/core/lib/gprpp/ref_counted.h"], deps = [ - "atomic", + "atomic_utils", "debug_location", "gpr_base", "grpc_trace", @@ -852,7 +1207,6 @@ grpc_cc_library( language = "c++", public_hdrs = ["src/core/lib/gprpp/dual_ref_counted.h"], deps = [ - "atomic", "debug_location", "gpr_base", "grpc_trace", @@ -872,6 +1226,32 @@ grpc_cc_library( ) grpc_cc_library( + name = "handshaker_factory", + language = "c++", + public_hdrs = [ + "src/core/lib/channel/handshaker_factory.h", + ], + deps = [ + "gpr_base", + ], +) + +grpc_cc_library( + name = "handshaker_registry", + srcs = [ + "src/core/lib/channel/handshaker_registry.cc", + ], + language = "c++", + public_hdrs = [ + "src/core/lib/channel/handshaker_registry.h", + ], + deps = [ + "gpr_base", + "handshaker_factory", + ], +) + +grpc_cc_library( name = "grpc_base_c", srcs = [ "src/core/lib/address_utils/parse_address.cc", @@ -886,7 +1266,6 @@ grpc_cc_library( "src/core/lib/channel/channelz_registry.cc", "src/core/lib/channel/connected_channel.cc", "src/core/lib/channel/handshaker.cc", - "src/core/lib/channel/handshaker_registry.cc", "src/core/lib/channel/status_util.cc", "src/core/lib/compression/compression.cc", "src/core/lib/compression/compression_args.cc", @@ -912,7 +1291,6 @@ grpc_cc_library( "src/core/lib/iomgr/endpoint_cfstream.cc", "src/core/lib/iomgr/endpoint_pair_event_engine.cc", "src/core/lib/iomgr/endpoint_pair_posix.cc", - "src/core/lib/iomgr/endpoint_pair_uv.cc", "src/core/lib/iomgr/endpoint_pair_windows.cc", "src/core/lib/iomgr/error.cc", "src/core/lib/iomgr/error_cfstream.cc", @@ -948,7 +1326,6 @@ grpc_cc_library( "src/core/lib/iomgr/iomgr_internal.cc", "src/core/lib/iomgr/iomgr_posix.cc", "src/core/lib/iomgr/iomgr_posix_cfstream.cc", - "src/core/lib/iomgr/iomgr_uv.cc", "src/core/lib/iomgr/iomgr_windows.cc", "src/core/lib/iomgr/is_epollexclusive_available.cc", "src/core/lib/iomgr/load_file.cc", @@ -959,7 +1336,6 @@ grpc_cc_library( "src/core/lib/iomgr/pollset_set.cc", "src/core/lib/iomgr/pollset_set_custom.cc", "src/core/lib/iomgr/pollset_set_windows.cc", - "src/core/lib/iomgr/pollset_uv.cc", "src/core/lib/iomgr/pollset_windows.cc", "src/core/lib/iomgr/resolve_address.cc", "src/core/lib/iomgr/resolve_address_custom.cc", @@ -971,7 +1347,6 @@ grpc_cc_library( "src/core/lib/iomgr/socket_utils_common_posix.cc", "src/core/lib/iomgr/socket_utils_linux.cc", "src/core/lib/iomgr/socket_utils_posix.cc", - "src/core/lib/iomgr/socket_utils_uv.cc", "src/core/lib/iomgr/socket_utils_windows.cc", "src/core/lib/iomgr/socket_windows.cc", "src/core/lib/iomgr/tcp_client.cc", @@ -988,7 +1363,6 @@ grpc_cc_library( "src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc", "src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc", "src/core/lib/iomgr/tcp_server_windows.cc", - "src/core/lib/iomgr/tcp_uv.cc", "src/core/lib/iomgr/tcp_windows.cc", "src/core/lib/iomgr/time_averaged_stats.cc", "src/core/lib/iomgr/timer.cc", @@ -996,7 +1370,6 @@ grpc_cc_library( "src/core/lib/iomgr/timer_generic.cc", "src/core/lib/iomgr/timer_heap.cc", "src/core/lib/iomgr/timer_manager.cc", - "src/core/lib/iomgr/timer_uv.cc", "src/core/lib/iomgr/udp_server.cc", "src/core/lib/iomgr/unix_sockets_posix.cc", "src/core/lib/iomgr/unix_sockets_posix_noop.cc", @@ -1062,8 +1435,6 @@ grpc_cc_library( "src/core/lib/channel/connected_channel.h", "src/core/lib/channel/context.h", "src/core/lib/channel/handshaker.h", - "src/core/lib/channel/handshaker_factory.h", - "src/core/lib/channel/handshaker_registry.h", "src/core/lib/channel/status_util.h", "src/core/lib/compression/algorithm_metadata.h", "src/core/lib/compression/compression_args.h", @@ -1124,7 +1495,6 @@ grpc_cc_library( "src/core/lib/iomgr/pollset_set.h", "src/core/lib/iomgr/pollset_set_custom.h", "src/core/lib/iomgr/pollset_set_windows.h", - "src/core/lib/iomgr/pollset_uv.h", "src/core/lib/iomgr/pollset_windows.h", "src/core/lib/iomgr/port.h", "src/core/lib/iomgr/python_util.h", @@ -1132,7 +1502,6 @@ grpc_cc_library( "src/core/lib/iomgr/resolve_address_custom.h", "src/core/lib/iomgr/resource_quota.h", "src/core/lib/iomgr/sockaddr.h", - "src/core/lib/iomgr/sockaddr_custom.h", "src/core/lib/iomgr/sockaddr_posix.h", "src/core/lib/iomgr/sockaddr_windows.h", "src/core/lib/iomgr/socket_factory_posix.h", @@ -1212,9 +1581,11 @@ grpc_cc_library( public_hdrs = GRPC_PUBLIC_HDRS + GRPC_PUBLIC_EVENT_ENGINE_HDRS, visibility = ["@grpc:alt_grpc_base_legacy"], deps = [ + "bitset", "dual_ref_counted", "gpr_base", "gpr_codegen", + "gpr_tls", "grpc_codegen", "grpc_trace", "orphanable", @@ -1231,7 +1602,6 @@ grpc_cc_library( language = "c++", visibility = ["@grpc:alt_grpc_base_legacy"], deps = [ - "atomic", "gpr_base", "grpc_base_c", ], @@ -1347,6 +1717,7 @@ grpc_cc_library( language = "c++", visibility = ["@grpc:client_channel"], deps = [ + "config", "debug_location", "gpr_base", "grpc_base_c", @@ -1354,6 +1725,7 @@ grpc_cc_library( "grpc_deadline_filter", "grpc_health_upb", "grpc_trace", + "handshaker_registry", "orphanable", "ref_counted", "ref_counted_ptr", @@ -2120,12 +2492,10 @@ grpc_cc_library( srcs = [ "src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc", - "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc", - "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc", "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc", ], @@ -2231,6 +2601,7 @@ grpc_cc_library( "src/core/lib/http/httpcli_security_connector.cc", "src/core/lib/security/authorization/authorization_policy_provider_vtable.cc", "src/core/lib/security/authorization/evaluate_args.cc", + "src/core/lib/security/authorization/sdk_server_authz_filter.cc", "src/core/lib/security/context/security_context.cc", "src/core/lib/security/credentials/alts/alts_credentials.cc", "src/core/lib/security/credentials/composite/composite_credentials.cc", @@ -2283,6 +2654,7 @@ grpc_cc_library( "src/core/lib/security/authorization/authorization_engine.h", "src/core/lib/security/authorization/authorization_policy_provider.h", "src/core/lib/security/authorization/evaluate_args.h", + "src/core/lib/security/authorization/sdk_server_authz_filter.h", "src/core/lib/security/context/security_context.h", "src/core/lib/security/credentials/alts/alts_credentials.h", "src/core/lib/security/credentials/composite/composite_credentials.h", @@ -2337,6 +2709,7 @@ grpc_cc_library( visibility = ["@grpc:public"], deps = [ "alts_util", + "config", "gpr_base", "grpc_base", "grpc_base_c", @@ -2485,6 +2858,60 @@ grpc_cc_library( ) grpc_cc_library( + name = "popularity_count", + hdrs = [ + "src/core/ext/transport/chttp2/transport/popularity_count.h", + ], + language = "c++", + deps = [ + "gpr_platform", + ], +) + +grpc_cc_library( + name = "hpack_constants", + hdrs = [ + "src/core/ext/transport/chttp2/transport/hpack_constants.h", + ], + language = "c++", + deps = [ + "gpr_platform", + ], +) + +grpc_cc_library( + name = "hpack_encoder_index", + hdrs = [ + "src/core/ext/transport/chttp2/transport/hpack_encoder_index.h", + ], + external_deps = [ + "absl/types:optional", + ], + language = "c++", + deps = [ + "gpr_platform", + ], +) + +grpc_cc_library( + name = "hpack_encoder_table", + srcs = [ + "src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc", + ], + hdrs = [ + "src/core/ext/transport/chttp2/transport/hpack_encoder_table.h", + ], + external_deps = [ + "absl/container:inlined_vector", + ], + language = "c++", + deps = [ + "gpr", + "hpack_constants", + ], +) + +grpc_cc_library( name = "grpc_transport_chttp2", srcs = [ "src/core/ext/transport/chttp2/transport/bin_decoder.cc", @@ -2502,7 +2929,8 @@ grpc_cc_library( "src/core/ext/transport/chttp2/transport/frame_window_update.cc", "src/core/ext/transport/chttp2/transport/hpack_encoder.cc", "src/core/ext/transport/chttp2/transport/hpack_parser.cc", - "src/core/ext/transport/chttp2/transport/hpack_table.cc", + "src/core/ext/transport/chttp2/transport/hpack_parser_table.cc", + "src/core/ext/transport/chttp2/transport/hpack_utils.cc", "src/core/ext/transport/chttp2/transport/http2_settings.cc", "src/core/ext/transport/chttp2/transport/huffsyms.cc", "src/core/ext/transport/chttp2/transport/incoming_metadata.cc", @@ -2528,7 +2956,8 @@ grpc_cc_library( "src/core/ext/transport/chttp2/transport/frame_window_update.h", "src/core/ext/transport/chttp2/transport/hpack_encoder.h", "src/core/ext/transport/chttp2/transport/hpack_parser.h", - "src/core/ext/transport/chttp2/transport/hpack_table.h", + "src/core/ext/transport/chttp2/transport/hpack_parser_table.h", + "src/core/ext/transport/chttp2/transport/hpack_utils.h", "src/core/ext/transport/chttp2/transport/http2_settings.h", "src/core/ext/transport/chttp2/transport/huffsyms.h", "src/core/ext/transport/chttp2/transport/incoming_metadata.h", @@ -2551,6 +2980,11 @@ grpc_cc_library( "grpc_http_filters", "grpc_trace", "grpc_transport_chttp2_alpn", + "hpack_constants", + "hpack_encoder_index", + "hpack_encoder_table", + "match", + "popularity_count", ], ) @@ -2580,6 +3014,7 @@ grpc_cc_library( ], language = "c++", deps = [ + "config", "gpr_base", "grpc_base_c", "grpc_client_channel", @@ -2633,6 +3068,7 @@ grpc_cc_library( ], language = "c++", deps = [ + "config", "gpr_base", "grpc_base_c", "grpc_codegen", @@ -2878,6 +3314,7 @@ grpc_cc_library( ], language = "c++", public_hdrs = GRPCXX_PUBLIC_HDRS, + tags = ["avoid_dep"], visibility = ["@grpc:alt_grpc++_base_unsecure_legacy"], deps = [ "gpr_base", @@ -3060,6 +3497,7 @@ grpc_cc_library( public_hdrs = [ "include/grpcpp/ext/channelz_service_plugin.h", ], + visibility = ["@grpc:channelz"], deps = [ "gpr", "grpc", @@ -3120,6 +3558,7 @@ grpc_cc_library( grpc_cc_library( name = "grpc++_test", + testonly = True, srcs = [ "src/cpp/client/channel_test_peer.cc", ], diff --git a/CMakeLists.txt b/CMakeLists.txt index e00b434..0e8fbde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,13 +25,13 @@ cmake_minimum_required(VERSION 3.5.1) set(PACKAGE_NAME "grpc") -set(PACKAGE_VERSION "1.40.0") -set(gRPC_CORE_VERSION "18.0.0") -set(gRPC_CORE_SOVERSION "18") -set(gRPC_CPP_VERSION "1.40.0") -set(gRPC_CPP_SOVERSION "1.40") -set(gRPC_CSHARP_VERSION "2.40.0") -set(gRPC_CSHARP_SOVERSION "2.40") +set(PACKAGE_VERSION "1.41.0") +set(gRPC_CORE_VERSION "19.0.0") +set(gRPC_CORE_SOVERSION "19") +set(gRPC_CPP_VERSION "1.41.0") +set(gRPC_CPP_SOVERSION "1.41") +set(gRPC_CSHARP_VERSION "2.41.0") +set(gRPC_CSHARP_SOVERSION "2.41") set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}") set(PACKAGE_TARNAME "${PACKAGE_NAME}-${PACKAGE_VERSION}") set(PACKAGE_BUGREPORT "https://github.com/grpc/grpc/issues/") @@ -251,7 +251,7 @@ endif() if (gRPC_XDS_USER_AGENT_IS_CSHARP) # The value of the defines needs to contain quotes. # See https://github.com/grpc/grpc/blob/fbf32836a418cc84f58786700273b65cb9174e1d/src/core/ext/xds/xds_api.cc#L854 - add_definitions("-DGRPC_XDS_USER_AGENT_NAME_SUFFIX=\"csharp\"" "-DGRPC_XDS_USER_AGENT_VERSION_SUFFIX=\"2.40.0\"") + add_definitions("-DGRPC_XDS_USER_AGENT_NAME_SUFFIX=\"csharp\"" "-DGRPC_XDS_USER_AGENT_VERSION_SUFFIX=\"2.41.0\"") endif() include(cmake/abseil-cpp.cmake) @@ -377,8 +377,6 @@ add_custom_target(tools_c add_custom_target(tools_cxx DEPENDS gen_hpack_tables - gen_legal_metadata_characters - gen_percent_encoding_tables ) add_custom_target(tools @@ -490,6 +488,9 @@ protobuf_generate_grpc_cpp( src/proto/grpc/testing/xds/v3/endpoint.proto ) protobuf_generate_grpc_cpp( + src/proto/grpc/testing/xds/v3/extension.proto +) +protobuf_generate_grpc_cpp( src/proto/grpc/testing/xds/v3/fault.proto ) protobuf_generate_grpc_cpp( @@ -532,6 +533,9 @@ protobuf_generate_grpc_cpp( src/proto/grpc/testing/xds/v3/tls.proto ) protobuf_generate_grpc_cpp( + test/core/transport/binder/end2end/echo.proto +) +protobuf_generate_grpc_cpp( test/core/tsi/alts/fake_handshaker/handshaker.proto ) protobuf_generate_grpc_cpp( @@ -629,8 +633,8 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_c histogram_test) add_dependencies(buildtests_c host_port_test) add_dependencies(buildtests_c hpack_encoder_test) + add_dependencies(buildtests_c hpack_parser_table_test) add_dependencies(buildtests_c hpack_parser_test) - add_dependencies(buildtests_c hpack_table_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_c httpcli_test) endif() @@ -714,7 +718,6 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_c timeout_encoding_test) add_dependencies(buildtests_c timer_heap_test) add_dependencies(buildtests_c timer_list_test) - add_dependencies(buildtests_c tls_test) add_dependencies(buildtests_c transport_security_common_api_test) add_dependencies(buildtests_c transport_security_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) @@ -724,6 +727,7 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_c varint_test) add_custom_target(buildtests_cxx) + add_dependencies(buildtests_cxx activity_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx address_sorting_test) endif() @@ -749,7 +753,8 @@ if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx bdp_estimator_test) endif() - add_dependencies(buildtests_cxx binder_smoke_test) + add_dependencies(buildtests_cxx binder_server_test) + add_dependencies(buildtests_cxx binder_transport_test) add_dependencies(buildtests_cxx bitset_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx bm_alarm) @@ -817,6 +822,7 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx byte_buffer_test) add_dependencies(buildtests_cxx byte_stream_test) add_dependencies(buildtests_cxx cancel_ares_query_test) + add_dependencies(buildtests_cxx capture_test) add_dependencies(buildtests_cxx cel_authorization_engine_test) add_dependencies(buildtests_cxx certificate_provider_registry_test) add_dependencies(buildtests_cxx certificate_provider_store_test) @@ -843,10 +849,13 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx connectivity_state_test) add_dependencies(buildtests_cxx context_allocator_end2end_test) add_dependencies(buildtests_cxx context_list_test) + add_dependencies(buildtests_cxx context_test) + add_dependencies(buildtests_cxx core_configuration_test) add_dependencies(buildtests_cxx delegating_channel_test) add_dependencies(buildtests_cxx destroy_grpclb_channel_with_active_connect_stress_test) add_dependencies(buildtests_cxx dual_ref_counted_test) add_dependencies(buildtests_cxx duplicate_header_bad_client_test) + add_dependencies(buildtests_cxx end2end_binder_transport_test) add_dependencies(buildtests_cxx end2end_test) add_dependencies(buildtests_cxx endpoint_config_test) add_dependencies(buildtests_cxx error_details_test) @@ -856,9 +865,12 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx examine_stack_test) endif() add_dependencies(buildtests_cxx exception_test) + add_dependencies(buildtests_cxx fake_binder_test) add_dependencies(buildtests_cxx file_watcher_certificate_provider_factory_test) add_dependencies(buildtests_cxx filter_end2end_test) add_dependencies(buildtests_cxx flaky_network_test) + add_dependencies(buildtests_cxx flow_control_test) + add_dependencies(buildtests_cxx for_each_test) add_dependencies(buildtests_cxx generic_end2end_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx global_config_env_test) @@ -882,8 +894,10 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx head_of_line_blocking_bad_client_test) add_dependencies(buildtests_cxx headers_bad_client_test) add_dependencies(buildtests_cxx health_service_end2end_test) + add_dependencies(buildtests_cxx hpack_encoder_index_test) add_dependencies(buildtests_cxx http2_client) add_dependencies(buildtests_cxx hybrid_end2end_test) + add_dependencies(buildtests_cxx if_test) add_dependencies(buildtests_cxx init_test) add_dependencies(buildtests_cxx initial_settings_frame_bad_client_test) add_dependencies(buildtests_cxx insecure_security_connector_test) @@ -892,28 +906,40 @@ if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx interop_test) endif() + add_dependencies(buildtests_cxx join_test) add_dependencies(buildtests_cxx json_test) add_dependencies(buildtests_cxx large_metadata_bad_client_test) + add_dependencies(buildtests_cxx latch_test) add_dependencies(buildtests_cxx lb_get_cpu_stats_test) add_dependencies(buildtests_cxx lb_load_data_store_test) add_dependencies(buildtests_cxx linux_system_roots_test) add_dependencies(buildtests_cxx log_test) + add_dependencies(buildtests_cxx loop_test) add_dependencies(buildtests_cxx match_test) add_dependencies(buildtests_cxx matchers_test) add_dependencies(buildtests_cxx message_allocator_end2end_test) + add_dependencies(buildtests_cxx miscompile_with_no_unique_address_test) add_dependencies(buildtests_cxx mock_stream_test) add_dependencies(buildtests_cxx mock_test) add_dependencies(buildtests_cxx nonblocking_test) add_dependencies(buildtests_cxx noop-benchmark) + add_dependencies(buildtests_cxx observable_test) add_dependencies(buildtests_cxx orphanable_test) add_dependencies(buildtests_cxx out_of_bounds_bad_client_test) add_dependencies(buildtests_cxx overload_test) add_dependencies(buildtests_cxx pid_controller_test) + add_dependencies(buildtests_cxx pipe_test) + add_dependencies(buildtests_cxx poll_test) + add_dependencies(buildtests_cxx popularity_count_test) add_dependencies(buildtests_cxx port_sharing_end2end_test) + add_dependencies(buildtests_cxx promise_factory_test) + add_dependencies(buildtests_cxx promise_map_test) + add_dependencies(buildtests_cxx promise_test) add_dependencies(buildtests_cxx proto_server_reflection_test) add_dependencies(buildtests_cxx proto_utils_test) add_dependencies(buildtests_cxx qps_json_driver) add_dependencies(buildtests_cxx qps_worker) + add_dependencies(buildtests_cxx race_test) add_dependencies(buildtests_cxx raw_end2end_test) add_dependencies(buildtests_cxx rbac_translator_test) add_dependencies(buildtests_cxx ref_counted_ptr_test) @@ -922,7 +948,9 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx remove_stream_from_stalled_lists_test) endif() add_dependencies(buildtests_cxx retry_throttle_test) + add_dependencies(buildtests_cxx sdk_authz_end2end_test) add_dependencies(buildtests_cxx secure_auth_context_test) + add_dependencies(buildtests_cxx seq_test) add_dependencies(buildtests_cxx server_builder_plugin_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx server_builder_test) @@ -975,10 +1003,16 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx time_util_test) add_dependencies(buildtests_cxx timer_test) add_dependencies(buildtests_cxx tls_security_connector_test) + add_dependencies(buildtests_cxx tls_test) add_dependencies(buildtests_cxx too_many_pings_test) + add_dependencies(buildtests_cxx transport_stream_receiver_test) + add_dependencies(buildtests_cxx try_join_test) + add_dependencies(buildtests_cxx try_seq_test) add_dependencies(buildtests_cxx unknown_frame_bad_client_test) add_dependencies(buildtests_cxx uri_parser_test) add_dependencies(buildtests_cxx window_overflow_bad_client_test) + add_dependencies(buildtests_cxx wire_reader_test) + add_dependencies(buildtests_cxx wire_writer_test) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx work_serializer_test) endif() @@ -1207,6 +1241,11 @@ endif() if(gRPC_BUILD_TESTS) add_library(end2end_tests + src/core/lib/security/authorization/grpc_authorization_engine.cc + src/core/lib/security/authorization/grpc_authorization_policy_provider.cc + src/core/lib/security/authorization/matchers.cc + src/core/lib/security/authorization/rbac_policy.cc + src/core/lib/security/authorization/rbac_translator.cc test/core/end2end/cq_verifier.cc test/core/end2end/data/client_certs.cc test/core/end2end/data/server1_cert.cc @@ -1291,6 +1330,7 @@ add_library(end2end_tests test/core/end2end/tests/retry_streaming_succeeds_before_replay_finished.cc test/core/end2end/tests/retry_throttled.cc test/core/end2end/tests/retry_too_many_attempts.cc + test/core/end2end/tests/sdk_authz.cc test/core/end2end/tests/server_finishes_request.cc test/core/end2end/tests/server_streaming.cc test/core/end2end/tests/shutdown_finishes_calls.cc @@ -1386,7 +1426,6 @@ add_library(gpr src/core/lib/gpr/time_posix.cc src/core/lib/gpr/time_precise.cc src/core/lib/gpr/time_windows.cc - src/core/lib/gpr/tls_pthread.cc src/core/lib/gpr/tmpfile_msys.cc src/core/lib/gpr/tmpfile_posix.cc src/core/lib/gpr/tmpfile_windows.cc @@ -1556,12 +1595,10 @@ add_library(grpc src/core/ext/filters/client_channel/resolver.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc @@ -1619,8 +1656,10 @@ add_library(grpc src/core/ext/transport/chttp2/transport/frame_settings.cc src/core/ext/transport/chttp2/transport/frame_window_update.cc src/core/ext/transport/chttp2/transport/hpack_encoder.cc + src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc src/core/ext/transport/chttp2/transport/hpack_parser.cc - src/core/ext/transport/chttp2/transport/hpack_table.cc + src/core/ext/transport/chttp2/transport/hpack_parser_table.cc + src/core/ext/transport/chttp2/transport/hpack_utils.cc src/core/ext/transport/chttp2/transport/http2_settings.cc src/core/ext/transport/chttp2/transport/huffsyms.cc src/core/ext/transport/chttp2/transport/incoming_metadata.cc @@ -1847,6 +1886,7 @@ add_library(grpc src/core/lib/compression/stream_compression.cc src/core/lib/compression/stream_compression_gzip.cc src/core/lib/compression/stream_compression_identity.cc + src/core/lib/config/core_configuration.cc src/core/lib/debug/stats.cc src/core/lib/debug/stats_data.cc src/core/lib/debug/trace.cc @@ -1866,7 +1906,6 @@ add_library(grpc src/core/lib/iomgr/endpoint_cfstream.cc src/core/lib/iomgr/endpoint_pair_event_engine.cc src/core/lib/iomgr/endpoint_pair_posix.cc - src/core/lib/iomgr/endpoint_pair_uv.cc src/core/lib/iomgr/endpoint_pair_windows.cc src/core/lib/iomgr/error.cc src/core/lib/iomgr/error_cfstream.cc @@ -1902,7 +1941,6 @@ add_library(grpc src/core/lib/iomgr/iomgr_internal.cc src/core/lib/iomgr/iomgr_posix.cc src/core/lib/iomgr/iomgr_posix_cfstream.cc - src/core/lib/iomgr/iomgr_uv.cc src/core/lib/iomgr/iomgr_windows.cc src/core/lib/iomgr/is_epollexclusive_available.cc src/core/lib/iomgr/load_file.cc @@ -1913,7 +1951,6 @@ add_library(grpc src/core/lib/iomgr/pollset_set.cc src/core/lib/iomgr/pollset_set_custom.cc src/core/lib/iomgr/pollset_set_windows.cc - src/core/lib/iomgr/pollset_uv.cc src/core/lib/iomgr/pollset_windows.cc src/core/lib/iomgr/resolve_address.cc src/core/lib/iomgr/resolve_address_custom.cc @@ -1925,7 +1962,6 @@ add_library(grpc src/core/lib/iomgr/socket_utils_common_posix.cc src/core/lib/iomgr/socket_utils_linux.cc src/core/lib/iomgr/socket_utils_posix.cc - src/core/lib/iomgr/socket_utils_uv.cc src/core/lib/iomgr/socket_utils_windows.cc src/core/lib/iomgr/socket_windows.cc src/core/lib/iomgr/tcp_client.cc @@ -1942,7 +1978,6 @@ add_library(grpc src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc src/core/lib/iomgr/tcp_server_windows.cc - src/core/lib/iomgr/tcp_uv.cc src/core/lib/iomgr/tcp_windows.cc src/core/lib/iomgr/time_averaged_stats.cc src/core/lib/iomgr/timer.cc @@ -1950,7 +1985,6 @@ add_library(grpc src/core/lib/iomgr/timer_generic.cc src/core/lib/iomgr/timer_heap.cc src/core/lib/iomgr/timer_manager.cc - src/core/lib/iomgr/timer_uv.cc src/core/lib/iomgr/udp_server.cc src/core/lib/iomgr/unix_sockets_posix.cc src/core/lib/iomgr/unix_sockets_posix_noop.cc @@ -1965,6 +1999,7 @@ add_library(grpc src/core/lib/matchers/matchers.cc src/core/lib/security/authorization/authorization_policy_provider_vtable.cc src/core/lib/security/authorization/evaluate_args.cc + src/core/lib/security/authorization/sdk_server_authz_filter.cc src/core/lib/security/context/security_context.cc src/core/lib/security/credentials/alts/alts_credentials.cc src/core/lib/security/credentials/alts/check_gcp_environment.cc @@ -2129,6 +2164,7 @@ target_link_libraries(grpc absl::inlined_vector absl::bind_front absl::statusor + absl::variant gpr ${_gRPC_SSL_LIBRARIES} address_sorting @@ -2231,6 +2267,7 @@ add_library(grpc_test_util test/core/util/port_server_client.cc test/core/util/reconnect_server.cc test/core/util/resolve_localhost_ip46.cc + test/core/util/resource_user_util.cc test/core/util/slice_splitter.cc test/core/util/stack_tracer.cc test/core/util/subprocess_posix.cc @@ -2300,6 +2337,7 @@ add_library(grpc_test_util_unsecure test/core/util/port_server_client.cc test/core/util/reconnect_server.cc test/core/util/resolve_localhost_ip46.cc + test/core/util/resource_user_util.cc test/core/util/slice_splitter.cc test/core/util/stack_tracer.cc test/core/util/subprocess_posix.cc @@ -2388,12 +2426,10 @@ add_library(grpc_unsecure src/core/ext/filters/client_channel/resolver.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc @@ -2447,8 +2483,10 @@ add_library(grpc_unsecure src/core/ext/transport/chttp2/transport/frame_settings.cc src/core/ext/transport/chttp2/transport/frame_window_update.cc src/core/ext/transport/chttp2/transport/hpack_encoder.cc + src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc src/core/ext/transport/chttp2/transport/hpack_parser.cc - src/core/ext/transport/chttp2/transport/hpack_table.cc + src/core/ext/transport/chttp2/transport/hpack_parser_table.cc + src/core/ext/transport/chttp2/transport/hpack_utils.cc src/core/ext/transport/chttp2/transport/http2_settings.cc src/core/ext/transport/chttp2/transport/huffsyms.cc src/core/ext/transport/chttp2/transport/incoming_metadata.cc @@ -2484,6 +2522,7 @@ add_library(grpc_unsecure src/core/lib/compression/stream_compression.cc src/core/lib/compression/stream_compression_gzip.cc src/core/lib/compression/stream_compression_identity.cc + src/core/lib/config/core_configuration.cc src/core/lib/debug/stats.cc src/core/lib/debug/stats_data.cc src/core/lib/debug/trace.cc @@ -2502,7 +2541,6 @@ add_library(grpc_unsecure src/core/lib/iomgr/endpoint_cfstream.cc src/core/lib/iomgr/endpoint_pair_event_engine.cc src/core/lib/iomgr/endpoint_pair_posix.cc - src/core/lib/iomgr/endpoint_pair_uv.cc src/core/lib/iomgr/endpoint_pair_windows.cc src/core/lib/iomgr/error.cc src/core/lib/iomgr/error_cfstream.cc @@ -2538,7 +2576,6 @@ add_library(grpc_unsecure src/core/lib/iomgr/iomgr_internal.cc src/core/lib/iomgr/iomgr_posix.cc src/core/lib/iomgr/iomgr_posix_cfstream.cc - src/core/lib/iomgr/iomgr_uv.cc src/core/lib/iomgr/iomgr_windows.cc src/core/lib/iomgr/is_epollexclusive_available.cc src/core/lib/iomgr/load_file.cc @@ -2549,7 +2586,6 @@ add_library(grpc_unsecure src/core/lib/iomgr/pollset_set.cc src/core/lib/iomgr/pollset_set_custom.cc src/core/lib/iomgr/pollset_set_windows.cc - src/core/lib/iomgr/pollset_uv.cc src/core/lib/iomgr/pollset_windows.cc src/core/lib/iomgr/resolve_address.cc src/core/lib/iomgr/resolve_address_custom.cc @@ -2561,7 +2597,6 @@ add_library(grpc_unsecure src/core/lib/iomgr/socket_utils_common_posix.cc src/core/lib/iomgr/socket_utils_linux.cc src/core/lib/iomgr/socket_utils_posix.cc - src/core/lib/iomgr/socket_utils_uv.cc src/core/lib/iomgr/socket_utils_windows.cc src/core/lib/iomgr/socket_windows.cc src/core/lib/iomgr/tcp_client.cc @@ -2578,7 +2613,6 @@ add_library(grpc_unsecure src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc src/core/lib/iomgr/tcp_server_windows.cc - src/core/lib/iomgr/tcp_uv.cc src/core/lib/iomgr/tcp_windows.cc src/core/lib/iomgr/time_averaged_stats.cc src/core/lib/iomgr/timer.cc @@ -2586,7 +2620,6 @@ add_library(grpc_unsecure src/core/lib/iomgr/timer_generic.cc src/core/lib/iomgr/timer_heap.cc src/core/lib/iomgr/timer_manager.cc - src/core/lib/iomgr/timer_uv.cc src/core/lib/iomgr/udp_server.cc src/core/lib/iomgr/unix_sockets_posix.cc src/core/lib/iomgr/unix_sockets_posix_noop.cc @@ -2684,6 +2717,7 @@ target_link_libraries(grpc_unsecure absl::inlined_vector absl::bind_front absl::statusor + absl::variant gpr address_sorting ) @@ -3988,58 +4022,6 @@ target_link_libraries(gen_hpack_tables ) - -add_executable(gen_legal_metadata_characters - tools/codegen/core/gen_legal_metadata_characters.cc -) - -target_include_directories(gen_legal_metadata_characters - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/include - ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} - ${_gRPC_RE2_INCLUDE_DIR} - ${_gRPC_SSL_INCLUDE_DIR} - ${_gRPC_UPB_GENERATED_DIR} - ${_gRPC_UPB_GRPC_GENERATED_DIR} - ${_gRPC_UPB_INCLUDE_DIR} - ${_gRPC_XXHASH_INCLUDE_DIR} - ${_gRPC_ZLIB_INCLUDE_DIR} - ${_gRPC_PROTO_GENS_DIR} -) - -target_link_libraries(gen_legal_metadata_characters - ${_gRPC_PROTOBUF_LIBRARIES} - ${_gRPC_ALLTARGETS_LIBRARIES} -) - - - -add_executable(gen_percent_encoding_tables - tools/codegen/core/gen_percent_encoding_tables.cc -) - -target_include_directories(gen_percent_encoding_tables - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/include - ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} - ${_gRPC_RE2_INCLUDE_DIR} - ${_gRPC_SSL_INCLUDE_DIR} - ${_gRPC_UPB_GENERATED_DIR} - ${_gRPC_UPB_GRPC_GENERATED_DIR} - ${_gRPC_UPB_INCLUDE_DIR} - ${_gRPC_XXHASH_INCLUDE_DIR} - ${_gRPC_ZLIB_INCLUDE_DIR} - ${_gRPC_PROTO_GENS_DIR} -) - -target_link_libraries(gen_percent_encoding_tables - ${_gRPC_PROTOBUF_LIBRARIES} - ${_gRPC_ALLTARGETS_LIBRARIES} -) - - if(gRPC_BUILD_TESTS) add_executable(algorithm_test @@ -5855,11 +5837,11 @@ target_link_libraries(hpack_encoder_test endif() if(gRPC_BUILD_TESTS) -add_executable(hpack_parser_test - test/core/transport/chttp2/hpack_parser_test.cc +add_executable(hpack_parser_table_test + test/core/transport/chttp2/hpack_parser_table_test.cc ) -target_include_directories(hpack_parser_test +target_include_directories(hpack_parser_table_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -5873,7 +5855,7 @@ target_include_directories(hpack_parser_test ${_gRPC_ZLIB_INCLUDE_DIR} ) -target_link_libraries(hpack_parser_test +target_link_libraries(hpack_parser_table_test ${_gRPC_ALLTARGETS_LIBRARIES} grpc_test_util ) @@ -5882,11 +5864,11 @@ target_link_libraries(hpack_parser_test endif() if(gRPC_BUILD_TESTS) -add_executable(hpack_table_test - test/core/transport/chttp2/hpack_table_test.cc +add_executable(hpack_parser_test + test/core/transport/chttp2/hpack_parser_test.cc ) -target_include_directories(hpack_table_test +target_include_directories(hpack_parser_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -5900,7 +5882,7 @@ target_include_directories(hpack_table_test ${_gRPC_ZLIB_INCLUDE_DIR} ) -target_link_libraries(hpack_table_test +target_link_libraries(hpack_parser_test ${_gRPC_ALLTARGETS_LIBRARIES} grpc_test_util ) @@ -7551,33 +7533,6 @@ target_link_libraries(timer_list_test endif() if(gRPC_BUILD_TESTS) -add_executable(tls_test - test/core/gpr/tls_test.cc -) - -target_include_directories(tls_test - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/include - ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} - ${_gRPC_RE2_INCLUDE_DIR} - ${_gRPC_SSL_INCLUDE_DIR} - ${_gRPC_UPB_GENERATED_DIR} - ${_gRPC_UPB_GRPC_GENERATED_DIR} - ${_gRPC_UPB_INCLUDE_DIR} - ${_gRPC_XXHASH_INCLUDE_DIR} - ${_gRPC_ZLIB_INCLUDE_DIR} -) - -target_link_libraries(tls_test - ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util -) - - -endif() -if(gRPC_BUILD_TESTS) - add_executable(transport_security_common_api_test test/core/tsi/alts/handshaker/transport_security_common_api_test.cc ) @@ -7714,6 +7669,111 @@ target_link_libraries(varint_test endif() if(gRPC_BUILD_TESTS) + +add_executable(activity_test + src/core/ext/upb-generated/google/api/annotations.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + src/core/ext/upb-generated/google/api/http.upb.c + src/core/ext/upb-generated/google/protobuf/any.upb.c + src/core/ext/upb-generated/google/protobuf/duration.upb.c + src/core/ext/upb-generated/google/protobuf/empty.upb.c + src/core/ext/upb-generated/google/protobuf/struct.upb.c + src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + src/core/ext/upb-generated/google/rpc/status.upb.c + src/core/lib/gpr/alloc.cc + src/core/lib/gpr/atm.cc + src/core/lib/gpr/cpu_iphone.cc + src/core/lib/gpr/cpu_linux.cc + src/core/lib/gpr/cpu_posix.cc + src/core/lib/gpr/cpu_windows.cc + src/core/lib/gpr/env_linux.cc + src/core/lib/gpr/env_posix.cc + src/core/lib/gpr/env_windows.cc + src/core/lib/gpr/log.cc + src/core/lib/gpr/log_android.cc + src/core/lib/gpr/log_linux.cc + src/core/lib/gpr/log_posix.cc + src/core/lib/gpr/log_windows.cc + src/core/lib/gpr/murmur_hash.cc + src/core/lib/gpr/string.cc + src/core/lib/gpr/string_posix.cc + src/core/lib/gpr/string_util_windows.cc + src/core/lib/gpr/string_windows.cc + src/core/lib/gpr/sync.cc + src/core/lib/gpr/sync_abseil.cc + src/core/lib/gpr/sync_posix.cc + src/core/lib/gpr/sync_windows.cc + src/core/lib/gpr/time.cc + src/core/lib/gpr/time_posix.cc + src/core/lib/gpr/time_precise.cc + src/core/lib/gpr/time_windows.cc + src/core/lib/gpr/tmpfile_msys.cc + src/core/lib/gpr/tmpfile_posix.cc + src/core/lib/gpr/tmpfile_windows.cc + src/core/lib/gpr/wrap_memcpy.cc + src/core/lib/gprpp/arena.cc + src/core/lib/gprpp/examine_stack.cc + src/core/lib/gprpp/fork.cc + src/core/lib/gprpp/global_config_env.cc + src/core/lib/gprpp/host_port.cc + src/core/lib/gprpp/mpscq.cc + src/core/lib/gprpp/stat_posix.cc + src/core/lib/gprpp/stat_windows.cc + src/core/lib/gprpp/status_helper.cc + src/core/lib/gprpp/thd_posix.cc + src/core/lib/gprpp/thd_windows.cc + src/core/lib/gprpp/time_util.cc + src/core/lib/profiling/basic_timers.cc + src/core/lib/profiling/stap_timers.cc + src/core/lib/promise/activity.cc + test/core/promise/activity_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(activity_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(activity_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::base + absl::core_headers + absl::flat_hash_set + absl::memory + absl::status + absl::statusor + absl::cord + absl::str_format + absl::strings + absl::synchronization + absl::time + absl::optional + absl::variant + upb +) + + +endif() +if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(address_sorting_test @@ -8323,13 +8383,85 @@ endif() endif() if(gRPC_BUILD_TESTS) -add_executable(binder_smoke_test - test/core/transport/binder/binder_smoke_test.cc +add_executable(binder_server_test + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.pb.cc + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.pb.h + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.grpc.pb.h + src/core/ext/transport/binder/client/channel_create_impl.cc + src/core/ext/transport/binder/server/binder_server.cc + src/core/ext/transport/binder/server/binder_server_credentials.cc + src/core/ext/transport/binder/transport/binder_transport.cc + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/binder_android.cc + src/core/ext/transport/binder/wire_format/binder_constants.cc + src/core/ext/transport/binder/wire_format/transaction.cc + src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + src/core/ext/transport/binder/wire_format/wire_writer.cc + test/core/transport/binder/end2end/binder_server_test.cc + test/core/transport/binder/end2end/echo_service.cc + test/core/transport/binder/end2end/fake_binder.cc + test/cpp/end2end/test_service_impl.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(binder_server_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(binder_server_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::random_random + grpc++_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(binder_transport_test + src/core/ext/transport/binder/transport/binder_transport.cc + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/binder_constants.cc + src/core/ext/transport/binder/wire_format/transaction.cc + src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + src/core/ext/transport/binder/wire_format/wire_writer.cc + test/core/transport/binder/binder_transport_test.cc + test/core/transport/binder/mock_objects.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(binder_smoke_test +target_include_directories(binder_transport_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -8348,7 +8480,7 @@ target_include_directories(binder_smoke_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(binder_smoke_test +target_link_libraries(binder_transport_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} grpc_test_util @@ -9286,17 +9418,13 @@ target_link_libraries(cancel_ares_query_test endif() if(gRPC_BUILD_TESTS) -add_executable(cel_authorization_engine_test - src/core/lib/security/authorization/cel_authorization_engine.cc - src/core/lib/security/authorization/grpc_authorization_engine.cc - src/core/lib/security/authorization/matchers.cc - src/core/lib/security/authorization/rbac_policy.cc - test/core/security/cel_authorization_engine_test.cc +add_executable(capture_test + test/core/gprpp/capture_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(cel_authorization_engine_test +target_include_directories(capture_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -9315,24 +9443,27 @@ target_include_directories(cel_authorization_engine_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(cel_authorization_engine_test +target_link_libraries(capture_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - absl::flat_hash_set - grpc_test_util + absl::utility ) endif() if(gRPC_BUILD_TESTS) -add_executable(certificate_provider_registry_test - test/core/client_channel/certificate_provider_registry_test.cc +add_executable(cel_authorization_engine_test + src/core/lib/security/authorization/cel_authorization_engine.cc + src/core/lib/security/authorization/grpc_authorization_engine.cc + src/core/lib/security/authorization/matchers.cc + src/core/lib/security/authorization/rbac_policy.cc + test/core/security/cel_authorization_engine_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(certificate_provider_registry_test +target_include_directories(cel_authorization_engine_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -9351,7 +9482,43 @@ target_include_directories(certificate_provider_registry_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(certificate_provider_registry_test +target_link_libraries(cel_authorization_engine_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::flat_hash_set + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(certificate_provider_registry_test + test/core/client_channel/certificate_provider_registry_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(certificate_provider_registry_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(certificate_provider_registry_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} grpc_test_util @@ -10218,6 +10385,143 @@ target_link_libraries(context_list_test endif() if(gRPC_BUILD_TESTS) +add_executable(context_test + test/core/promise/context_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(context_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(context_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(core_configuration_test + src/core/ext/upb-generated/google/api/annotations.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + src/core/ext/upb-generated/google/api/http.upb.c + src/core/ext/upb-generated/google/protobuf/any.upb.c + src/core/ext/upb-generated/google/protobuf/duration.upb.c + src/core/ext/upb-generated/google/protobuf/empty.upb.c + src/core/ext/upb-generated/google/protobuf/struct.upb.c + src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + src/core/ext/upb-generated/google/rpc/status.upb.c + src/core/lib/channel/handshaker_registry.cc + src/core/lib/config/core_configuration.cc + src/core/lib/gpr/alloc.cc + src/core/lib/gpr/atm.cc + src/core/lib/gpr/cpu_iphone.cc + src/core/lib/gpr/cpu_linux.cc + src/core/lib/gpr/cpu_posix.cc + src/core/lib/gpr/cpu_windows.cc + src/core/lib/gpr/env_linux.cc + src/core/lib/gpr/env_posix.cc + src/core/lib/gpr/env_windows.cc + src/core/lib/gpr/log.cc + src/core/lib/gpr/log_android.cc + src/core/lib/gpr/log_linux.cc + src/core/lib/gpr/log_posix.cc + src/core/lib/gpr/log_windows.cc + src/core/lib/gpr/murmur_hash.cc + src/core/lib/gpr/string.cc + src/core/lib/gpr/string_posix.cc + src/core/lib/gpr/string_util_windows.cc + src/core/lib/gpr/string_windows.cc + src/core/lib/gpr/sync.cc + src/core/lib/gpr/sync_abseil.cc + src/core/lib/gpr/sync_posix.cc + src/core/lib/gpr/sync_windows.cc + src/core/lib/gpr/time.cc + src/core/lib/gpr/time_posix.cc + src/core/lib/gpr/time_precise.cc + src/core/lib/gpr/time_windows.cc + src/core/lib/gpr/tmpfile_msys.cc + src/core/lib/gpr/tmpfile_posix.cc + src/core/lib/gpr/tmpfile_windows.cc + src/core/lib/gpr/wrap_memcpy.cc + src/core/lib/gprpp/arena.cc + src/core/lib/gprpp/examine_stack.cc + src/core/lib/gprpp/fork.cc + src/core/lib/gprpp/global_config_env.cc + src/core/lib/gprpp/host_port.cc + src/core/lib/gprpp/mpscq.cc + src/core/lib/gprpp/stat_posix.cc + src/core/lib/gprpp/stat_windows.cc + src/core/lib/gprpp/status_helper.cc + src/core/lib/gprpp/thd_posix.cc + src/core/lib/gprpp/thd_windows.cc + src/core/lib/gprpp/time_util.cc + src/core/lib/profiling/basic_timers.cc + src/core/lib/profiling/stap_timers.cc + test/core/config/core_configuration_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(core_configuration_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(core_configuration_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::base + absl::core_headers + absl::memory + absl::status + absl::cord + absl::str_format + absl::strings + absl::synchronization + absl::time + absl::optional + upb +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(delegating_channel_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc @@ -10373,6 +10677,92 @@ target_link_libraries(duplicate_header_bad_client_test endif() if(gRPC_BUILD_TESTS) +add_executable(end2end_binder_transport_test + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.pb.cc + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.pb.h + ${_gRPC_PROTO_GENS_DIR}/test/core/transport/binder/end2end/echo.grpc.pb.h + src/core/ext/transport/binder/transport/binder_transport.cc + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/binder_constants.cc + src/core/ext/transport/binder/wire_format/transaction.cc + src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + src/core/ext/transport/binder/wire_format/wire_writer.cc + src/cpp/client/channel_cc.cc + src/cpp/client/client_callback.cc + src/cpp/client/client_context.cc + src/cpp/client/client_interceptor.cc + src/cpp/client/create_channel.cc + src/cpp/client/create_channel_internal.cc + src/cpp/client/create_channel_posix.cc + src/cpp/client/credentials_cc.cc + src/cpp/codegen/codegen_init.cc + src/cpp/common/alarm.cc + src/cpp/common/channel_arguments.cc + src/cpp/common/channel_filter.cc + src/cpp/common/completion_queue_cc.cc + src/cpp/common/core_codegen.cc + src/cpp/common/resource_quota_cc.cc + src/cpp/common/rpc_method.cc + src/cpp/common/validate_service_config.cc + src/cpp/common/version_cc.cc + src/cpp/server/async_generic_service.cc + src/cpp/server/channel_argument_option.cc + src/cpp/server/create_default_thread_pool.cc + src/cpp/server/dynamic_thread_pool.cc + src/cpp/server/external_connection_acceptor_impl.cc + src/cpp/server/health/default_health_check_service.cc + src/cpp/server/health/health_check_service.cc + src/cpp/server/health/health_check_service_server_builder_option.cc + src/cpp/server/server_builder.cc + src/cpp/server/server_callback.cc + src/cpp/server/server_cc.cc + src/cpp/server/server_context.cc + src/cpp/server/server_credentials.cc + src/cpp/server/server_posix.cc + src/cpp/thread_manager/thread_manager.cc + src/cpp/util/byte_buffer_cc.cc + src/cpp/util/status.cc + src/cpp/util/string_ref.cc + src/cpp/util/time_cc.cc + test/core/transport/binder/end2end/echo_service.cc + test/core/transport/binder/end2end/end2end_binder_transport_test.cc + test/core/transport/binder/end2end/fake_binder.cc + test/core/transport/binder/end2end/testing_channel_create.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(end2end_binder_transport_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(end2end_binder_transport_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::random_random + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc @@ -10660,13 +11050,19 @@ target_link_libraries(exception_test endif() if(gRPC_BUILD_TESTS) -add_executable(file_watcher_certificate_provider_factory_test - test/core/xds/file_watcher_certificate_provider_factory_test.cc +add_executable(fake_binder_test + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/binder_constants.cc + src/core/ext/transport/binder/wire_format/transaction.cc + src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + src/core/ext/transport/binder/wire_format/wire_writer.cc + test/core/transport/binder/end2end/fake_binder.cc + test/core/transport/binder/end2end/fake_binder_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(file_watcher_certificate_provider_factory_test +target_include_directories(fake_binder_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -10685,9 +11081,10 @@ target_include_directories(file_watcher_certificate_provider_factory_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(file_watcher_certificate_provider_factory_test +target_link_libraries(fake_binder_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} + absl::random_random grpc_test_util ) @@ -10695,25 +11092,60 @@ target_link_libraries(file_watcher_certificate_provider_factory_test endif() if(gRPC_BUILD_TESTS) -add_executable(filter_end2end_test - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h - test/cpp/end2end/filter_end2end_test.cc - third_party/googletest/googletest/src/gtest-all.cc +add_executable(file_watcher_certificate_provider_factory_test + test/core/xds/file_watcher_certificate_provider_factory_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(file_watcher_certificate_provider_factory_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(file_watcher_certificate_provider_factory_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(filter_end2end_test + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h + test/cpp/end2end/filter_end2end_test.cc + third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) @@ -10794,6 +11226,147 @@ target_link_libraries(flaky_network_test endif() if(gRPC_BUILD_TESTS) +add_executable(flow_control_test + test/core/end2end/cq_verifier.cc + test/core/transport/chttp2/flow_control_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(flow_control_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(flow_control_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(for_each_test + src/core/ext/upb-generated/google/api/annotations.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + src/core/ext/upb-generated/google/api/http.upb.c + src/core/ext/upb-generated/google/protobuf/any.upb.c + src/core/ext/upb-generated/google/protobuf/duration.upb.c + src/core/ext/upb-generated/google/protobuf/empty.upb.c + src/core/ext/upb-generated/google/protobuf/struct.upb.c + src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + src/core/ext/upb-generated/google/rpc/status.upb.c + src/core/lib/gpr/alloc.cc + src/core/lib/gpr/atm.cc + src/core/lib/gpr/cpu_iphone.cc + src/core/lib/gpr/cpu_linux.cc + src/core/lib/gpr/cpu_posix.cc + src/core/lib/gpr/cpu_windows.cc + src/core/lib/gpr/env_linux.cc + src/core/lib/gpr/env_posix.cc + src/core/lib/gpr/env_windows.cc + src/core/lib/gpr/log.cc + src/core/lib/gpr/log_android.cc + src/core/lib/gpr/log_linux.cc + src/core/lib/gpr/log_posix.cc + src/core/lib/gpr/log_windows.cc + src/core/lib/gpr/murmur_hash.cc + src/core/lib/gpr/string.cc + src/core/lib/gpr/string_posix.cc + src/core/lib/gpr/string_util_windows.cc + src/core/lib/gpr/string_windows.cc + src/core/lib/gpr/sync.cc + src/core/lib/gpr/sync_abseil.cc + src/core/lib/gpr/sync_posix.cc + src/core/lib/gpr/sync_windows.cc + src/core/lib/gpr/time.cc + src/core/lib/gpr/time_posix.cc + src/core/lib/gpr/time_precise.cc + src/core/lib/gpr/time_windows.cc + src/core/lib/gpr/tmpfile_msys.cc + src/core/lib/gpr/tmpfile_posix.cc + src/core/lib/gpr/tmpfile_windows.cc + src/core/lib/gpr/wrap_memcpy.cc + src/core/lib/gprpp/arena.cc + src/core/lib/gprpp/examine_stack.cc + src/core/lib/gprpp/fork.cc + src/core/lib/gprpp/global_config_env.cc + src/core/lib/gprpp/host_port.cc + src/core/lib/gprpp/mpscq.cc + src/core/lib/gprpp/stat_posix.cc + src/core/lib/gprpp/stat_windows.cc + src/core/lib/gprpp/status_helper.cc + src/core/lib/gprpp/thd_posix.cc + src/core/lib/gprpp/thd_windows.cc + src/core/lib/gprpp/time_util.cc + src/core/lib/profiling/basic_timers.cc + src/core/lib/profiling/stap_timers.cc + src/core/lib/promise/activity.cc + test/core/promise/for_each_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(for_each_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(for_each_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::base + absl::core_headers + absl::flat_hash_set + absl::memory + absl::status + absl::statusor + absl::cord + absl::str_format + absl::strings + absl::synchronization + absl::time + absl::optional + absl::variant + upb +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(generic_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc @@ -11504,6 +12077,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} grpc++_reflection + grpc++_test_config grpc++_test_util ) @@ -11601,6 +12175,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) target_link_libraries(grpclb_end2end_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} + grpc++_test_config grpc++_test_util ) @@ -11775,6 +12350,41 @@ target_link_libraries(health_service_end2end_test endif() if(gRPC_BUILD_TESTS) +add_executable(hpack_encoder_index_test + test/core/transport/chttp2/hpack_encoder_index_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(hpack_encoder_index_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(hpack_encoder_index_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::optional +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(http2_client ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/empty.grpc.pb.cc @@ -11875,6 +12485,42 @@ target_link_libraries(hybrid_end2end_test endif() if(gRPC_BUILD_TESTS) +add_executable(if_test + test/core/promise/if_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(if_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(if_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::statusor + absl::variant +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(init_test test/core/surface/init_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -12121,13 +12767,13 @@ endif() endif() if(gRPC_BUILD_TESTS) -add_executable(json_test - test/core/json/json_test.cc +add_executable(join_test + test/core/promise/join_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(json_test +target_include_directories(join_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12146,10 +12792,45 @@ target_include_directories(json_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(json_test +target_link_libraries(join_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util + absl::variant +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(json_test + test/core/json/json_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(json_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(json_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util ) @@ -12193,6 +12874,110 @@ target_link_libraries(large_metadata_bad_client_test endif() if(gRPC_BUILD_TESTS) +add_executable(latch_test + src/core/ext/upb-generated/google/api/annotations.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + src/core/ext/upb-generated/google/api/http.upb.c + src/core/ext/upb-generated/google/protobuf/any.upb.c + src/core/ext/upb-generated/google/protobuf/duration.upb.c + src/core/ext/upb-generated/google/protobuf/empty.upb.c + src/core/ext/upb-generated/google/protobuf/struct.upb.c + src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + src/core/ext/upb-generated/google/rpc/status.upb.c + src/core/lib/gpr/alloc.cc + src/core/lib/gpr/atm.cc + src/core/lib/gpr/cpu_iphone.cc + src/core/lib/gpr/cpu_linux.cc + src/core/lib/gpr/cpu_posix.cc + src/core/lib/gpr/cpu_windows.cc + src/core/lib/gpr/env_linux.cc + src/core/lib/gpr/env_posix.cc + src/core/lib/gpr/env_windows.cc + src/core/lib/gpr/log.cc + src/core/lib/gpr/log_android.cc + src/core/lib/gpr/log_linux.cc + src/core/lib/gpr/log_posix.cc + src/core/lib/gpr/log_windows.cc + src/core/lib/gpr/murmur_hash.cc + src/core/lib/gpr/string.cc + src/core/lib/gpr/string_posix.cc + src/core/lib/gpr/string_util_windows.cc + src/core/lib/gpr/string_windows.cc + src/core/lib/gpr/sync.cc + src/core/lib/gpr/sync_abseil.cc + src/core/lib/gpr/sync_posix.cc + src/core/lib/gpr/sync_windows.cc + src/core/lib/gpr/time.cc + src/core/lib/gpr/time_posix.cc + src/core/lib/gpr/time_precise.cc + src/core/lib/gpr/time_windows.cc + src/core/lib/gpr/tmpfile_msys.cc + src/core/lib/gpr/tmpfile_posix.cc + src/core/lib/gpr/tmpfile_windows.cc + src/core/lib/gpr/wrap_memcpy.cc + src/core/lib/gprpp/arena.cc + src/core/lib/gprpp/examine_stack.cc + src/core/lib/gprpp/fork.cc + src/core/lib/gprpp/global_config_env.cc + src/core/lib/gprpp/host_port.cc + src/core/lib/gprpp/mpscq.cc + src/core/lib/gprpp/stat_posix.cc + src/core/lib/gprpp/stat_windows.cc + src/core/lib/gprpp/status_helper.cc + src/core/lib/gprpp/thd_posix.cc + src/core/lib/gprpp/thd_windows.cc + src/core/lib/gprpp/time_util.cc + src/core/lib/profiling/basic_timers.cc + src/core/lib/profiling/stap_timers.cc + src/core/lib/promise/activity.cc + test/core/promise/latch_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(latch_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(latch_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::base + absl::core_headers + absl::memory + absl::status + absl::statusor + absl::cord + absl::str_format + absl::strings + absl::synchronization + absl::time + absl::optional + absl::variant + upb +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(lb_get_cpu_stats_test src/cpp/server/load_reporter/get_cpu_stats_linux.cc src/cpp/server/load_reporter/get_cpu_stats_macos.cc @@ -12340,6 +13125,41 @@ target_link_libraries(log_test endif() if(gRPC_BUILD_TESTS) +add_executable(loop_test + test/core/promise/loop_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(loop_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(loop_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::variant +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(match_test test/core/gprpp/match_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -12458,6 +13278,40 @@ target_link_libraries(message_allocator_end2end_test endif() if(gRPC_BUILD_TESTS) +add_executable(miscompile_with_no_unique_address_test + test/core/compiler_bugs/miscompile_with_no_unique_address_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(miscompile_with_no_unique_address_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(miscompile_with_no_unique_address_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(mock_stream_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc @@ -12576,7 +13430,381 @@ add_executable(nonblocking_test third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(nonblocking_test +target_include_directories(nonblocking_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(nonblocking_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc++_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(noop-benchmark + test/cpp/microbenchmarks/noop-benchmark.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(noop-benchmark + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(noop-benchmark + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + ${_gRPC_BENCHMARK_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(observable_test + src/core/ext/upb-generated/google/api/annotations.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + src/core/ext/upb-generated/google/api/http.upb.c + src/core/ext/upb-generated/google/protobuf/any.upb.c + src/core/ext/upb-generated/google/protobuf/duration.upb.c + src/core/ext/upb-generated/google/protobuf/empty.upb.c + src/core/ext/upb-generated/google/protobuf/struct.upb.c + src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + src/core/ext/upb-generated/google/rpc/status.upb.c + src/core/lib/gpr/alloc.cc + src/core/lib/gpr/atm.cc + src/core/lib/gpr/cpu_iphone.cc + src/core/lib/gpr/cpu_linux.cc + src/core/lib/gpr/cpu_posix.cc + src/core/lib/gpr/cpu_windows.cc + src/core/lib/gpr/env_linux.cc + src/core/lib/gpr/env_posix.cc + src/core/lib/gpr/env_windows.cc + src/core/lib/gpr/log.cc + src/core/lib/gpr/log_android.cc + src/core/lib/gpr/log_linux.cc + src/core/lib/gpr/log_posix.cc + src/core/lib/gpr/log_windows.cc + src/core/lib/gpr/murmur_hash.cc + src/core/lib/gpr/string.cc + src/core/lib/gpr/string_posix.cc + src/core/lib/gpr/string_util_windows.cc + src/core/lib/gpr/string_windows.cc + src/core/lib/gpr/sync.cc + src/core/lib/gpr/sync_abseil.cc + src/core/lib/gpr/sync_posix.cc + src/core/lib/gpr/sync_windows.cc + src/core/lib/gpr/time.cc + src/core/lib/gpr/time_posix.cc + src/core/lib/gpr/time_precise.cc + src/core/lib/gpr/time_windows.cc + src/core/lib/gpr/tmpfile_msys.cc + src/core/lib/gpr/tmpfile_posix.cc + src/core/lib/gpr/tmpfile_windows.cc + src/core/lib/gpr/wrap_memcpy.cc + src/core/lib/gprpp/arena.cc + src/core/lib/gprpp/examine_stack.cc + src/core/lib/gprpp/fork.cc + src/core/lib/gprpp/global_config_env.cc + src/core/lib/gprpp/host_port.cc + src/core/lib/gprpp/mpscq.cc + src/core/lib/gprpp/stat_posix.cc + src/core/lib/gprpp/stat_windows.cc + src/core/lib/gprpp/status_helper.cc + src/core/lib/gprpp/thd_posix.cc + src/core/lib/gprpp/thd_windows.cc + src/core/lib/gprpp/time_util.cc + src/core/lib/profiling/basic_timers.cc + src/core/lib/profiling/stap_timers.cc + src/core/lib/promise/activity.cc + test/core/promise/observable_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(observable_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(observable_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::base + absl::core_headers + absl::flat_hash_set + absl::memory + absl::status + absl::statusor + absl::cord + absl::str_format + absl::strings + absl::synchronization + absl::time + absl::optional + absl::variant + upb +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(orphanable_test + test/core/gprpp/orphanable_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(orphanable_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(orphanable_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(out_of_bounds_bad_client_test + test/core/bad_client/bad_client.cc + test/core/bad_client/tests/out_of_bounds.cc + test/core/end2end/cq_verifier.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(out_of_bounds_bad_client_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(out_of_bounds_bad_client_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(overload_test + test/core/gprpp/overload_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(overload_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(overload_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(pid_controller_test + test/core/transport/pid_controller_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(pid_controller_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(pid_controller_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(pipe_test + src/core/ext/upb-generated/google/api/annotations.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + src/core/ext/upb-generated/google/api/http.upb.c + src/core/ext/upb-generated/google/protobuf/any.upb.c + src/core/ext/upb-generated/google/protobuf/duration.upb.c + src/core/ext/upb-generated/google/protobuf/empty.upb.c + src/core/ext/upb-generated/google/protobuf/struct.upb.c + src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + src/core/ext/upb-generated/google/rpc/status.upb.c + src/core/lib/gpr/alloc.cc + src/core/lib/gpr/atm.cc + src/core/lib/gpr/cpu_iphone.cc + src/core/lib/gpr/cpu_linux.cc + src/core/lib/gpr/cpu_posix.cc + src/core/lib/gpr/cpu_windows.cc + src/core/lib/gpr/env_linux.cc + src/core/lib/gpr/env_posix.cc + src/core/lib/gpr/env_windows.cc + src/core/lib/gpr/log.cc + src/core/lib/gpr/log_android.cc + src/core/lib/gpr/log_linux.cc + src/core/lib/gpr/log_posix.cc + src/core/lib/gpr/log_windows.cc + src/core/lib/gpr/murmur_hash.cc + src/core/lib/gpr/string.cc + src/core/lib/gpr/string_posix.cc + src/core/lib/gpr/string_util_windows.cc + src/core/lib/gpr/string_windows.cc + src/core/lib/gpr/sync.cc + src/core/lib/gpr/sync_abseil.cc + src/core/lib/gpr/sync_posix.cc + src/core/lib/gpr/sync_windows.cc + src/core/lib/gpr/time.cc + src/core/lib/gpr/time_posix.cc + src/core/lib/gpr/time_precise.cc + src/core/lib/gpr/time_windows.cc + src/core/lib/gpr/tmpfile_msys.cc + src/core/lib/gpr/tmpfile_posix.cc + src/core/lib/gpr/tmpfile_windows.cc + src/core/lib/gpr/wrap_memcpy.cc + src/core/lib/gprpp/arena.cc + src/core/lib/gprpp/examine_stack.cc + src/core/lib/gprpp/fork.cc + src/core/lib/gprpp/global_config_env.cc + src/core/lib/gprpp/host_port.cc + src/core/lib/gprpp/mpscq.cc + src/core/lib/gprpp/stat_posix.cc + src/core/lib/gprpp/stat_windows.cc + src/core/lib/gprpp/status_helper.cc + src/core/lib/gprpp/thd_posix.cc + src/core/lib/gprpp/thd_windows.cc + src/core/lib/gprpp/time_util.cc + src/core/lib/profiling/basic_timers.cc + src/core/lib/profiling/stap_timers.cc + src/core/lib/promise/activity.cc + test/core/promise/pipe_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(pipe_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12595,23 +13823,35 @@ target_include_directories(nonblocking_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(nonblocking_test +target_link_libraries(pipe_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc++_test_util + absl::base + absl::core_headers + absl::memory + absl::status + absl::statusor + absl::cord + absl::str_format + absl::strings + absl::synchronization + absl::time + absl::optional + absl::variant + upb ) endif() if(gRPC_BUILD_TESTS) -add_executable(noop-benchmark - test/cpp/microbenchmarks/noop-benchmark.cc +add_executable(poll_test + test/core/promise/poll_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(noop-benchmark +target_include_directories(poll_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12630,24 +13870,23 @@ target_include_directories(noop-benchmark ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(noop-benchmark +target_link_libraries(poll_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - ${_gRPC_BENCHMARK_LIBRARIES} - grpc_test_util + absl::variant ) endif() if(gRPC_BUILD_TESTS) -add_executable(orphanable_test - test/core/gprpp/orphanable_test.cc +add_executable(popularity_count_test + test/core/transport/chttp2/popularity_count_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(orphanable_test +target_include_directories(popularity_count_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12666,25 +13905,35 @@ target_include_directories(orphanable_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(orphanable_test +target_link_libraries(popularity_count_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util ) endif() if(gRPC_BUILD_TESTS) -add_executable(out_of_bounds_bad_client_test - test/core/bad_client/bad_client.cc - test/core/bad_client/tests/out_of_bounds.cc - test/core/end2end/cq_verifier.cc +add_executable(port_sharing_end2end_test + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h + test/cpp/end2end/port_sharing_end2end_test.cc + test/cpp/end2end/test_service_impl.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(out_of_bounds_bad_client_test +target_include_directories(port_sharing_end2end_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12703,23 +13952,23 @@ target_include_directories(out_of_bounds_bad_client_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(out_of_bounds_bad_client_test +target_link_libraries(port_sharing_end2end_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util + grpc++_test_util ) endif() if(gRPC_BUILD_TESTS) -add_executable(overload_test - test/core/gprpp/overload_test.cc +add_executable(promise_factory_test + test/core/promise/promise_factory_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(overload_test +target_include_directories(promise_factory_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12738,22 +13987,26 @@ target_include_directories(overload_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(overload_test +target_link_libraries(promise_factory_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} + absl::bind_front + absl::optional + absl::variant + absl::utility ) endif() if(gRPC_BUILD_TESTS) -add_executable(pid_controller_test - test/core/transport/pid_controller_test.cc +add_executable(promise_map_test + test/core/promise/map_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(pid_controller_test +target_include_directories(promise_map_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12772,36 +14025,24 @@ target_include_directories(pid_controller_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(pid_controller_test +target_link_libraries(promise_map_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util + absl::optional + absl::variant ) endif() if(gRPC_BUILD_TESTS) -add_executable(port_sharing_end2end_test - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h - ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h - test/cpp/end2end/port_sharing_end2end_test.cc - test/cpp/end2end/test_service_impl.cc +add_executable(promise_test + test/core/promise/promise_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(port_sharing_end2end_test +target_include_directories(promise_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -12820,10 +14061,11 @@ target_include_directories(port_sharing_end2end_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(port_sharing_end2end_test +target_link_libraries(promise_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc++_test_util + absl::optional + absl::variant ) @@ -13076,6 +14318,41 @@ target_link_libraries(qps_worker endif() if(gRPC_BUILD_TESTS) +add_executable(race_test + test/core/promise/race_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(race_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(race_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::variant +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(raw_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.grpc.pb.cc @@ -13209,7 +14486,133 @@ add_executable(ref_counted_test third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(ref_counted_test +target_include_directories(ref_counted_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(ref_counted_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) +if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) + + add_executable(remove_stream_from_stalled_lists_test + test/core/transport/chttp2/remove_stream_from_stalled_lists_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc + ) + + target_include_directories(remove_stream_from_stalled_lists_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} + ) + + target_link_libraries(remove_stream_from_stalled_lists_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util + ) + + +endif() +endif() +if(gRPC_BUILD_TESTS) + +add_executable(retry_throttle_test + test/core/client_channel/retry_throttle_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(retry_throttle_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(retry_throttle_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(sdk_authz_end2end_test + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo_messages.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/simple_messages.grpc.pb.h + src/core/lib/security/authorization/grpc_authorization_engine.cc + src/core/lib/security/authorization/grpc_authorization_policy_provider.cc + src/core/lib/security/authorization/matchers.cc + src/core/lib/security/authorization/rbac_policy.cc + src/core/lib/security/authorization/rbac_translator.cc + src/cpp/server/authorization_policy_provider.cc + test/cpp/end2end/sdk_authz_end2end_test.cc + test/cpp/end2end/test_service_impl.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(sdk_authz_end2end_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -13228,60 +14631,23 @@ target_include_directories(ref_counted_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(ref_counted_test +target_link_libraries(sdk_authz_end2end_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util + grpc++_test_util ) endif() if(gRPC_BUILD_TESTS) -if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - - add_executable(remove_stream_from_stalled_lists_test - test/core/transport/chttp2/remove_stream_from_stalled_lists_test.cc - third_party/googletest/googletest/src/gtest-all.cc - third_party/googletest/googlemock/src/gmock-all.cc - ) - - target_include_directories(remove_stream_from_stalled_lists_test - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/include - ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} - ${_gRPC_RE2_INCLUDE_DIR} - ${_gRPC_SSL_INCLUDE_DIR} - ${_gRPC_UPB_GENERATED_DIR} - ${_gRPC_UPB_GRPC_GENERATED_DIR} - ${_gRPC_UPB_INCLUDE_DIR} - ${_gRPC_XXHASH_INCLUDE_DIR} - ${_gRPC_ZLIB_INCLUDE_DIR} - third_party/googletest/googletest/include - third_party/googletest/googletest - third_party/googletest/googlemock/include - third_party/googletest/googlemock - ${_gRPC_PROTO_GENS_DIR} - ) - - target_link_libraries(remove_stream_from_stalled_lists_test - ${_gRPC_PROTOBUF_LIBRARIES} - ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util - ) - - -endif() -endif() -if(gRPC_BUILD_TESTS) -add_executable(retry_throttle_test - test/core/client_channel/retry_throttle_test.cc +add_executable(secure_auth_context_test + test/cpp/common/secure_auth_context_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(retry_throttle_test +target_include_directories(secure_auth_context_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -13300,23 +14666,23 @@ target_include_directories(retry_throttle_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(retry_throttle_test +target_link_libraries(secure_auth_context_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc_test_util + grpc++_test_util ) endif() if(gRPC_BUILD_TESTS) -add_executable(secure_auth_context_test - test/cpp/common/secure_auth_context_test.cc +add_executable(seq_test + test/core/promise/seq_test.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc ) -target_include_directories(secure_auth_context_test +target_include_directories(seq_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include @@ -13335,10 +14701,10 @@ target_include_directories(secure_auth_context_test ${_gRPC_PROTO_GENS_DIR} ) -target_link_libraries(secure_auth_context_test +target_link_libraries(seq_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} - grpc++_test_util + absl::variant ) @@ -14781,6 +16147,41 @@ target_link_libraries(tls_security_connector_test endif() if(gRPC_BUILD_TESTS) +add_executable(tls_test + test/core/gpr/tls_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(tls_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(tls_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(too_many_pings_test test/core/end2end/cq_verifier.cc test/core/transport/chttp2/too_many_pings_test.cc @@ -14818,6 +16219,117 @@ target_link_libraries(too_many_pings_test endif() if(gRPC_BUILD_TESTS) +add_executable(transport_stream_receiver_test + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/transaction.cc + test/core/transport/binder/transport_stream_receiver_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(transport_stream_receiver_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(transport_stream_receiver_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(try_join_test + test/core/promise/try_join_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(try_join_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(try_join_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::status + absl::statusor + absl::variant +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(try_seq_test + test/core/promise/try_seq_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(try_seq_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(try_seq_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + absl::status + absl::statusor + absl::variant +) + + +endif() +if(gRPC_BUILD_TESTS) + add_executable(unknown_frame_bad_client_test test/core/bad_client/bad_client.cc test/core/bad_client/tests/unknown_frame.cc @@ -14926,6 +16438,88 @@ target_link_libraries(window_overflow_bad_client_test endif() if(gRPC_BUILD_TESTS) + +add_executable(wire_reader_test + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/binder_constants.cc + src/core/ext/transport/binder/wire_format/transaction.cc + src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + src/core/ext/transport/binder/wire_format/wire_writer.cc + test/core/transport/binder/mock_objects.cc + test/core/transport/binder/wire_reader_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(wire_reader_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(wire_reader_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) + +add_executable(wire_writer_test + src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + src/core/ext/transport/binder/wire_format/binder_constants.cc + src/core/ext/transport/binder/wire_format/transaction.cc + src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + src/core/ext/transport/binder/wire_format/wire_writer.cc + test/core/transport/binder/mock_objects.cc + test/core/transport/binder/wire_writer_test.cc + third_party/googletest/googletest/src/gtest-all.cc + third_party/googletest/googlemock/src/gmock-all.cc +) + +target_include_directories(wire_writer_test + PRIVATE + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${_gRPC_ADDRESS_SORTING_INCLUDE_DIR} + ${_gRPC_RE2_INCLUDE_DIR} + ${_gRPC_SSL_INCLUDE_DIR} + ${_gRPC_UPB_GENERATED_DIR} + ${_gRPC_UPB_GRPC_GENERATED_DIR} + ${_gRPC_UPB_INCLUDE_DIR} + ${_gRPC_XXHASH_INCLUDE_DIR} + ${_gRPC_ZLIB_INCLUDE_DIR} + third_party/googletest/googletest/include + third_party/googletest/googletest + third_party/googletest/googlemock/include + third_party/googletest/googlemock + ${_gRPC_PROTO_GENS_DIR} +) + +target_link_libraries(wire_writer_test + ${_gRPC_PROTOBUF_LIBRARIES} + ${_gRPC_ALLTARGETS_LIBRARIES} + grpc_test_util +) + + +endif() +if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(work_serializer_test @@ -14991,6 +16585,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/port_server_client.cc test/core/util/reconnect_server.cc test/core/util/resolve_localhost_ip46.cc + test/core/util/resource_user_util.cc test/core/util/slice_splitter.cc test/core/util/stack_tracer.cc test/core/util/subprocess_posix.cc @@ -15268,6 +16863,10 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/endpoint.grpc.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/endpoint.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/endpoint.grpc.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/extension.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/extension.grpc.pb.cc + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/extension.pb.h + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/extension.grpc.pb.h ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/fault.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/fault.grpc.pb.cc ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/fault.pb.h @@ -15353,6 +16952,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) target_link_libraries(xds_end2end_test ${_gRPC_PROTOBUF_LIBRARIES} ${_gRPC_ALLTARGETS_LIBRARIES} + grpc++_test_config grpc++_test_util ) @@ -16064,7 +17664,7 @@ generate_pkgconfig( "gRPC" "high performance general RPC framework" "${gRPC_CORE_VERSION}" - "gpr openssl absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time" + "gpr openssl absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_variant" "-lgrpc -laddress_sorting -lre2 -lupb -lcares -lz" "" "grpc.pc") @@ -16074,7 +17674,7 @@ generate_pkgconfig( "gRPC unsecure" "high performance general RPC framework without SSL" "${gRPC_CORE_VERSION}" - "gpr absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time" + "gpr absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_variant" "-lgrpc_unsecure" "" "grpc_unsecure.pc") @@ -16084,7 +17684,7 @@ generate_pkgconfig( "gRPC++" "C++ wrapper for gRPC" "${gRPC_CPP_VERSION}" - "grpc absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time" + "grpc absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_variant" "-lgrpc++" "" "grpc++.pc") @@ -16094,7 +17694,7 @@ generate_pkgconfig( "gRPC++ unsecure" "C++ wrapper for gRPC without SSL" "${gRPC_CPP_VERSION}" - "grpc_unsecure absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time" + "grpc_unsecure absl_base absl_bind_front absl_cord absl_core_headers absl_flat_hash_map absl_inlined_vector absl_memory absl_optional absl_status absl_statusor absl_str_format absl_strings absl_synchronization absl_time absl_variant" "-lgrpc++_unsecure" "" "grpc++_unsecure.pc") diff --git a/CONCEPTS.md b/CONCEPTS.md index f78be0c..c85974e 100644 --- a/CONCEPTS.md +++ b/CONCEPTS.md @@ -54,10 +54,11 @@ clients and servers. A concrete embedding over HTTP/2 completes the picture by fleshing out the details of each of the required operations. ## Abstract gRPC protocol -A gRPC call comprises of a bidirectional stream of messages, initiated by the client. In the client-to-server direction, this stream begins with a mandatory `Call Header`, followed by optional `Initial-Metadata`, followed by zero or more `Payload Messages`. The server-to-client direction contains an optional `Initial-Metadata`, followed by zero or more `Payload Messages` terminated with a mandatory `Status` and optional `Status-Metadata` (a.k.a.,`Trailing-Metadata`). +A gRPC call comprises of a bidirectional stream of messages, initiated by the client. In the client-to-server direction, this stream begins with a mandatory `Call Header`, followed by optional `Initial-Metadata`, followed by zero or more `Payload Messages`. A client signals end of its message stream by means of an underlying lower level protocol. The server-to-client direction contains an optional `Initial-Metadata`, followed by zero or more `Payload Messages` terminated with a mandatory `Status` and optional `Status-Metadata` (a.k.a.,`Trailing-Metadata`). ## Implementation over HTTP/2 -The abstract protocol defined above is implemented over [HTTP/2](https://http2.github.io/). gRPC bidirectional streams are mapped to HTTP/2 streams. The contents of `Call Header` and `Initial Metadata` are sent as HTTP/2 headers and subject to HPACK compression. `Payload Messages` are serialized into a byte stream of length prefixed gRPC frames which are then fragmented into HTTP/2 frames at the sender and reassembled at the receiver. `Status` and `Trailing-Metadata` are sent as HTTP/2 trailing headers (a.k.a., trailers). +The abstract protocol defined above is implemented over [HTTP/2](https://http2.github.io/). gRPC bidirectional streams are mapped to HTTP/2 streams. The contents of `Call Header` and `Initial Metadata` are sent as HTTP/2 headers and subject to HPACK compression. `Payload Messages` are serialized into a byte stream of length prefixed gRPC frames which are then fragmented into HTTP/2 frames at the sender and reassembled at the receiver. `Status` and `Trailing-Metadata` are sent as HTTP/2 trailing headers (a.k.a., trailers). A client signals end of its message stream by setting `END_STREAM` flag on the last DATA frame. +For a detailed description see [doc/PROTOCOL-HTTP2.md](doc/PROTOCOL-HTTP2.md). ## Flow Control gRPC uses the flow control mechanism in HTTP/2. This enables fine-grained control of memory used for buffering in-flight messages. diff --git a/Makefile b/Makefile index c7aa7c7..c44a46f 100644 --- a/Makefile +++ b/Makefile @@ -454,9 +454,9 @@ E = @echo Q = @ endif -CORE_VERSION = 18.0.0 -CPP_VERSION = 1.40.0 -CSHARP_VERSION = 2.40.0 +CORE_VERSION = 19.0.0 +CPP_VERSION = 1.41.0 +CSHARP_VERSION = 2.41.0 CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES)) CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS) @@ -492,7 +492,7 @@ SHARED_EXT_CORE = dll SHARED_EXT_CPP = dll SHARED_EXT_CSHARP = dll SHARED_PREFIX = -SHARED_VERSION_CORE = -18 +SHARED_VERSION_CORE = -19 SHARED_VERSION_CPP = -1 SHARED_VERSION_CSHARP = -2 else ifeq ($(SYSTEM),Darwin) @@ -891,8 +891,8 @@ $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): ifeq ($(SYSTEM),Darwin) $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) else - $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.18 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) - $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.18 + $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.19 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) + $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.19 $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so endif endif @@ -943,7 +943,6 @@ LIBGPR_SRC = \ src/core/lib/gpr/time_posix.cc \ src/core/lib/gpr/time_precise.cc \ src/core/lib/gpr/time_windows.cc \ - src/core/lib/gpr/tls_pthread.cc \ src/core/lib/gpr/tmpfile_msys.cc \ src/core/lib/gpr/tmpfile_posix.cc \ src/core/lib/gpr/tmpfile_windows.cc \ @@ -1032,8 +1031,8 @@ $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGPR_OB ifeq ($(SYSTEM),Darwin) $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) else - $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.18 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) - $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.18 + $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.19 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) + $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.19 $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so endif endif @@ -1084,12 +1083,10 @@ LIBGRPC_SRC = \ src/core/ext/filters/client_channel/resolver.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc \ - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc \ - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \ src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc \ @@ -1147,8 +1144,10 @@ LIBGRPC_SRC = \ src/core/ext/transport/chttp2/transport/frame_settings.cc \ src/core/ext/transport/chttp2/transport/frame_window_update.cc \ src/core/ext/transport/chttp2/transport/hpack_encoder.cc \ + src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc \ src/core/ext/transport/chttp2/transport/hpack_parser.cc \ - src/core/ext/transport/chttp2/transport/hpack_table.cc \ + src/core/ext/transport/chttp2/transport/hpack_parser_table.cc \ + src/core/ext/transport/chttp2/transport/hpack_utils.cc \ src/core/ext/transport/chttp2/transport/http2_settings.cc \ src/core/ext/transport/chttp2/transport/huffsyms.cc \ src/core/ext/transport/chttp2/transport/incoming_metadata.cc \ @@ -1375,6 +1374,7 @@ LIBGRPC_SRC = \ src/core/lib/compression/stream_compression.cc \ src/core/lib/compression/stream_compression_gzip.cc \ src/core/lib/compression/stream_compression_identity.cc \ + src/core/lib/config/core_configuration.cc \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats_data.cc \ src/core/lib/debug/trace.cc \ @@ -1394,7 +1394,6 @@ LIBGRPC_SRC = \ src/core/lib/iomgr/endpoint_cfstream.cc \ src/core/lib/iomgr/endpoint_pair_event_engine.cc \ src/core/lib/iomgr/endpoint_pair_posix.cc \ - src/core/lib/iomgr/endpoint_pair_uv.cc \ src/core/lib/iomgr/endpoint_pair_windows.cc \ src/core/lib/iomgr/error.cc \ src/core/lib/iomgr/error_cfstream.cc \ @@ -1430,7 +1429,6 @@ LIBGRPC_SRC = \ src/core/lib/iomgr/iomgr_internal.cc \ src/core/lib/iomgr/iomgr_posix.cc \ src/core/lib/iomgr/iomgr_posix_cfstream.cc \ - src/core/lib/iomgr/iomgr_uv.cc \ src/core/lib/iomgr/iomgr_windows.cc \ src/core/lib/iomgr/is_epollexclusive_available.cc \ src/core/lib/iomgr/load_file.cc \ @@ -1441,7 +1439,6 @@ LIBGRPC_SRC = \ src/core/lib/iomgr/pollset_set.cc \ src/core/lib/iomgr/pollset_set_custom.cc \ src/core/lib/iomgr/pollset_set_windows.cc \ - src/core/lib/iomgr/pollset_uv.cc \ src/core/lib/iomgr/pollset_windows.cc \ src/core/lib/iomgr/resolve_address.cc \ src/core/lib/iomgr/resolve_address_custom.cc \ @@ -1453,7 +1450,6 @@ LIBGRPC_SRC = \ src/core/lib/iomgr/socket_utils_common_posix.cc \ src/core/lib/iomgr/socket_utils_linux.cc \ src/core/lib/iomgr/socket_utils_posix.cc \ - src/core/lib/iomgr/socket_utils_uv.cc \ src/core/lib/iomgr/socket_utils_windows.cc \ src/core/lib/iomgr/socket_windows.cc \ src/core/lib/iomgr/tcp_client.cc \ @@ -1470,7 +1466,6 @@ LIBGRPC_SRC = \ src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc \ src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc \ src/core/lib/iomgr/tcp_server_windows.cc \ - src/core/lib/iomgr/tcp_uv.cc \ src/core/lib/iomgr/tcp_windows.cc \ src/core/lib/iomgr/time_averaged_stats.cc \ src/core/lib/iomgr/timer.cc \ @@ -1478,7 +1473,6 @@ LIBGRPC_SRC = \ src/core/lib/iomgr/timer_generic.cc \ src/core/lib/iomgr/timer_heap.cc \ src/core/lib/iomgr/timer_manager.cc \ - src/core/lib/iomgr/timer_uv.cc \ src/core/lib/iomgr/udp_server.cc \ src/core/lib/iomgr/unix_sockets_posix.cc \ src/core/lib/iomgr/unix_sockets_posix_noop.cc \ @@ -1493,6 +1487,7 @@ LIBGRPC_SRC = \ src/core/lib/matchers/matchers.cc \ src/core/lib/security/authorization/authorization_policy_provider_vtable.cc \ src/core/lib/security/authorization/evaluate_args.cc \ + src/core/lib/security/authorization/sdk_server_authz_filter.cc \ src/core/lib/security/context/security_context.cc \ src/core/lib/security/credentials/alts/alts_credentials.cc \ src/core/lib/security/credentials/alts/check_gcp_environment.cc \ @@ -1671,8 +1666,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGRPC_ ifeq ($(SYSTEM),Darwin) $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) else - $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.18 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) - $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.18 + $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.19 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) + $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.19 $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so endif endif @@ -1719,8 +1714,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): ifeq ($(SYSTEM),Darwin) $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_CSHARP_EXT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) else - $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_csharp_ext.so.18 -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_CSHARP_EXT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) - $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).so.18 + $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_csharp_ext.so.19 -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_CSHARP_EXT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) + $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).so.19 $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).so endif endif @@ -1767,12 +1762,10 @@ LIBGRPC_UNSECURE_SRC = \ src/core/ext/filters/client_channel/resolver.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc \ - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc \ - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \ src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc \ @@ -1826,8 +1819,10 @@ LIBGRPC_UNSECURE_SRC = \ src/core/ext/transport/chttp2/transport/frame_settings.cc \ src/core/ext/transport/chttp2/transport/frame_window_update.cc \ src/core/ext/transport/chttp2/transport/hpack_encoder.cc \ + src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc \ src/core/ext/transport/chttp2/transport/hpack_parser.cc \ - src/core/ext/transport/chttp2/transport/hpack_table.cc \ + src/core/ext/transport/chttp2/transport/hpack_parser_table.cc \ + src/core/ext/transport/chttp2/transport/hpack_utils.cc \ src/core/ext/transport/chttp2/transport/http2_settings.cc \ src/core/ext/transport/chttp2/transport/huffsyms.cc \ src/core/ext/transport/chttp2/transport/incoming_metadata.cc \ @@ -1863,6 +1858,7 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/compression/stream_compression.cc \ src/core/lib/compression/stream_compression_gzip.cc \ src/core/lib/compression/stream_compression_identity.cc \ + src/core/lib/config/core_configuration.cc \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats_data.cc \ src/core/lib/debug/trace.cc \ @@ -1881,7 +1877,6 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/iomgr/endpoint_cfstream.cc \ src/core/lib/iomgr/endpoint_pair_event_engine.cc \ src/core/lib/iomgr/endpoint_pair_posix.cc \ - src/core/lib/iomgr/endpoint_pair_uv.cc \ src/core/lib/iomgr/endpoint_pair_windows.cc \ src/core/lib/iomgr/error.cc \ src/core/lib/iomgr/error_cfstream.cc \ @@ -1917,7 +1912,6 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/iomgr/iomgr_internal.cc \ src/core/lib/iomgr/iomgr_posix.cc \ src/core/lib/iomgr/iomgr_posix_cfstream.cc \ - src/core/lib/iomgr/iomgr_uv.cc \ src/core/lib/iomgr/iomgr_windows.cc \ src/core/lib/iomgr/is_epollexclusive_available.cc \ src/core/lib/iomgr/load_file.cc \ @@ -1928,7 +1922,6 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/iomgr/pollset_set.cc \ src/core/lib/iomgr/pollset_set_custom.cc \ src/core/lib/iomgr/pollset_set_windows.cc \ - src/core/lib/iomgr/pollset_uv.cc \ src/core/lib/iomgr/pollset_windows.cc \ src/core/lib/iomgr/resolve_address.cc \ src/core/lib/iomgr/resolve_address_custom.cc \ @@ -1940,7 +1933,6 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/iomgr/socket_utils_common_posix.cc \ src/core/lib/iomgr/socket_utils_linux.cc \ src/core/lib/iomgr/socket_utils_posix.cc \ - src/core/lib/iomgr/socket_utils_uv.cc \ src/core/lib/iomgr/socket_utils_windows.cc \ src/core/lib/iomgr/socket_windows.cc \ src/core/lib/iomgr/tcp_client.cc \ @@ -1957,7 +1949,6 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc \ src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc \ src/core/lib/iomgr/tcp_server_windows.cc \ - src/core/lib/iomgr/tcp_uv.cc \ src/core/lib/iomgr/tcp_windows.cc \ src/core/lib/iomgr/time_averaged_stats.cc \ src/core/lib/iomgr/timer.cc \ @@ -1965,7 +1956,6 @@ LIBGRPC_UNSECURE_SRC = \ src/core/lib/iomgr/timer_generic.cc \ src/core/lib/iomgr/timer_heap.cc \ src/core/lib/iomgr/timer_manager.cc \ - src/core/lib/iomgr/timer_uv.cc \ src/core/lib/iomgr/udp_server.cc \ src/core/lib/iomgr/unix_sockets_posix.cc \ src/core/lib/iomgr/unix_sockets_posix_noop.cc \ @@ -2066,8 +2056,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $ ifeq ($(SYSTEM),Darwin) $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) else - $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.18 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) - $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.18 + $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.19 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) + $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.19 $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so endif endif @@ -2318,6 +2308,7 @@ LIBBORINGSSL_SRC = \ third_party/boringssl-with-bazel/src/ssl/dtls_method.cc \ third_party/boringssl-with-bazel/src/ssl/dtls_record.cc \ third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc \ + third_party/boringssl-with-bazel/src/ssl/extensions.cc \ third_party/boringssl-with-bazel/src/ssl/handoff.cc \ third_party/boringssl-with-bazel/src/ssl/handshake.cc \ third_party/boringssl-with-bazel/src/ssl/handshake_client.cc \ @@ -2340,7 +2331,6 @@ LIBBORINGSSL_SRC = \ third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc \ third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc \ third_party/boringssl-with-bazel/src/ssl/t1_enc.cc \ - third_party/boringssl-with-bazel/src/ssl/t1_lib.cc \ third_party/boringssl-with-bazel/src/ssl/tls13_both.cc \ third_party/boringssl-with-bazel/src/ssl/tls13_client.cc \ third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc \ @@ -2462,8 +2452,8 @@ $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBUPB_OB ifeq ($(SYSTEM),Darwin) $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) else - $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb.so.18 -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) - $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so.18 + $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb.so.19 -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS) + $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so.19 $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so endif endif @@ -2910,6 +2900,7 @@ src/core/lib/http/httpcli_security_connector.cc: $(OPENSSL_DEP) src/core/lib/matchers/matchers.cc: $(OPENSSL_DEP) src/core/lib/security/authorization/authorization_policy_provider_vtable.cc: $(OPENSSL_DEP) src/core/lib/security/authorization/evaluate_args.cc: $(OPENSSL_DEP) +src/core/lib/security/authorization/sdk_server_authz_filter.cc: $(OPENSSL_DEP) src/core/lib/security/context/security_context.cc: $(OPENSSL_DEP) src/core/lib/security/credentials/alts/alts_credentials.cc: $(OPENSSL_DEP) src/core/lib/security/credentials/alts/check_gcp_environment.cc: $(OPENSSL_DEP) diff --git a/WORKSPACE b/WORKSPACE index 9f7b7e5..2288b60 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -91,6 +91,16 @@ android_ndk_repository( # https://github.com/bazelbuild/bazel/issues/13421 ) +# Prevents bazel's '...' expansion from including the following folder. +# This is required because the BUILD file in the following folder +# will trigger bazel failure when Android SDK is not configured. +# The targets in the following folder need to be included in APK and will +# be invoked by binder transport implementation through JNI. +local_repository( + name = "binder_transport_android_helper", + path = "./src/core/ext/transport/binder/java", +) + # Create msan toolchain configuration for remote execution. rbe_autoconfig( name = "rbe_msan", diff --git a/_metadata.py b/_metadata.py index 7bd969b..73f6b1e 100644 --- a/_metadata.py +++ b/_metadata.py @@ -14,4 +14,4 @@ # AUTO-GENERATED FROM `$REPO_ROOT/templates/_metadata.py.template`!!! -__version__ = """1.40.0""" +__version__ = """1.41.0""" diff --git a/bazel/grpc_build_system.bzl b/bazel/grpc_build_system.bzl index a37a422..ddfb8e3 100644 --- a/bazel/grpc_build_system.bzl +++ b/bazel/grpc_build_system.bzl @@ -78,6 +78,7 @@ def _update_visibility(visibility): "alt_grpc_base_legacy": PRIVATE, "alt_grpc++_base_unsecure_legacy": PRIVATE, "alts_frame_protector": PRIVATE, + "channelz": PRIVATE, "client_channel": PRIVATE, "debug_location": PRIVATE, "endpoint_tests": PRIVATE, diff --git a/bazel/grpc_deps.bzl b/bazel/grpc_deps.bzl index f8029a5..e2ef402 100644 --- a/bazel/grpc_deps.bzl +++ b/bazel/grpc_deps.bzl @@ -189,11 +189,11 @@ def grpc_deps(): name = "boringssl", # Use github mirror instead of https://boringssl.googlesource.com/boringssl # to obtain a boringssl archive with consistent sha256 - sha256 = "19870fcdbdfc61217ad814077483347a5b2bf4b3bbb5f6c983edac7856a40bbb", - strip_prefix = "boringssl-bcc01b6c66b1c6fa2816b108e50a544b757fbd7b", + sha256 = "6f640262999cd1fb33cf705922e453e835d2d20f3f06fe0d77f6426c19257308", + strip_prefix = "boringssl-fc44652a42b396e1645d5e72aba053349992136a", urls = [ - "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/bcc01b6c66b1c6fa2816b108e50a544b757fbd7b.tar.gz", - "https://github.com/google/boringssl/archive/bcc01b6c66b1c6fa2816b108e50a544b757fbd7b.tar.gz", + "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/fc44652a42b396e1645d5e72aba053349992136a.tar.gz", + "https://github.com/google/boringssl/archive/fc44652a42b396e1645d5e72aba053349992136a.tar.gz", ], ) @@ -212,11 +212,11 @@ def grpc_deps(): if "com_google_protobuf" not in native.existing_rules(): http_archive( name = "com_google_protobuf", - sha256 = "cf63d46ef743f4c30b0e36a562caf83cabed3f10e6ca49eb476913c4655394d5", - strip_prefix = "protobuf-436bd7880e458532901c58f4d9d1ea23fa7edd52", + sha256 = "dd53cb731b1b6b515d3d679644344bf33bb9f5b88c98187ae5c7be734a665c57", + strip_prefix = "protobuf-909a0f36a10075c4b4bc70fdee2c7e32dd612a72", urls = [ - "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/protobuf/archive/436bd7880e458532901c58f4d9d1ea23fa7edd52.tar.gz", - "https://github.com/protocolbuffers/protobuf/archive/436bd7880e458532901c58f4d9d1ea23fa7edd52.tar.gz", + "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/protobuf/archive/909a0f36a10075c4b4bc70fdee2c7e32dd612a72.tar.gz", + "https://github.com/protocolbuffers/protobuf/archive/909a0f36a10075c4b4bc70fdee2c7e32dd612a72.tar.gz", ], patches = ["@com_github_grpc_grpc//third_party:protobuf.patch"], patch_args = ["-p1"], @@ -338,22 +338,22 @@ def grpc_deps(): if "upb" not in native.existing_rules(): http_archive( name = "upb", - sha256 = "c0b97bf91dfea7e8d7579c24e2ecdd02d10b00f3c5defc3dce23d95100d0e664", - strip_prefix = "upb-60607da72e89ba0c84c84054d2e562d8b6b61177", + sha256 = "6a5f67874af66b239b709c572ac1a5a00fdb1b29beaf13c3e6f79b1ba10dc7c4", + strip_prefix = "upb-2de300726a1ba2de9a468468dc5ff9ed17a3215f", urls = [ - "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/upb/archive/60607da72e89ba0c84c84054d2e562d8b6b61177.tar.gz", - "https://github.com/protocolbuffers/upb/archive/60607da72e89ba0c84c84054d2e562d8b6b61177.tar.gz", + "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/upb/archive/2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz", + "https://github.com/protocolbuffers/upb/archive/2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz", ], ) if "envoy_api" not in native.existing_rules(): http_archive( name = "envoy_api", - sha256 = "68343216fe214b6fd420672e04da8dfe10ae87bb98528239dd16c848016a8a48", - strip_prefix = "data-plane-api-df3b1ab2773147f292c4f175f790c35448328161", + sha256 = "330f2f9c938fc038b7ab438919b692d30cdfba3cf596e7824410f88da16c30b5", + strip_prefix = "data-plane-api-2f0d081fab0b0823f088c6e368f40e1992f46fcd", urls = [ - "https://storage.googleapis.com/grpc-bazel-mirror/github.com/envoyproxy/data-plane-api/archive/df3b1ab2773147f292c4f175f790c35448328161.tar.gz", - "https://github.com/envoyproxy/data-plane-api/archive/df3b1ab2773147f292c4f175f790c35448328161.tar.gz", + "https://storage.googleapis.com/grpc-bazel-mirror/github.com/envoyproxy/data-plane-api/archive/2f0d081fab0b0823f088c6e368f40e1992f46fcd.tar.gz", + "https://github.com/envoyproxy/data-plane-api/archive/2f0d081fab0b0823f088c6e368f40e1992f46fcd.tar.gz", ], ) diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml index 32ee883..e09b30b 100644 --- a/build_autogenerated.yaml +++ b/build_autogenerated.yaml @@ -133,6 +133,11 @@ libs: language: c public_headers: [] headers: + - src/core/lib/security/authorization/grpc_authorization_engine.h + - src/core/lib/security/authorization/grpc_authorization_policy_provider.h + - src/core/lib/security/authorization/matchers.h + - src/core/lib/security/authorization/rbac_policy.h + - src/core/lib/security/authorization/rbac_translator.h - test/core/end2end/cq_verifier.h - test/core/end2end/data/ssl_test_data.h - test/core/end2end/end2end_tests.h @@ -142,6 +147,11 @@ libs: - test/core/end2end/tests/cancel_test_helpers.h - test/core/util/test_lb_policies.h src: + - src/core/lib/security/authorization/grpc_authorization_engine.cc + - src/core/lib/security/authorization/grpc_authorization_policy_provider.cc + - src/core/lib/security/authorization/matchers.cc + - src/core/lib/security/authorization/rbac_policy.cc + - src/core/lib/security/authorization/rbac_translator.cc - test/core/end2end/cq_verifier.cc - test/core/end2end/data/client_certs.cc - test/core/end2end/data/server1_cert.cc @@ -226,6 +236,7 @@ libs: - test/core/end2end/tests/retry_streaming_succeeds_before_replay_finished.cc - test/core/end2end/tests/retry_throttled.cc - test/core/end2end/tests/retry_too_many_attempts.cc + - test/core/end2end/tests/sdk_authz.cc - test/core/end2end/tests/server_finishes_request.cc - test/core/end2end/tests/server_streaming.cc - test/core/end2end/tests/shutdown_finishes_calls.cc @@ -310,14 +321,10 @@ libs: - src/core/lib/gpr/string_windows.h - src/core/lib/gpr/time_precise.h - src/core/lib/gpr/tls.h - - src/core/lib/gpr/tls_gcc.h - - src/core/lib/gpr/tls_msvc.h - - src/core/lib/gpr/tls_pthread.h - - src/core/lib/gpr/tls_stdcpp.h - src/core/lib/gpr/tmpfile.h - src/core/lib/gpr/useful.h - src/core/lib/gprpp/arena.h - - src/core/lib/gprpp/atomic.h + - src/core/lib/gprpp/construct_destruct.h - src/core/lib/gprpp/debug_location.h - src/core/lib/gprpp/examine_stack.h - src/core/lib/gprpp/fork.h @@ -374,7 +381,6 @@ libs: - src/core/lib/gpr/time_posix.cc - src/core/lib/gpr/time_precise.cc - src/core/lib/gpr/time_windows.cc - - src/core/lib/gpr/tls_pthread.cc - src/core/lib/gpr/tmpfile_msys.cc - src/core/lib/gpr/tmpfile_posix.cc - src/core/lib/gpr/tmpfile_windows.cc @@ -506,13 +512,18 @@ libs: - src/core/ext/transport/chttp2/transport/frame_rst_stream.h - src/core/ext/transport/chttp2/transport/frame_settings.h - src/core/ext/transport/chttp2/transport/frame_window_update.h + - src/core/ext/transport/chttp2/transport/hpack_constants.h - src/core/ext/transport/chttp2/transport/hpack_encoder.h + - src/core/ext/transport/chttp2/transport/hpack_encoder_index.h + - src/core/ext/transport/chttp2/transport/hpack_encoder_table.h - src/core/ext/transport/chttp2/transport/hpack_parser.h - - src/core/ext/transport/chttp2/transport/hpack_table.h + - src/core/ext/transport/chttp2/transport/hpack_parser_table.h + - src/core/ext/transport/chttp2/transport/hpack_utils.h - src/core/ext/transport/chttp2/transport/http2_settings.h - src/core/ext/transport/chttp2/transport/huffsyms.h - src/core/ext/transport/chttp2/transport/incoming_metadata.h - src/core/ext/transport/chttp2/transport/internal.h + - src/core/ext/transport/chttp2/transport/popularity_count.h - src/core/ext/transport/chttp2/transport/stream_map.h - src/core/ext/transport/chttp2/transport/varint.h - src/core/ext/transport/inproc/inproc_transport.h @@ -736,14 +747,18 @@ libs: - src/core/lib/compression/stream_compression.h - src/core/lib/compression/stream_compression_gzip.h - src/core/lib/compression/stream_compression_identity.h + - src/core/lib/config/core_configuration.h - src/core/lib/debug/stats.h - src/core/lib/debug/stats_data.h - src/core/lib/debug/trace.h - src/core/lib/event_engine/endpoint_config_internal.h - src/core/lib/event_engine/sockaddr.h - - src/core/lib/gprpp/atomic.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/bitset.h - src/core/lib/gprpp/dual_ref_counted.h + - src/core/lib/gprpp/match.h - src/core/lib/gprpp/orphanable.h + - src/core/lib/gprpp/overload.h - src/core/lib/gprpp/ref_counted.h - src/core/lib/gprpp/ref_counted_ptr.h - src/core/lib/http/format_request.h @@ -794,7 +809,6 @@ libs: - src/core/lib/iomgr/pollset_set.h - src/core/lib/iomgr/pollset_set_custom.h - src/core/lib/iomgr/pollset_set_windows.h - - src/core/lib/iomgr/pollset_uv.h - src/core/lib/iomgr/pollset_windows.h - src/core/lib/iomgr/port.h - src/core/lib/iomgr/python_util.h @@ -802,7 +816,6 @@ libs: - src/core/lib/iomgr/resolve_address_custom.h - src/core/lib/iomgr/resource_quota.h - src/core/lib/iomgr/sockaddr.h - - src/core/lib/iomgr/sockaddr_custom.h - src/core/lib/iomgr/sockaddr_posix.h - src/core/lib/iomgr/sockaddr_windows.h - src/core/lib/iomgr/socket_factory_posix.h @@ -835,6 +848,7 @@ libs: - src/core/lib/security/authorization/authorization_engine.h - src/core/lib/security/authorization/authorization_policy_provider.h - src/core/lib/security/authorization/evaluate_args.h + - src/core/lib/security/authorization/sdk_server_authz_filter.h - src/core/lib/security/context/security_context.h - src/core/lib/security/credentials/alts/alts_credentials.h - src/core/lib/security/credentials/alts/check_gcp_environment.h @@ -979,12 +993,10 @@ libs: - src/core/ext/filters/client_channel/resolver.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc - src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc @@ -1042,8 +1054,10 @@ libs: - src/core/ext/transport/chttp2/transport/frame_settings.cc - src/core/ext/transport/chttp2/transport/frame_window_update.cc - src/core/ext/transport/chttp2/transport/hpack_encoder.cc + - src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc - src/core/ext/transport/chttp2/transport/hpack_parser.cc - - src/core/ext/transport/chttp2/transport/hpack_table.cc + - src/core/ext/transport/chttp2/transport/hpack_parser_table.cc + - src/core/ext/transport/chttp2/transport/hpack_utils.cc - src/core/ext/transport/chttp2/transport/http2_settings.cc - src/core/ext/transport/chttp2/transport/huffsyms.cc - src/core/ext/transport/chttp2/transport/incoming_metadata.cc @@ -1270,6 +1284,7 @@ libs: - src/core/lib/compression/stream_compression.cc - src/core/lib/compression/stream_compression_gzip.cc - src/core/lib/compression/stream_compression_identity.cc + - src/core/lib/config/core_configuration.cc - src/core/lib/debug/stats.cc - src/core/lib/debug/stats_data.cc - src/core/lib/debug/trace.cc @@ -1289,7 +1304,6 @@ libs: - src/core/lib/iomgr/endpoint_cfstream.cc - src/core/lib/iomgr/endpoint_pair_event_engine.cc - src/core/lib/iomgr/endpoint_pair_posix.cc - - src/core/lib/iomgr/endpoint_pair_uv.cc - src/core/lib/iomgr/endpoint_pair_windows.cc - src/core/lib/iomgr/error.cc - src/core/lib/iomgr/error_cfstream.cc @@ -1325,7 +1339,6 @@ libs: - src/core/lib/iomgr/iomgr_internal.cc - src/core/lib/iomgr/iomgr_posix.cc - src/core/lib/iomgr/iomgr_posix_cfstream.cc - - src/core/lib/iomgr/iomgr_uv.cc - src/core/lib/iomgr/iomgr_windows.cc - src/core/lib/iomgr/is_epollexclusive_available.cc - src/core/lib/iomgr/load_file.cc @@ -1336,7 +1349,6 @@ libs: - src/core/lib/iomgr/pollset_set.cc - src/core/lib/iomgr/pollset_set_custom.cc - src/core/lib/iomgr/pollset_set_windows.cc - - src/core/lib/iomgr/pollset_uv.cc - src/core/lib/iomgr/pollset_windows.cc - src/core/lib/iomgr/resolve_address.cc - src/core/lib/iomgr/resolve_address_custom.cc @@ -1348,7 +1360,6 @@ libs: - src/core/lib/iomgr/socket_utils_common_posix.cc - src/core/lib/iomgr/socket_utils_linux.cc - src/core/lib/iomgr/socket_utils_posix.cc - - src/core/lib/iomgr/socket_utils_uv.cc - src/core/lib/iomgr/socket_utils_windows.cc - src/core/lib/iomgr/socket_windows.cc - src/core/lib/iomgr/tcp_client.cc @@ -1365,7 +1376,6 @@ libs: - src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc - src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc - src/core/lib/iomgr/tcp_server_windows.cc - - src/core/lib/iomgr/tcp_uv.cc - src/core/lib/iomgr/tcp_windows.cc - src/core/lib/iomgr/time_averaged_stats.cc - src/core/lib/iomgr/timer.cc @@ -1373,7 +1383,6 @@ libs: - src/core/lib/iomgr/timer_generic.cc - src/core/lib/iomgr/timer_heap.cc - src/core/lib/iomgr/timer_manager.cc - - src/core/lib/iomgr/timer_uv.cc - src/core/lib/iomgr/udp_server.cc - src/core/lib/iomgr/unix_sockets_posix.cc - src/core/lib/iomgr/unix_sockets_posix_noop.cc @@ -1388,6 +1397,7 @@ libs: - src/core/lib/matchers/matchers.cc - src/core/lib/security/authorization/authorization_policy_provider_vtable.cc - src/core/lib/security/authorization/evaluate_args.cc + - src/core/lib/security/authorization/sdk_server_authz_filter.cc - src/core/lib/security/context/security_context.cc - src/core/lib/security/credentials/alts/alts_credentials.cc - src/core/lib/security/credentials/alts/check_gcp_environment.cc @@ -1514,6 +1524,7 @@ libs: - absl/container:inlined_vector - absl/functional:bind_front - absl/status:statusor + - absl/types:variant - gpr - libssl - address_sorting @@ -1547,6 +1558,7 @@ libs: - test/core/util/port_server_client.h - test/core/util/reconnect_server.h - test/core/util/resolve_localhost_ip46.h + - test/core/util/resource_user_util.h - test/core/util/slice_splitter.h - test/core/util/stack_tracer.h - test/core/util/subprocess.h @@ -1569,6 +1581,7 @@ libs: - test/core/util/port_server_client.cc - test/core/util/reconnect_server.cc - test/core/util/resolve_localhost_ip46.cc + - test/core/util/resource_user_util.cc - test/core/util/slice_splitter.cc - test/core/util/stack_tracer.cc - test/core/util/subprocess_posix.cc @@ -1602,6 +1615,7 @@ libs: - test/core/util/port_server_client.h - test/core/util/reconnect_server.h - test/core/util/resolve_localhost_ip46.h + - test/core/util/resource_user_util.h - test/core/util/slice_splitter.h - test/core/util/stack_tracer.h - test/core/util/subprocess.h @@ -1623,6 +1637,7 @@ libs: - test/core/util/port_server_client.cc - test/core/util/reconnect_server.cc - test/core/util/resolve_localhost_ip46.cc + - test/core/util/resource_user_util.cc - test/core/util/slice_splitter.cc - test/core/util/stack_tracer.cc - test/core/util/subprocess_posix.cc @@ -1733,13 +1748,18 @@ libs: - src/core/ext/transport/chttp2/transport/frame_rst_stream.h - src/core/ext/transport/chttp2/transport/frame_settings.h - src/core/ext/transport/chttp2/transport/frame_window_update.h + - src/core/ext/transport/chttp2/transport/hpack_constants.h - src/core/ext/transport/chttp2/transport/hpack_encoder.h + - src/core/ext/transport/chttp2/transport/hpack_encoder_index.h + - src/core/ext/transport/chttp2/transport/hpack_encoder_table.h - src/core/ext/transport/chttp2/transport/hpack_parser.h - - src/core/ext/transport/chttp2/transport/hpack_table.h + - src/core/ext/transport/chttp2/transport/hpack_parser_table.h + - src/core/ext/transport/chttp2/transport/hpack_utils.h - src/core/ext/transport/chttp2/transport/http2_settings.h - src/core/ext/transport/chttp2/transport/huffsyms.h - src/core/ext/transport/chttp2/transport/incoming_metadata.h - src/core/ext/transport/chttp2/transport/internal.h + - src/core/ext/transport/chttp2/transport/popularity_count.h - src/core/ext/transport/chttp2/transport/stream_map.h - src/core/ext/transport/chttp2/transport/varint.h - src/core/ext/transport/inproc/inproc_transport.h @@ -1771,14 +1791,18 @@ libs: - src/core/lib/compression/stream_compression.h - src/core/lib/compression/stream_compression_gzip.h - src/core/lib/compression/stream_compression_identity.h + - src/core/lib/config/core_configuration.h - src/core/lib/debug/stats.h - src/core/lib/debug/stats_data.h - src/core/lib/debug/trace.h - src/core/lib/event_engine/endpoint_config_internal.h - src/core/lib/event_engine/sockaddr.h - - src/core/lib/gprpp/atomic.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/bitset.h - src/core/lib/gprpp/dual_ref_counted.h + - src/core/lib/gprpp/match.h - src/core/lib/gprpp/orphanable.h + - src/core/lib/gprpp/overload.h - src/core/lib/gprpp/ref_counted.h - src/core/lib/gprpp/ref_counted_ptr.h - src/core/lib/http/format_request.h @@ -1829,7 +1853,6 @@ libs: - src/core/lib/iomgr/pollset_set.h - src/core/lib/iomgr/pollset_set_custom.h - src/core/lib/iomgr/pollset_set_windows.h - - src/core/lib/iomgr/pollset_uv.h - src/core/lib/iomgr/pollset_windows.h - src/core/lib/iomgr/port.h - src/core/lib/iomgr/python_util.h @@ -1837,7 +1860,6 @@ libs: - src/core/lib/iomgr/resolve_address_custom.h - src/core/lib/iomgr/resource_quota.h - src/core/lib/iomgr/sockaddr.h - - src/core/lib/iomgr/sockaddr_custom.h - src/core/lib/iomgr/sockaddr_posix.h - src/core/lib/iomgr/sockaddr_windows.h - src/core/lib/iomgr/socket_factory_posix.h @@ -1936,12 +1958,10 @@ libs: - src/core/ext/filters/client_channel/resolver.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc - src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc @@ -1995,8 +2015,10 @@ libs: - src/core/ext/transport/chttp2/transport/frame_settings.cc - src/core/ext/transport/chttp2/transport/frame_window_update.cc - src/core/ext/transport/chttp2/transport/hpack_encoder.cc + - src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc - src/core/ext/transport/chttp2/transport/hpack_parser.cc - - src/core/ext/transport/chttp2/transport/hpack_table.cc + - src/core/ext/transport/chttp2/transport/hpack_parser_table.cc + - src/core/ext/transport/chttp2/transport/hpack_utils.cc - src/core/ext/transport/chttp2/transport/http2_settings.cc - src/core/ext/transport/chttp2/transport/huffsyms.cc - src/core/ext/transport/chttp2/transport/incoming_metadata.cc @@ -2032,6 +2054,7 @@ libs: - src/core/lib/compression/stream_compression.cc - src/core/lib/compression/stream_compression_gzip.cc - src/core/lib/compression/stream_compression_identity.cc + - src/core/lib/config/core_configuration.cc - src/core/lib/debug/stats.cc - src/core/lib/debug/stats_data.cc - src/core/lib/debug/trace.cc @@ -2050,7 +2073,6 @@ libs: - src/core/lib/iomgr/endpoint_cfstream.cc - src/core/lib/iomgr/endpoint_pair_event_engine.cc - src/core/lib/iomgr/endpoint_pair_posix.cc - - src/core/lib/iomgr/endpoint_pair_uv.cc - src/core/lib/iomgr/endpoint_pair_windows.cc - src/core/lib/iomgr/error.cc - src/core/lib/iomgr/error_cfstream.cc @@ -2086,7 +2108,6 @@ libs: - src/core/lib/iomgr/iomgr_internal.cc - src/core/lib/iomgr/iomgr_posix.cc - src/core/lib/iomgr/iomgr_posix_cfstream.cc - - src/core/lib/iomgr/iomgr_uv.cc - src/core/lib/iomgr/iomgr_windows.cc - src/core/lib/iomgr/is_epollexclusive_available.cc - src/core/lib/iomgr/load_file.cc @@ -2097,7 +2118,6 @@ libs: - src/core/lib/iomgr/pollset_set.cc - src/core/lib/iomgr/pollset_set_custom.cc - src/core/lib/iomgr/pollset_set_windows.cc - - src/core/lib/iomgr/pollset_uv.cc - src/core/lib/iomgr/pollset_windows.cc - src/core/lib/iomgr/resolve_address.cc - src/core/lib/iomgr/resolve_address_custom.cc @@ -2109,7 +2129,6 @@ libs: - src/core/lib/iomgr/socket_utils_common_posix.cc - src/core/lib/iomgr/socket_utils_linux.cc - src/core/lib/iomgr/socket_utils_posix.cc - - src/core/lib/iomgr/socket_utils_uv.cc - src/core/lib/iomgr/socket_utils_windows.cc - src/core/lib/iomgr/socket_windows.cc - src/core/lib/iomgr/tcp_client.cc @@ -2126,7 +2145,6 @@ libs: - src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc - src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc - src/core/lib/iomgr/tcp_server_windows.cc - - src/core/lib/iomgr/tcp_uv.cc - src/core/lib/iomgr/tcp_windows.cc - src/core/lib/iomgr/time_averaged_stats.cc - src/core/lib/iomgr/timer.cc @@ -2134,7 +2152,6 @@ libs: - src/core/lib/iomgr/timer_generic.cc - src/core/lib/iomgr/timer_heap.cc - src/core/lib/iomgr/timer_manager.cc - - src/core/lib/iomgr/timer_uv.cc - src/core/lib/iomgr/udp_server.cc - src/core/lib/iomgr/unix_sockets_posix.cc - src/core/lib/iomgr/unix_sockets_posix_noop.cc @@ -2194,6 +2211,7 @@ libs: - absl/container:inlined_vector - absl/functional:bind_front - absl/status:statusor + - absl/types:variant - gpr - address_sorting baselib: true @@ -3509,21 +3527,21 @@ targets: deps: - grpc_test_util uses_polling: false -- name: hpack_parser_test +- name: hpack_parser_table_test build: test language: c headers: [] src: - - test/core/transport/chttp2/hpack_parser_test.cc + - test/core/transport/chttp2/hpack_parser_table_test.cc deps: - grpc_test_util uses_polling: false -- name: hpack_table_test +- name: hpack_parser_test build: test language: c headers: [] src: - - test/core/transport/chttp2/hpack_table_test.cc + - test/core/transport/chttp2/hpack_parser_test.cc deps: - grpc_test_util uses_polling: false @@ -4125,15 +4143,6 @@ targets: deps: - grpc_test_util uses_polling: false -- name: tls_test - build: test - language: c - headers: [] - src: - - test/core/gpr/tls_test.cc - deps: - - grpc_test_util - uses_polling: false - name: transport_security_common_api_test build: test language: c @@ -4180,6 +4189,141 @@ targets: deps: - grpc_test_util uses_polling: false +- name: activity_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/upb-generated/google/api/annotations.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h + - src/core/ext/upb-generated/google/api/http.upb.h + - src/core/ext/upb-generated/google/protobuf/any.upb.h + - src/core/ext/upb-generated/google/protobuf/duration.upb.h + - src/core/ext/upb-generated/google/protobuf/empty.upb.h + - src/core/ext/upb-generated/google/protobuf/struct.upb.h + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h + - src/core/ext/upb-generated/google/rpc/status.upb.h + - src/core/lib/gpr/alloc.h + - src/core/lib/gpr/env.h + - src/core/lib/gpr/murmur_hash.h + - src/core/lib/gpr/spinlock.h + - src/core/lib/gpr/string.h + - src/core/lib/gpr/string_windows.h + - src/core/lib/gpr/time_precise.h + - src/core/lib/gpr/tls.h + - src/core/lib/gpr/tmpfile.h + - src/core/lib/gpr/useful.h + - src/core/lib/gprpp/arena.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/bitset.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/gprpp/debug_location.h + - src/core/lib/gprpp/examine_stack.h + - src/core/lib/gprpp/fork.h + - src/core/lib/gprpp/global_config.h + - src/core/lib/gprpp/global_config_custom.h + - src/core/lib/gprpp/global_config_env.h + - src/core/lib/gprpp/global_config_generic.h + - src/core/lib/gprpp/host_port.h + - src/core/lib/gprpp/manual_constructor.h + - src/core/lib/gprpp/memory.h + - src/core/lib/gprpp/mpscq.h + - src/core/lib/gprpp/stat.h + - src/core/lib/gprpp/status_helper.h + - src/core/lib/gprpp/sync.h + - src/core/lib/gprpp/thd.h + - src/core/lib/gprpp/time_util.h + - src/core/lib/profiling/timers.h + - src/core/lib/promise/activity.h + - src/core/lib/promise/context.h + - src/core/lib/promise/detail/basic_join.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/join.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/promise.h + - src/core/lib/promise/seq.h + - src/core/lib/promise/wait_set.h + src: + - src/core/ext/upb-generated/google/api/annotations.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + - src/core/ext/upb-generated/google/api/http.upb.c + - src/core/ext/upb-generated/google/protobuf/any.upb.c + - src/core/ext/upb-generated/google/protobuf/duration.upb.c + - src/core/ext/upb-generated/google/protobuf/empty.upb.c + - src/core/ext/upb-generated/google/protobuf/struct.upb.c + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + - src/core/ext/upb-generated/google/rpc/status.upb.c + - src/core/lib/gpr/alloc.cc + - src/core/lib/gpr/atm.cc + - src/core/lib/gpr/cpu_iphone.cc + - src/core/lib/gpr/cpu_linux.cc + - src/core/lib/gpr/cpu_posix.cc + - src/core/lib/gpr/cpu_windows.cc + - src/core/lib/gpr/env_linux.cc + - src/core/lib/gpr/env_posix.cc + - src/core/lib/gpr/env_windows.cc + - src/core/lib/gpr/log.cc + - src/core/lib/gpr/log_android.cc + - src/core/lib/gpr/log_linux.cc + - src/core/lib/gpr/log_posix.cc + - src/core/lib/gpr/log_windows.cc + - src/core/lib/gpr/murmur_hash.cc + - src/core/lib/gpr/string.cc + - src/core/lib/gpr/string_posix.cc + - src/core/lib/gpr/string_util_windows.cc + - src/core/lib/gpr/string_windows.cc + - src/core/lib/gpr/sync.cc + - src/core/lib/gpr/sync_abseil.cc + - src/core/lib/gpr/sync_posix.cc + - src/core/lib/gpr/sync_windows.cc + - src/core/lib/gpr/time.cc + - src/core/lib/gpr/time_posix.cc + - src/core/lib/gpr/time_precise.cc + - src/core/lib/gpr/time_windows.cc + - src/core/lib/gpr/tmpfile_msys.cc + - src/core/lib/gpr/tmpfile_posix.cc + - src/core/lib/gpr/tmpfile_windows.cc + - src/core/lib/gpr/wrap_memcpy.cc + - src/core/lib/gprpp/arena.cc + - src/core/lib/gprpp/examine_stack.cc + - src/core/lib/gprpp/fork.cc + - src/core/lib/gprpp/global_config_env.cc + - src/core/lib/gprpp/host_port.cc + - src/core/lib/gprpp/mpscq.cc + - src/core/lib/gprpp/stat_posix.cc + - src/core/lib/gprpp/stat_windows.cc + - src/core/lib/gprpp/status_helper.cc + - src/core/lib/gprpp/thd_posix.cc + - src/core/lib/gprpp/thd_windows.cc + - src/core/lib/gprpp/time_util.cc + - src/core/lib/profiling/basic_timers.cc + - src/core/lib/profiling/stap_timers.cc + - src/core/lib/promise/activity.cc + - test/core/promise/activity_test.cc + deps: + - absl/base:base + - absl/base:core_headers + - absl/container:flat_hash_set + - absl/memory:memory + - absl/status:status + - absl/status:statusor + - absl/strings:cord + - absl/strings:str_format + - absl/strings:strings + - absl/synchronization:synchronization + - absl/time:time + - absl/types:optional + - absl/types:variant + - upb + uses_polling: false - name: address_sorting_test gtest: true build: test @@ -4409,13 +4553,75 @@ targets: - posix - mac uses_polling: false -- name: binder_smoke_test +- name: binder_server_test gtest: true build: test language: c++ - headers: [] + headers: + - src/core/ext/transport/binder/client/channel_create_impl.h + - src/core/ext/transport/binder/server/binder_server.h + - src/core/ext/transport/binder/server/binder_server_credentials.h + - src/core/ext/transport/binder/transport/binder_stream.h + - src/core/ext/transport/binder/transport/binder_transport.h + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/binder.h + - src/core/ext/transport/binder/wire_format/binder_android.h + - src/core/ext/transport/binder/wire_format/binder_constants.h + - src/core/ext/transport/binder/wire_format/transaction.h + - src/core/ext/transport/binder/wire_format/wire_reader.h + - src/core/ext/transport/binder/wire_format/wire_reader_impl.h + - src/core/ext/transport/binder/wire_format/wire_writer.h + - test/core/transport/binder/end2end/echo_service.h + - test/core/transport/binder/end2end/fake_binder.h + - test/cpp/end2end/test_service_impl.h src: - - test/core/transport/binder/binder_smoke_test.cc + - src/proto/grpc/testing/echo.proto + - src/proto/grpc/testing/echo_messages.proto + - src/proto/grpc/testing/simple_messages.proto + - test/core/transport/binder/end2end/echo.proto + - src/core/ext/transport/binder/client/channel_create_impl.cc + - src/core/ext/transport/binder/server/binder_server.cc + - src/core/ext/transport/binder/server/binder_server_credentials.cc + - src/core/ext/transport/binder/transport/binder_transport.cc + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/binder_android.cc + - src/core/ext/transport/binder/wire_format/binder_constants.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + - src/core/ext/transport/binder/wire_format/wire_writer.cc + - test/core/transport/binder/end2end/binder_server_test.cc + - test/core/transport/binder/end2end/echo_service.cc + - test/core/transport/binder/end2end/fake_binder.cc + - test/cpp/end2end/test_service_impl.cc + deps: + - absl/random:random + - grpc++_test_util +- name: binder_transport_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/binder/transport/binder_stream.h + - src/core/ext/transport/binder/transport/binder_transport.h + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/binder.h + - src/core/ext/transport/binder/wire_format/binder_constants.h + - src/core/ext/transport/binder/wire_format/transaction.h + - src/core/ext/transport/binder/wire_format/wire_reader.h + - src/core/ext/transport/binder/wire_format/wire_reader_impl.h + - src/core/ext/transport/binder/wire_format/wire_writer.h + - test/core/transport/binder/mock_objects.h + src: + - src/core/ext/transport/binder/transport/binder_transport.cc + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/binder_constants.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + - src/core/ext/transport/binder/wire_format/wire_writer.cc + - test/core/transport/binder/binder_transport_test.cc + - test/core/transport/binder/mock_objects.cc deps: - grpc_test_util uses_polling: false @@ -4774,6 +4980,17 @@ targets: deps: - grpc++_test_config - grpc++_test_util +- name: capture_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/gprpp/capture.h + src: + - test/core/gprpp/capture_test.cc + deps: + - absl/utility:utility + uses_polling: false - name: cel_authorization_engine_test gtest: true build: test @@ -5100,59 +5317,268 @@ targets: deps: - grpc_test_util uses_polling: false -- name: delegating_channel_test +- name: context_test gtest: true build: test language: c++ headers: - - test/cpp/end2end/test_service_impl.h - src: - - src/proto/grpc/testing/echo.proto - - src/proto/grpc/testing/echo_messages.proto - - src/proto/grpc/testing/simple_messages.proto - - test/cpp/end2end/delegating_channel_test.cc - - test/cpp/end2end/test_service_impl.cc - deps: - - grpc++_test_util -- name: destroy_grpclb_channel_with_active_connect_stress_test - gtest: true - build: test - language: c++ - headers: [] - src: - - test/cpp/client/destroy_grpclb_channel_with_active_connect_stress_test.cc - deps: - - grpc++_test_util -- name: dual_ref_counted_test - gtest: true - build: test - language: c++ - headers: [] + - src/core/lib/gpr/tls.h + - src/core/lib/promise/context.h src: - - test/core/gprpp/dual_ref_counted_test.cc - deps: - - grpc_test_util -- name: duplicate_header_bad_client_test + - test/core/promise/context_test.cc + deps: [] + uses_polling: false +- name: core_configuration_test gtest: true build: test language: c++ headers: - - test/core/bad_client/bad_client.h - - test/core/end2end/cq_verifier.h + - src/core/ext/upb-generated/google/api/annotations.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h + - src/core/ext/upb-generated/google/api/http.upb.h + - src/core/ext/upb-generated/google/protobuf/any.upb.h + - src/core/ext/upb-generated/google/protobuf/duration.upb.h + - src/core/ext/upb-generated/google/protobuf/empty.upb.h + - src/core/ext/upb-generated/google/protobuf/struct.upb.h + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h + - src/core/ext/upb-generated/google/rpc/status.upb.h + - src/core/lib/channel/handshaker_factory.h + - src/core/lib/channel/handshaker_registry.h + - src/core/lib/config/core_configuration.h + - src/core/lib/gpr/alloc.h + - src/core/lib/gpr/env.h + - src/core/lib/gpr/murmur_hash.h + - src/core/lib/gpr/spinlock.h + - src/core/lib/gpr/string.h + - src/core/lib/gpr/string_windows.h + - src/core/lib/gpr/time_precise.h + - src/core/lib/gpr/tls.h + - src/core/lib/gpr/tmpfile.h + - src/core/lib/gpr/useful.h + - src/core/lib/gprpp/arena.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/gprpp/debug_location.h + - src/core/lib/gprpp/examine_stack.h + - src/core/lib/gprpp/fork.h + - src/core/lib/gprpp/global_config.h + - src/core/lib/gprpp/global_config_custom.h + - src/core/lib/gprpp/global_config_env.h + - src/core/lib/gprpp/global_config_generic.h + - src/core/lib/gprpp/host_port.h + - src/core/lib/gprpp/manual_constructor.h + - src/core/lib/gprpp/memory.h + - src/core/lib/gprpp/mpscq.h + - src/core/lib/gprpp/stat.h + - src/core/lib/gprpp/status_helper.h + - src/core/lib/gprpp/sync.h + - src/core/lib/gprpp/thd.h + - src/core/lib/gprpp/time_util.h + - src/core/lib/profiling/timers.h src: - - test/core/bad_client/bad_client.cc - - test/core/bad_client/tests/duplicate_header.cc - - test/core/end2end/cq_verifier.cc - deps: - - grpc_test_util -- name: end2end_test - gtest: true - build: test - run: false - language: c++ - headers: - - test/cpp/end2end/interceptors_util.h - - test/cpp/end2end/test_service_impl.h + - src/core/ext/upb-generated/google/api/annotations.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + - src/core/ext/upb-generated/google/api/http.upb.c + - src/core/ext/upb-generated/google/protobuf/any.upb.c + - src/core/ext/upb-generated/google/protobuf/duration.upb.c + - src/core/ext/upb-generated/google/protobuf/empty.upb.c + - src/core/ext/upb-generated/google/protobuf/struct.upb.c + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + - src/core/ext/upb-generated/google/rpc/status.upb.c + - src/core/lib/channel/handshaker_registry.cc + - src/core/lib/config/core_configuration.cc + - src/core/lib/gpr/alloc.cc + - src/core/lib/gpr/atm.cc + - src/core/lib/gpr/cpu_iphone.cc + - src/core/lib/gpr/cpu_linux.cc + - src/core/lib/gpr/cpu_posix.cc + - src/core/lib/gpr/cpu_windows.cc + - src/core/lib/gpr/env_linux.cc + - src/core/lib/gpr/env_posix.cc + - src/core/lib/gpr/env_windows.cc + - src/core/lib/gpr/log.cc + - src/core/lib/gpr/log_android.cc + - src/core/lib/gpr/log_linux.cc + - src/core/lib/gpr/log_posix.cc + - src/core/lib/gpr/log_windows.cc + - src/core/lib/gpr/murmur_hash.cc + - src/core/lib/gpr/string.cc + - src/core/lib/gpr/string_posix.cc + - src/core/lib/gpr/string_util_windows.cc + - src/core/lib/gpr/string_windows.cc + - src/core/lib/gpr/sync.cc + - src/core/lib/gpr/sync_abseil.cc + - src/core/lib/gpr/sync_posix.cc + - src/core/lib/gpr/sync_windows.cc + - src/core/lib/gpr/time.cc + - src/core/lib/gpr/time_posix.cc + - src/core/lib/gpr/time_precise.cc + - src/core/lib/gpr/time_windows.cc + - src/core/lib/gpr/tmpfile_msys.cc + - src/core/lib/gpr/tmpfile_posix.cc + - src/core/lib/gpr/tmpfile_windows.cc + - src/core/lib/gpr/wrap_memcpy.cc + - src/core/lib/gprpp/arena.cc + - src/core/lib/gprpp/examine_stack.cc + - src/core/lib/gprpp/fork.cc + - src/core/lib/gprpp/global_config_env.cc + - src/core/lib/gprpp/host_port.cc + - src/core/lib/gprpp/mpscq.cc + - src/core/lib/gprpp/stat_posix.cc + - src/core/lib/gprpp/stat_windows.cc + - src/core/lib/gprpp/status_helper.cc + - src/core/lib/gprpp/thd_posix.cc + - src/core/lib/gprpp/thd_windows.cc + - src/core/lib/gprpp/time_util.cc + - src/core/lib/profiling/basic_timers.cc + - src/core/lib/profiling/stap_timers.cc + - test/core/config/core_configuration_test.cc + deps: + - absl/base:base + - absl/base:core_headers + - absl/memory:memory + - absl/status:status + - absl/strings:cord + - absl/strings:str_format + - absl/strings:strings + - absl/synchronization:synchronization + - absl/time:time + - absl/types:optional + - upb + uses_polling: false +- name: delegating_channel_test + gtest: true + build: test + language: c++ + headers: + - test/cpp/end2end/test_service_impl.h + src: + - src/proto/grpc/testing/echo.proto + - src/proto/grpc/testing/echo_messages.proto + - src/proto/grpc/testing/simple_messages.proto + - test/cpp/end2end/delegating_channel_test.cc + - test/cpp/end2end/test_service_impl.cc + deps: + - grpc++_test_util +- name: destroy_grpclb_channel_with_active_connect_stress_test + gtest: true + build: test + language: c++ + headers: [] + src: + - test/cpp/client/destroy_grpclb_channel_with_active_connect_stress_test.cc + deps: + - grpc++_test_util +- name: dual_ref_counted_test + gtest: true + build: test + language: c++ + headers: [] + src: + - test/core/gprpp/dual_ref_counted_test.cc + deps: + - grpc_test_util +- name: duplicate_header_bad_client_test + gtest: true + build: test + language: c++ + headers: + - test/core/bad_client/bad_client.h + - test/core/end2end/cq_verifier.h + src: + - test/core/bad_client/bad_client.cc + - test/core/bad_client/tests/duplicate_header.cc + - test/core/end2end/cq_verifier.cc + deps: + - grpc_test_util +- name: end2end_binder_transport_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/binder/transport/binder_stream.h + - src/core/ext/transport/binder/transport/binder_transport.h + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/binder.h + - src/core/ext/transport/binder/wire_format/binder_constants.h + - src/core/ext/transport/binder/wire_format/transaction.h + - src/core/ext/transport/binder/wire_format/wire_reader.h + - src/core/ext/transport/binder/wire_format/wire_reader_impl.h + - src/core/ext/transport/binder/wire_format/wire_writer.h + - src/cpp/client/create_channel_internal.h + - src/cpp/common/channel_filter.h + - src/cpp/server/dynamic_thread_pool.h + - src/cpp/server/external_connection_acceptor_impl.h + - src/cpp/server/health/default_health_check_service.h + - src/cpp/server/thread_pool_interface.h + - src/cpp/thread_manager/thread_manager.h + - test/core/transport/binder/end2end/echo_service.h + - test/core/transport/binder/end2end/fake_binder.h + - test/core/transport/binder/end2end/testing_channel_create.h + src: + - test/core/transport/binder/end2end/echo.proto + - src/core/ext/transport/binder/transport/binder_transport.cc + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/binder_constants.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + - src/core/ext/transport/binder/wire_format/wire_writer.cc + - src/cpp/client/channel_cc.cc + - src/cpp/client/client_callback.cc + - src/cpp/client/client_context.cc + - src/cpp/client/client_interceptor.cc + - src/cpp/client/create_channel.cc + - src/cpp/client/create_channel_internal.cc + - src/cpp/client/create_channel_posix.cc + - src/cpp/client/credentials_cc.cc + - src/cpp/codegen/codegen_init.cc + - src/cpp/common/alarm.cc + - src/cpp/common/channel_arguments.cc + - src/cpp/common/channel_filter.cc + - src/cpp/common/completion_queue_cc.cc + - src/cpp/common/core_codegen.cc + - src/cpp/common/resource_quota_cc.cc + - src/cpp/common/rpc_method.cc + - src/cpp/common/validate_service_config.cc + - src/cpp/common/version_cc.cc + - src/cpp/server/async_generic_service.cc + - src/cpp/server/channel_argument_option.cc + - src/cpp/server/create_default_thread_pool.cc + - src/cpp/server/dynamic_thread_pool.cc + - src/cpp/server/external_connection_acceptor_impl.cc + - src/cpp/server/health/default_health_check_service.cc + - src/cpp/server/health/health_check_service.cc + - src/cpp/server/health/health_check_service_server_builder_option.cc + - src/cpp/server/server_builder.cc + - src/cpp/server/server_callback.cc + - src/cpp/server/server_cc.cc + - src/cpp/server/server_context.cc + - src/cpp/server/server_credentials.cc + - src/cpp/server/server_posix.cc + - src/cpp/thread_manager/thread_manager.cc + - src/cpp/util/byte_buffer_cc.cc + - src/cpp/util/status.cc + - src/cpp/util/string_ref.cc + - src/cpp/util/time_cc.cc + - test/core/transport/binder/end2end/echo_service.cc + - test/core/transport/binder/end2end/end2end_binder_transport_test.cc + - test/core/transport/binder/end2end/fake_binder.cc + - test/core/transport/binder/end2end/testing_channel_create.cc + deps: + - absl/random:random + - grpc_test_util +- name: end2end_test + gtest: true + build: test + run: false + language: c++ + headers: + - test/cpp/end2end/interceptors_util.h + - test/cpp/end2end/test_service_impl.h src: - src/proto/grpc/testing/duplicate/echo_duplicate.proto - src/proto/grpc/testing/echo.proto @@ -5229,6 +5655,32 @@ targets: - test/cpp/end2end/exception_test.cc deps: - grpc++_test_util +- name: fake_binder_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/binder.h + - src/core/ext/transport/binder/wire_format/binder_constants.h + - src/core/ext/transport/binder/wire_format/transaction.h + - src/core/ext/transport/binder/wire_format/wire_reader.h + - src/core/ext/transport/binder/wire_format/wire_reader_impl.h + - src/core/ext/transport/binder/wire_format/wire_writer.h + - test/core/transport/binder/end2end/fake_binder.h + src: + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/binder_constants.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + - src/core/ext/transport/binder/wire_format/wire_writer.cc + - test/core/transport/binder/end2end/fake_binder.cc + - test/core/transport/binder/end2end/fake_binder_test.cc + deps: + - absl/random:random + - grpc_test_util + uses_polling: false - name: file_watcher_certificate_provider_factory_test gtest: true build: test @@ -5266,6 +5718,156 @@ targets: - test/cpp/end2end/test_service_impl.cc deps: - grpc++_test_util +- name: flow_control_test + gtest: true + build: test + language: c++ + headers: + - test/core/end2end/cq_verifier.h + src: + - test/core/end2end/cq_verifier.cc + - test/core/transport/chttp2/flow_control_test.cc + deps: + - grpc_test_util +- name: for_each_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/upb-generated/google/api/annotations.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h + - src/core/ext/upb-generated/google/api/http.upb.h + - src/core/ext/upb-generated/google/protobuf/any.upb.h + - src/core/ext/upb-generated/google/protobuf/duration.upb.h + - src/core/ext/upb-generated/google/protobuf/empty.upb.h + - src/core/ext/upb-generated/google/protobuf/struct.upb.h + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h + - src/core/ext/upb-generated/google/rpc/status.upb.h + - src/core/lib/gpr/alloc.h + - src/core/lib/gpr/env.h + - src/core/lib/gpr/murmur_hash.h + - src/core/lib/gpr/spinlock.h + - src/core/lib/gpr/string.h + - src/core/lib/gpr/string_windows.h + - src/core/lib/gpr/time_precise.h + - src/core/lib/gpr/tls.h + - src/core/lib/gpr/tmpfile.h + - src/core/lib/gpr/useful.h + - src/core/lib/gprpp/arena.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/bitset.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/gprpp/debug_location.h + - src/core/lib/gprpp/examine_stack.h + - src/core/lib/gprpp/fork.h + - src/core/lib/gprpp/global_config.h + - src/core/lib/gprpp/global_config_custom.h + - src/core/lib/gprpp/global_config_env.h + - src/core/lib/gprpp/global_config_generic.h + - src/core/lib/gprpp/host_port.h + - src/core/lib/gprpp/manual_constructor.h + - src/core/lib/gprpp/memory.h + - src/core/lib/gprpp/mpscq.h + - src/core/lib/gprpp/stat.h + - src/core/lib/gprpp/status_helper.h + - src/core/lib/gprpp/sync.h + - src/core/lib/gprpp/thd.h + - src/core/lib/gprpp/time_util.h + - src/core/lib/profiling/timers.h + - src/core/lib/promise/activity.h + - src/core/lib/promise/context.h + - src/core/lib/promise/detail/basic_join.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/for_each.h + - src/core/lib/promise/intra_activity_waiter.h + - src/core/lib/promise/join.h + - src/core/lib/promise/map.h + - src/core/lib/promise/observable.h + - src/core/lib/promise/pipe.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/seq.h + - src/core/lib/promise/wait_set.h + src: + - src/core/ext/upb-generated/google/api/annotations.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + - src/core/ext/upb-generated/google/api/http.upb.c + - src/core/ext/upb-generated/google/protobuf/any.upb.c + - src/core/ext/upb-generated/google/protobuf/duration.upb.c + - src/core/ext/upb-generated/google/protobuf/empty.upb.c + - src/core/ext/upb-generated/google/protobuf/struct.upb.c + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + - src/core/ext/upb-generated/google/rpc/status.upb.c + - src/core/lib/gpr/alloc.cc + - src/core/lib/gpr/atm.cc + - src/core/lib/gpr/cpu_iphone.cc + - src/core/lib/gpr/cpu_linux.cc + - src/core/lib/gpr/cpu_posix.cc + - src/core/lib/gpr/cpu_windows.cc + - src/core/lib/gpr/env_linux.cc + - src/core/lib/gpr/env_posix.cc + - src/core/lib/gpr/env_windows.cc + - src/core/lib/gpr/log.cc + - src/core/lib/gpr/log_android.cc + - src/core/lib/gpr/log_linux.cc + - src/core/lib/gpr/log_posix.cc + - src/core/lib/gpr/log_windows.cc + - src/core/lib/gpr/murmur_hash.cc + - src/core/lib/gpr/string.cc + - src/core/lib/gpr/string_posix.cc + - src/core/lib/gpr/string_util_windows.cc + - src/core/lib/gpr/string_windows.cc + - src/core/lib/gpr/sync.cc + - src/core/lib/gpr/sync_abseil.cc + - src/core/lib/gpr/sync_posix.cc + - src/core/lib/gpr/sync_windows.cc + - src/core/lib/gpr/time.cc + - src/core/lib/gpr/time_posix.cc + - src/core/lib/gpr/time_precise.cc + - src/core/lib/gpr/time_windows.cc + - src/core/lib/gpr/tmpfile_msys.cc + - src/core/lib/gpr/tmpfile_posix.cc + - src/core/lib/gpr/tmpfile_windows.cc + - src/core/lib/gpr/wrap_memcpy.cc + - src/core/lib/gprpp/arena.cc + - src/core/lib/gprpp/examine_stack.cc + - src/core/lib/gprpp/fork.cc + - src/core/lib/gprpp/global_config_env.cc + - src/core/lib/gprpp/host_port.cc + - src/core/lib/gprpp/mpscq.cc + - src/core/lib/gprpp/stat_posix.cc + - src/core/lib/gprpp/stat_windows.cc + - src/core/lib/gprpp/status_helper.cc + - src/core/lib/gprpp/thd_posix.cc + - src/core/lib/gprpp/thd_windows.cc + - src/core/lib/gprpp/time_util.cc + - src/core/lib/profiling/basic_timers.cc + - src/core/lib/profiling/stap_timers.cc + - src/core/lib/promise/activity.cc + - test/core/promise/for_each_test.cc + deps: + - absl/base:base + - absl/base:core_headers + - absl/container:flat_hash_set + - absl/memory:memory + - absl/status:status + - absl/status:statusor + - absl/strings:cord + - absl/strings:str_format + - absl/strings:strings + - absl/synchronization:synchronization + - absl/time:time + - absl/types:optional + - absl/types:variant + - upb + uses_polling: false - name: generic_end2end_test gtest: true build: test @@ -5481,6 +6083,7 @@ targets: - test/cpp/util/service_describer.cc deps: - grpc++_reflection + - grpc++_test_config - grpc++_test_util platforms: - linux @@ -5512,6 +6115,7 @@ targets: - test/cpp/end2end/grpclb_end2end_test.cc - test/cpp/end2end/test_service_impl.cc deps: + - grpc++_test_config - grpc++_test_util platforms: - linux @@ -5570,6 +6174,16 @@ targets: - test/cpp/end2end/test_service_impl.cc deps: - grpc++_test_util +- name: hpack_encoder_index_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/chttp2/transport/hpack_encoder_index.h + src: + - test/core/transport/chttp2/hpack_encoder_index_test.cc + deps: + - absl/types:optional - name: hpack_parser_fuzzer_test build: fuzzer language: c++ @@ -5640,7 +6254,22 @@ targets: - test/cpp/end2end/hybrid_end2end_test.cc - test/cpp/end2end/test_service_impl.cc deps: - - grpc++_test_util + - grpc++_test_util +- name: if_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/if.h + - src/core/lib/promise/poll.h + src: + - test/core/promise/if_test.cc + deps: + - absl/status:statusor + - absl/types:variant + uses_polling: false - name: init_test gtest: true build: test @@ -5721,6 +6350,23 @@ targets: - linux - posix - mac +- name: join_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/gprpp/bitset.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/promise/detail/basic_join.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/join.h + - src/core/lib/promise/poll.h + src: + - test/core/promise/join_test.cc + deps: + - absl/types:variant + uses_polling: false - name: json_fuzzer_test build: fuzzer language: c++ @@ -5758,6 +6404,140 @@ targets: - test/core/end2end/cq_verifier.cc deps: - grpc_test_util +- name: latch_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/upb-generated/google/api/annotations.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h + - src/core/ext/upb-generated/google/api/http.upb.h + - src/core/ext/upb-generated/google/protobuf/any.upb.h + - src/core/ext/upb-generated/google/protobuf/duration.upb.h + - src/core/ext/upb-generated/google/protobuf/empty.upb.h + - src/core/ext/upb-generated/google/protobuf/struct.upb.h + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h + - src/core/ext/upb-generated/google/rpc/status.upb.h + - src/core/lib/gpr/alloc.h + - src/core/lib/gpr/env.h + - src/core/lib/gpr/murmur_hash.h + - src/core/lib/gpr/spinlock.h + - src/core/lib/gpr/string.h + - src/core/lib/gpr/string_windows.h + - src/core/lib/gpr/time_precise.h + - src/core/lib/gpr/tls.h + - src/core/lib/gpr/tmpfile.h + - src/core/lib/gpr/useful.h + - src/core/lib/gprpp/arena.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/bitset.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/gprpp/debug_location.h + - src/core/lib/gprpp/examine_stack.h + - src/core/lib/gprpp/fork.h + - src/core/lib/gprpp/global_config.h + - src/core/lib/gprpp/global_config_custom.h + - src/core/lib/gprpp/global_config_env.h + - src/core/lib/gprpp/global_config_generic.h + - src/core/lib/gprpp/host_port.h + - src/core/lib/gprpp/manual_constructor.h + - src/core/lib/gprpp/memory.h + - src/core/lib/gprpp/mpscq.h + - src/core/lib/gprpp/stat.h + - src/core/lib/gprpp/status_helper.h + - src/core/lib/gprpp/sync.h + - src/core/lib/gprpp/thd.h + - src/core/lib/gprpp/time_util.h + - src/core/lib/profiling/timers.h + - src/core/lib/promise/activity.h + - src/core/lib/promise/context.h + - src/core/lib/promise/detail/basic_join.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/intra_activity_waiter.h + - src/core/lib/promise/join.h + - src/core/lib/promise/latch.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/seq.h + src: + - src/core/ext/upb-generated/google/api/annotations.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + - src/core/ext/upb-generated/google/api/http.upb.c + - src/core/ext/upb-generated/google/protobuf/any.upb.c + - src/core/ext/upb-generated/google/protobuf/duration.upb.c + - src/core/ext/upb-generated/google/protobuf/empty.upb.c + - src/core/ext/upb-generated/google/protobuf/struct.upb.c + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + - src/core/ext/upb-generated/google/rpc/status.upb.c + - src/core/lib/gpr/alloc.cc + - src/core/lib/gpr/atm.cc + - src/core/lib/gpr/cpu_iphone.cc + - src/core/lib/gpr/cpu_linux.cc + - src/core/lib/gpr/cpu_posix.cc + - src/core/lib/gpr/cpu_windows.cc + - src/core/lib/gpr/env_linux.cc + - src/core/lib/gpr/env_posix.cc + - src/core/lib/gpr/env_windows.cc + - src/core/lib/gpr/log.cc + - src/core/lib/gpr/log_android.cc + - src/core/lib/gpr/log_linux.cc + - src/core/lib/gpr/log_posix.cc + - src/core/lib/gpr/log_windows.cc + - src/core/lib/gpr/murmur_hash.cc + - src/core/lib/gpr/string.cc + - src/core/lib/gpr/string_posix.cc + - src/core/lib/gpr/string_util_windows.cc + - src/core/lib/gpr/string_windows.cc + - src/core/lib/gpr/sync.cc + - src/core/lib/gpr/sync_abseil.cc + - src/core/lib/gpr/sync_posix.cc + - src/core/lib/gpr/sync_windows.cc + - src/core/lib/gpr/time.cc + - src/core/lib/gpr/time_posix.cc + - src/core/lib/gpr/time_precise.cc + - src/core/lib/gpr/time_windows.cc + - src/core/lib/gpr/tmpfile_msys.cc + - src/core/lib/gpr/tmpfile_posix.cc + - src/core/lib/gpr/tmpfile_windows.cc + - src/core/lib/gpr/wrap_memcpy.cc + - src/core/lib/gprpp/arena.cc + - src/core/lib/gprpp/examine_stack.cc + - src/core/lib/gprpp/fork.cc + - src/core/lib/gprpp/global_config_env.cc + - src/core/lib/gprpp/host_port.cc + - src/core/lib/gprpp/mpscq.cc + - src/core/lib/gprpp/stat_posix.cc + - src/core/lib/gprpp/stat_windows.cc + - src/core/lib/gprpp/status_helper.cc + - src/core/lib/gprpp/thd_posix.cc + - src/core/lib/gprpp/thd_windows.cc + - src/core/lib/gprpp/time_util.cc + - src/core/lib/profiling/basic_timers.cc + - src/core/lib/profiling/stap_timers.cc + - src/core/lib/promise/activity.cc + - test/core/promise/latch_test.cc + deps: + - absl/base:base + - absl/base:core_headers + - absl/memory:memory + - absl/status:status + - absl/status:statusor + - absl/strings:cord + - absl/strings:str_format + - absl/strings:strings + - absl/synchronization:synchronization + - absl/time:time + - absl/types:optional + - absl/types:variant + - upb + uses_polling: false - name: lb_get_cpu_stats_test gtest: true build: test @@ -5805,6 +6585,20 @@ targets: deps: - grpc_test_util uses_polling: false +- name: loop_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/loop.h + - src/core/lib/promise/poll.h + src: + - test/core/promise/loop_test.cc + deps: + - absl/types:variant + uses_polling: false - name: match_test gtest: true build: test @@ -5840,6 +6634,15 @@ targets: - test/cpp/end2end/test_service_impl.cc deps: - grpc++_test_util +- name: miscompile_with_no_unique_address_test + gtest: true + build: test + language: c++ + headers: [] + src: + - test/core/compiler_bugs/miscompile_with_no_unique_address_test.cc + deps: [] + uses_polling: false - name: mock_stream_test gtest: true build: test @@ -5918,6 +6721,139 @@ targets: - grpc_test_util benchmark: true defaults: benchmark +- name: observable_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/upb-generated/google/api/annotations.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h + - src/core/ext/upb-generated/google/api/http.upb.h + - src/core/ext/upb-generated/google/protobuf/any.upb.h + - src/core/ext/upb-generated/google/protobuf/duration.upb.h + - src/core/ext/upb-generated/google/protobuf/empty.upb.h + - src/core/ext/upb-generated/google/protobuf/struct.upb.h + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h + - src/core/ext/upb-generated/google/rpc/status.upb.h + - src/core/lib/gpr/alloc.h + - src/core/lib/gpr/env.h + - src/core/lib/gpr/murmur_hash.h + - src/core/lib/gpr/spinlock.h + - src/core/lib/gpr/string.h + - src/core/lib/gpr/string_windows.h + - src/core/lib/gpr/time_precise.h + - src/core/lib/gpr/tls.h + - src/core/lib/gpr/tmpfile.h + - src/core/lib/gpr/useful.h + - src/core/lib/gprpp/arena.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/gprpp/debug_location.h + - src/core/lib/gprpp/examine_stack.h + - src/core/lib/gprpp/fork.h + - src/core/lib/gprpp/global_config.h + - src/core/lib/gprpp/global_config_custom.h + - src/core/lib/gprpp/global_config_env.h + - src/core/lib/gprpp/global_config_generic.h + - src/core/lib/gprpp/host_port.h + - src/core/lib/gprpp/manual_constructor.h + - src/core/lib/gprpp/memory.h + - src/core/lib/gprpp/mpscq.h + - src/core/lib/gprpp/stat.h + - src/core/lib/gprpp/status_helper.h + - src/core/lib/gprpp/sync.h + - src/core/lib/gprpp/thd.h + - src/core/lib/gprpp/time_util.h + - src/core/lib/profiling/timers.h + - src/core/lib/promise/activity.h + - src/core/lib/promise/context.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/observable.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/promise.h + - src/core/lib/promise/seq.h + - src/core/lib/promise/wait_set.h + src: + - src/core/ext/upb-generated/google/api/annotations.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + - src/core/ext/upb-generated/google/api/http.upb.c + - src/core/ext/upb-generated/google/protobuf/any.upb.c + - src/core/ext/upb-generated/google/protobuf/duration.upb.c + - src/core/ext/upb-generated/google/protobuf/empty.upb.c + - src/core/ext/upb-generated/google/protobuf/struct.upb.c + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + - src/core/ext/upb-generated/google/rpc/status.upb.c + - src/core/lib/gpr/alloc.cc + - src/core/lib/gpr/atm.cc + - src/core/lib/gpr/cpu_iphone.cc + - src/core/lib/gpr/cpu_linux.cc + - src/core/lib/gpr/cpu_posix.cc + - src/core/lib/gpr/cpu_windows.cc + - src/core/lib/gpr/env_linux.cc + - src/core/lib/gpr/env_posix.cc + - src/core/lib/gpr/env_windows.cc + - src/core/lib/gpr/log.cc + - src/core/lib/gpr/log_android.cc + - src/core/lib/gpr/log_linux.cc + - src/core/lib/gpr/log_posix.cc + - src/core/lib/gpr/log_windows.cc + - src/core/lib/gpr/murmur_hash.cc + - src/core/lib/gpr/string.cc + - src/core/lib/gpr/string_posix.cc + - src/core/lib/gpr/string_util_windows.cc + - src/core/lib/gpr/string_windows.cc + - src/core/lib/gpr/sync.cc + - src/core/lib/gpr/sync_abseil.cc + - src/core/lib/gpr/sync_posix.cc + - src/core/lib/gpr/sync_windows.cc + - src/core/lib/gpr/time.cc + - src/core/lib/gpr/time_posix.cc + - src/core/lib/gpr/time_precise.cc + - src/core/lib/gpr/time_windows.cc + - src/core/lib/gpr/tmpfile_msys.cc + - src/core/lib/gpr/tmpfile_posix.cc + - src/core/lib/gpr/tmpfile_windows.cc + - src/core/lib/gpr/wrap_memcpy.cc + - src/core/lib/gprpp/arena.cc + - src/core/lib/gprpp/examine_stack.cc + - src/core/lib/gprpp/fork.cc + - src/core/lib/gprpp/global_config_env.cc + - src/core/lib/gprpp/host_port.cc + - src/core/lib/gprpp/mpscq.cc + - src/core/lib/gprpp/stat_posix.cc + - src/core/lib/gprpp/stat_windows.cc + - src/core/lib/gprpp/status_helper.cc + - src/core/lib/gprpp/thd_posix.cc + - src/core/lib/gprpp/thd_windows.cc + - src/core/lib/gprpp/time_util.cc + - src/core/lib/profiling/basic_timers.cc + - src/core/lib/profiling/stap_timers.cc + - src/core/lib/promise/activity.cc + - test/core/promise/observable_test.cc + deps: + - absl/base:base + - absl/base:core_headers + - absl/container:flat_hash_set + - absl/memory:memory + - absl/status:status + - absl/status:statusor + - absl/strings:cord + - absl/strings:str_format + - absl/strings:strings + - absl/synchronization:synchronization + - absl/time:time + - absl/types:optional + - absl/types:variant + - upb + uses_polling: false - name: orphanable_test gtest: true build: test @@ -5987,6 +6923,161 @@ targets: - test/core/transport/pid_controller_test.cc deps: - grpc_test_util +- name: pipe_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/upb-generated/google/api/annotations.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h + - src/core/ext/upb-generated/google/api/http.upb.h + - src/core/ext/upb-generated/google/protobuf/any.upb.h + - src/core/ext/upb-generated/google/protobuf/duration.upb.h + - src/core/ext/upb-generated/google/protobuf/empty.upb.h + - src/core/ext/upb-generated/google/protobuf/struct.upb.h + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h + - src/core/ext/upb-generated/google/rpc/status.upb.h + - src/core/lib/gpr/alloc.h + - src/core/lib/gpr/env.h + - src/core/lib/gpr/murmur_hash.h + - src/core/lib/gpr/spinlock.h + - src/core/lib/gpr/string.h + - src/core/lib/gpr/string_windows.h + - src/core/lib/gpr/time_precise.h + - src/core/lib/gpr/tls.h + - src/core/lib/gpr/tmpfile.h + - src/core/lib/gpr/useful.h + - src/core/lib/gprpp/arena.h + - src/core/lib/gprpp/atomic_utils.h + - src/core/lib/gprpp/bitset.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/gprpp/debug_location.h + - src/core/lib/gprpp/examine_stack.h + - src/core/lib/gprpp/fork.h + - src/core/lib/gprpp/global_config.h + - src/core/lib/gprpp/global_config_custom.h + - src/core/lib/gprpp/global_config_env.h + - src/core/lib/gprpp/global_config_generic.h + - src/core/lib/gprpp/host_port.h + - src/core/lib/gprpp/manual_constructor.h + - src/core/lib/gprpp/memory.h + - src/core/lib/gprpp/mpscq.h + - src/core/lib/gprpp/stat.h + - src/core/lib/gprpp/status_helper.h + - src/core/lib/gprpp/sync.h + - src/core/lib/gprpp/thd.h + - src/core/lib/gprpp/time_util.h + - src/core/lib/profiling/timers.h + - src/core/lib/promise/activity.h + - src/core/lib/promise/context.h + - src/core/lib/promise/detail/basic_join.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/intra_activity_waiter.h + - src/core/lib/promise/join.h + - src/core/lib/promise/pipe.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/promise.h + - src/core/lib/promise/seq.h + src: + - src/core/ext/upb-generated/google/api/annotations.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c + - src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c + - src/core/ext/upb-generated/google/api/http.upb.c + - src/core/ext/upb-generated/google/protobuf/any.upb.c + - src/core/ext/upb-generated/google/protobuf/duration.upb.c + - src/core/ext/upb-generated/google/protobuf/empty.upb.c + - src/core/ext/upb-generated/google/protobuf/struct.upb.c + - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c + - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c + - src/core/ext/upb-generated/google/rpc/status.upb.c + - src/core/lib/gpr/alloc.cc + - src/core/lib/gpr/atm.cc + - src/core/lib/gpr/cpu_iphone.cc + - src/core/lib/gpr/cpu_linux.cc + - src/core/lib/gpr/cpu_posix.cc + - src/core/lib/gpr/cpu_windows.cc + - src/core/lib/gpr/env_linux.cc + - src/core/lib/gpr/env_posix.cc + - src/core/lib/gpr/env_windows.cc + - src/core/lib/gpr/log.cc + - src/core/lib/gpr/log_android.cc + - src/core/lib/gpr/log_linux.cc + - src/core/lib/gpr/log_posix.cc + - src/core/lib/gpr/log_windows.cc + - src/core/lib/gpr/murmur_hash.cc + - src/core/lib/gpr/string.cc + - src/core/lib/gpr/string_posix.cc + - src/core/lib/gpr/string_util_windows.cc + - src/core/lib/gpr/string_windows.cc + - src/core/lib/gpr/sync.cc + - src/core/lib/gpr/sync_abseil.cc + - src/core/lib/gpr/sync_posix.cc + - src/core/lib/gpr/sync_windows.cc + - src/core/lib/gpr/time.cc + - src/core/lib/gpr/time_posix.cc + - src/core/lib/gpr/time_precise.cc + - src/core/lib/gpr/time_windows.cc + - src/core/lib/gpr/tmpfile_msys.cc + - src/core/lib/gpr/tmpfile_posix.cc + - src/core/lib/gpr/tmpfile_windows.cc + - src/core/lib/gpr/wrap_memcpy.cc + - src/core/lib/gprpp/arena.cc + - src/core/lib/gprpp/examine_stack.cc + - src/core/lib/gprpp/fork.cc + - src/core/lib/gprpp/global_config_env.cc + - src/core/lib/gprpp/host_port.cc + - src/core/lib/gprpp/mpscq.cc + - src/core/lib/gprpp/stat_posix.cc + - src/core/lib/gprpp/stat_windows.cc + - src/core/lib/gprpp/status_helper.cc + - src/core/lib/gprpp/thd_posix.cc + - src/core/lib/gprpp/thd_windows.cc + - src/core/lib/gprpp/time_util.cc + - src/core/lib/profiling/basic_timers.cc + - src/core/lib/profiling/stap_timers.cc + - src/core/lib/promise/activity.cc + - test/core/promise/pipe_test.cc + deps: + - absl/base:base + - absl/base:core_headers + - absl/memory:memory + - absl/status:status + - absl/status:statusor + - absl/strings:cord + - absl/strings:str_format + - absl/strings:strings + - absl/synchronization:synchronization + - absl/time:time + - absl/types:optional + - absl/types:variant + - upb + uses_polling: false +- name: poll_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/promise/poll.h + src: + - test/core/promise/poll_test.cc + deps: + - absl/types:variant + uses_polling: false +- name: popularity_count_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/chttp2/transport/popularity_count.h + src: + - test/core/transport/chttp2/popularity_count_test.cc + deps: [] - name: port_sharing_end2end_test gtest: true build: test @@ -6001,6 +7092,53 @@ targets: - test/cpp/end2end/test_service_impl.cc deps: - grpc++_test_util +- name: promise_factory_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/gprpp/capture.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/promise.h + src: + - test/core/promise/promise_factory_test.cc + deps: + - absl/functional:bind_front + - absl/types:optional + - absl/types:variant + - absl/utility:utility + uses_polling: false +- name: promise_map_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/map.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/promise.h + src: + - test/core/promise/map_test.cc + deps: + - absl/types:optional + - absl/types:variant + uses_polling: false +- name: promise_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/promise.h + src: + - test/core/promise/promise_test.cc + deps: + - absl/types:optional + - absl/types:variant + uses_polling: false - name: proto_server_reflection_test gtest: true build: test @@ -6111,6 +7249,18 @@ targets: deps: - grpc++_test_config - grpc++_test_util +- name: race_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/promise/poll.h + - src/core/lib/promise/race.h + src: + - test/core/promise/race_test.cc + deps: + - absl/types:variant + uses_polling: false - name: raw_end2end_test gtest: true build: test @@ -6186,6 +7336,31 @@ targets: deps: - grpc_test_util uses_polling: false +- name: sdk_authz_end2end_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/security/authorization/grpc_authorization_engine.h + - src/core/lib/security/authorization/grpc_authorization_policy_provider.h + - src/core/lib/security/authorization/matchers.h + - src/core/lib/security/authorization/rbac_policy.h + - src/core/lib/security/authorization/rbac_translator.h + - test/cpp/end2end/test_service_impl.h + src: + - src/proto/grpc/testing/echo.proto + - src/proto/grpc/testing/echo_messages.proto + - src/proto/grpc/testing/simple_messages.proto + - src/core/lib/security/authorization/grpc_authorization_engine.cc + - src/core/lib/security/authorization/grpc_authorization_policy_provider.cc + - src/core/lib/security/authorization/matchers.cc + - src/core/lib/security/authorization/rbac_policy.cc + - src/core/lib/security/authorization/rbac_translator.cc + - src/cpp/server/authorization_policy_provider.cc + - test/cpp/end2end/sdk_authz_end2end_test.cc + - test/cpp/end2end/test_service_impl.cc + deps: + - grpc++_test_util - name: secure_auth_context_test gtest: true build: test @@ -6195,6 +7370,23 @@ targets: - test/cpp/common/secure_auth_context_test.cc deps: - grpc++_test_util +- name: seq_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/seq.h + src: + - test/core/promise/seq_test.cc + deps: + - absl/types:variant + uses_polling: false - name: server_builder_plugin_test gtest: true build: test @@ -6659,6 +7851,16 @@ targets: - test/core/security/tls_security_connector_test.cc deps: - grpc_test_util +- name: tls_test + gtest: true + build: test + language: c++ + headers: [] + src: + - test/core/gpr/tls_test.cc + deps: + - grpc_test_util + uses_polling: false - name: too_many_pings_test gtest: true build: test @@ -6671,6 +7873,61 @@ targets: deps: - grpc++_test_config - grpc++_test_util +- name: transport_stream_receiver_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/transaction.h + src: + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - test/core/transport/binder/transport_stream_receiver_test.cc + deps: + - grpc_test_util + uses_polling: false +- name: try_join_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/gprpp/bitset.h + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/promise/detail/basic_join.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/try_join.h + src: + - test/core/promise/try_join_test.cc + deps: + - absl/status:status + - absl/status:statusor + - absl/types:variant + uses_polling: false +- name: try_seq_test + gtest: true + build: test + language: c++ + headers: + - src/core/lib/gprpp/construct_destruct.h + - src/core/lib/promise/detail/basic_seq.h + - src/core/lib/promise/detail/promise_factory.h + - src/core/lib/promise/detail/promise_like.h + - src/core/lib/promise/detail/status.h + - src/core/lib/promise/detail/switch.h + - src/core/lib/promise/poll.h + - src/core/lib/promise/try_seq.h + src: + - test/core/promise/try_seq_test.cc + deps: + - absl/status:status + - absl/status:statusor + - absl/types:variant + uses_polling: false - name: unknown_frame_bad_client_test gtest: true build: test @@ -6720,6 +7977,56 @@ targets: - test/core/end2end/cq_verifier.cc deps: - grpc_test_util +- name: wire_reader_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/binder.h + - src/core/ext/transport/binder/wire_format/binder_constants.h + - src/core/ext/transport/binder/wire_format/transaction.h + - src/core/ext/transport/binder/wire_format/wire_reader.h + - src/core/ext/transport/binder/wire_format/wire_reader_impl.h + - src/core/ext/transport/binder/wire_format/wire_writer.h + - test/core/transport/binder/mock_objects.h + src: + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/binder_constants.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + - src/core/ext/transport/binder/wire_format/wire_writer.cc + - test/core/transport/binder/mock_objects.cc + - test/core/transport/binder/wire_reader_test.cc + deps: + - grpc_test_util + uses_polling: false +- name: wire_writer_test + gtest: true + build: test + language: c++ + headers: + - src/core/ext/transport/binder/utils/transport_stream_receiver.h + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.h + - src/core/ext/transport/binder/wire_format/binder.h + - src/core/ext/transport/binder/wire_format/binder_constants.h + - src/core/ext/transport/binder/wire_format/transaction.h + - src/core/ext/transport/binder/wire_format/wire_reader.h + - src/core/ext/transport/binder/wire_format/wire_reader_impl.h + - src/core/ext/transport/binder/wire_format/wire_writer.h + - test/core/transport/binder/mock_objects.h + src: + - src/core/ext/transport/binder/utils/transport_stream_receiver_impl.cc + - src/core/ext/transport/binder/wire_format/binder_constants.cc + - src/core/ext/transport/binder/wire_format/transaction.cc + - src/core/ext/transport/binder/wire_format/wire_reader_impl.cc + - src/core/ext/transport/binder/wire_format/wire_writer.cc + - test/core/transport/binder/mock_objects.cc + - test/core/transport/binder/wire_writer_test.cc + deps: + - grpc_test_util + uses_polling: false - name: work_serializer_test gtest: true build: test @@ -6752,6 +8059,7 @@ targets: - test/core/util/port_server_client.h - test/core/util/reconnect_server.h - test/core/util/resolve_localhost_ip46.h + - test/core/util/resource_user_util.h - test/core/util/slice_splitter.h - test/core/util/stack_tracer.h - test/core/util/subprocess.h @@ -6776,6 +8084,7 @@ targets: - test/core/util/port_server_client.cc - test/core/util/reconnect_server.cc - test/core/util/resolve_localhost_ip46.cc + - test/core/util/resource_user_util.cc - test/core/util/slice_splitter.cc - test/core/util/stack_tracer.cc - test/core/util/subprocess_posix.cc @@ -6863,6 +8172,7 @@ targets: - src/proto/grpc/testing/xds/v3/csds.proto - src/proto/grpc/testing/xds/v3/discovery.proto - src/proto/grpc/testing/xds/v3/endpoint.proto + - src/proto/grpc/testing/xds/v3/extension.proto - src/proto/grpc/testing/xds/v3/fault.proto - src/proto/grpc/testing/xds/v3/fault_common.proto - src/proto/grpc/testing/xds/v3/http_connection_manager.proto @@ -6881,6 +8191,7 @@ targets: - test/cpp/end2end/test_service_impl.cc - test/cpp/end2end/xds_end2end_test.cc deps: + - grpc++_test_config - grpc++_test_util platforms: - linux diff --git a/build_config.rb b/build_config.rb index a824ddc..7b89bc5 100644 --- a/build_config.rb +++ b/build_config.rb @@ -13,5 +13,5 @@ # limitations under the License. module GrpcBuildConfig - CORE_WINDOWS_DLL = '/tmp/libs/opt/grpc-18.dll' + CORE_WINDOWS_DLL = '/tmp/libs/opt/grpc-19.dll' end diff --git a/build_handwritten.yaml b/build_handwritten.yaml index b4be6f9..1fe0577 100644 --- a/build_handwritten.yaml +++ b/build_handwritten.yaml @@ -12,11 +12,11 @@ settings: '#08': Use "-preN" suffixes to identify pre-release versions '#09': Per-language overrides are possible with (eg) ruby_version tag here '#10': See the expand_version.py for all the quirks here - core_version: 18.0.0 + core_version: 19.0.0 csharp_major_version: 2 - g_stands_for: guileless - protobuf_version: 3.15.8 - version: 1.40.0 + g_stands_for: goat + protobuf_version: 3.17.3 + version: 1.41.0 targets: - name: check_epollexclusive build: tool @@ -35,19 +35,6 @@ targets: - grpc - gpr uses_polling: false -- name: gen_legal_metadata_characters - build: tool - language: c++ - src: - - tools/codegen/core/gen_legal_metadata_characters.cc - deps: [] -- name: gen_percent_encoding_tables - build: tool - language: c++ - src: - - tools/codegen/core/gen_percent_encoding_tables.cc - deps: [] - uses_polling: false configs: asan: CC: clang diff --git a/cmake/abseil-cpp.cmake b/cmake/abseil-cpp.cmake index 078d495..c89ba26 100644 --- a/cmake/abseil-cpp.cmake +++ b/cmake/abseil-cpp.cmake @@ -17,15 +17,12 @@ if(gRPC_ABSL_PROVIDER STREQUAL "module") set(ABSL_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/abseil-cpp) endif() if(EXISTS "${ABSL_ROOT_DIR}/CMakeLists.txt") - add_subdirectory(${ABSL_ROOT_DIR} third_party/abseil-cpp) - if(TARGET absl_base) - if(gRPC_INSTALL AND _gRPC_INSTALL_SUPPORTED_FROM_MODULE) - install(TARGETS ${gRPC_ABSL_USED_TARGETS} EXPORT gRPCTargets - RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR} - LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR}) - endif() + if(gRPC_INSTALL) + # When gRPC_INSTALL is enabled and Abseil will be built as a module, + # Abseil will be installed along with gRPC for convenience. + set(ABSL_ENABLE_INSTALL ON) endif() + add_subdirectory(${ABSL_ROOT_DIR} third_party/abseil-cpp) else() message(WARNING "gRPC_ABSL_PROVIDER is \"module\" but ABSL_ROOT_DIR is wrong") endif() @@ -36,5 +33,5 @@ if(gRPC_ABSL_PROVIDER STREQUAL "module") elseif(gRPC_ABSL_PROVIDER STREQUAL "package") # Use "CONFIG" as there is no built-in cmake module for absl. find_package(absl REQUIRED CONFIG) - set(_gRPC_FIND_ABSL "if(NOT absl_FOUND)\n find_package(absl CONFIG)\nendif()") endif() +set(_gRPC_FIND_ABSL "if(NOT TARGET absl::strings)\n find_package(absl CONFIG)\nendif()") diff --git a/config.m4 b/config.m4 index 939efca..261cf3d 100644 --- a/config.m4 +++ b/config.m4 @@ -78,12 +78,10 @@ if test "$PHP_GRPC" != "no"; then src/core/ext/filters/client_channel/resolver.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc \ - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc \ - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \ src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc \ @@ -141,8 +139,10 @@ if test "$PHP_GRPC" != "no"; then src/core/ext/transport/chttp2/transport/frame_settings.cc \ src/core/ext/transport/chttp2/transport/frame_window_update.cc \ src/core/ext/transport/chttp2/transport/hpack_encoder.cc \ + src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc \ src/core/ext/transport/chttp2/transport/hpack_parser.cc \ - src/core/ext/transport/chttp2/transport/hpack_table.cc \ + src/core/ext/transport/chttp2/transport/hpack_parser_table.cc \ + src/core/ext/transport/chttp2/transport/hpack_utils.cc \ src/core/ext/transport/chttp2/transport/http2_settings.cc \ src/core/ext/transport/chttp2/transport/huffsyms.cc \ src/core/ext/transport/chttp2/transport/incoming_metadata.cc \ @@ -382,6 +382,7 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/compression/stream_compression.cc \ src/core/lib/compression/stream_compression_gzip.cc \ src/core/lib/compression/stream_compression_identity.cc \ + src/core/lib/config/core_configuration.cc \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats_data.cc \ src/core/lib/debug/trace.cc \ @@ -415,7 +416,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/gpr/time_posix.cc \ src/core/lib/gpr/time_precise.cc \ src/core/lib/gpr/time_windows.cc \ - src/core/lib/gpr/tls_pthread.cc \ src/core/lib/gpr/tmpfile_msys.cc \ src/core/lib/gpr/tmpfile_posix.cc \ src/core/lib/gpr/tmpfile_windows.cc \ @@ -445,7 +445,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/iomgr/endpoint_cfstream.cc \ src/core/lib/iomgr/endpoint_pair_event_engine.cc \ src/core/lib/iomgr/endpoint_pair_posix.cc \ - src/core/lib/iomgr/endpoint_pair_uv.cc \ src/core/lib/iomgr/endpoint_pair_windows.cc \ src/core/lib/iomgr/error.cc \ src/core/lib/iomgr/error_cfstream.cc \ @@ -481,7 +480,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/iomgr/iomgr_internal.cc \ src/core/lib/iomgr/iomgr_posix.cc \ src/core/lib/iomgr/iomgr_posix_cfstream.cc \ - src/core/lib/iomgr/iomgr_uv.cc \ src/core/lib/iomgr/iomgr_windows.cc \ src/core/lib/iomgr/is_epollexclusive_available.cc \ src/core/lib/iomgr/load_file.cc \ @@ -492,7 +490,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/iomgr/pollset_set.cc \ src/core/lib/iomgr/pollset_set_custom.cc \ src/core/lib/iomgr/pollset_set_windows.cc \ - src/core/lib/iomgr/pollset_uv.cc \ src/core/lib/iomgr/pollset_windows.cc \ src/core/lib/iomgr/resolve_address.cc \ src/core/lib/iomgr/resolve_address_custom.cc \ @@ -504,7 +501,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/iomgr/socket_utils_common_posix.cc \ src/core/lib/iomgr/socket_utils_linux.cc \ src/core/lib/iomgr/socket_utils_posix.cc \ - src/core/lib/iomgr/socket_utils_uv.cc \ src/core/lib/iomgr/socket_utils_windows.cc \ src/core/lib/iomgr/socket_windows.cc \ src/core/lib/iomgr/tcp_client.cc \ @@ -521,7 +517,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc \ src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc \ src/core/lib/iomgr/tcp_server_windows.cc \ - src/core/lib/iomgr/tcp_uv.cc \ src/core/lib/iomgr/tcp_windows.cc \ src/core/lib/iomgr/time_averaged_stats.cc \ src/core/lib/iomgr/timer.cc \ @@ -529,7 +524,6 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/iomgr/timer_generic.cc \ src/core/lib/iomgr/timer_heap.cc \ src/core/lib/iomgr/timer_manager.cc \ - src/core/lib/iomgr/timer_uv.cc \ src/core/lib/iomgr/udp_server.cc \ src/core/lib/iomgr/unix_sockets_posix.cc \ src/core/lib/iomgr/unix_sockets_posix_noop.cc \ @@ -546,6 +540,7 @@ if test "$PHP_GRPC" != "no"; then src/core/lib/profiling/stap_timers.cc \ src/core/lib/security/authorization/authorization_policy_provider_vtable.cc \ src/core/lib/security/authorization/evaluate_args.cc \ + src/core/lib/security/authorization/sdk_server_authz_filter.cc \ src/core/lib/security/context/security_context.cc \ src/core/lib/security/credentials/alts/alts_credentials.cc \ src/core/lib/security/credentials/alts/check_gcp_environment.cc \ @@ -995,6 +990,7 @@ if test "$PHP_GRPC" != "no"; then third_party/boringssl-with-bazel/src/ssl/dtls_method.cc \ third_party/boringssl-with-bazel/src/ssl/dtls_record.cc \ third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc \ + third_party/boringssl-with-bazel/src/ssl/extensions.cc \ third_party/boringssl-with-bazel/src/ssl/handoff.cc \ third_party/boringssl-with-bazel/src/ssl/handshake.cc \ third_party/boringssl-with-bazel/src/ssl/handshake_client.cc \ @@ -1017,7 +1013,6 @@ if test "$PHP_GRPC" != "no"; then third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc \ third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc \ third_party/boringssl-with-bazel/src/ssl/t1_enc.cc \ - third_party/boringssl-with-bazel/src/ssl/t1_lib.cc \ third_party/boringssl-with-bazel/src/ssl/tls13_both.cc \ third_party/boringssl-with-bazel/src/ssl/tls13_client.cc \ third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc \ @@ -1061,7 +1056,7 @@ if test "$PHP_GRPC" != "no"; then -D_HAS_EXCEPTIONS=0 -DNOMINMAX -DGRPC_ARES=0 \ -DGRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK=1 \ -DGRPC_XDS_USER_AGENT_NAME_SUFFIX='"\"PHP\""' \ - -DGRPC_XDS_USER_AGENT_VERSION_SUFFIX='"\"1.40.0\""') + -DGRPC_XDS_USER_AGENT_VERSION_SUFFIX='"\"1.41.0\""') PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/census) PHP_ADD_BUILD_DIR($ext_builddir/src/core/ext/filters/client_channel) @@ -1186,6 +1181,7 @@ if test "$PHP_GRPC" != "no"; then PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/backoff) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/channel) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/compression) + PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/config) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/debug) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/event_engine) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/gpr) diff --git a/config.w32 b/config.w32 index 1d6e69d..66eb917 100644 --- a/config.w32 +++ b/config.w32 @@ -44,12 +44,10 @@ if (PHP_GRPC != "no") { "src\\core\\ext\\filters\\client_channel\\resolver.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\dns_resolver_ares.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_event_engine.cc " + - "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_libuv.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_posix.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_ev_driver_windows.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper_event_engine.cc " + - "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper_libuv.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper_posix.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\c_ares\\grpc_ares_wrapper_windows.cc " + "src\\core\\ext\\filters\\client_channel\\resolver\\dns\\dns_resolver_selection.cc " + @@ -107,8 +105,10 @@ if (PHP_GRPC != "no") { "src\\core\\ext\\transport\\chttp2\\transport\\frame_settings.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\frame_window_update.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\hpack_encoder.cc " + + "src\\core\\ext\\transport\\chttp2\\transport\\hpack_encoder_table.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\hpack_parser.cc " + - "src\\core\\ext\\transport\\chttp2\\transport\\hpack_table.cc " + + "src\\core\\ext\\transport\\chttp2\\transport\\hpack_parser_table.cc " + + "src\\core\\ext\\transport\\chttp2\\transport\\hpack_utils.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\http2_settings.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\huffsyms.cc " + "src\\core\\ext\\transport\\chttp2\\transport\\incoming_metadata.cc " + @@ -348,6 +348,7 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\compression\\stream_compression.cc " + "src\\core\\lib\\compression\\stream_compression_gzip.cc " + "src\\core\\lib\\compression\\stream_compression_identity.cc " + + "src\\core\\lib\\config\\core_configuration.cc " + "src\\core\\lib\\debug\\stats.cc " + "src\\core\\lib\\debug\\stats_data.cc " + "src\\core\\lib\\debug\\trace.cc " + @@ -381,7 +382,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\gpr\\time_posix.cc " + "src\\core\\lib\\gpr\\time_precise.cc " + "src\\core\\lib\\gpr\\time_windows.cc " + - "src\\core\\lib\\gpr\\tls_pthread.cc " + "src\\core\\lib\\gpr\\tmpfile_msys.cc " + "src\\core\\lib\\gpr\\tmpfile_posix.cc " + "src\\core\\lib\\gpr\\tmpfile_windows.cc " + @@ -411,7 +411,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\iomgr\\endpoint_cfstream.cc " + "src\\core\\lib\\iomgr\\endpoint_pair_event_engine.cc " + "src\\core\\lib\\iomgr\\endpoint_pair_posix.cc " + - "src\\core\\lib\\iomgr\\endpoint_pair_uv.cc " + "src\\core\\lib\\iomgr\\endpoint_pair_windows.cc " + "src\\core\\lib\\iomgr\\error.cc " + "src\\core\\lib\\iomgr\\error_cfstream.cc " + @@ -447,7 +446,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\iomgr\\iomgr_internal.cc " + "src\\core\\lib\\iomgr\\iomgr_posix.cc " + "src\\core\\lib\\iomgr\\iomgr_posix_cfstream.cc " + - "src\\core\\lib\\iomgr\\iomgr_uv.cc " + "src\\core\\lib\\iomgr\\iomgr_windows.cc " + "src\\core\\lib\\iomgr\\is_epollexclusive_available.cc " + "src\\core\\lib\\iomgr\\load_file.cc " + @@ -458,7 +456,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\iomgr\\pollset_set.cc " + "src\\core\\lib\\iomgr\\pollset_set_custom.cc " + "src\\core\\lib\\iomgr\\pollset_set_windows.cc " + - "src\\core\\lib\\iomgr\\pollset_uv.cc " + "src\\core\\lib\\iomgr\\pollset_windows.cc " + "src\\core\\lib\\iomgr\\resolve_address.cc " + "src\\core\\lib\\iomgr\\resolve_address_custom.cc " + @@ -470,7 +467,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\iomgr\\socket_utils_common_posix.cc " + "src\\core\\lib\\iomgr\\socket_utils_linux.cc " + "src\\core\\lib\\iomgr\\socket_utils_posix.cc " + - "src\\core\\lib\\iomgr\\socket_utils_uv.cc " + "src\\core\\lib\\iomgr\\socket_utils_windows.cc " + "src\\core\\lib\\iomgr\\socket_windows.cc " + "src\\core\\lib\\iomgr\\tcp_client.cc " + @@ -487,7 +483,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\iomgr\\tcp_server_utils_posix_ifaddrs.cc " + "src\\core\\lib\\iomgr\\tcp_server_utils_posix_noifaddrs.cc " + "src\\core\\lib\\iomgr\\tcp_server_windows.cc " + - "src\\core\\lib\\iomgr\\tcp_uv.cc " + "src\\core\\lib\\iomgr\\tcp_windows.cc " + "src\\core\\lib\\iomgr\\time_averaged_stats.cc " + "src\\core\\lib\\iomgr\\timer.cc " + @@ -495,7 +490,6 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\iomgr\\timer_generic.cc " + "src\\core\\lib\\iomgr\\timer_heap.cc " + "src\\core\\lib\\iomgr\\timer_manager.cc " + - "src\\core\\lib\\iomgr\\timer_uv.cc " + "src\\core\\lib\\iomgr\\udp_server.cc " + "src\\core\\lib\\iomgr\\unix_sockets_posix.cc " + "src\\core\\lib\\iomgr\\unix_sockets_posix_noop.cc " + @@ -512,6 +506,7 @@ if (PHP_GRPC != "no") { "src\\core\\lib\\profiling\\stap_timers.cc " + "src\\core\\lib\\security\\authorization\\authorization_policy_provider_vtable.cc " + "src\\core\\lib\\security\\authorization\\evaluate_args.cc " + + "src\\core\\lib\\security\\authorization\\sdk_server_authz_filter.cc " + "src\\core\\lib\\security\\context\\security_context.cc " + "src\\core\\lib\\security\\credentials\\alts\\alts_credentials.cc " + "src\\core\\lib\\security\\credentials\\alts\\check_gcp_environment.cc " + @@ -961,6 +956,7 @@ if (PHP_GRPC != "no") { "third_party\\boringssl-with-bazel\\src\\ssl\\dtls_method.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\dtls_record.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\encrypted_client_hello.cc " + + "third_party\\boringssl-with-bazel\\src\\ssl\\extensions.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\handoff.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\handshake.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\handshake_client.cc " + @@ -983,7 +979,6 @@ if (PHP_GRPC != "no") { "third_party\\boringssl-with-bazel\\src\\ssl\\ssl_versions.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\ssl_x509.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\t1_enc.cc " + - "third_party\\boringssl-with-bazel\\src\\ssl\\t1_lib.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\tls13_both.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\tls13_client.cc " + "third_party\\boringssl-with-bazel\\src\\ssl\\tls13_enc.cc " + @@ -1287,6 +1282,7 @@ if (PHP_GRPC != "no") { FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\backoff"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\channel"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\compression"); + FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\config"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\debug"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\event_engine"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\gpr"); diff --git a/doc/core/moving-to-c++.md b/doc/core/moving-to-c++.md index 410435c..db1ae48 100644 --- a/doc/core/moving-to-c++.md +++ b/doc/core/moving-to-c++.md @@ -44,8 +44,6 @@ C++ compatible with - `` - `` - `` -- `grpc_core::Atomic` is prefered over `std::atomic` in gRPC library because it provides - additional debugging information. ## Roadmap diff --git a/doc/environment_variables.md b/doc/environment_variables.md index 1aa0719..48c2292 100644 --- a/doc/environment_variables.md +++ b/doc/environment_variables.md @@ -78,6 +78,7 @@ some configuration as environment variables that can be set. - ring_hash_lb - traces the ring hash load balancing policy - round_robin - traces the round_robin load balancing policy - queue_pluck + - sdk_authz - traces sdk authorization - server_channel - lightweight trace of significant server channel events - secure_endpoint - traces bytes flowing through encrypted channels - subchannel - traces the connectivity state of subchannel @@ -96,7 +97,6 @@ some configuration as environment variables that can be set. The following tracers will only run in binaries built in DEBUG mode. This is accomplished by invoking `CONFIG=dbg make ` - - alarm_refcount - refcounting traces for grpc_alarm structure - metadata - tracks creation and mutation of metadata - combiner - traces combiner lock state - call_combiner - traces call combiner state diff --git a/doc/g_stands_for.md b/doc/g_stands_for.md index 5c891c6..35b477a 100644 --- a/doc/g_stands_for.md +++ b/doc/g_stands_for.md @@ -39,5 +39,5 @@ - 1.37 'g' stands for ['gilded'](https://github.com/grpc/grpc/tree/v1.37.x) - 1.38 'g' stands for ['guadalupe_river_park_conservancy'](https://github.com/grpc/grpc/tree/v1.38.x) - 1.39 'g' stands for ['goofy'](https://github.com/grpc/grpc/tree/v1.39.x) -- 1.40 'g' stands for ['guileless'](https://github.com/grpc/grpc/tree/master) -- 1.41 'g' stands for goat +- 1.40 'g' stands for ['guileless'](https://github.com/grpc/grpc/tree/v1.40.x) +- 1.41 'g' stands for ['goat'](https://github.com/grpc/grpc/tree/v1.41.x) diff --git a/doc/grpc_xds_features.md b/doc/grpc_xds_features.md index 1acb57b..1e8124e 100644 --- a/doc/grpc_xds_features.md +++ b/doc/grpc_xds_features.md @@ -7,10 +7,24 @@ Note that a gRPC client will simply ignore the configuration of a feature it does not support. The gRPC client does not generate a log to indicate that some configuration was ignored. It is impractical to generate a log and keep it up-to-date because xDS has a large number of APIs that gRPC -does not support and the APIs keep evolving too. We recommend reading the +does not support and the APIs keep evolving too. In the case where an xDS +field corresponding to a feature is supported but the value configured for +that field is not supported, a gRPC client will NACK such a configuration. +We recommend reading the [first gRFC](https://github.com/grpc/proposal/blob/master/A27-xds-global-load-balancing.md) on xDS support in gRPC to understand the design philosophy. +Not all cluster load balancing policies are supported. A gRPC client will +NACK the configuration that contains unsupported cluster load balancing +policy. This will cause all cluster configurations to be rejected by the +client because the xDS protocol currently requires rejecting all resources in +a given response, rather than being able to reject only an individual resource +from the response. Due to this limitation, you must ensure that all clients +support the required cluster load balancing policy before configuring that +policy for a service. For example, if you change the ROUND_ROBIN policy to +RING_HASH, you must ensure that all the clients are upgraded to a version that +supports RING_HASH. + The EDS policy will *not* support [overprovisioning](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/overprovisioning), which is different from Envoy. Envoy takes the overprovisioning into @@ -48,3 +62,5 @@ Support for [xDS v3 APIs](https://www.envoyproxy.io/docs/envoy/latest/api-v3/api [Circuit Breaking](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/cluster/v3/circuit_breaker.proto):
  • Only max_requests is supported.
| [A32](https://github.com/grpc/proposal/blob/master/A32-xds-circuit-breaking.md) | v1.37.1 (N/A for PHP) | v1.37.1 | v1.37.0 | | [Fault Injection](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/http/fault/v3/fault.proto):
Only the following fields are supported:
  • delay
  • abort
  • max_active_faults
  • headers
| [A33](https://github.com/grpc/proposal/blob/master/A33-Fault-Injection.md) | v1.37.1 | v1.37.1 | v1.37.0 | | [Client Status Discovery Service](https://github.com/envoyproxy/envoy/blob/main/api/envoy/service/status/v3/csds.proto) | [A40](https://github.com/grpc/proposal/blob/master/A40-csds-support.md) | v1.37.1 (C++)
v1.38.0 (Python) | v1.37.1 | v1.37.0 | | +[Ring hash](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/load_balancing/load_balancers#ring-hash) load balancing policy:
Only the following [policy specifiers](https://github.com/envoyproxy/envoy/blob/2443032526cf6e50d63d35770df9473dd0460fc0/api/envoy/config/route/v3/route_components.proto#L706) are supported:
  • header
  • filter_state with key `io.grpc.channel_id`
Only [`XX_HASH`](https://github.com/envoyproxy/envoy/blob/2443032526cf6e50d63d35770df9473dd0460fc0/api/envoy/config/cluster/v3/cluster.proto#L383) function is supported. | [A42](https://github.com/grpc/proposal/blob/master/A42-xds-ring-hash-lb-policy.md) | v1.40.0 | v1.40.1 | | +[Retry](https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#envoy-v3-api-msg-config-route-v3-retrypolicy):
Only the following fields are supported:
  • retry_on for the following conditions: cancelled, deadline-exceeded, internal, resource-exhausted, and unavailable.
  • num_retries
  • retry_back_off
| [A44](https://github.com/grpc/proposal/blob/master/A44-xds-retry.md) | v1.40.0 | v1.40.1 | | | diff --git a/doc/interop-test-descriptions.md b/doc/interop-test-descriptions.md index 524ccf5..46a1ca7 100755 --- a/doc/interop-test-descriptions.md +++ b/doc/interop-test-descriptions.md @@ -1003,24 +1003,73 @@ Status: TODO This test verifies that a client sending faster than a server can drain sees pushback (i.e., attempts to send succeed only after appropriate delays). -### Experimental Tests - -These tests are not yet standardized, and are not yet implemented in all -languages. Therefore they are not part of our interop matrix. - #### rpc_soak The client performs many large_unary RPCs in sequence over the same channel. -The number of RPCs is configured by the experimental flag, `soak_iterations`. +The client records the latency and status of each RPC in some data structure. +If the test ever consumes `soak_overall_timeout_seconds` seconds and still hasn't +completed `soak_iterations` RPCs, then the test should discontinue sending RPCs +as soon as possible. After performing all RPCs, the test should examine +previously recorded RPC latency and status results in a second pass and fail if +either: + +a) not all `soak_iterations` RPCs were completed + +b) the sum of RPCs that either completed with a non-OK status or exceeded + `max_acceptable_per_rpc_latency_ms` exceeds `soak_max_failures` + +Implementations should use a timer with sub-millisecond precision to measure +latency. Also, implementations should avoid setting RPC deadlines and should +instead wait for each RPC to complete. Doing so provides more data for +debugging in case of failure. For example, if RPC deadlines are set to +`soak_per_iteration_max_acceptable_latency_ms` and one of the RPCs hits that +deadline, it's not clear if the RPC was late by a millisecond or a minute. + +This test must be configurable via a few different command line flags: + +* `soak_iterations`: Controls the number of RPCs to perform. This should + default to 10. + +* `soak_max_failures`: An inclusive upper limit on the number of RPC failures + that should be tolerated (i.e. after which the test process should + still exit 0). A failure is considered to be either a non-OK status or an RPC + whose latency exceeds `soak_per_iteration_max_acceptable_latency_ms`. This + should default to 0. + +* `soak_per_iteration_max_acceptable_latency_ms`: An upper limit on the latency + of a single RPC in order for that RPC to be considered successful. This + should default to 1000. + +* `soak_overall_timeout_seconds`: The overall number of seconds after which + the test should stop and fail if `soak_iterations` have not yet been + completed. This should default to + `soak_per_iteration_max_acceptable_latency_ms` * `soak_iterations`. + +The following is optional but encouraged to improve debuggability: + +* Implementations should log the number of milliseconds that each RPC takes. + Additionally, implementations should use a histogram of RPC latencies + to log interesting latency percentiles at the end of the test (e.g. median, + 90th, and max latency percentiles). #### channel_soak -The client performs many large_unary RPCs in sequence. Before each RPC, it -tears down and rebuilds the channel. The number of RPCs is configured by -the experimental flag, `soak_iterations`. +Similar to rpc_soak, but this time each RPC is performed on a new channel. The +channel is created just before each RPC and is destroyed just after. -This tests puts stress on several gRPC components; the resolver, the load -balancer, and the RPC hotpath. +This test is configured with the same command line flags that the rpc_soak test +is configured with, with only one semantic difference: when measuring an RPCs +latency to see if it exceeds `soak_per_iteration_max_acceptable_latency_ms` or +not, the creation of the channel should be included in that +latency measurement, but the teardown of that channel should **not** be +included in that latency measurement (channel teardown semantics differ widely +between languages). This latency measurement should also be the value that is +logged and recorded in the latency histogram. + +### Experimental Tests + +These tests are not yet standardized, and are not yet implemented in all +languages. Therefore they are not part of our interop matrix. #### long_lived_channel diff --git a/examples/android/binder/java/io/grpc/binder/cpp/example/AndroidManifest.xml b/examples/android/binder/java/io/grpc/binder/cpp/example/AndroidManifest.xml index ffec202..7a60e90 100644 --- a/examples/android/binder/java/io/grpc/binder/cpp/example/AndroidManifest.xml +++ b/examples/android/binder/java/io/grpc/binder/cpp/example/AndroidManifest.xml @@ -1,3 +1,4 @@ + + + + + #include +#include "examples/protos/helloworld.grpc.pb.h" +#include "examples/protos/helloworld.pb.h" + +#include "src/core/ext/transport/binder/client/channel_create.h" + extern "C" JNIEXPORT jstring JNICALL Java_io_grpc_binder_cpp_example_ButtonPressHandler_native_1entry( - JNIEnv* env, jobject /*this*/, jobject /*application*/) { + JNIEnv* env, jobject /*this*/, jobject application) { static bool first = true; __android_log_print(ANDROID_LOG_INFO, "Demo", "Line number %d", __LINE__); if (first) { first = false; + grpc::experimental::BindToOnDeviceServerService( + env, application, "io.grpc.binder.cpp.exampleserver", + "io.grpc.binder.cpp.exampleserver.ExportedEndpointService"); return env->NewStringUTF("Clicked 1 time"); } else { - return env->NewStringUTF("Clicked more than 1 time"); + auto channel = + grpc::experimental::CreateBinderChannel(env, application, "", ""); + auto stub = helloworld::Greeter::NewStub(channel); + grpc::ClientContext context; + helloworld::HelloRequest request; + helloworld::HelloReply response; + request.set_name("BinderTransportClient"); + grpc::Status status = stub->SayHello(&context, request, &response); + if (status.ok()) { + return env->NewStringUTF(response.message().c_str()); + } + return env->NewStringUTF("Clicked more than 1 time. Status not ok"); } } diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/AndroidManifest.xml b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/AndroidManifest.xml new file mode 100644 index 0000000..fe2cd2e --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/AndroidManifest.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/AndroidManifest_endpoint.xml b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/AndroidManifest_endpoint.xml new file mode 100644 index 0000000..a9c9d5c --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/AndroidManifest_endpoint.xml @@ -0,0 +1,10 @@ + + + + + + + diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/BUILD b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/BUILD new file mode 100644 index 0000000..5bc44c4 --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/BUILD @@ -0,0 +1,64 @@ +# Copyright 2021 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. + +load("@build_bazel_rules_android//android:rules.bzl", "android_binary", "android_library") + +cc_library( + name = "jni_lib", + srcs = ["native.cc"], + linkopts = [ + "-ldl", + "-llog", + "-lm", + "-lbinder_ndk", + "-Wl,--no-undefined", + ], + deps = [ + # Temporarily directly depend on this target before we expose a public API + "//src/core/ext/transport/binder/server:grpc_transport_binder_server", + "//:grpc++", + "//examples/protos:helloworld_cc_grpc", + ], + alwayslink = True, +) + +android_library( + name = "activity", + srcs = [ + "ButtonPressHandler.java", + "MainActivity.java", + ], + manifest = "AndroidManifest.xml", + resource_files = glob(["res/**"]), + deps = [ + ":endpoint", + ":jni_lib", + ], +) + +android_library( + name = "endpoint", + srcs = ["ExportedEndpointService.java"], + exports_manifest = True, + manifest = "AndroidManifest_endpoint.xml", + deps = [], +) + +android_binary( + name = "app", + manifest = "AndroidManifest.xml", + deps = [ + ":activity", + ], +) diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/ButtonPressHandler.java b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/ButtonPressHandler.java new file mode 100644 index 0000000..34d38cc --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/ButtonPressHandler.java @@ -0,0 +1,13 @@ +package io.grpc.binder.cpp.exampleserver; + +import android.app.Application; + +public class ButtonPressHandler { + static { + System.loadLibrary("app"); + } + + public String onPressed(Application application) { + return "Server Button Pressed"; + } +} diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/ExportedEndpointService.java b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/ExportedEndpointService.java new file mode 100644 index 0000000..287b066 --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/ExportedEndpointService.java @@ -0,0 +1,28 @@ +package io.grpc.binder.cpp.exampleserver; + +import android.app.Service; +import android.os.IBinder; +import android.content.Intent; + +/** Exposes gRPC services running in the main process */ +public final class ExportedEndpointService extends Service { + private final IBinder binder; + + static { + System.loadLibrary("app"); + } + + public ExportedEndpointService() { + init_grpc_server(); + binder = get_endpoint_binder(); + } + + @Override + public IBinder onBind(Intent intent) { + return binder; + } + + public native void init_grpc_server(); + + public native IBinder get_endpoint_binder(); +} diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/MainActivity.java b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/MainActivity.java new file mode 100644 index 0000000..d252e5f --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/MainActivity.java @@ -0,0 +1,27 @@ +package io.grpc.binder.cpp.exampleserver; + +import android.app.Activity; +import android.os.Bundle; +import android.util.Log; +import android.widget.Button; +import android.widget.TextView; +import io.grpc.binder.cpp.exampleserver.R; + +/** Main class for the example app. */ +public class MainActivity extends Activity { + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + Log.v("Example", "hello, world"); + + setContentView(R.layout.activity_main); + + Button clickMeButton = findViewById(R.id.clickMeButton); + TextView exampleTextView = findViewById(R.id.exampleTextView); + + ButtonPressHandler h = new ButtonPressHandler(); + + clickMeButton.setOnClickListener( + v -> exampleTextView.setText(h.onPressed(getApplication()))); + } +} diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/native.cc b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/native.cc new file mode 100644 index 0000000..be79380 --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/native.cc @@ -0,0 +1,82 @@ +// Copyright 2021 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. + +#include +#include +#include +#include +#include +#include + +#include "examples/protos/helloworld.grpc.pb.h" +#include "examples/protos/helloworld.pb.h" + +#include + +#include "src/core/ext/transport/binder/server/binder_server.h" +#include "src/core/ext/transport/binder/server/binder_server_credentials.h" + +namespace { +class GreeterService : public helloworld::Greeter::Service { + public: + grpc::Status SayHello(grpc::ServerContext*, + const helloworld::HelloRequest* request, + helloworld::HelloReply* response) override { + __android_log_print(ANDROID_LOG_INFO, "DemoServer", "Line number %d", + __LINE__); + __android_log_print(ANDROID_LOG_INFO, "DemoServer", "Got hello request: %s", + request->name().c_str()); + response->set_message("Hi, " + request->name()); + return grpc::Status::OK; + } +}; + +} // namespace + +extern "C" JNIEXPORT void JNICALL +Java_io_grpc_binder_cpp_exampleserver_ExportedEndpointService_init_1grpc_1server( + JNIEnv* env, jobject /*this*/) { + __android_log_print(ANDROID_LOG_INFO, "DemoServer", "Line number %d", + __LINE__); + static std::unique_ptr server = nullptr; + + if (server != nullptr) { + // Already initiated + return; + } + + static GreeterService service; + grpc::ServerBuilder server_builder; + server_builder.RegisterService(&service); + + server_builder.AddListeningPort( + "binder://example.service", + grpc::experimental::BinderServerCredentials()); + + server = server_builder.BuildAndStart(); +} + +extern "C" JNIEXPORT jobject JNICALL +Java_io_grpc_binder_cpp_exampleserver_ExportedEndpointService_get_1endpoint_1binder( + JNIEnv* env, jobject /*this*/) { + __android_log_print(ANDROID_LOG_INFO, "DemoServer", "Line number %d", + __LINE__); + + auto ai_binder = static_cast( + grpc::experimental::binder::GetEndpointBinder("example.service")); + + __android_log_print(ANDROID_LOG_INFO, "DemoServer", "ai_binder = %p", + ai_binder); + return AIBinder_toJavaBinder(env, ai_binder); +} diff --git a/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/res/layout/activity_main.xml b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/res/layout/activity_main.xml new file mode 100644 index 0000000..e866d8d --- /dev/null +++ b/examples/android/binder/java/io/grpc/binder/cpp/exampleserver/res/layout/activity_main.xml @@ -0,0 +1,24 @@ + + + + + +