aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2016-05-03 12:56:40 -0700
committerGravatar Craig Tiller <ctiller@google.com>2016-05-03 12:56:40 -0700
commit7c6ba9bae47bdeb6f532b457d9848e7dc94c8e14 (patch)
treedd56d6b41d03feedf1f51420507b958af7473c1a
parent27f59afecb04b63b7c83a842d400efb1ad09049a (diff)
parent6bac7d3467c99dccc30e8447bc84237bb54b99fe (diff)
Merge github.com:grpc/grpc into error
-rw-r--r--.gitignore2
-rw-r--r--BUILD19
-rw-r--r--Makefile105
-rw-r--r--binding.gyp2
-rw-r--r--build.yaml25
-rw-r--r--config.m42
-rw-r--r--doc/fail_fast.md15
-rw-r--r--examples/cpp/helloworld/Makefile2
-rw-r--r--examples/cpp/route_guide/Makefile2
-rw-r--r--examples/python/README.md11
-rw-r--r--gRPC.podspec2
-rw-r--r--grpc.def1
-rwxr-xr-xgrpc.gemspec6
-rw-r--r--include/grpc++/impl/codegen/call.h7
-rw-r--r--include/grpc/grpc.h3
-rw-r--r--include/grpc/impl/codegen/port_platform.h39
-rw-r--r--package.json25
-rw-r--r--package.xml25
-rw-r--r--requirements.txt7
-rw-r--r--src/compiler/config.h14
-rw-r--r--src/compiler/cpp_generator.cc35
-rw-r--r--src/compiler/cpp_generator.h17
-rw-r--r--src/compiler/cpp_plugin.cc33
-rw-r--r--src/compiler/csharp_generator.cc133
-rw-r--r--src/compiler/csharp_generator.h4
-rw-r--r--src/compiler/csharp_plugin.cc24
-rw-r--r--src/compiler/generator_helpers.h119
-rw-r--r--src/compiler/node_generator.cc277
-rw-r--r--src/compiler/node_generator.h49
-rw-r--r--src/compiler/node_generator_helpers.h50
-rw-r--r--src/compiler/node_plugin.cc77
-rw-r--r--src/compiler/objective_c_generator.cc6
-rw-r--r--src/compiler/objective_c_plugin.cc6
-rw-r--r--src/compiler/python_generator.cc10
-rw-r--r--src/core/ext/census/grpc_filter.c4
-rw-r--r--src/core/ext/client_config/client_channel.c5
-rw-r--r--src/core/ext/client_config/subchannel.c8
-rw-r--r--src/core/ext/transport/chttp2/transport/chttp2_transport.c736
-rw-r--r--src/core/ext/transport/chttp2/transport/internal.h74
-rw-r--r--src/core/ext/transport/chttp2/transport/parsing.c21
-rw-r--r--src/core/ext/transport/chttp2/transport/stream_lists.c8
-rw-r--r--src/core/lib/channel/channel_stack.c6
-rw-r--r--src/core/lib/channel/channel_stack.h11
-rw-r--r--src/core/lib/channel/compress_filter.c26
-rw-r--r--src/core/lib/channel/compress_filter.h2
-rw-r--r--src/core/lib/channel/connected_channel.c7
-rw-r--r--src/core/lib/channel/http_client_filter.c4
-rw-r--r--src/core/lib/channel/http_server_filter.c17
-rw-r--r--src/core/lib/http/parser.c35
-rw-r--r--src/core/lib/http/parser.h1
-rw-r--r--src/core/lib/iomgr/ev_posix.c1
-rw-r--r--src/core/lib/iomgr/iomgr.c6
-rw-r--r--src/core/lib/iomgr/resolve_address_windows.c6
-rw-r--r--src/core/lib/iomgr/tcp_client_windows.c29
-rw-r--r--src/core/lib/iomgr/tcp_server_windows.c28
-rw-r--r--src/core/lib/iomgr/tcp_windows.c16
-rw-r--r--src/core/lib/security/client_auth_filter.c4
-rw-r--r--src/core/lib/security/server_auth_filter.c4
-rw-r--r--src/core/lib/support/env_win32.c44
-rw-r--r--src/core/lib/support/log_linux.c4
-rw-r--r--src/core/lib/support/log_win32.c18
-rw-r--r--src/core/lib/support/string_util_win32.c94
-rw-r--r--src/core/lib/support/string_win32.c32
-rw-r--r--src/core/lib/support/time_win32.c4
-rw-r--r--src/core/lib/support/tmpfile_msys.c73
-rw-r--r--src/core/lib/support/tmpfile_posix.c4
-rw-r--r--src/core/lib/support/tmpfile_win32.c4
-rw-r--r--src/core/lib/surface/call.c42
-rw-r--r--src/core/lib/surface/completion_queue.c4
-rw-r--r--src/core/lib/surface/init.c3
-rw-r--r--src/core/lib/surface/lame_client.c6
-rw-r--r--src/core/lib/surface/server.c4
-rw-r--r--src/core/lib/transport/metadata.c29
-rw-r--r--src/core/lib/transport/transport.c5
-rw-r--r--src/core/lib/transport/transport.h12
-rw-r--r--src/core/lib/transport/transport_impl.h2
-rw-r--r--src/csharp/Grpc.Core.Tests/CallOptionsTest.cs16
-rw-r--r--src/csharp/Grpc.Core.Tests/Internal/AsyncCallTest.cs109
-rw-r--r--src/csharp/Grpc.Core/CallOptions.cs51
-rw-r--r--src/csharp/Grpc.Core/Internal/AsyncCall.cs13
-rw-r--r--src/csharp/Grpc.Core/Version.cs3
-rw-r--r--src/csharp/Grpc.Core/VersionInfo.cs11
-rw-r--r--src/csharp/Grpc.Examples/MathGrpc.cs192
-rw-r--r--src/csharp/Grpc.HealthCheck/HealthGrpc.cs62
-rw-r--r--src/csharp/Grpc.IntegrationTesting.StressClient/.gitignore3
-rw-r--r--src/csharp/Grpc.IntegrationTesting.StressClient/Grpc.IntegrationTesting.StressClient.csproj60
-rw-r--r--src/csharp/Grpc.IntegrationTesting.StressClient/Program.cs (renamed from src/python/grpcio/tests/interop/empty.proto)26
-rw-r--r--src/csharp/Grpc.IntegrationTesting.StressClient/Properties/AssemblyInfo.cs11
-rw-r--r--src/csharp/Grpc.IntegrationTesting/Control.cs160
-rw-r--r--src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj3
-rw-r--r--src/csharp/Grpc.IntegrationTesting/InteropClient.cs3
-rw-r--r--src/csharp/Grpc.IntegrationTesting/Metrics.cs452
-rw-r--r--src/csharp/Grpc.IntegrationTesting/MetricsGrpc.cs242
-rw-r--r--src/csharp/Grpc.IntegrationTesting/ServicesGrpc.cs316
-rw-r--r--src/csharp/Grpc.IntegrationTesting/StressTestClient.cs318
-rw-r--r--src/csharp/Grpc.IntegrationTesting/TestGrpc.cs344
-rw-r--r--src/csharp/Grpc.sln8
-rw-r--r--src/csharp/buildall.bat6
-rwxr-xr-xsrc/csharp/generate_proto_csharp.sh2
-rw-r--r--src/node/.gitignore2
-rw-r--r--src/node/.jshintignore1
-rw-r--r--src/node/.jshintrc28
-rw-r--r--src/node/ext/node_grpc.cc35
-rw-r--r--src/node/ext/server_credentials.cc4
-rw-r--r--src/node/index.js7
-rw-r--r--src/node/src/client.js3
-rw-r--r--src/node/src/server.js34
-rw-r--r--src/node/test/math/math_grpc_pb.js99
-rw-r--r--src/node/test/math/math_pb.js866
-rw-r--r--src/node/test/math/math_server.js40
-rw-r--r--src/node/test/math/node_modules/grpc.js37
-rw-r--r--src/node/test/math_client_test.js45
-rw-r--r--src/node/test/surface_test.js56
-rwxr-xr-xsrc/node/tools/bin/protoc.js4
-rwxr-xr-xsrc/node/tools/bin/protoc_plugin.js56
-rw-r--r--src/node/tools/package.json4
-rw-r--r--src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h56
-rw-r--r--src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.m66
-rw-r--r--src/objective-c/GRPCClient/GRPCCall+Tests.m12
-rw-r--r--src/objective-c/GRPCClient/GRPCCall.m54
-rw-r--r--src/objective-c/GRPCClient/private/GRPCChannel.h12
-rw-r--r--src/objective-c/GRPCClient/private/GRPCChannel.m52
-rw-r--r--src/objective-c/GRPCClient/private/GRPCHost.h7
-rw-r--r--src/objective-c/GRPCClient/private/GRPCHost.m92
-rw-r--r--src/objective-c/tests/InteropTests.m6
-rw-r--r--src/proto/grpc/testing/compiler_test.proto75
-rw-r--r--src/proto/grpc/testing/control.proto10
-rw-r--r--src/python/.gitignore1
-rw-r--r--src/python/grpcio/README.rst13
-rw-r--r--src/python/grpcio/commands.py50
-rw-r--r--src/python/grpcio/grpc/_adapter/fore.py363
-rw-r--r--src/python/grpcio/grpc/_adapter/rear.py395
-rw-r--r--src/python/grpcio/grpc/_cython/imports.generated.c2
-rw-r--r--src/python/grpcio/grpc/_cython/imports.generated.h3
-rw-r--r--src/python/grpcio/grpc/early_adopter/__init__.py35
-rw-r--r--src/python/grpcio/grpc/early_adopter/implementations.py262
-rw-r--r--src/python/grpcio/grpc/framework/alpha/__init__.py35
-rw-r--r--src/python/grpcio/grpc/framework/alpha/_face_utilities.py183
-rw-r--r--src/python/grpcio/grpc/framework/alpha/_reexport.py205
-rw-r--r--src/python/grpcio/grpc/framework/alpha/interfaces.py384
-rw-r--r--src/python/grpcio/grpc/framework/alpha/utilities.py269
-rw-r--r--src/python/grpcio/grpc/framework/base/_constants.py32
-rw-r--r--src/python/grpcio/grpc/framework/base/_context.py99
-rw-r--r--src/python/grpcio/grpc/framework/base/_emission.py125
-rw-r--r--src/python/grpcio/grpc/framework/base/_ends.py399
-rw-r--r--src/python/grpcio/grpc/framework/base/_expiration.py158
-rw-r--r--src/python/grpcio/grpc/framework/base/_ingestion.py443
-rw-r--r--src/python/grpcio/grpc/framework/base/_interfaces.py266
-rw-r--r--src/python/grpcio/grpc/framework/base/_reception.py400
-rw-r--r--src/python/grpcio/grpc/framework/base/_termination.py204
-rw-r--r--src/python/grpcio/grpc/framework/base/_transmission.py429
-rw-r--r--src/python/grpcio/grpc/framework/base/implementations.py77
-rw-r--r--src/python/grpcio/grpc/framework/base/in_memory.py108
-rw-r--r--src/python/grpcio/grpc/framework/base/interfaces.py353
-rw-r--r--src/python/grpcio/grpc/framework/base/util.py94
-rw-r--r--src/python/grpcio/grpc/framework/face/__init__.py35
-rw-r--r--src/python/grpcio/grpc/framework/face/_calls.py422
-rw-r--r--src/python/grpcio/grpc/framework/face/_control.py201
-rw-r--r--src/python/grpcio/grpc/framework/face/_service.py187
-rw-r--r--src/python/grpcio/grpc/framework/face/demonstration.py118
-rw-r--r--src/python/grpcio/grpc/framework/face/implementations.py320
-rw-r--r--src/python/grpcio/grpc/framework/face/interfaces.py634
-rw-r--r--src/python/grpcio/grpc/framework/face/utilities.py177
-rw-r--r--src/python/grpcio/grpc_core_dependencies.py2
-rw-r--r--src/python/grpcio/tests/interop/_insecure_interop_test.py2
-rw-r--r--src/python/grpcio/tests/interop/_secure_interop_test.py2
-rw-r--r--src/python/grpcio/tests/interop/client.py2
-rw-r--r--src/python/grpcio/tests/interop/messages.proto167
-rw-r--r--src/python/grpcio/tests/interop/methods.py6
-rw-r--r--src/python/grpcio/tests/interop/server.py2
-rw-r--r--src/python/grpcio/tests/interop/test.proto86
-rw-r--r--src/python/grpcio/tests/protoc_plugin/beta_python_plugin_test.py41
-rw-r--r--src/python/grpcio/tests/qps/__init__.py (renamed from src/python/grpcio/tests/unit/framework/face/__init__.py)4
-rw-r--r--src/python/grpcio/tests/qps/benchmark_client.py186
-rw-r--r--src/python/grpcio/tests/qps/benchmark_server.py58
-rw-r--r--src/python/grpcio/tests/qps/client_runner.py104
-rw-r--r--src/python/grpcio/tests/qps/histogram.py (renamed from src/python/grpcio/grpc/framework/base/_cancellation.py)79
-rw-r--r--src/python/grpcio/tests/qps/qps_worker.py60
-rw-r--r--src/python/grpcio/tests/qps/worker_server.py184
-rw-r--r--src/python/grpcio/tests/stress/__init__.py (renamed from src/python/grpcio/tests/unit/framework/face/testing/__init__.py)4
-rw-r--r--src/python/grpcio/tests/stress/client.py132
-rw-r--r--[-rwxr-xr-x]src/python/grpcio/tests/stress/metrics_server.py (renamed from src/ruby/bin/interop/interop_client.rb)51
-rw-r--r--src/python/grpcio/tests/stress/test_runner.py (renamed from src/python/grpcio/grpc/framework/face/exceptions.py)95
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/base_util.py102
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/blocking_invocation_inline_service_test_case.py224
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/callback.py94
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/control.py87
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/coverage.py121
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/digest.py452
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/event_invocation_synchronous_event_service_test_case.py378
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/future_invocation_asynchronous_event_service_test_case.py384
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/interfaces.py118
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/service.py321
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/stock_service.py374
-rw-r--r--src/python/grpcio/tests/unit/framework/face/testing/test_case.py81
-rwxr-xr-xsrc/ruby/bin/interop/interop_server.rb50
-rw-r--r--src/ruby/ext/grpc/extconf.rb38
-rw-r--r--src/ruby/ext/grpc/rb_call.c30
-rw-r--r--src/ruby/ext/grpc/rb_channel_credentials.c29
-rw-r--r--src/ruby/ext/grpc/rb_grpc_imports.generated.c2
-rw-r--r--src/ruby/ext/grpc/rb_grpc_imports.generated.h3
-rw-r--r--src/ruby/lib/grpc.rb31
-rw-r--r--src/ruby/lib/grpc/core/time_consts.rb2
-rw-r--r--src/ruby/lib/grpc/errors.rb2
-rw-r--r--src/ruby/lib/grpc/generic/active_call.rb7
-rw-r--r--src/ruby/lib/grpc/generic/bidi_call.rb2
-rw-r--r--src/ruby/lib/grpc/generic/client_stub.rb4
-rw-r--r--src/ruby/lib/grpc/generic/rpc_desc.rb2
-rw-r--r--src/ruby/lib/grpc/generic/rpc_server.rb14
-rw-r--r--src/ruby/lib/grpc/generic/service.rb4
-rw-r--r--src/ruby/lib/grpc/grpc.rb4
-rw-r--r--src/ruby/pb/grpc/testing/metrics.rb28
-rw-r--r--src/ruby/pb/grpc/testing/metrics_services.rb27
-rwxr-xr-xsrc/ruby/pb/test/client.rb33
-rwxr-xr-xsrc/ruby/pb/test/server.rb2
-rw-r--r--src/ruby/qps/src/proto/grpc/testing/control.rb4
-rw-r--r--src/ruby/stress/metrics_server.rb83
-rwxr-xr-xsrc/ruby/stress/stress_client.rb155
-rw-r--r--src/ruby/tools/README.md12
-rwxr-xr-x[-rw-r--r--]src/ruby/tools/bin/protoc.rb (renamed from src/python/grpcio/grpc/framework/base/__init__.py)18
-rwxr-xr-xsrc/ruby/tools/bin/protoc_grpc_ruby_plugin.rb41
-rw-r--r--src/ruby/tools/grpc-tools.gemspec22
-rw-r--r--src/ruby/tools/os_check.rb (renamed from src/python/grpcio/grpc/framework/base/exceptions.py)19
-rw-r--r--[-rwxr-xr-x]src/ruby/tools/version.rb (renamed from src/ruby/bin/grpc_ruby_interop_server)9
-rw-r--r--templates/grpc.gemspec.template4
-rw-r--r--templates/package.json.template25
-rw-r--r--templates/package.xml.template23
-rw-r--r--templates/src/csharp/Grpc.Core/VersionInfo.cs.template11
-rw-r--r--templates/src/node/tools/package.json.template4
-rw-r--r--templates/src/ruby/tools/version.rb.template36
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile.template39
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile.template39
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile.template37
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile.template37
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_java/Dockerfile.template44
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile.template39
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template64
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template39
-rw-r--r--templates/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile.template39
-rw-r--r--templates/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile.template41
-rw-r--r--test/core/bad_client/tests/server_registered_method.headers2
-rw-r--r--test/core/bad_client/tests/simple_request.c22
-rw-r--r--test/core/bad_client/tests/simple_request_unusual2.headers13
-rw-r--r--test/core/channel/channel_stack_test.c6
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/04a5f10d2ebc712cf13c05b5ed0fafb31b42737cbin0 -> 570 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/38a55e83e685617cdf72e95f1303857b627ae346bin0 -> 98 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/40b4b92460c4e76a39af9042fb3d86d491a98e16bin0 -> 337 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/6914f5f380c83ff9e3e90fc60d5048e47e5e77d9bin0 -> 367 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/7abe8c414aa1418157c2d7ae5e70a84ffb61c027bin0 -> 405 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/8c5bbcc6935d43c94a0c4ce4a5da01c04fd223d8bin0 -> 233 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/b5bcc7f39420e997ec6f8e3c70ef49b8f1afb361bin0 -> 232 bytes
-rw-r--r--test/core/end2end/fuzzers/api_fuzzer_corpus/f755b44ff2221c971ca2bfaffc69e002ba982730bin0 -> 375 bytes
-rw-r--r--test/core/end2end/fuzzers/client_fuzzer_corpus/1e64080289ea4168304417f3fbd86b01d7d6f431bin0 -> 229 bytes
-rw-r--r--test/core/end2end/fuzzers/client_fuzzer_corpus/20ee437b7f456ebb19d98d94d9feb1d5e9174c65bin0 -> 142 bytes
-rw-r--r--test/core/end2end/fuzzers/client_fuzzer_corpus/2c1ecf05c5dde692ed16502294e9570ac3b02600bin0 -> 22 bytes
-rw-r--r--test/core/end2end/fuzzers/client_fuzzer_corpus/aa878edb0100e876e00e310ae221b220fdb5e028bin0 -> 131 bytes
-rw-r--r--test/core/end2end/fuzzers/client_fuzzer_corpus/slow-unit-53cf4d25741d5f6e7ad9147b286ff0b40cb500a9bin0 -> 25 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/03a304b82629155af693978c2b53439e553f6450bin0 -> 225 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/03a72675e1969f836094f1ecfec2a7b34418e306bin0 -> 286 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/0416afd6875d9ba55f1e5f86a6456a5445d5e576bin0 -> 651 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/052c8f28e5884bb48f0d504461272cd3a5893215bin0 -> 286 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/08c42ef29eff83052c5887855f2fa3e07ebe470cbin0 -> 650 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/1ba889ea1543297824e99e641e6ca8b91f45732ebin0 -> 650 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/2c4c7e2ed6d977ec119b040b328ad09808909a70bin0 -> 287 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/3b09bf453c6f93983c24c4d5481e55d66213f93abin0 -> 650 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/49cb33cbb60f041e8e99dd718993acd2c3354416bin0 -> 357 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/4d982c41efad2242f8c06630c23c68146153b47bbin0 -> 287 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/59743fe120be6ae1aed1c02230ee1bb460f621eebin0 -> 628 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/830e3f794c53f7b284eb5c635b2943db9ee9aaeebin0 -> 287 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/a5ccb8f124d8ddb5350b90bc0d6b96db280cb7c9bin0 -> 651 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/a7fac1265a384fe9e45a9ee3d708b79c4e80505ebin0 -> 286 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/aaf049720c707d4e14e47e7eb31d6a2dda60e66abin0 -> 651 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/c4e4c7572e005e18d56eac407033da058737a5abbin0 -> 651 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/crash-dae0f07934a527989f23f06e630710ff6ca8c809bin0 -> 104 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/e96ad9c17795e52edc810a08d4fc61fe8790002abin0 -> 651 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/fa202a5f51cd49f8ea5af60c5f403f797c01c504bin0 -> 651 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-0aa52e00ddd54f8e129430852c2da95650c354b0bin0 -> 2048 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-3cec540a680b108dda1e0a8e0bfb2d44e5a4a4e8bin0 -> 2047 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-84f22ffca68c6e1590a44aa9f6dd0cef1f680c77bin0 -> 2048 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-adaac86cf1aa1e98e95240c5f92c3708456c3624bin0 -> 2047 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-b281f018cc919301131cf3ed28449cfbd24b6bbfbin0 -> 2047 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba0016a62a8576a57f000b90c364847ef6b12dccbin0 -> 2046 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba17346b8e46e6a05aaa7342a959a7c5ab0f1471bin0 -> 2048 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ccafab6afdc6474610023b47bd7b3e1b9ea4647bbin0 -> 2047 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-dc57e96cd02ba32fa4a99c97b6490e9879d30be5bin0 -> 2047 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f6c1042f96e15183dcc13b9658d971cc29426d53bin0 -> 2047 bytes
-rw-r--r--test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f9a2773d6502fd4b1ffa73df3c550b0da63af833bin0 -> 2046 bytes
-rw-r--r--test/core/end2end/tests/filter_causes_close.c4
-rw-r--r--test/core/http/parser_test.c11
-rw-r--r--test/core/surface/concurrent_connectivity_test.c13
-rw-r--r--test/core/util/passthru_endpoint.c8
-rw-r--r--test/core/util/port_windows.c9
-rw-r--r--test/core/util/test_config.c4
-rw-r--r--test/cpp/codegen/compiler_test_golden294
-rw-r--r--test/cpp/codegen/golden_file_test.cc64
-rw-r--r--test/cpp/interop/stress_interop_client.cc40
-rw-r--r--test/cpp/interop/stress_interop_client.h8
-rw-r--r--test/cpp/interop/stress_test.cc13
-rw-r--r--test/cpp/qps/client.h12
-rw-r--r--test/cpp/qps/driver.cc3
-rw-r--r--test/cpp/util/metrics_server.cc45
-rw-r--r--test/cpp/util/metrics_server.h40
-rwxr-xr-xtools/buildgen/plugins/expand_version.py4
-rwxr-xr-xtools/buildgen/plugins/list_api.py9
-rw-r--r--tools/buildgen/plugins/make_fuzzer_tests.py4
-rw-r--r--tools/dockerfile/grpc_base/Dockerfile68
-rw-r--r--tools/dockerfile/grpc_base/README.md11
-rw-r--r--tools/dockerfile/grpc_linuxbrew/Dockerfile62
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile (renamed from tools/dockerfile/grpc_interop_csharp/Dockerfile)35
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh (renamed from tools/dockerfile/grpc_interop_csharp/build_interop.sh)0
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile (renamed from tools/dockerfile/grpc_interop_cxx/Dockerfile)25
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh (renamed from tools/dockerfile/grpc_interop_cxx/build_interop.sh)0
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_go/Dockerfile (renamed from tools/dockerfile/grpc_interop_go/Dockerfile)0
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_go/build_interop.sh (renamed from tools/dockerfile/grpc_interop_go/build_interop.sh)0
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile (renamed from tools/dockerfile/grpc_interop_http2/Dockerfile)0
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh (renamed from tools/dockerfile/grpc_interop_http2/build_interop.sh)0
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_java/Dockerfile (renamed from tools/dockerfile/grpc_interop_java/Dockerfile)12
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_java/build_interop.sh (renamed from tools/dockerfile/grpc_interop_java/build_interop.sh)0
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_node/Dockerfile (renamed from tools/dockerfile/grpc_interop_node/Dockerfile)32
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_node/build_interop.sh (renamed from tools/dockerfile/grpc_interop_node/build_interop.sh)2
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_php/Dockerfile (renamed from tools/dockerfile/grpc_interop_php/Dockerfile)43
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_php/build_interop.sh (renamed from tools/dockerfile/grpc_interop_php/build_interop.sh)0
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_python/Dockerfile (renamed from tools/dockerfile/grpc_interop_python/Dockerfile)41
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_python/build_interop.sh (renamed from tools/dockerfile/grpc_interop_python/build_interop.sh)6
-rw-r--r--tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile (renamed from tools/dockerfile/grpc_interop_ruby/Dockerfile)36
-rwxr-xr-xtools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh (renamed from tools/dockerfile/grpc_interop_ruby/build_interop.sh)2
-rw-r--r--tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile101
-rwxr-xr-x[-rw-r--r--]tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh (renamed from src/python/grpcio/grpc/framework/alpha/exceptions.py)26
-rw-r--r--tools/doxygen/Doxyfile.core.internal2
-rwxr-xr-xtools/gce/linux_performance_worker_init.sh2
-rwxr-xr-xtools/jenkins/build_interop_image.sh6
-rwxr-xr-xtools/jenkins/run_distribution.sh144
-rwxr-xr-xtools/jenkins/run_performance.sh2
-rwxr-xr-xtools/run_tests/build_package_node.sh50
-rwxr-xr-xtools/run_tests/build_package_ruby.sh24
-rwxr-xr-xtools/run_tests/build_python.sh12
-rwxr-xr-x[-rw-r--r--]tools/run_tests/performance/kill_workers.sh (renamed from src/python/grpcio/grpc/framework/base/null.py)36
-rwxr-xr-xtools/run_tests/performance/remote_host_prepare.sh7
-rwxr-xr-xtools/run_tests/performance/run_worker_python.sh (renamed from src/ruby/bin/grpc_ruby_interop_client)12
-rw-r--r--tools/run_tests/performance/scenario_config.py123
-rwxr-xr-xtools/run_tests/run_interop_tests.py14
-rwxr-xr-xtools/run_tests/run_performance_tests.py28
-rwxr-xr-xtools/run_tests/run_python.sh6
-rwxr-xr-xtools/run_tests/run_tests.py35
-rw-r--r--tools/run_tests/sources_and_headers.json38
-rw-r--r--tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md4
-rw-r--r--tools/run_tests/stress_test/configs/asan.json3
-rw-r--r--tools/run_tests/stress_test/configs/csharp.json90
-rw-r--r--tools/run_tests/stress_test/configs/opt-tsan-asan.json3
-rw-r--r--tools/run_tests/stress_test/configs/opt.json3
-rw-r--r--tools/run_tests/stress_test/configs/tsan.json3
-rw-r--r--tools/run_tests/tests.json26359
-rw-r--r--tox.ini2
-rw-r--r--vsprojects/grpc_protoc_plugins.sln16
-rw-r--r--vsprojects/vcxproj/gpr/gpr.vcxproj4
-rw-r--r--vsprojects/vcxproj/gpr/gpr.vcxproj.filters6
-rw-r--r--vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj168
-rw-r--r--vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj.filters18
-rw-r--r--vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj4
-rw-r--r--vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj.filters9
-rw-r--r--vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj206
-rw-r--r--vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj.filters36
362 files changed, 15371 insertions, 32687 deletions
diff --git a/.gitignore b/.gitignore
index 502483f456..ca61bda124 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,7 +14,7 @@ dist/
*.egg
# Node installation output
-node_modules/
+^node_modules
src/node/extension_binary/
# gcov coverage data
diff --git a/BUILD b/BUILD
index ea4bab757c..d9dec753b6 100644
--- a/BUILD
+++ b/BUILD
@@ -84,6 +84,7 @@ cc_library(
"src/core/lib/support/stack_lockfree.c",
"src/core/lib/support/string.c",
"src/core/lib/support/string_posix.c",
+ "src/core/lib/support/string_util_win32.c",
"src/core/lib/support/string_win32.c",
"src/core/lib/support/subprocess_posix.c",
"src/core/lib/support/subprocess_windows.c",
@@ -98,6 +99,7 @@ cc_library(
"src/core/lib/support/time_precise.c",
"src/core/lib/support/time_win32.c",
"src/core/lib/support/tls_pthread.c",
+ "src/core/lib/support/tmpfile_msys.c",
"src/core/lib/support/tmpfile_posix.c",
"src/core/lib/support/tmpfile_win32.c",
"src/core/lib/support/wrap_memcpy.c",
@@ -1140,6 +1142,8 @@ cc_library(
"src/compiler/csharp_generator.h",
"src/compiler/csharp_generator_helpers.h",
"src/compiler/generator_helpers.h",
+ "src/compiler/node_generator.h",
+ "src/compiler/node_generator_helpers.h",
"src/compiler/objective_c_generator.h",
"src/compiler/objective_c_generator_helpers.h",
"src/compiler/python_generator.h",
@@ -1149,6 +1153,7 @@ cc_library(
"src/compiler/ruby_generator_string-inl.h",
"src/compiler/cpp_generator.cc",
"src/compiler/csharp_generator.cc",
+ "src/compiler/node_generator.cc",
"src/compiler/objective_c_generator.cc",
"src/compiler/python_generator.cc",
"src/compiler/ruby_generator.cc",
@@ -1220,6 +1225,7 @@ objc_library(
"src/core/lib/support/stack_lockfree.c",
"src/core/lib/support/string.c",
"src/core/lib/support/string_posix.c",
+ "src/core/lib/support/string_util_win32.c",
"src/core/lib/support/string_win32.c",
"src/core/lib/support/subprocess_posix.c",
"src/core/lib/support/subprocess_windows.c",
@@ -1234,6 +1240,7 @@ objc_library(
"src/core/lib/support/time_precise.c",
"src/core/lib/support/time_win32.c",
"src/core/lib/support/tls_pthread.c",
+ "src/core/lib/support/tmpfile_msys.c",
"src/core/lib/support/tmpfile_posix.c",
"src/core/lib/support/tmpfile_win32.c",
"src/core/lib/support/wrap_memcpy.c",
@@ -1673,6 +1680,18 @@ cc_binary(
cc_binary(
+ name = "grpc_node_plugin",
+ srcs = [
+ "src/compiler/node_plugin.cc",
+ ],
+ deps = [
+ "//external:protobuf_compiler",
+ ":grpc_plugin_support",
+ ],
+)
+
+
+cc_binary(
name = "grpc_objective_c_plugin",
srcs = [
"src/compiler/objective_c_plugin.cc",
diff --git a/Makefile b/Makefile
index 380f684ef1..fae2680c41 100644
--- a/Makefile
+++ b/Makefile
@@ -779,7 +779,7 @@ endif
.SECONDARY = %.pb.h %.pb.cc
-PROTOC_PLUGINS = $(BINDIR)/$(CONFIG)/grpc_cpp_plugin $(BINDIR)/$(CONFIG)/grpc_csharp_plugin $(BINDIR)/$(CONFIG)/grpc_objective_c_plugin $(BINDIR)/$(CONFIG)/grpc_python_plugin $(BINDIR)/$(CONFIG)/grpc_ruby_plugin
+PROTOC_PLUGINS = $(BINDIR)/$(CONFIG)/grpc_cpp_plugin $(BINDIR)/$(CONFIG)/grpc_csharp_plugin $(BINDIR)/$(CONFIG)/grpc_node_plugin $(BINDIR)/$(CONFIG)/grpc_objective_c_plugin $(BINDIR)/$(CONFIG)/grpc_python_plugin $(BINDIR)/$(CONFIG)/grpc_ruby_plugin
ifeq ($(DEP_MISSING),)
all: static shared plugins
dep_error:
@@ -1010,9 +1010,11 @@ cxx_time_test: $(BINDIR)/$(CONFIG)/cxx_time_test
end2end_test: $(BINDIR)/$(CONFIG)/end2end_test
generic_async_streaming_ping_pong_test: $(BINDIR)/$(CONFIG)/generic_async_streaming_ping_pong_test
generic_end2end_test: $(BINDIR)/$(CONFIG)/generic_end2end_test
+golden_file_test: $(BINDIR)/$(CONFIG)/golden_file_test
grpc_cli: $(BINDIR)/$(CONFIG)/grpc_cli
grpc_cpp_plugin: $(BINDIR)/$(CONFIG)/grpc_cpp_plugin
grpc_csharp_plugin: $(BINDIR)/$(CONFIG)/grpc_csharp_plugin
+grpc_node_plugin: $(BINDIR)/$(CONFIG)/grpc_node_plugin
grpc_objective_c_plugin: $(BINDIR)/$(CONFIG)/grpc_objective_c_plugin
grpc_python_plugin: $(BINDIR)/$(CONFIG)/grpc_python_plugin
grpc_ruby_plugin: $(BINDIR)/$(CONFIG)/grpc_ruby_plugin
@@ -1380,6 +1382,7 @@ buildtests_cxx: buildtests_zookeeper privatelibs_cxx \
$(BINDIR)/$(CONFIG)/end2end_test \
$(BINDIR)/$(CONFIG)/generic_async_streaming_ping_pong_test \
$(BINDIR)/$(CONFIG)/generic_end2end_test \
+ $(BINDIR)/$(CONFIG)/golden_file_test \
$(BINDIR)/$(CONFIG)/grpc_cli \
$(BINDIR)/$(CONFIG)/grpclb_api_test \
$(BINDIR)/$(CONFIG)/hybrid_end2end_test \
@@ -1711,6 +1714,8 @@ test_cxx: test_zookeeper buildtests_cxx
$(Q) $(BINDIR)/$(CONFIG)/generic_async_streaming_ping_pong_test || ( echo test generic_async_streaming_ping_pong_test failed ; exit 1 )
$(E) "[RUN] Testing generic_end2end_test"
$(Q) $(BINDIR)/$(CONFIG)/generic_end2end_test || ( echo test generic_end2end_test failed ; exit 1 )
+ $(E) "[RUN] Testing golden_file_test"
+ $(Q) $(BINDIR)/$(CONFIG)/golden_file_test || ( echo test golden_file_test failed ; exit 1 )
$(E) "[RUN] Testing grpclb_api_test"
$(Q) $(BINDIR)/$(CONFIG)/grpclb_api_test || ( echo test grpclb_api_test failed ; exit 1 )
$(E) "[RUN] Testing hybrid_end2end_test"
@@ -1880,6 +1885,21 @@ $(GENDIR)/src/proto/grpc/lb/v0/load_balancer.grpc.pb.cc: src/proto/grpc/lb/v0/lo
endif
ifeq ($(NO_PROTOC),true)
+$(GENDIR)/src/proto/grpc/testing/compiler_test.pb.cc: protoc_dep_error
+$(GENDIR)/src/proto/grpc/testing/compiler_test.grpc.pb.cc: protoc_dep_error
+else
+$(GENDIR)/src/proto/grpc/testing/compiler_test.pb.cc: src/proto/grpc/testing/compiler_test.proto $(PROTOBUF_DEP) $(PROTOC_PLUGINS)
+ $(E) "[PROTOC] Generating protobuf CC file from $<"
+ $(Q) mkdir -p `dirname $@`
+ $(Q) $(PROTOC) --cpp_out=$(GENDIR) $<
+
+$(GENDIR)/src/proto/grpc/testing/compiler_test.grpc.pb.cc: src/proto/grpc/testing/compiler_test.proto $(PROTOBUF_DEP) $(PROTOC_PLUGINS)
+ $(E) "[GRPC] Generating gRPC's protobuf service CC file from $<"
+ $(Q) mkdir -p `dirname $@`
+ $(Q) $(PROTOC) --grpc_out=$(GENDIR) --plugin=protoc-gen-grpc=$(BINDIR)/$(CONFIG)/grpc_cpp_plugin $<
+endif
+
+ifeq ($(NO_PROTOC),true)
$(GENDIR)/src/proto/grpc/testing/control.pb.cc: protoc_dep_error
$(GENDIR)/src/proto/grpc/testing/control.grpc.pb.cc: protoc_dep_error
else
@@ -2245,6 +2265,8 @@ else
$(Q) $(INSTALL) -d $(prefix)/bin
$(Q) $(INSTALL) $(BINDIR)/$(CONFIG)/grpc_csharp_plugin $(prefix)/bin/grpc_csharp_plugin
$(Q) $(INSTALL) -d $(prefix)/bin
+ $(Q) $(INSTALL) $(BINDIR)/$(CONFIG)/grpc_node_plugin $(prefix)/bin/grpc_node_plugin
+ $(Q) $(INSTALL) -d $(prefix)/bin
$(Q) $(INSTALL) $(BINDIR)/$(CONFIG)/grpc_objective_c_plugin $(prefix)/bin/grpc_objective_c_plugin
$(Q) $(INSTALL) -d $(prefix)/bin
$(Q) $(INSTALL) $(BINDIR)/$(CONFIG)/grpc_python_plugin $(prefix)/bin/grpc_python_plugin
@@ -2328,6 +2350,7 @@ LIBGPR_SRC = \
src/core/lib/support/stack_lockfree.c \
src/core/lib/support/string.c \
src/core/lib/support/string_posix.c \
+ src/core/lib/support/string_util_win32.c \
src/core/lib/support/string_win32.c \
src/core/lib/support/subprocess_posix.c \
src/core/lib/support/subprocess_windows.c \
@@ -2342,6 +2365,7 @@ LIBGPR_SRC = \
src/core/lib/support/time_precise.c \
src/core/lib/support/time_win32.c \
src/core/lib/support/tls_pthread.c \
+ src/core/lib/support/tmpfile_msys.c \
src/core/lib/support/tmpfile_posix.c \
src/core/lib/support/tmpfile_win32.c \
src/core/lib/support/wrap_memcpy.c \
@@ -3613,6 +3637,7 @@ endif
LIBGRPC_PLUGIN_SUPPORT_SRC = \
src/compiler/cpp_generator.cc \
src/compiler/csharp_generator.cc \
+ src/compiler/node_generator.cc \
src/compiler/objective_c_generator.cc \
src/compiler/python_generator.cc \
src/compiler/ruby_generator.cc \
@@ -10442,6 +10467,53 @@ endif
endif
+GOLDEN_FILE_TEST_SRC = \
+ $(GENDIR)/src/proto/grpc/testing/compiler_test.pb.cc $(GENDIR)/src/proto/grpc/testing/compiler_test.grpc.pb.cc \
+ test/cpp/codegen/golden_file_test.cc \
+
+GOLDEN_FILE_TEST_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(GOLDEN_FILE_TEST_SRC))))
+ifeq ($(NO_SECURE),true)
+
+# You can't build secure targets if you don't have OpenSSL.
+
+$(BINDIR)/$(CONFIG)/golden_file_test: openssl_dep_error
+
+else
+
+
+
+
+ifeq ($(NO_PROTOBUF),true)
+
+# You can't build the protoc plugins or protobuf-enabled targets if you don't have protobuf 3.0.0+.
+
+$(BINDIR)/$(CONFIG)/golden_file_test: protobuf_dep_error
+
+else
+
+$(BINDIR)/$(CONFIG)/golden_file_test: $(PROTOBUF_DEP) $(GOLDEN_FILE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
+ $(E) "[LD] Linking $@"
+ $(Q) mkdir -p `dirname $@`
+ $(Q) $(LDXX) $(LDFLAGS) $(GOLDEN_FILE_TEST_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a $(LDLIBSXX) $(LDLIBS_PROTOBUF) $(LDLIBS) $(LDLIBS_SECURE) $(GTEST_LIB) -o $(BINDIR)/$(CONFIG)/golden_file_test
+
+endif
+
+endif
+
+$(OBJDIR)/$(CONFIG)/src/proto/grpc/testing/compiler_test.o: $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
+
+$(OBJDIR)/$(CONFIG)/test/cpp/codegen/golden_file_test.o: $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a
+
+deps_golden_file_test: $(GOLDEN_FILE_TEST_OBJS:.o=.dep)
+
+ifneq ($(NO_SECURE),true)
+ifneq ($(NO_DEPS),true)
+-include $(GOLDEN_FILE_TEST_OBJS:.o=.dep)
+endif
+endif
+$(OBJDIR)/$(CONFIG)/test/cpp/codegen/golden_file_test.o: $(GENDIR)/src/proto/grpc/testing/compiler_test.pb.cc $(GENDIR)/src/proto/grpc/testing/compiler_test.grpc.pb.cc
+
+
GRPC_CLI_SRC = \
test/cpp/util/grpc_cli.cc \
@@ -10547,6 +10619,37 @@ ifneq ($(NO_DEPS),true)
endif
+GRPC_NODE_PLUGIN_SRC = \
+ src/compiler/node_plugin.cc \
+
+GRPC_NODE_PLUGIN_OBJS = $(addprefix $(OBJDIR)/$(CONFIG)/, $(addsuffix .o, $(basename $(GRPC_NODE_PLUGIN_SRC))))
+
+
+
+ifeq ($(NO_PROTOBUF),true)
+
+# You can't build the protoc plugins or protobuf-enabled targets if you don't have protobuf 3.0.0+.
+
+$(BINDIR)/$(CONFIG)/grpc_node_plugin: protobuf_dep_error
+
+else
+
+$(BINDIR)/$(CONFIG)/grpc_node_plugin: $(PROTOBUF_DEP) $(GRPC_NODE_PLUGIN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a
+ $(E) "[HOSTLD] Linking $@"
+ $(Q) mkdir -p `dirname $@`
+ $(Q) $(HOST_LDXX) $(HOST_LDFLAGS) $(GRPC_NODE_PLUGIN_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a $(HOST_LDLIBSXX) $(HOST_LDLIBS_PROTOC) $(HOST_LDLIBS) $(HOST_LDLIBS_PROTOC) -o $(BINDIR)/$(CONFIG)/grpc_node_plugin
+
+endif
+
+$(OBJDIR)/$(CONFIG)/src/compiler/node_plugin.o: $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a
+
+deps_grpc_node_plugin: $(GRPC_NODE_PLUGIN_OBJS:.o=.dep)
+
+ifneq ($(NO_DEPS),true)
+-include $(GRPC_NODE_PLUGIN_OBJS:.o=.dep)
+endif
+
+
GRPC_OBJECTIVE_C_PLUGIN_SRC = \
src/compiler/objective_c_plugin.cc \
diff --git a/binding.gyp b/binding.gyp
index 21a23d60df..72446bb41a 100644
--- a/binding.gyp
+++ b/binding.gyp
@@ -522,6 +522,7 @@
'src/core/lib/support/stack_lockfree.c',
'src/core/lib/support/string.c',
'src/core/lib/support/string_posix.c',
+ 'src/core/lib/support/string_util_win32.c',
'src/core/lib/support/string_win32.c',
'src/core/lib/support/subprocess_posix.c',
'src/core/lib/support/subprocess_windows.c',
@@ -536,6 +537,7 @@
'src/core/lib/support/time_precise.c',
'src/core/lib/support/time_win32.c',
'src/core/lib/support/tls_pthread.c',
+ 'src/core/lib/support/tmpfile_msys.c',
'src/core/lib/support/tmpfile_posix.c',
'src/core/lib/support/tmpfile_win32.c',
'src/core/lib/support/wrap_memcpy.c',
diff --git a/build.yaml b/build.yaml
index 444cc8885b..9990b337ef 100644
--- a/build.yaml
+++ b/build.yaml
@@ -103,6 +103,7 @@ filegroups:
- src/core/lib/support/stack_lockfree.c
- src/core/lib/support/string.c
- src/core/lib/support/string_posix.c
+ - src/core/lib/support/string_util_win32.c
- src/core/lib/support/string_win32.c
- src/core/lib/support/subprocess_posix.c
- src/core/lib/support/subprocess_windows.c
@@ -117,6 +118,7 @@ filegroups:
- src/core/lib/support/time_precise.c
- src/core/lib/support/time_win32.c
- src/core/lib/support/tls_pthread.c
+ - src/core/lib/support/tmpfile_msys.c
- src/core/lib/support/tmpfile_posix.c
- src/core/lib/support/tmpfile_win32.c
- src/core/lib/support/wrap_memcpy.c
@@ -940,6 +942,8 @@ libs:
- src/compiler/csharp_generator.h
- src/compiler/csharp_generator_helpers.h
- src/compiler/generator_helpers.h
+ - src/compiler/node_generator.h
+ - src/compiler/node_generator_helpers.h
- src/compiler/objective_c_generator.h
- src/compiler/objective_c_generator_helpers.h
- src/compiler/python_generator.h
@@ -950,6 +954,7 @@ libs:
src:
- src/compiler/cpp_generator.cc
- src/compiler/csharp_generator.cc
+ - src/compiler/node_generator.cc
- src/compiler/objective_c_generator.cc
- src/compiler/python_generator.cc
- src/compiler/ruby_generator.cc
@@ -2550,6 +2555,17 @@ targets:
- grpc
- gpr_test_util
- gpr
+- name: golden_file_test
+ gtest: true
+ build: test
+ language: c++
+ src:
+ - src/proto/grpc/testing/compiler_test.proto
+ - test/cpp/codegen/golden_file_test.cc
+ deps:
+ - grpc++
+ - grpc
+ - gpr
- name: grpc_cli
build: test
run: false
@@ -2584,6 +2600,15 @@ targets:
secure: false
vs_config_type: Application
vs_project_guid: '{3C813052-A49A-4662-B90A-1ADBEC7EE453}'
+- name: grpc_node_plugin
+ build: protoc
+ language: c++
+ src:
+ - src/compiler/node_plugin.cc
+ deps:
+ - grpc_plugin_support
+ secure: false
+ vs_config_type: Application
- name: grpc_objective_c_plugin
build: protoc
language: c++
diff --git a/config.m4 b/config.m4
index 8764ae9734..a1f30a9191 100644
--- a/config.m4
+++ b/config.m4
@@ -63,6 +63,7 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/support/stack_lockfree.c \
src/core/lib/support/string.c \
src/core/lib/support/string_posix.c \
+ src/core/lib/support/string_util_win32.c \
src/core/lib/support/string_win32.c \
src/core/lib/support/subprocess_posix.c \
src/core/lib/support/subprocess_windows.c \
@@ -77,6 +78,7 @@ if test "$PHP_GRPC" != "no"; then
src/core/lib/support/time_precise.c \
src/core/lib/support/time_win32.c \
src/core/lib/support/tls_pthread.c \
+ src/core/lib/support/tmpfile_msys.c \
src/core/lib/support/tmpfile_posix.c \
src/core/lib/support/tmpfile_win32.c \
src/core/lib/support/wrap_memcpy.c \
diff --git a/doc/fail_fast.md b/doc/fail_fast.md
new file mode 100644
index 0000000000..3ed4297194
--- /dev/null
+++ b/doc/fail_fast.md
@@ -0,0 +1,15 @@
+gRPC Fail Fast Semantics
+========================
+
+Fail fast requests allow terminating requests (with status UNAVAILABLE) prior
+to the deadline of the request being met.
+
+gRPC implementations of fail fast can terminate requests whenever a channel is
+in the TRANSIENT_FAILURE or SHUTDOWN states. If the channel is in any other
+state (CONNECTING, READY, or IDLE) the request should not be terminated.
+
+Fail fast SHOULD be the default for gRPC implementations, with an option to
+switch to non fail fast.
+
+The opposite of fail fast is 'ignore connectivity'.
+
diff --git a/examples/cpp/helloworld/Makefile b/examples/cpp/helloworld/Makefile
index 4b1867e292..470b83573e 100644
--- a/examples/cpp/helloworld/Makefile
+++ b/examples/cpp/helloworld/Makefile
@@ -32,7 +32,7 @@
CXX = g++
CPPFLAGS += -I/usr/local/include -pthread
CXXFLAGS += -std=c++11
-LDFLAGS += -L/usr/local/lib -lgrpc++_unsecure -lgrpc -lprotobuf -lpthread -ldl
+LDFLAGS += -L/usr/local/lib `pkg-config --libs grpc++` -lprotobuf -lpthread -ldl
PROTOC = protoc
GRPC_CPP_PLUGIN = grpc_cpp_plugin
GRPC_CPP_PLUGIN_PATH ?= `which $(GRPC_CPP_PLUGIN)`
diff --git a/examples/cpp/route_guide/Makefile b/examples/cpp/route_guide/Makefile
index 0fbb0a8929..11f2a00cc8 100644
--- a/examples/cpp/route_guide/Makefile
+++ b/examples/cpp/route_guide/Makefile
@@ -32,7 +32,7 @@
CXX = g++
CPPFLAGS += -I/usr/local/include -pthread
CXXFLAGS += -std=c++11
-LDFLAGS += -L/usr/local/lib -lgrpc++_unsecure -lgrpc -lprotobuf -lpthread -ldl
+LDFLAGS += -L/usr/local/lib `pkg-config --libs grpc++` -lprotobuf -lpthread -ldl
PROTOC = protoc
GRPC_CPP_PLUGIN = grpc_cpp_plugin
GRPC_CPP_PLUGIN_PATH ?= `which $(GRPC_CPP_PLUGIN)`
diff --git a/examples/python/README.md b/examples/python/README.md
index b57da8f642..9992baa842 100644
--- a/examples/python/README.md
+++ b/examples/python/README.md
@@ -8,12 +8,19 @@ For this sample, we've already generated the server and client stubs from
Install gRPC:
- ```sh
+```sh
$ pip install grpcio
```
Or, to install it system wide:
```sh
- $ sudo pip install grpcio
+ $ sudo pip install grpcio
+```
+
+If you're on Windows, make sure you installed the `pip.exe` component when you
+installed Python. Invoke as above but with `pip.exe` instead of `pip` (you may
+also need to invoke from a `cmd.exe` ran as administrator):
+```sh
+ $ pip.exe install grpcio
```
Download the example
diff --git a/gRPC.podspec b/gRPC.podspec
index 7becccebb4..b5e8eb5b13 100644
--- a/gRPC.podspec
+++ b/gRPC.podspec
@@ -144,6 +144,7 @@ Pod::Spec.new do |s|
'src/core/lib/support/stack_lockfree.c',
'src/core/lib/support/string.c',
'src/core/lib/support/string_posix.c',
+ 'src/core/lib/support/string_util_win32.c',
'src/core/lib/support/string_win32.c',
'src/core/lib/support/subprocess_posix.c',
'src/core/lib/support/subprocess_windows.c',
@@ -158,6 +159,7 @@ Pod::Spec.new do |s|
'src/core/lib/support/time_precise.c',
'src/core/lib/support/time_win32.c',
'src/core/lib/support/tls_pthread.c',
+ 'src/core/lib/support/tmpfile_msys.c',
'src/core/lib/support/tmpfile_posix.c',
'src/core/lib/support/tmpfile_win32.c',
'src/core/lib/support/wrap_memcpy.c',
diff --git a/grpc.def b/grpc.def
index 6542c06a4b..61948ed1b8 100644
--- a/grpc.def
+++ b/grpc.def
@@ -86,6 +86,7 @@ EXPORTS
grpc_header_key_is_legal
grpc_header_nonbin_value_is_legal
grpc_is_binary_header
+ grpc_call_error_to_string
grpc_auth_property_iterator_next
grpc_auth_context_property_iterator
grpc_auth_context_peer_identity
diff --git a/grpc.gemspec b/grpc.gemspec
index d1db8e99a9..368e01ac63 100755
--- a/grpc.gemspec
+++ b/grpc.gemspec
@@ -24,10 +24,6 @@ Gem::Specification.new do |s|
s.files += Dir.glob('include/grpc/**/*')
s.test_files = Dir.glob('src/ruby/spec/**/*')
s.bindir = 'src/ruby/bin'
- %w(math noproto).each do |b|
- s.executables += ["#{b}_client.rb", "#{b}_server.rb"]
- end
- s.executables += %w(grpc_ruby_interop_client grpc_ruby_interop_server)
s.require_paths = %w( src/ruby/bin src/ruby/lib src/ruby/pb )
s.platform = Gem::Platform::RUBY
@@ -128,6 +124,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/support/stack_lockfree.c )
s.files += %w( src/core/lib/support/string.c )
s.files += %w( src/core/lib/support/string_posix.c )
+ s.files += %w( src/core/lib/support/string_util_win32.c )
s.files += %w( src/core/lib/support/string_win32.c )
s.files += %w( src/core/lib/support/subprocess_posix.c )
s.files += %w( src/core/lib/support/subprocess_windows.c )
@@ -142,6 +139,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/support/time_precise.c )
s.files += %w( src/core/lib/support/time_win32.c )
s.files += %w( src/core/lib/support/tls_pthread.c )
+ s.files += %w( src/core/lib/support/tmpfile_msys.c )
s.files += %w( src/core/lib/support/tmpfile_posix.c )
s.files += %w( src/core/lib/support/tmpfile_win32.c )
s.files += %w( src/core/lib/support/wrap_memcpy.c )
diff --git a/include/grpc++/impl/codegen/call.h b/include/grpc++/impl/codegen/call.h
index aea1a6acec..d081b7d9c5 100644
--- a/include/grpc++/impl/codegen/call.h
+++ b/include/grpc++/impl/codegen/call.h
@@ -281,10 +281,9 @@ class CallOpRecvMessage {
if (message_ == nullptr) return;
if (recv_buf_) {
if (*status) {
- got_message = true;
- *status = SerializationTraits<R>::Deserialize(recv_buf_, message_,
- max_message_size)
- .ok();
+ got_message = *status = SerializationTraits<R>::Deserialize(
+ recv_buf_, message_, max_message_size)
+ .ok();
} else {
got_message = false;
g_core_codegen_interface->grpc_byte_buffer_destroy(recv_buf_);
diff --git a/include/grpc/grpc.h b/include/grpc/grpc.h
index 5c868aece3..0ca28c0fef 100644
--- a/include/grpc/grpc.h
+++ b/include/grpc/grpc.h
@@ -384,6 +384,9 @@ GRPCAPI int grpc_header_nonbin_value_is_legal(const char *value, size_t length);
/** Check whether a metadata key corresponds to a binary value */
GRPCAPI int grpc_is_binary_header(const char *key, size_t length);
+/** Convert grpc_call_error values to a string */
+GRPCAPI const char *grpc_call_error_to_string(grpc_call_error error);
+
#ifdef __cplusplus
}
#endif
diff --git a/include/grpc/impl/codegen/port_platform.h b/include/grpc/impl/codegen/port_platform.h
index 3242f07599..1229d488ed 100644
--- a/include/grpc/impl/codegen/port_platform.h
+++ b/include/grpc/impl/codegen/port_platform.h
@@ -82,28 +82,31 @@
things. */
#if !defined(GPR_NO_AUTODETECT_PLATFORM)
+#if defined(_WIN64) || defined(WIN64) || defined(_WIN32) || defined(WIN32)
#if defined(_WIN64) || defined(WIN64)
-#define GPR_PLATFORM_STRING "windows"
-#define GPR_WIN32 1
#define GPR_ARCH_64 1
-#define GPR_GETPID_IN_PROCESS_H 1
-#define GPR_WINSOCK_SOCKET 1
-#define GPR_WINDOWS_SUBPROCESS 1
-#ifdef __GNUC__
-#define GPR_GCC_ATOMIC 1
-#define GPR_GCC_TLS 1
#else
-#define GPR_WIN32_ATOMIC 1
-#define GPR_MSVC_TLS 1
+#define GPR_ARCH_32 1
#endif
-#define GPR_WINDOWS_CRASH_HANDLER 1
-#elif defined(_WIN32) || defined(WIN32)
#define GPR_PLATFORM_STRING "windows"
-#define GPR_ARCH_32 1
#define GPR_WIN32 1
-#define GPR_GETPID_IN_PROCESS_H 1
#define GPR_WINSOCK_SOCKET 1
#define GPR_WINDOWS_SUBPROCESS 1
+#define GPR_WIN32_ENV
+#ifdef __MSYS__
+#define GPR_GETPID_IN_UNISTD_H 1
+#define GPR_MSYS_TMPFILE
+#define GPR_POSIX_LOG
+#define GPR_POSIX_STRING
+#define GPR_POSIX_TIME
+#else
+#define GPR_GETPID_IN_PROCESS_H 1
+#define GPR_WIN32_TMPFILE
+#define GPR_WIN32_LOG
+#define GPR_WINDOWS_CRASH_HANDLER 1
+#define GPR_WIN32_STRING
+#define GPR_WIN32_TIME
+#endif
#ifdef __GNUC__
#define GPR_GCC_ATOMIC 1
#define GPR_GCC_TLS 1
@@ -111,7 +114,6 @@
#define GPR_WIN32_ATOMIC 1
#define GPR_MSVC_TLS 1
#endif
-#define GPR_WINDOWS_CRASH_HANDLER 1
#elif defined(ANDROID) || defined(__ANDROID__)
#define GPR_PLATFORM_STRING "android"
#define GPR_ANDROID 1
@@ -127,6 +129,8 @@
#define GPR_POSIX_SOCKETUTILS 1
#define GPR_POSIX_ENV 1
#define GPR_POSIX_FILE 1
+#define GPR_POSIX_TMPFILE 1
+#define GPR_POSIX_LOG
#define GPR_POSIX_STRING 1
#define GPR_POSIX_SUBPROCESS 1
#define GPR_POSIX_SYNC 1
@@ -153,6 +157,7 @@
#define GPR_GCC_ATOMIC 1
#define GPR_GCC_TLS 1
#define GPR_LINUX 1
+#define GPR_LINUX_LOG
#define GPR_LINUX_MULTIPOLL_WITH_EPOLL 1
#define GPR_POSIX_WAKEUP_FD 1
#define GPR_POSIX_SOCKET 1
@@ -176,6 +181,7 @@
#define GPR_POSIX_SOCKETUTILS
#endif
#define GPR_POSIX_FILE 1
+#define GPR_POSIX_TMPFILE 1
#define GPR_POSIX_STRING 1
#define GPR_POSIX_SUBPROCESS 1
#define GPR_POSIX_SYNC 1
@@ -214,6 +220,7 @@
#define GPR_POSIX_SOCKETUTILS 1
#define GPR_POSIX_ENV 1
#define GPR_POSIX_FILE 1
+#define GPR_POSIX_TMPFILE 1
#define GPR_POSIX_STRING 1
#define GPR_POSIX_SUBPROCESS 1
#define GPR_POSIX_SYNC 1
@@ -244,6 +251,7 @@
#define GPR_POSIX_SOCKETUTILS 1
#define GPR_POSIX_ENV 1
#define GPR_POSIX_FILE 1
+#define GPR_POSIX_TMPFILE 1
#define GPR_POSIX_STRING 1
#define GPR_POSIX_SUBPROCESS 1
#define GPR_POSIX_SYNC 1
@@ -281,6 +289,7 @@
#define GPR_POSIX_SOCKETUTILS 1
#define GPR_POSIX_ENV 1
#define GPR_POSIX_FILE 1
+#define GPR_POSIX_TMPFILE 1
#define GPR_POSIX_STRING 1
#define GPR_POSIX_SUBPROCESS 1
#define GPR_POSIX_SYNC 1
diff --git a/package.json b/package.json
index 72731c0245..5ed7f363d3 100644
--- a/package.json
+++ b/package.json
@@ -19,7 +19,7 @@
"lib": "src/node/src"
},
"scripts": {
- "lint": "node ./node_modules/jshint/bin/jshint src/node/src src/node/test src/node/interop src/node/index.js",
+ "lint": "node ./node_modules/jshint/bin/jshint src/node/src src/node/test src/node/interop src/node/index.js --exclude-path=src/node/.jshintignore",
"test": "./node_modules/.bin/mocha src/node/test && npm run-script lint",
"gen_docs": "./node_modules/.bin/jsdoc -c src/node/jsdoc_conf.json",
"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha src/node/test",
@@ -35,6 +35,7 @@
"devDependencies": {
"async": "^1.5.0",
"google-auth-library": "^0.9.2",
+ "google-protobuf": "^3.0.0-alpha.5",
"istanbul": "^0.3.21",
"jsdoc": "^3.3.2",
"jshint": "^2.5.0",
@@ -72,5 +73,25 @@
"binding.gyp"
],
"main": "src/node/index.js",
- "license": "BSD-3-Clause"
+ "license": "BSD-3-Clause",
+ "jshintConfig" : {
+ "bitwise": true,
+ "curly": true,
+ "eqeqeq": true,
+ "esnext": true,
+ "freeze": true,
+ "immed": true,
+ "indent": 2,
+ "latedef": "nofunc",
+ "maxlen": 80,
+ "mocha": true,
+ "newcap": true,
+ "node": true,
+ "noarg": true,
+ "quotmark": "single",
+ "strict": true,
+ "trailing": true,
+ "undef": true,
+ "unused": "vars"
+ }
}
diff --git a/package.xml b/package.xml
index 38bd84b7d5..c4e09da3f1 100644
--- a/package.xml
+++ b/package.xml
@@ -10,7 +10,7 @@
<email>grpc-packages@google.com</email>
<active>yes</active>
</lead>
- <date>2016-03-01</date>
+ <date>2016-04-19</date>
<time>16:06:07</time>
<version>
<release>0.14.0</release>
@@ -22,7 +22,7 @@
</stability>
<license>BSD</license>
<notes>
-- Increase unit test code coverage #5225
+- destroy grpc_byte_buffer after startBatch #6096
</notes>
<contents>
<dir baseinstalldir="/" name="/">
@@ -131,6 +131,7 @@
<file baseinstalldir="/" name="src/core/lib/support/stack_lockfree.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/string.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/string_posix.c" role="src" />
+ <file baseinstalldir="/" name="src/core/lib/support/string_util_win32.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/string_win32.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/subprocess_posix.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/subprocess_windows.c" role="src" />
@@ -145,6 +146,7 @@
<file baseinstalldir="/" name="src/core/lib/support/time_precise.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/time_win32.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/tls_pthread.c" role="src" />
+ <file baseinstalldir="/" name="src/core/lib/support/tmpfile_msys.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/tmpfile_posix.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/tmpfile_win32.c" role="src" />
<file baseinstalldir="/" name="src/core/lib/support/wrap_memcpy.c" role="src" />
@@ -998,8 +1000,8 @@ Update to wrap gRPC C Core version 0.10.0
</release>
<release>
<version>
- <release>0.14.0</release>
- <api>0.14.0</api>
+ <release>0.8.1</release>
+ <api>0.8.1</api>
</version>
<stability>
<release>beta</release>
@@ -1011,5 +1013,20 @@ Update to wrap gRPC C Core version 0.10.0
- Increase unit test code coverage #5225
</notes>
</release>
+ <release>
+ <version>
+ <release>0.14.0</release>
+ <api>0.14.0</api>
+ </version>
+ <stability>
+ <release>beta</release>
+ <api>beta</api>
+ </stability>
+ <date>2016-04-19</date>
+ <license>BSD</license>
+ <notes>
+- destroy grpc_byte_buffer after startBatch #6096
+ </notes>
+ </release>
</changelog>
</package>
diff --git a/requirements.txt b/requirements.txt
index e3208e6355..0ec0e75b76 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,7 +1,8 @@
# GRPC Python setup requirements
+coverage>=4.0
+cython>=0.23
enum34>=1.0.4
futures>=2.2.0
-cython>=0.23
-coverage>=4.0
+protobuf>=3.0.0a3
six>=1.10
-wheel>=0.29
+wheel>=0.29 \ No newline at end of file
diff --git a/src/compiler/config.h b/src/compiler/config.h
index fea976c318..d8b95818db 100644
--- a/src/compiler/config.h
+++ b/src/compiler/config.h
@@ -42,8 +42,10 @@
#include <google/protobuf/descriptor.pb.h>
#define GRPC_CUSTOM_DESCRIPTOR ::google::protobuf::Descriptor
#define GRPC_CUSTOM_FILEDESCRIPTOR ::google::protobuf::FileDescriptor
+#define GRPC_CUSTOM_FILEDESCRIPTORPROTO ::google::protobuf::FileDescriptorProto
#define GRPC_CUSTOM_METHODDESCRIPTOR ::google::protobuf::MethodDescriptor
#define GRPC_CUSTOM_SERVICEDESCRIPTOR ::google::protobuf::ServiceDescriptor
+#define GRPC_CUSTOM_SOURCELOCATION ::google::protobuf::SourceLocation
#endif
#ifndef GRPC_CUSTOM_CODEGENERATOR
@@ -68,12 +70,19 @@
#define GRPC_CUSTOM_PLUGINMAIN ::google::protobuf::compiler::PluginMain
#endif
+#ifndef GRPC_CUSTOM_PARSEGENERATORPARAMETER
+#include <google/protobuf/compiler/code_generator.h>
+#define GRPC_CUSTOM_PARSEGENERATORPARAMETER ::google::protobuf::compiler::ParseGeneratorParameter
+#endif
+
namespace grpc {
namespace protobuf {
typedef GRPC_CUSTOM_DESCRIPTOR Descriptor;
typedef GRPC_CUSTOM_FILEDESCRIPTOR FileDescriptor;
+typedef GRPC_CUSTOM_FILEDESCRIPTORPROTO FileDescriptorProto;
typedef GRPC_CUSTOM_METHODDESCRIPTOR MethodDescriptor;
typedef GRPC_CUSTOM_SERVICEDESCRIPTOR ServiceDescriptor;
+typedef GRPC_CUSTOM_SOURCELOCATION SourceLocation;
namespace compiler {
typedef GRPC_CUSTOM_CODEGENERATOR CodeGenerator;
typedef GRPC_CUSTOM_GENERATORCONTEXT GeneratorContext;
@@ -81,6 +90,11 @@ static inline int PluginMain(int argc, char* argv[],
const CodeGenerator* generator) {
return GRPC_CUSTOM_PLUGINMAIN(argc, argv, generator);
}
+static inline void ParseGeneratorParameter(const string& parameter,
+ std::vector<std::pair<string, string> >* options) {
+ GRPC_CUSTOM_PARSEGENERATORPARAMETER(parameter, options);
+}
+
} // namespace compiler
namespace io {
typedef GRPC_CUSTOM_PRINTER Printer;
diff --git a/src/compiler/cpp_generator.cc b/src/compiler/cpp_generator.cc
index b133699306..e2f127094a 100644
--- a/src/compiler/cpp_generator.cc
+++ b/src/compiler/cpp_generator.cc
@@ -86,7 +86,7 @@ void PrintIncludes(Printer *printer, const std::vector<grpc::string>& headers, c
}
}
-grpc::string GetHeaderPrologue(File *file, const Parameters &params) {
+grpc::string GetHeaderPrologue(File *file, const Parameters & /*params*/) {
grpc::string output;
{
// Scope the output stream so it closes and finalizes output to the string.
@@ -96,15 +96,21 @@ grpc::string GetHeaderPrologue(File *file, const Parameters &params) {
vars["filename"] = file->filename();
vars["filename_identifier"] = FilenameIdentifier(file->filename());
vars["filename_base"] = file->filename_without_ext();
+ vars["message_header_ext"] = file->message_header_ext();
printer->Print(vars, "// Generated by the gRPC protobuf plugin.\n");
printer->Print(vars,
"// If you make any local change, they will be lost.\n");
printer->Print(vars, "// source: $filename$\n");
+ grpc::string leading_comments = file->GetLeadingComments();
+ if (!leading_comments.empty()) {
+ printer->Print(vars, "// Original file comments:\n");
+ printer->Print(leading_comments.c_str());
+ }
printer->Print(vars, "#ifndef GRPC_$filename_identifier$__INCLUDED\n");
printer->Print(vars, "#define GRPC_$filename_identifier$__INCLUDED\n");
printer->Print(vars, "\n");
- printer->Print(vars, "#include \"$filename_base$.pb.h\"\n");
+ printer->Print(vars, "#include \"$filename_base$$message_header_ext$\"\n");
printer->Print(vars, "\n");
}
return output;
@@ -455,6 +461,7 @@ void PrintHeaderServerMethodSync(Printer *printer, const Method *method,
(*vars)["Method"] = method->name();
(*vars)["Request"] = method->input_type_name();
(*vars)["Response"] = method->output_type_name();
+ printer->Print(method->GetLeadingComments().c_str());
if (method->NoStreaming()) {
printer->Print(*vars,
"virtual ::grpc::Status $Method$("
@@ -479,6 +486,7 @@ void PrintHeaderServerMethodSync(Printer *printer, const Method *method,
"::grpc::ServerReaderWriter< $Response$, $Request$>* stream);"
"\n");
}
+ printer->Print(method->GetTrailingComments().c_str());
}
void PrintHeaderServerMethodAsync(
@@ -673,6 +681,7 @@ void PrintHeaderService(Printer *printer,
std::map<grpc::string, grpc::string> *vars) {
(*vars)["Service"] = service->name();
+ printer->Print(service->GetLeadingComments().c_str());
printer->Print(*vars,
"class $Service$ GRPC_FINAL {\n"
" public:\n");
@@ -685,7 +694,9 @@ void PrintHeaderService(Printer *printer,
printer->Indent();
printer->Print("virtual ~StubInterface() {}\n");
for (int i = 0; i < service->method_count(); ++i) {
+ printer->Print(service->method(i)->GetLeadingComments().c_str());
PrintHeaderClientMethodInterfaces(printer, service->method(i).get(), vars, true);
+ printer->Print(service->method(i)->GetTrailingComments().c_str());
}
printer->Outdent();
printer->Print("private:\n");
@@ -761,6 +772,7 @@ void PrintHeaderService(Printer *printer,
printer->Outdent();
printer->Print("};\n");
+ printer->Print(service->GetTrailingComments().c_str());
}
grpc::string GetHeaderServices(File *file,
@@ -794,8 +806,7 @@ grpc::string GetHeaderServices(File *file,
return output;
}
-grpc::string GetHeaderEpilogue(File *file,
- const Parameters &params) {
+grpc::string GetHeaderEpilogue(File *file, const Parameters & /*params*/) {
grpc::string output;
{
// Scope the output stream so it closes and finalizes output to the string.
@@ -817,12 +828,13 @@ grpc::string GetHeaderEpilogue(File *file,
printer->Print(vars, "\n");
printer->Print(vars, "#endif // GRPC_$filename_identifier$__INCLUDED\n");
+
+ printer->Print(file->GetTrailingComments().c_str());
}
return output;
}
-grpc::string GetSourcePrologue(File *file,
- const Parameters &params) {
+grpc::string GetSourcePrologue(File *file, const Parameters & /*params*/) {
grpc::string output;
{
// Scope the output stream so it closes and finalizes output to the string.
@@ -831,13 +843,17 @@ grpc::string GetSourcePrologue(File *file,
vars["filename"] = file->filename();
vars["filename_base"] = file->filename_without_ext();
+ vars["message_header_ext"] = file->message_header_ext();
+ vars["service_header_ext"] = file->service_header_ext();
printer->Print(vars, "// Generated by the gRPC protobuf plugin.\n");
printer->Print(vars,
"// If you make any local change, they will be lost.\n");
printer->Print(vars, "// source: $filename$\n\n");
- printer->Print(vars, "#include \"$filename_base$.pb.h\"\n");
- printer->Print(vars, "#include \"$filename_base$.grpc.pb.h\"\n");
+
+ printer->Print(vars, "#include \"$filename_base$$message_header_ext$\"\n");
+ printer->Print(vars, "#include \"$filename_base$$service_header_ext$\"\n");
+ printer->Print(vars, file->additional_headers().c_str());
printer->Print(vars, "\n");
}
return output;
@@ -1180,8 +1196,7 @@ grpc::string GetSourceServices(File *file,
return output;
}
-grpc::string GetSourceEpilogue(File *file,
- const Parameters &params) {
+grpc::string GetSourceEpilogue(File *file, const Parameters & /*params*/) {
grpc::string temp;
if (!file->package().empty()) {
diff --git a/src/compiler/cpp_generator.h b/src/compiler/cpp_generator.h
index 99a60a2eae..2a003b1069 100644
--- a/src/compiler/cpp_generator.h
+++ b/src/compiler/cpp_generator.h
@@ -64,8 +64,16 @@ struct Parameters {
grpc::string grpc_search_path;
};
+// A common interface for objects having comments in the source.
+// Return formatted comments to be inserted in generated code.
+struct CommentHolder {
+ virtual ~CommentHolder() {}
+ virtual grpc::string GetLeadingComments() const = 0;
+ virtual grpc::string GetTrailingComments() const = 0;
+};
+
// An abstract interface representing a method.
-struct Method {
+struct Method : public CommentHolder {
virtual ~Method() {}
virtual grpc::string name() const = 0;
@@ -80,7 +88,7 @@ struct Method {
};
// An abstract interface representing a service.
-struct Service {
+struct Service : public CommentHolder {
virtual ~Service() {}
virtual grpc::string name() const = 0;
@@ -101,13 +109,16 @@ struct Printer {
// An interface that allows the source generated to be output using various
// libraries/idls/serializers.
-struct File {
+struct File : public CommentHolder {
virtual ~File() {}
virtual grpc::string filename() const = 0;
virtual grpc::string filename_without_ext() const = 0;
+ virtual grpc::string message_header_ext() const = 0;
+ virtual grpc::string service_header_ext() const = 0;
virtual grpc::string package() const = 0;
virtual std::vector<grpc::string> package_parts() const = 0;
+ virtual grpc::string additional_headers() const = 0;
virtual int service_count() const = 0;
virtual std::unique_ptr<const Service> service(int i) const = 0;
diff --git a/src/compiler/cpp_plugin.cc b/src/compiler/cpp_plugin.cc
index f703c6453d..0ec183e474 100644
--- a/src/compiler/cpp_plugin.cc
+++ b/src/compiler/cpp_plugin.cc
@@ -35,11 +35,15 @@
//
#include <memory>
+#include <sstream>
#include "src/compiler/config.h"
#include "src/compiler/cpp_generator.h"
#include "src/compiler/cpp_generator_helpers.h"
+#include "src/compiler/generator_helpers.h"
+
+using grpc_generator::GetCppComments;
class ProtoBufMethod : public grpc_cpp_generator::Method {
public:
@@ -71,6 +75,14 @@ class ProtoBufMethod : public grpc_cpp_generator::Method {
return method_->client_streaming() && method_->server_streaming();
}
+ grpc::string GetLeadingComments() const {
+ return GetCppComments(method_, true);
+ }
+
+ grpc::string GetTrailingComments() const {
+ return GetCppComments(method_, false);
+ }
+
private:
const grpc::protobuf::MethodDescriptor *method_;
};
@@ -88,6 +100,14 @@ class ProtoBufService : public grpc_cpp_generator::Service {
new ProtoBufMethod(service_->method(i)));
};
+ grpc::string GetLeadingComments() const {
+ return GetCppComments(service_, true);
+ }
+
+ grpc::string GetTrailingComments() const {
+ return GetCppComments(service_, false);
+ }
+
private:
const grpc::protobuf::ServiceDescriptor *service_;
};
@@ -120,11 +140,16 @@ class ProtoBufFile : public grpc_cpp_generator::File {
return grpc_generator::StripProto(filename());
}
+ grpc::string message_header_ext() const { return ".pb.h"; }
+ grpc::string service_header_ext() const { return ".grpc.pb.h"; }
+
grpc::string package() const { return file_->package(); }
std::vector<grpc::string> package_parts() const {
return grpc_generator::tokenize(package(), ".");
}
+ grpc::string additional_headers() const { return ""; }
+
int service_count() const { return file_->service_count(); };
std::unique_ptr<const grpc_cpp_generator::Service> service(int i) const {
return std::unique_ptr<const grpc_cpp_generator::Service> (
@@ -136,6 +161,14 @@ class ProtoBufFile : public grpc_cpp_generator::File {
new ProtoBufPrinter(str));
}
+ grpc::string GetLeadingComments() const {
+ return GetCppComments(file_, true);
+ }
+
+ grpc::string GetTrailingComments() const {
+ return GetCppComments(file_, false);
+ }
+
private:
const grpc::protobuf::FileDescriptor *file_;
};
diff --git a/src/compiler/csharp_generator.cc b/src/compiler/csharp_generator.cc
index 69e2738d53..ac0fee1ec4 100644
--- a/src/compiler/csharp_generator.cc
+++ b/src/compiler/csharp_generator.cc
@@ -52,6 +52,7 @@ using grpc::protobuf::MethodDescriptor;
using grpc::protobuf::io::Printer;
using grpc::protobuf::io::StringOutputStream;
using grpc_generator::MethodType;
+using grpc_generator::GetCppComments;
using grpc_generator::GetMethodType;
using grpc_generator::METHODTYPE_NO_STREAMING;
using grpc_generator::METHODTYPE_CLIENT_STREAMING;
@@ -65,6 +66,56 @@ using std::vector;
namespace grpc_csharp_generator {
namespace {
+// This function is a massaged version of
+// https://github.com/google/protobuf/blob/master/src/google/protobuf/compiler/csharp/csharp_doc_comment.cc
+// Currently, we cannot easily reuse the functionality as
+// google/protobuf/compiler/csharp/csharp_doc_comment.h is not a public header.
+// TODO(jtattermusch): reuse the functionality from google/protobuf.
+void GenerateDocCommentBodyImpl(grpc::protobuf::io::Printer* printer, grpc::protobuf::SourceLocation location) {
+ grpc::string comments = location.leading_comments.empty() ?
+ location.trailing_comments : location.leading_comments;
+ if (comments.empty()) {
+ return;
+ }
+ // XML escaping... no need for apostrophes etc as the whole text is going to be a child
+ // node of a summary element, not part of an attribute.
+ comments = grpc_generator::StringReplace(comments, "&", "&amp;", true);
+ comments = grpc_generator::StringReplace(comments, "<", "&lt;", true);
+
+ std::vector<grpc::string> lines;
+ grpc_generator::Split(comments, '\n', &lines);
+ // TODO: We really should work out which part to put in the summary and which to put in the remarks...
+ // but that needs to be part of a bigger effort to understand the markdown better anyway.
+ printer->Print("/// <summary>\n");
+ bool last_was_empty = false;
+ // We squash multiple blank lines down to one, and remove any trailing blank lines. We need
+ // to preserve the blank lines themselves, as this is relevant in the markdown.
+ // Note that we can't remove leading or trailing whitespace as *that's* relevant in markdown too.
+ // (We don't skip "just whitespace" lines, either.)
+ for (std::vector<grpc::string>::iterator it = lines.begin(); it != lines.end(); ++it) {
+ grpc::string line = *it;
+ if (line.empty()) {
+ last_was_empty = true;
+ } else {
+ if (last_was_empty) {
+ printer->Print("///\n");
+ }
+ last_was_empty = false;
+ printer->Print("/// $line$\n", "line", *it);
+ }
+ }
+ printer->Print("/// </summary>\n");
+}
+
+template <typename DescriptorType>
+void GenerateDocCommentBody(
+ grpc::protobuf::io::Printer* printer, const DescriptorType* descriptor) {
+ grpc::protobuf::SourceLocation location;
+ if (descriptor->GetSourceLocation(&location)) {
+ GenerateDocCommentBodyImpl(printer, location);
+ }
+}
+
std::string GetServiceClassName(const ServiceDescriptor* service) {
return service->name();
}
@@ -123,6 +174,10 @@ std::string GetMethodRequestParamMaybe(const MethodDescriptor *method,
return GetClassName(method->input_type()) + " request, ";
}
+std::string GetAccessLevel(bool internal_access) {
+ return internal_access ? "internal" : "public";
+}
+
std::string GetMethodReturnTypeClient(const MethodDescriptor *method) {
switch (GetMethodType(method)) {
case METHODTYPE_NO_STREAMING:
@@ -238,7 +293,7 @@ void GenerateStaticMethodField(Printer* out, const MethodDescriptor *method) {
void GenerateServiceDescriptorProperty(Printer* out, const ServiceDescriptor *service) {
std::ostringstream index;
index << service->index();
- out->Print("// service descriptor\n");
+ out->Print("/// <summary>Service descriptor</summary>\n");
out->Print("public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor\n");
out->Print("{\n");
out->Print(" get { return $umbrella$.Descriptor.Services[$index$]; }\n",
@@ -249,7 +304,8 @@ void GenerateServiceDescriptorProperty(Printer* out, const ServiceDescriptor *se
}
void GenerateClientInterface(Printer* out, const ServiceDescriptor *service) {
- out->Print("// client interface\n");
+ out->Print("/// <summary>Client for $servicename$</summary>\n",
+ "servicename", GetServiceClassName(service));
out->Print("[System.Obsolete(\"Client side interfaced will be removed "
"in the next release. Use client class directly.\")]\n");
out->Print("public interface $name$\n", "name",
@@ -262,6 +318,7 @@ void GenerateClientInterface(Printer* out, const ServiceDescriptor *service) {
if (method_type == METHODTYPE_NO_STREAMING) {
// unary calls have an extra synchronous stub method
+ GenerateDocCommentBody(out, method);
out->Print(
"$response$ $methodname$($request$ request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));\n",
"methodname", method->name(), "request",
@@ -269,6 +326,7 @@ void GenerateClientInterface(Printer* out, const ServiceDescriptor *service) {
GetClassName(method->output_type()));
// overload taking CallOptions as a param
+ GenerateDocCommentBody(out, method);
out->Print(
"$response$ $methodname$($request$ request, CallOptions options);\n",
"methodname", method->name(), "request",
@@ -280,6 +338,7 @@ void GenerateClientInterface(Printer* out, const ServiceDescriptor *service) {
if (method_type == METHODTYPE_NO_STREAMING) {
method_name += "Async"; // prevent name clash with synchronous method.
}
+ GenerateDocCommentBody(out, method);
out->Print(
"$returntype$ $methodname$($request_maybe$Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));\n",
"methodname", method_name, "request_maybe",
@@ -287,6 +346,7 @@ void GenerateClientInterface(Printer* out, const ServiceDescriptor *service) {
GetMethodReturnTypeClient(method));
// overload taking CallOptions as a param
+ GenerateDocCommentBody(out, method);
out->Print(
"$returntype$ $methodname$($request_maybe$CallOptions options);\n",
"methodname", method_name, "request_maybe",
@@ -299,7 +359,8 @@ void GenerateClientInterface(Printer* out, const ServiceDescriptor *service) {
}
void GenerateServerInterface(Printer* out, const ServiceDescriptor *service) {
- out->Print("// server-side interface\n");
+ out->Print("/// <summary>Interface of server-side implementations of $servicename$</summary>\n",
+ "servicename", GetServiceClassName(service));
out->Print("[System.Obsolete(\"Service implementations should inherit"
" from the generated abstract base class instead.\")]\n");
out->Print("public interface $name$\n", "name",
@@ -308,6 +369,7 @@ void GenerateServerInterface(Printer* out, const ServiceDescriptor *service) {
out->Indent();
for (int i = 0; i < service->method_count(); i++) {
const MethodDescriptor *method = service->method(i);
+ GenerateDocCommentBody(out, method);
out->Print(
"$returntype$ $methodname$($request$$response_stream_maybe$, "
"ServerCallContext context);\n",
@@ -322,13 +384,15 @@ void GenerateServerInterface(Printer* out, const ServiceDescriptor *service) {
}
void GenerateServerClass(Printer* out, const ServiceDescriptor *service) {
- out->Print("// server-side abstract class\n");
+ out->Print("/// <summary>Base class for server-side implementations of $servicename$</summary>\n",
+ "servicename", GetServiceClassName(service));
out->Print("public abstract class $name$\n", "name",
GetServerClassName(service));
out->Print("{\n");
out->Indent();
for (int i = 0; i < service->method_count(); i++) {
const MethodDescriptor *method = service->method(i);
+ GenerateDocCommentBody(out, method);
out->Print(
"public virtual $returntype$ $methodname$($request$$response_stream_maybe$, "
"ServerCallContext context)\n",
@@ -349,11 +413,14 @@ void GenerateServerClass(Printer* out, const ServiceDescriptor *service) {
}
void GenerateClientStub(Printer* out, const ServiceDescriptor *service) {
- out->Print("// client stub\n");
+ out->Print("/// <summary>Client for $servicename$</summary>\n",
+ "servicename", GetServiceClassName(service));
+ out->Print("#pragma warning disable 0618\n");
out->Print(
"public class $name$ : ClientBase<$name$>, $interface$\n",
"name", GetClientClassName(service),
"interface", GetClientInterfaceName(service));
+ out->Print("#pragma warning restore 0618\n");
out->Print("{\n");
out->Indent();
@@ -386,6 +453,7 @@ void GenerateClientStub(Printer* out, const ServiceDescriptor *service) {
if (method_type == METHODTYPE_NO_STREAMING) {
// unary calls have an extra synchronous stub method
+ GenerateDocCommentBody(out, method);
out->Print("public virtual $response$ $methodname$($request$ request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))\n",
"methodname", method->name(), "request",
GetClassName(method->input_type()), "response",
@@ -398,6 +466,7 @@ void GenerateClientStub(Printer* out, const ServiceDescriptor *service) {
out->Print("}\n");
// overload taking CallOptions as a param
+ GenerateDocCommentBody(out, method);
out->Print("public virtual $response$ $methodname$($request$ request, CallOptions options)\n",
"methodname", method->name(), "request",
GetClassName(method->input_type()), "response",
@@ -414,6 +483,7 @@ void GenerateClientStub(Printer* out, const ServiceDescriptor *service) {
if (method_type == METHODTYPE_NO_STREAMING) {
method_name += "Async"; // prevent name clash with synchronous method.
}
+ GenerateDocCommentBody(out, method);
out->Print(
"public virtual $returntype$ $methodname$($request_maybe$Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))\n",
"methodname", method_name, "request_maybe",
@@ -429,6 +499,7 @@ void GenerateClientStub(Printer* out, const ServiceDescriptor *service) {
out->Print("}\n");
// overload taking CallOptions as a param
+ GenerateDocCommentBody(out, method);
out->Print(
"public virtual $returntype$ $methodname$($request_maybe$CallOptions options)\n",
"methodname", method_name, "request_maybe",
@@ -479,11 +550,13 @@ void GenerateClientStub(Printer* out, const ServiceDescriptor *service) {
void GenerateBindServiceMethod(Printer* out, const ServiceDescriptor *service,
bool use_server_class) {
out->Print(
- "// creates service definition that can be registered with a server\n");
+ "/// <summary>Creates service definition that can be registered with a server</summary>\n");
+ out->Print("#pragma warning disable 0618\n");
out->Print(
"public static ServerServiceDefinition BindService($interface$ serviceImpl)\n",
"interface", use_server_class ? GetServerClassName(service) :
GetServerInterfaceName(service));
+ out->Print("#pragma warning restore 0618\n");
out->Print("{\n");
out->Indent();
@@ -511,7 +584,8 @@ void GenerateBindServiceMethod(Printer* out, const ServiceDescriptor *service,
}
void GenerateNewStubMethods(Printer* out, const ServiceDescriptor *service) {
- out->Print("// creates a new client\n");
+ out->Print("/// <summary>Creates a new client for $servicename$</summary>\n",
+ "servicename", GetServiceClassName(service));
out->Print("public static $classname$ NewClient(Channel channel)\n",
"classname", GetClientClassName(service));
out->Print("{\n");
@@ -523,8 +597,12 @@ void GenerateNewStubMethods(Printer* out, const ServiceDescriptor *service) {
out->Print("\n");
}
-void GenerateService(Printer* out, const ServiceDescriptor *service) {
- out->Print("public static class $classname$\n", "classname",
+void GenerateService(Printer* out, const ServiceDescriptor *service,
+ bool generate_client, bool generate_server,
+ bool internal_access) {
+ GenerateDocCommentBody(out, service);
+ out->Print("$access_level$ static class $classname$\n", "access_level",
+ GetAccessLevel(internal_access), "classname",
GetServiceClassName(service));
out->Print("{\n");
out->Indent();
@@ -538,13 +616,22 @@ void GenerateService(Printer* out, const ServiceDescriptor *service) {
GenerateStaticMethodField(out, service->method(i));
}
GenerateServiceDescriptorProperty(out, service);
- GenerateClientInterface(out, service);
- GenerateServerInterface(out, service);
- GenerateServerClass(out, service);
- GenerateClientStub(out, service);
- GenerateBindServiceMethod(out, service, false);
- GenerateBindServiceMethod(out, service, true);
- GenerateNewStubMethods(out, service);
+
+ if (generate_client) {
+ GenerateClientInterface(out, service);
+ }
+ if (generate_server) {
+ GenerateServerInterface(out, service);
+ GenerateServerClass(out, service);
+ }
+ if (generate_client) {
+ GenerateClientStub(out, service);
+ GenerateNewStubMethods(out, service);
+ }
+ if (generate_server) {
+ GenerateBindServiceMethod(out, service, false);
+ GenerateBindServiceMethod(out, service, true);
+ }
out->Outdent();
out->Print("}\n");
@@ -552,7 +639,8 @@ void GenerateService(Printer* out, const ServiceDescriptor *service) {
} // anonymous namespace
-grpc::string GetServices(const FileDescriptor *file) {
+grpc::string GetServices(const FileDescriptor *file, bool generate_client,
+ bool generate_server, bool internal_access) {
grpc::string output;
{
// Scope the output stream so it closes and finalizes output to the string.
@@ -569,6 +657,14 @@ grpc::string GetServices(const FileDescriptor *file) {
// Write out a file header.
out.Print("// Generated by the protocol buffer compiler. DO NOT EDIT!\n");
out.Print("// source: $filename$\n", "filename", file->name());
+
+ // use C++ style as there are no file-level XML comments in .NET
+ grpc::string leading_comments = GetCppComments(file, true);
+ if (!leading_comments.empty()) {
+ out.Print("// Original file comments:\n");
+ out.Print(leading_comments.c_str());
+ }
+
out.Print("#region Designer generated code\n");
out.Print("\n");
out.Print("using System;\n");
@@ -580,7 +676,8 @@ grpc::string GetServices(const FileDescriptor *file) {
out.Print("namespace $namespace$ {\n", "namespace", GetFileNamespace(file));
out.Indent();
for (int i = 0; i < file->service_count(); i++) {
- GenerateService(&out, file->service(i));
+ GenerateService(&out, file->service(i), generate_client, generate_server,
+ internal_access);
}
out.Outdent();
out.Print("}\n");
diff --git a/src/compiler/csharp_generator.h b/src/compiler/csharp_generator.h
index 90eb7e2984..f0585af4fd 100644
--- a/src/compiler/csharp_generator.h
+++ b/src/compiler/csharp_generator.h
@@ -40,7 +40,9 @@
namespace grpc_csharp_generator {
-grpc::string GetServices(const grpc::protobuf::FileDescriptor *file);
+grpc::string GetServices(const grpc::protobuf::FileDescriptor *file,
+ bool generate_client, bool generate_server,
+ bool internal_access);
} // namespace grpc_csharp_generator
diff --git a/src/compiler/csharp_plugin.cc b/src/compiler/csharp_plugin.cc
index 8b9395f9e2..5350e73f10 100644
--- a/src/compiler/csharp_plugin.cc
+++ b/src/compiler/csharp_plugin.cc
@@ -48,7 +48,29 @@ class CSharpGrpcGenerator : public grpc::protobuf::compiler::CodeGenerator {
const grpc::string &parameter,
grpc::protobuf::compiler::GeneratorContext *context,
grpc::string *error) const {
- grpc::string code = grpc_csharp_generator::GetServices(file);
+ std::vector<std::pair<grpc::string, grpc::string> > options;
+ grpc::protobuf::compiler::ParseGeneratorParameter(parameter, &options);
+
+ bool generate_client = true;
+ bool generate_server = true;
+ bool internal_access = false;
+ for (size_t i = 0; i < options.size(); i++) {
+ if (options[i].first == "no_client") {
+ generate_client = false;
+ } else if (options[i].first == "no_server") {
+ generate_server = false;
+ } else if (options[i].first == "internal_access") {
+ internal_access = true;
+ } else {
+ *error = "Unknown generator option: " + options[i].first;
+ return false;
+ }
+ }
+
+ grpc::string code = grpc_csharp_generator::GetServices(file,
+ generate_client,
+ generate_server,
+ internal_access);
if (code.size() == 0) {
return true; // don't generate a file if there are no services
}
diff --git a/src/compiler/generator_helpers.h b/src/compiler/generator_helpers.h
index e1bb66a875..bd077cf798 100644
--- a/src/compiler/generator_helpers.h
+++ b/src/compiler/generator_helpers.h
@@ -34,7 +34,11 @@
#ifndef GRPC_INTERNAL_COMPILER_GENERATOR_HELPERS_H
#define GRPC_INTERNAL_COMPILER_GENERATOR_HELPERS_H
+#include <iostream>
#include <map>
+#include <sstream>
+#include <string>
+#include <vector>
#include "src/compiler/config.h"
@@ -52,6 +56,16 @@ inline bool StripSuffix(grpc::string *filename, const grpc::string &suffix) {
return false;
}
+inline bool StripPrefix(grpc::string *name, const grpc::string &prefix) {
+ if (name->length() >= prefix.length()) {
+ if (name->substr(0, prefix.size()) == prefix) {
+ *name = name->substr(prefix.size());
+ return true;
+ }
+ }
+ return false;
+}
+
inline grpc::string StripProto(grpc::string filename) {
if (!StripSuffix(&filename, ".protodevel")) {
StripSuffix(&filename, ".proto");
@@ -165,6 +179,111 @@ inline MethodType GetMethodType(const grpc::protobuf::MethodDescriptor *method)
}
}
+inline void Split(const grpc::string &s, char delim,
+ std::vector<grpc::string> *append_to) {
+ std::istringstream iss(s);
+ grpc::string piece;
+ while (std::getline(iss, piece)) {
+ append_to->push_back(piece);
+ }
+}
+
+enum CommentType {
+ COMMENTTYPE_LEADING,
+ COMMENTTYPE_TRAILING,
+ COMMENTTYPE_LEADING_DETACHED
+};
+
+// Get all the raw comments and append each line without newline to out.
+template <typename DescriptorType>
+inline void GetComment(const DescriptorType *desc, CommentType type,
+ std::vector<grpc::string> *out) {
+ grpc::protobuf::SourceLocation location;
+ if (!desc->GetSourceLocation(&location)) {
+ return;
+ }
+ if (type == COMMENTTYPE_LEADING || type == COMMENTTYPE_TRAILING) {
+ const grpc::string &comments = type == COMMENTTYPE_LEADING
+ ? location.leading_comments
+ : location.trailing_comments;
+ Split(comments, '\n', out);
+ } else if (type == COMMENTTYPE_LEADING_DETACHED) {
+ for (unsigned int i = 0; i < location.leading_detached_comments.size();
+ i++) {
+ Split(location.leading_detached_comments[i], '\n', out);
+ out->push_back("");
+ }
+ } else {
+ std::cerr << "Unknown comment type " << type << std::endl;
+ abort();
+ }
+}
+
+// Each raw comment line without newline is appended to out.
+// For file level leading and detached leading comments, we return comments
+// above syntax line. Return nothing for trailing comments.
+template <>
+inline void GetComment(const grpc::protobuf::FileDescriptor *desc,
+ CommentType type, std::vector<grpc::string> *out) {
+ if (type == COMMENTTYPE_TRAILING) {
+ return;
+ }
+ grpc::protobuf::SourceLocation location;
+ std::vector<int> path;
+ path.push_back(grpc::protobuf::FileDescriptorProto::kSyntaxFieldNumber);
+ if (!desc->GetSourceLocation(path, &location)) {
+ return;
+ }
+ if (type == COMMENTTYPE_LEADING) {
+ Split(location.leading_comments, '\n', out);
+ } else if (type == COMMENTTYPE_LEADING_DETACHED) {
+ for (unsigned int i = 0; i < location.leading_detached_comments.size();
+ i++) {
+ Split(location.leading_detached_comments[i], '\n', out);
+ out->push_back("");
+ }
+ } else {
+ std::cerr << "Unknown comment type " << type << std::endl;
+ abort();
+ }
+}
+
+// Add prefix and newline to each comment line and concatenate them together.
+// Make sure there is a space after the prefix unless the line is empty.
+inline grpc::string GenerateCommentsWithPrefix(
+ const std::vector<grpc::string> &in, const grpc::string &prefix) {
+ std::ostringstream oss;
+ for (const grpc::string &elem : in) {
+ if (elem.empty()) {
+ oss << prefix << "\n";
+ } else if (elem[0] == ' ') {
+ oss << prefix << elem << "\n";
+ } else {
+ oss << prefix << " " << elem << "\n";
+ }
+ }
+ return oss.str();
+}
+
+// Get leading or trailing comments in a string. Comment lines start with "// ".
+// Leading detached comments are put in in front of leading comments.
+template <typename DescriptorType>
+inline grpc::string GetCppComments(const DescriptorType *desc, bool leading) {
+ std::vector<grpc::string> out;
+ if (leading) {
+ grpc_generator::GetComment(
+ desc, grpc_generator::COMMENTTYPE_LEADING_DETACHED, &out);
+ std::vector<grpc::string> leading;
+ grpc_generator::GetComment(desc, grpc_generator::COMMENTTYPE_LEADING,
+ &leading);
+ out.insert(out.end(), leading.begin(), leading.end());
+ } else {
+ grpc_generator::GetComment(desc, grpc_generator::COMMENTTYPE_TRAILING,
+ &out);
+ }
+ return GenerateCommentsWithPrefix(out, "//");
+}
+
} // namespace grpc_generator
#endif // GRPC_INTERNAL_COMPILER_GENERATOR_HELPERS_H
diff --git a/src/compiler/node_generator.cc b/src/compiler/node_generator.cc
new file mode 100644
index 0000000000..822622cccf
--- /dev/null
+++ b/src/compiler/node_generator.cc
@@ -0,0 +1,277 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <map>
+
+#include "src/compiler/config.h"
+#include "src/compiler/generator_helpers.h"
+#include "src/compiler/node_generator_helpers.h"
+
+using grpc::protobuf::FileDescriptor;
+using grpc::protobuf::ServiceDescriptor;
+using grpc::protobuf::MethodDescriptor;
+using grpc::protobuf::Descriptor;
+using grpc::protobuf::io::Printer;
+using grpc::protobuf::io::StringOutputStream;
+using std::map;
+
+namespace grpc_node_generator {
+namespace {
+
+// Returns the alias we assign to the module of the given .proto filename
+// when importing. Copied entirely from
+// github:google/protobuf/src/google/protobuf/compiler/js/js_generator.cc#L154
+grpc::string ModuleAlias(const grpc::string filename) {
+ // This scheme could technically cause problems if a file includes any 2 of:
+ // foo/bar_baz.proto
+ // foo_bar_baz.proto
+ // foo_bar/baz.proto
+ //
+ // We'll worry about this problem if/when we actually see it. This name isn't
+ // exposed to users so we can change it later if we need to.
+ grpc::string basename = grpc_generator::StripProto(filename);
+ basename = grpc_generator::StringReplace(basename, "-", "$");
+ basename = grpc_generator::StringReplace(basename, "/", "_");
+ return basename + "_pb";
+}
+
+// Given a filename like foo/bar/baz.proto, returns the corresponding JavaScript
+// message file foo/bar/baz.js
+grpc::string GetJSMessageFilename(const grpc::string& filename) {
+ grpc::string name = filename;
+ return grpc_generator::StripProto(name) + "_pb.js";
+}
+
+// Given a filename like foo/bar/baz.proto, returns the root directory
+// path ../../
+grpc::string GetRootPath(const grpc::string& filename) {
+ size_t slashes = std::count(filename.begin(), filename.end(), '/');
+ if (slashes == 0) {
+ return "./";
+ }
+ grpc::string result = "";
+ for (size_t i = 0; i < slashes; i++) {
+ result += "../";
+ }
+ return result;
+}
+
+// Return the relative path to load to_file from the directory containing
+// from_file, assuming that both paths are relative to the same directory
+grpc::string GetRelativePath(const grpc::string& from_file,
+ const grpc::string& to_file) {
+ return GetRootPath(from_file) + to_file;
+}
+
+/* Finds all message types used in all services in the file, and returns them
+ * as a map of fully qualified message type name to message descriptor */
+map<grpc::string, const Descriptor*> GetAllMessages(const FileDescriptor *file) {
+ map<grpc::string, const Descriptor*> message_types;
+ for (int service_num = 0; service_num < file->service_count(); service_num++) {
+ const ServiceDescriptor* service = file->service(service_num);
+ for (int method_num = 0; method_num < service->method_count(); method_num++) {
+ const MethodDescriptor* method = service->method(method_num);
+ const Descriptor* input_type = method->input_type();
+ const Descriptor* output_type = method->output_type();
+ message_types[input_type->name()] = input_type;
+ message_types[output_type->name()] = output_type;
+ }
+ }
+ return message_types;
+}
+
+grpc::string MessageIdentifierName(const grpc::string& name) {
+ return grpc_generator::StringReplace(name, ".", "_");
+}
+
+grpc::string NodeObjectPath(const Descriptor *descriptor) {
+ grpc::string module_alias = ModuleAlias(descriptor->file()->name());
+ grpc::string name = descriptor->name();
+ grpc_generator::StripPrefix(&name, descriptor->file()->package() + ".");
+ return module_alias + "." + name;
+}
+
+// Prints out the message serializer and deserializer functions
+void PrintMessageTransformer(const Descriptor *descriptor, Printer *out) {
+ map<grpc::string, grpc::string> template_vars;
+ template_vars["identifier_name"] = MessageIdentifierName(descriptor->name());
+ template_vars["name"] = descriptor->name();
+ template_vars["node_name"] = NodeObjectPath(descriptor);
+ // Print the serializer
+ out->Print(template_vars, "function serialize_$identifier_name$(arg) {\n");
+ out->Indent();
+ out->Print(template_vars, "if (!(arg instanceof $node_name$)) {\n");
+ out->Indent();
+ out->Print(template_vars,
+ "throw new Error('Expected argument of type $name$');\n");
+ out->Outdent();
+ out->Print("}\n");
+ out->Print("return new Buffer(arg.serializeBinary());\n");
+ out->Outdent();
+ out->Print("}\n\n");
+
+ // Print the deserializer
+ out->Print(template_vars,
+ "function deserialize_$identifier_name$(buffer_arg) {\n");
+ out->Indent();
+ out->Print(
+ template_vars,
+ "return $node_name$.deserializeBinary(new Uint8Array(buffer_arg));\n");
+ out->Outdent();
+ out->Print("}\n\n");
+}
+
+void PrintMethod(const MethodDescriptor *method, Printer *out) {
+ const Descriptor *input_type = method->input_type();
+ const Descriptor *output_type = method->output_type();
+ map<grpc::string, grpc::string> vars;
+ vars["service_name"] = method->service()->full_name();
+ vars["name"] = method->name();
+ vars["input_type"] = NodeObjectPath(input_type);
+ vars["input_type_id"] = MessageIdentifierName(input_type->name());
+ vars["output_type"] = NodeObjectPath(output_type);
+ vars["output_type_id"] = MessageIdentifierName(output_type->name());
+ vars["client_stream"] = method->client_streaming() ? "true" : "false";
+ vars["server_stream"] = method->server_streaming() ? "true" : "false";
+ out->Print("{\n");
+ out->Indent();
+ out->Print(vars, "path: '/$service_name$/$name$',\n");
+ out->Print(vars, "requestStream: $client_stream$,\n");
+ out->Print(vars, "responseStream: $server_stream$,\n");
+ out->Print(vars, "requestType: $input_type$,\n");
+ out->Print(vars, "responseType: $output_type$,\n");
+ out->Print(vars, "requestSerialize: serialize_$input_type_id$,\n");
+ out->Print(vars, "requestDeserialize: deserialize_$input_type_id$,\n");
+ out->Print(vars, "responseSerialize: serialize_$output_type_id$,\n");
+ out->Print(vars, "responseDeserialize: deserialize_$output_type_id$,\n");
+ out->Outdent();
+ out->Print("}");
+}
+
+// Prints out the service descriptor object
+void PrintService(const ServiceDescriptor *service, Printer *out) {
+ map<grpc::string, grpc::string> template_vars;
+ template_vars["name"] = service->name();
+ out->Print(template_vars, "var $name$Service = exports.$name$Service = {\n");
+ out->Indent();
+ for (int i = 0; i < service->method_count(); i++) {
+ grpc::string method_name = grpc_generator::LowercaseFirstLetter(
+ service->method(i)->name());
+ out->Print("$method_name$: ",
+ "method_name", method_name);
+ PrintMethod(service->method(i), out);
+ out->Print(",\n");
+ }
+ out->Outdent();
+ out->Print("};\n\n");
+ out->Print(template_vars, "exports.$name$Client = "
+ "grpc.makeGenericClientConstructor($name$Service);\n");
+}
+
+}
+
+grpc::string GetImports(const FileDescriptor *file) {
+ grpc::string output;
+ {
+ StringOutputStream output_stream(&output);
+ Printer out(&output_stream, '$');
+
+ if (file->service_count() == 0) {
+ return output;
+ }
+
+ out.Print("// GENERATED CODE -- DO NOT EDIT!\n\n");
+
+ out.Print("'use strict';\n");
+
+ out.Print("var grpc = require('grpc');\n");
+ if (file->message_type_count() > 0) {
+ grpc::string file_path = GetRelativePath(file->name(),
+ GetJSMessageFilename(
+ file->name()));
+ out.Print("var $module_alias$ = require('$file_path$');\n",
+ "module_alias", ModuleAlias(file->name()),
+ "file_path", file_path);
+ }
+
+ for (int i = 0; i < file->dependency_count(); i++) {
+ grpc::string file_path = GetRelativePath(
+ file->name(), GetJSMessageFilename(file->dependency(i)->name()));
+ out.Print("var $module_alias$ = require('$file_path$');\n",
+ "module_alias", ModuleAlias(file->dependency(i)->name()),
+ "file_path", file_path);
+ }
+ out.Print("\n");
+ }
+ return output;
+}
+
+grpc::string GetTransformers(const FileDescriptor *file) {
+ grpc::string output;
+ {
+ StringOutputStream output_stream(&output);
+ Printer out(&output_stream, '$');
+
+ if (file->service_count() == 0) {
+ return output;
+ }
+
+ map<grpc::string, const Descriptor*> messages = GetAllMessages(file);
+ for (std::map<grpc::string, const Descriptor*>::iterator it =
+ messages.begin();
+ it != messages.end(); it++) {
+ PrintMessageTransformer(it->second, &out);
+ }
+ out.Print("\n");
+ }
+ return output;
+}
+
+grpc::string GetServices(const FileDescriptor *file) {
+ grpc::string output;
+ {
+ StringOutputStream output_stream(&output);
+ Printer out(&output_stream, '$');
+
+ if (file->service_count() == 0) {
+ return output;
+ }
+
+ for (int i = 0; i < file->service_count(); i++) {
+ PrintService(file->service(i), &out);
+ }
+ }
+ return output;
+}
+
+} // namespace grpc_node_generator
diff --git a/src/compiler/node_generator.h b/src/compiler/node_generator.h
new file mode 100644
index 0000000000..249a0d011f
--- /dev/null
+++ b/src/compiler/node_generator.h
@@ -0,0 +1,49 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#ifndef GRPC_INTERNAL_COMPILER_NODE_GENERATOR_H
+#define GRPC_INTERNAL_COMPILER_NODE_GENERATOR_H
+
+#include "src/compiler/config.h"
+
+namespace grpc_node_generator {
+
+grpc::string GetImports(const grpc::protobuf::FileDescriptor *file);
+
+grpc::string GetTransformers(const grpc::protobuf::FileDescriptor *file);
+
+grpc::string GetServices(const grpc::protobuf::FileDescriptor *file);
+
+} // namespace grpc_node_generator
+
+#endif // GRPC_INTERNAL_COMPILER_NODE_GENERATOR_H
diff --git a/src/compiler/node_generator_helpers.h b/src/compiler/node_generator_helpers.h
new file mode 100644
index 0000000000..f41a2bcf59
--- /dev/null
+++ b/src/compiler/node_generator_helpers.h
@@ -0,0 +1,50 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#ifndef GRPC_INTERNAL_COMPILER_NODE_GENERATOR_HELPERS_H
+#define GRPC_INTERNAL_COMPILER_NODE_GENERATOR_HELPERS_H
+
+#include <algorithm>
+
+#include "src/compiler/config.h"
+#include "src/compiler/generator_helpers.h"
+
+namespace grpc_node_generator {
+
+inline grpc::string GetJSServiceFilename(const grpc::string& filename) {
+ return grpc_generator::StripProto(filename) + "_grpc_pb.js";
+}
+
+} // namespace grpc_node_generator
+
+#endif // GRPC_INTERNAL_COMPILER_NODE_GENERATOR_HELPERS_H
diff --git a/src/compiler/node_plugin.cc b/src/compiler/node_plugin.cc
new file mode 100644
index 0000000000..ac5ced3558
--- /dev/null
+++ b/src/compiler/node_plugin.cc
@@ -0,0 +1,77 @@
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+// Generates Node gRPC service interface out of Protobuf IDL.
+
+#include <memory>
+
+#include "src/compiler/config.h"
+#include "src/compiler/node_generator.h"
+#include "src/compiler/node_generator_helpers.h"
+
+using grpc_node_generator::GetImports;
+using grpc_node_generator::GetJSServiceFilename;
+using grpc_node_generator::GetServices;
+using grpc_node_generator::GetTransformers;
+
+class NodeGrpcGenerator : public grpc::protobuf::compiler::CodeGenerator {
+ public:
+ NodeGrpcGenerator() {}
+ ~NodeGrpcGenerator() {}
+
+ bool Generate(const grpc::protobuf::FileDescriptor *file,
+ const grpc::string &parameter,
+ grpc::protobuf::compiler::GeneratorContext *context,
+ grpc::string *error) const {
+ grpc::string code = GetImports(file) +
+ GetTransformers(file) +
+ GetServices(file);
+ if (code.size() == 0) {
+ return true;
+ }
+
+ // Get output file name
+ grpc::string file_name = GetJSServiceFilename(file->name());
+
+ std::unique_ptr<grpc::protobuf::io::ZeroCopyOutputStream> output(
+ context->Open(file_name));
+ grpc::protobuf::io::CodedOutputStream coded_out(output.get());
+ coded_out.WriteRaw(code.data(), code.size());
+ return true;
+ }
+};
+
+int main(int argc, char *argv[]) {
+ NodeGrpcGenerator generator;
+ return grpc::protobuf::compiler::PluginMain(argc, argv, &generator);
+}
diff --git a/src/compiler/objective_c_generator.cc b/src/compiler/objective_c_generator.cc
index ff092053ad..465491e385 100644
--- a/src/compiler/objective_c_generator.cc
+++ b/src/compiler/objective_c_generator.cc
@@ -75,11 +75,11 @@ void PrintMethodSignature(Printer *printer, const MethodDescriptor *method,
if (method->server_streaming()) {
printer->Print(vars,
" eventHandler:(void(^)(BOOL done, "
- "$response_class$ *response, NSError *error))eventHandler");
+ "$response_class$ *_Nullable response, NSError *_Nullable error))eventHandler");
} else {
printer->Print(vars,
- " handler:(void(^)($response_class$ *response, "
- "NSError *error))handler");
+ " handler:(void(^)($response_class$ *_Nullable response, "
+ "NSError *_Nullable error))handler");
}
}
diff --git a/src/compiler/objective_c_plugin.cc b/src/compiler/objective_c_plugin.cc
index 17440358bb..3ccfd5b037 100644
--- a/src/compiler/objective_c_plugin.cc
+++ b/src/compiler/objective_c_plugin.cc
@@ -81,8 +81,12 @@ class ObjectiveCGrpcGenerator : public grpc::protobuf::compiler::CodeGenerator {
declarations += grpc_objective_c_generator::GetHeader(service);
}
+ static const ::grpc::string kNonNullBegin = "\nNS_ASSUME_NONNULL_BEGIN\n\n";
+ static const ::grpc::string kNonNullEnd = "\nNS_ASSUME_NONNULL_END\n";
+
Write(context, file_name + ".pbrpc.h",
- imports + '\n' + proto_imports + '\n' + declarations);
+ imports + '\n' + proto_imports + '\n' + kNonNullBegin +
+ declarations + kNonNullEnd);
}
{
diff --git a/src/compiler/python_generator.cc b/src/compiler/python_generator.cc
index 02c032800b..59137e1c92 100644
--- a/src/compiler/python_generator.cc
+++ b/src/compiler/python_generator.cc
@@ -190,7 +190,7 @@ bool PrintBetaServicer(const ServiceDescriptor* service,
"Documentation", doc,
});
out->Print("\n");
- out->Print(dict, "class Beta$Service$Servicer(six.with_metaclass(abc.ABCMeta, object)):\n");
+ out->Print(dict, "class Beta$Service$Servicer(object):\n");
{
IndentScope raii_class_indent(out);
out->Print(dict, "\"\"\"$Documentation$\"\"\"\n");
@@ -198,12 +198,11 @@ bool PrintBetaServicer(const ServiceDescriptor* service,
auto meth = service->method(i);
grpc::string arg_name = meth->client_streaming() ?
"request_iterator" : "request";
- out->Print("@abc.abstractmethod\n");
out->Print("def $Method$(self, $ArgName$, context):\n",
"Method", meth->name(), "ArgName", arg_name);
{
IndentScope raii_method_indent(out);
- out->Print("raise NotImplementedError()\n");
+ out->Print("context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)\n");
}
}
}
@@ -218,7 +217,7 @@ bool PrintBetaStub(const ServiceDescriptor* service,
"Documentation", doc,
});
out->Print("\n");
- out->Print(dict, "class Beta$Service$Stub(six.with_metaclass(abc.ABCMeta, object)):\n");
+ out->Print(dict, "class Beta$Service$Stub(object):\n");
{
IndentScope raii_class_indent(out);
out->Print(dict, "\"\"\"$Documentation$\"\"\"\n");
@@ -227,7 +226,6 @@ bool PrintBetaStub(const ServiceDescriptor* service,
grpc::string arg_name = meth->client_streaming() ?
"request_iterator" : "request";
auto methdict = ListToDict({"Method", meth->name(), "ArgName", arg_name});
- out->Print("@abc.abstractmethod\n");
out->Print(methdict, "def $Method$(self, $ArgName$, timeout):\n");
{
IndentScope raii_method_indent(out);
@@ -450,6 +448,8 @@ bool PrintPreamble(const FileDescriptor* file,
out->Print("import six\n");
out->Print("from $Package$ import implementations as beta_implementations\n",
"Package", config.beta_package_root);
+ out->Print("from $Package$ import interfaces as beta_interfaces\n",
+ "Package", config.beta_package_root);
out->Print("from grpc.framework.common import cardinality\n");
out->Print("from grpc.framework.interfaces.face import utilities as face_utilities\n");
return true;
diff --git a/src/core/ext/census/grpc_filter.c b/src/core/ext/census/grpc_filter.c
index abfb3bb5f0..5e278ef127 100644
--- a/src/core/ext/census/grpc_filter.c
+++ b/src/core/ext/census/grpc_filter.c
@@ -134,7 +134,7 @@ static void client_init_call_elem(grpc_exec_ctx *exec_ctx,
}
static void client_destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+ grpc_call_element *elem, void *ignored) {
call_data *d = elem->call_data;
GPR_ASSERT(d != NULL);
/* TODO(hongyu): record rpc client stats and census_rpc_end_op here */
@@ -152,7 +152,7 @@ static void server_init_call_elem(grpc_exec_ctx *exec_ctx,
}
static void server_destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+ grpc_call_element *elem, void *ignored) {
call_data *d = elem->call_data;
GPR_ASSERT(d != NULL);
/* TODO(hongyu): record rpc server stats and census_tracing_end_op here */
diff --git a/src/core/ext/client_config/client_channel.c b/src/core/ext/client_config/client_channel.c
index 8a98a6bcbe..9b5a078aec 100644
--- a/src/core/ext/client_config/client_channel.c
+++ b/src/core/ext/client_config/client_channel.c
@@ -415,9 +415,10 @@ static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *and_free_memory) {
grpc_subchannel_call_holder_destroy(exec_ctx, elem->call_data);
+ gpr_free(and_free_memory);
}
/* Constructor for channel_data */
diff --git a/src/core/ext/client_config/subchannel.c b/src/core/ext/client_config/subchannel.c
index c925c28c67..bd45d3825c 100644
--- a/src/core/ext/client_config/subchannel.c
+++ b/src/core/ext/client_config/subchannel.c
@@ -268,7 +268,7 @@ static void disconnect(grpc_exec_ctx *exec_ctx, grpc_subchannel *c) {
con = GET_CONNECTED_SUBCHANNEL(c, no_barrier);
if (con != NULL) {
GRPC_CONNECTED_SUBCHANNEL_UNREF(exec_ctx, con, "connection");
- gpr_atm_no_barrier_store(&c->connected_subchannel, 0xdeadbeef);
+ gpr_atm_no_barrier_store(&c->connected_subchannel, (gpr_atm)0xdeadbeef);
}
gpr_mu_unlock(&c->mu);
}
@@ -644,9 +644,9 @@ static void subchannel_call_destroy(grpc_exec_ctx *exec_ctx, void *call,
bool success) {
grpc_subchannel_call *c = call;
GPR_TIMER_BEGIN("grpc_subchannel_call_unref.destroy", 0);
- grpc_call_stack_destroy(exec_ctx, SUBCHANNEL_CALL_TO_CALL_STACK(c));
- GRPC_CONNECTED_SUBCHANNEL_UNREF(exec_ctx, c->connection, "subchannel_call");
- gpr_free(c);
+ grpc_connected_subchannel *connection = c->connection;
+ grpc_call_stack_destroy(exec_ctx, SUBCHANNEL_CALL_TO_CALL_STACK(c), c);
+ GRPC_CONNECTED_SUBCHANNEL_UNREF(exec_ctx, connection, "subchannel_call");
GPR_TIMER_END("grpc_subchannel_call_unref.destroy", 0);
}
diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.c b/src/core/ext/transport/chttp2/transport/chttp2_transport.c
index 01507f5ca6..8c8593748d 100644
--- a/src/core/ext/transport/chttp2/transport/chttp2_transport.c
+++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.c
@@ -81,27 +81,25 @@ int grpc_flowctl_trace = 0;
static const grpc_transport_vtable vtable;
-static void lock(grpc_chttp2_transport *t);
-static void unlock(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t);
-
/* forward declarations of various callbacks that we'll build closures around */
static void writing_action(grpc_exec_ctx *exec_ctx, void *t,
bool iomgr_success_ignored);
+static void reading_action(grpc_exec_ctx *exec_ctx, void *t,
+ bool iomgr_success_ignored);
+static void parsing_action(grpc_exec_ctx *exec_ctx, void *t,
+ bool iomgr_success_ignored);
/** Set a transport level setting, and push it to our peer */
static void push_setting(grpc_chttp2_transport *t, grpc_chttp2_setting_id id,
uint32_t value);
-/** Endpoint callback to process incoming data */
-static void recv_data(grpc_exec_ctx *exec_ctx, void *tp, bool success);
-
/** Start disconnection chain */
static void drop_connection(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t);
/** Perform a transport_op */
-static void perform_stream_op_locked(
- grpc_exec_ctx *exec_ctx, grpc_chttp2_transport_global *transport_global,
- grpc_chttp2_stream_global *stream_global, grpc_transport_stream_op *op);
+static void perform_stream_op_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s, void *transport_op);
/** Cancel a stream: coming from the transport API */
static void cancel_from_api(grpc_exec_ctx *exec_ctx,
@@ -118,15 +116,19 @@ static void close_from_api(grpc_exec_ctx *exec_ctx,
/** Add endpoint from this transport to pollset */
static void add_to_pollset_locked(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t,
- grpc_pollset *pollset);
+ grpc_chttp2_stream *s_ignored, void *pollset);
static void add_to_pollset_set_locked(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t,
- grpc_pollset_set *pollset_set);
+ grpc_chttp2_stream *s_ignored,
+ void *pollset_set);
/** Start new streams that have been created if we can */
static void maybe_start_some_streams(
grpc_exec_ctx *exec_ctx, grpc_chttp2_transport_global *transport_global);
+static void finish_global_actions(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t);
+
static void connectivity_state_set(
grpc_exec_ctx *exec_ctx, grpc_chttp2_transport_global *transport_global,
grpc_connectivity_state state, const char *reason);
@@ -138,7 +140,10 @@ static void incoming_byte_stream_update_flow_control(
grpc_chttp2_transport_global *transport_global,
grpc_chttp2_stream_global *stream_global, size_t max_size_hint,
size_t have_already);
-
+static void incoming_byte_stream_destroy_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s,
+ void *byte_stream);
static void fail_pending_writes(grpc_exec_ctx *exec_ctx,
grpc_chttp2_stream_global *stream_global);
@@ -150,7 +155,7 @@ static void destruct_transport(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t) {
size_t i;
- gpr_mu_lock(&t->mu);
+ gpr_mu_lock(&t->executor.mu);
GPR_ASSERT(t->ep == NULL);
@@ -176,8 +181,8 @@ static void destruct_transport(grpc_exec_ctx *exec_ctx,
grpc_chttp2_stream_map_destroy(&t->new_stream_map);
grpc_connectivity_state_destroy(exec_ctx, &t->channel_callback.state_tracker);
- gpr_mu_unlock(&t->mu);
- gpr_mu_destroy(&t->mu);
+ gpr_mu_unlock(&t->executor.mu);
+ gpr_mu_destroy(&t->executor.mu);
/* callback remaining pings: they're not allowed to call into the transpot,
and maybe they hold resources that need to be freed */
@@ -238,7 +243,7 @@ static void init_transport(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
gpr_ref_init(&t->refs, 2);
/* ref is dropped at transport close() */
gpr_ref_init(&t->shutdown_ep_refs, 1);
- gpr_mu_init(&t->mu);
+ gpr_mu_init(&t->executor.mu);
t->peer_string = grpc_endpoint_get_peer(ep);
t->endpoint_reading = 1;
t->global.next_stream_id = is_client ? 1 : 2;
@@ -262,6 +267,8 @@ static void init_transport(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
gpr_slice_buffer_init(&t->writing.outbuf);
grpc_chttp2_hpack_compressor_init(&t->writing.hpack_compressor);
grpc_closure_init(&t->writing_action, writing_action, t);
+ grpc_closure_init(&t->reading_action, reading_action, t);
+ grpc_closure_init(&t->parsing_action, parsing_action, t);
gpr_slice_buffer_init(&t->parsing.qbuf);
grpc_chttp2_goaway_parser_init(&t->parsing.goaway_parser);
@@ -269,7 +276,6 @@ static void init_transport(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
grpc_closure_init(&t->writing.done_cb, grpc_chttp2_terminate_writing,
&t->writing);
- grpc_closure_init(&t->recv_data, recv_data, t);
gpr_slice_buffer_init(&t->read_buffer);
if (is_client) {
@@ -377,14 +383,18 @@ static void init_transport(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
}
}
-static void destroy_transport(grpc_exec_ctx *exec_ctx, grpc_transport *gt) {
- grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
-
- lock(t);
+static void destroy_transport_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_ignored,
+ void *arg_ignored) {
t->destroying = 1;
drop_connection(exec_ctx, t);
- unlock(exec_ctx, t);
+}
+static void destroy_transport(grpc_exec_ctx *exec_ctx, grpc_transport *gt) {
+ grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
+ grpc_chttp2_run_with_global_lock(exec_ctx, t, NULL, destroy_transport_locked,
+ NULL, 0);
UNREF_TRANSPORT(exec_ctx, t, "destroy");
}
@@ -404,17 +414,6 @@ static void allow_endpoint_shutdown_locked(grpc_exec_ctx *exec_ctx,
}
}
-static void allow_endpoint_shutdown_unlocked(grpc_exec_ctx *exec_ctx,
- grpc_chttp2_transport *t) {
- if (gpr_unref(&t->shutdown_ep_refs)) {
- gpr_mu_lock(&t->mu);
- if (t->ep) {
- grpc_endpoint_shutdown(exec_ctx, t->ep);
- }
- gpr_mu_unlock(&t->mu);
- }
-}
-
static void destroy_endpoint(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t) {
grpc_endpoint_destroy(exec_ctx, t->ep);
@@ -424,7 +423,9 @@ static void destroy_endpoint(grpc_exec_ctx *exec_ctx,
}
static void close_transport_locked(grpc_exec_ctx *exec_ctx,
- grpc_chttp2_transport *t) {
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_ignored,
+ void *arg_ignored) {
if (!t->closed) {
t->closed = 1;
connectivity_state_set(exec_ctx, &t->global, GRPC_CHANNEL_FATAL_FAILURE,
@@ -464,6 +465,13 @@ void grpc_chttp2_stream_unref(grpc_exec_ctx *exec_ctx,
}
#endif
+static void finish_init_stream_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s,
+ void *arg_ignored) {
+ grpc_chttp2_register_stream(t, s);
+}
+
static int init_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
grpc_stream *gs, grpc_stream_refcount *refcount,
const void *server_data) {
@@ -473,6 +481,10 @@ static int init_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
memset(s, 0, sizeof(*s));
s->refcount = refcount;
+ /* We reserve one 'active stream' that's dropped when the stream is
+ read-closed. The others are for incoming_byte_streams that are actively
+ reading */
+ gpr_ref_init(&s->global.active_streams, 1);
GRPC_CHTTP2_STREAM_REF(&s->global, "chttp2");
grpc_chttp2_incoming_metadata_buffer_init(&s->parsing.metadata_buffer[0]);
@@ -486,10 +498,8 @@ static int init_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
REF_TRANSPORT(t, "stream");
- lock(t);
- grpc_chttp2_register_stream(t, s);
if (server_data) {
- GPR_ASSERT(t->parsing_active);
+ GPR_ASSERT(t->executor.parsing_active);
s->global.id = (uint32_t)(uintptr_t)server_data;
s->parsing.id = s->global.id;
s->global.outgoing_window =
@@ -502,40 +512,42 @@ static int init_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
grpc_chttp2_stream_map_add(&t->parsing_stream_map, s->global.id, s);
s->global.in_stream_map = 1;
}
- unlock(exec_ctx, t);
+
+ grpc_chttp2_run_with_global_lock(exec_ctx, t, s, finish_init_stream_locked,
+ NULL, 0);
return 0;
}
-static void destroy_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
- grpc_stream *gs) {
- grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
- grpc_chttp2_stream *s = (grpc_chttp2_stream *)gs;
- int i;
+static void destroy_stream_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s, void *arg) {
grpc_byte_stream *bs;
GPR_TIMER_BEGIN("destroy_stream", 0);
- gpr_mu_lock(&t->mu);
-
GPR_ASSERT((s->global.write_closed && s->global.read_closed) ||
s->global.id == 0);
GPR_ASSERT(!s->global.in_stream_map);
if (grpc_chttp2_unregister_stream(t, s) && t->global.sent_goaway) {
- close_transport_locked(exec_ctx, t);
+ close_transport_locked(exec_ctx, t, NULL, NULL);
}
- if (!t->parsing_active && s->global.id) {
+ if (!t->executor.parsing_active && s->global.id) {
GPR_ASSERT(grpc_chttp2_stream_map_find(&t->parsing_stream_map,
s->global.id) == NULL);
}
+ while (
+ (bs = grpc_chttp2_incoming_frame_queue_pop(&s->global.incoming_frames))) {
+ incoming_byte_stream_destroy_locked(exec_ctx, NULL, NULL, bs);
+ }
+
grpc_chttp2_list_remove_unannounced_incoming_window_available(&t->global,
&s->global);
grpc_chttp2_list_remove_stalled_by_transport(&t->global, &s->global);
+ grpc_chttp2_list_remove_check_read_ops(&t->global, &s->global);
- gpr_mu_unlock(&t->mu);
-
- for (i = 0; i < STREAM_LIST_COUNT; i++) {
+ for (int i = 0; i < STREAM_LIST_COUNT; i++) {
if (s->included[i]) {
gpr_log(GPR_ERROR, "%s stream %d still included in list %d",
t->global.is_client ? "client" : "server", s->global.id, i);
@@ -543,11 +555,6 @@ static void destroy_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
}
}
- while (
- (bs = grpc_chttp2_incoming_frame_queue_pop(&s->global.incoming_frames))) {
- grpc_byte_stream_destroy(exec_ctx, bs);
- }
-
GPR_ASSERT(s->global.send_initial_metadata_finished == NULL);
GPR_ASSERT(s->global.send_message_finished == NULL);
GPR_ASSERT(s->global.send_trailing_metadata_finished == NULL);
@@ -566,6 +573,17 @@ static void destroy_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
UNREF_TRANSPORT(exec_ctx, t, "stream");
GPR_TIMER_END("destroy_stream", 0);
+
+ gpr_free(arg);
+}
+
+static void destroy_stream(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
+ grpc_stream *gs, void *and_free_memory) {
+ grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
+ grpc_chttp2_stream *s = (grpc_chttp2_stream *)gs;
+
+ grpc_chttp2_run_with_global_lock(exec_ctx, t, s, destroy_stream_locked,
+ and_free_memory, 0);
}
grpc_chttp2_stream_parsing *grpc_chttp2_parsing_lookup_stream(
@@ -594,28 +612,96 @@ grpc_chttp2_stream_parsing *grpc_chttp2_parsing_accept_stream(
* LOCK MANAGEMENT
*/
-/* We take a grpc_chttp2_transport-global lock in response to calls coming in
- from above,
- and in response to data being received from below. New data to be written
- is always queued, as are callbacks to process data. During unlock() we
- check our todo lists and initiate callbacks and flush writes. */
-
-static void lock(grpc_chttp2_transport *t) { gpr_mu_lock(&t->mu); }
-
-static void unlock(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t) {
- GPR_TIMER_BEGIN("unlock", 0);
- if (!t->writing_active && !t->closed &&
- grpc_chttp2_unlocking_check_writes(exec_ctx, &t->global, &t->writing,
- t->parsing_active)) {
- t->writing_active = 1;
- REF_TRANSPORT(t, "writing");
- grpc_exec_ctx_enqueue(exec_ctx, &t->writing_action, true, NULL);
- prevent_endpoint_shutdown(t);
+static void finish_global_actions(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t) {
+ grpc_chttp2_executor_action_header *hdr;
+ grpc_chttp2_executor_action_header *next;
+
+ for (;;) {
+ if (!t->executor.writing_active && !t->closed &&
+ grpc_chttp2_unlocking_check_writes(exec_ctx, &t->global, &t->writing,
+ t->executor.parsing_active)) {
+ t->executor.writing_active = 1;
+ REF_TRANSPORT(t, "writing");
+ prevent_endpoint_shutdown(t);
+ grpc_exec_ctx_enqueue(exec_ctx, &t->writing_action, true, NULL);
+ }
+ check_read_ops(exec_ctx, &t->global);
+
+ gpr_mu_lock(&t->executor.mu);
+ if (t->executor.pending_actions_head != NULL) {
+ hdr = t->executor.pending_actions_head;
+ t->executor.pending_actions_head = t->executor.pending_actions_tail =
+ NULL;
+ gpr_mu_unlock(&t->executor.mu);
+ while (hdr != NULL) {
+ hdr->action(exec_ctx, t, hdr->stream, hdr->arg);
+ next = hdr->next;
+ gpr_free(hdr);
+ UNREF_TRANSPORT(exec_ctx, t, "pending_action");
+ hdr = next;
+ }
+ continue;
+ } else {
+ t->executor.global_active = false;
+ }
+ gpr_mu_unlock(&t->executor.mu);
+ break;
+ }
+}
+
+void grpc_chttp2_run_with_global_lock(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *optional_stream,
+ grpc_chttp2_locked_action action,
+ void *arg, size_t sizeof_arg) {
+ grpc_chttp2_executor_action_header *hdr;
+
+ REF_TRANSPORT(t, "run_global");
+ gpr_mu_lock(&t->executor.mu);
+
+ for (;;) {
+ if (!t->executor.global_active) {
+ t->executor.global_active = 1;
+ gpr_mu_unlock(&t->executor.mu);
+
+ action(exec_ctx, t, optional_stream, arg);
+
+ finish_global_actions(exec_ctx, t);
+ } else {
+ gpr_mu_unlock(&t->executor.mu);
+
+ hdr = gpr_malloc(sizeof(*hdr) + sizeof_arg);
+ hdr->stream = optional_stream;
+ hdr->action = action;
+ if (sizeof_arg == 0) {
+ hdr->arg = arg;
+ } else {
+ hdr->arg = hdr + 1;
+ memcpy(hdr->arg, arg, sizeof_arg);
+ }
+
+ gpr_mu_lock(&t->executor.mu);
+ if (!t->executor.global_active) {
+ /* global lock was released while allocating memory: release & retry */
+ gpr_free(hdr);
+ continue;
+ }
+ hdr->next = NULL;
+ if (t->executor.pending_actions_head != NULL) {
+ t->executor.pending_actions_tail =
+ t->executor.pending_actions_tail->next = hdr;
+ } else {
+ t->executor.pending_actions_tail = t->executor.pending_actions_head =
+ hdr;
+ }
+ REF_TRANSPORT(t, "pending_action");
+ gpr_mu_unlock(&t->executor.mu);
+ }
+ break;
}
- check_read_ops(exec_ctx, &t->global);
- gpr_mu_unlock(&t->mu);
- GPR_TIMER_END("unlock", 0);
+ UNREF_TRANSPORT(exec_ctx, t, "run_global");
}
/*******************************************************************************
@@ -645,15 +731,11 @@ static void push_setting(grpc_chttp2_transport *t, grpc_chttp2_setting_id id,
}
}
-void grpc_chttp2_terminate_writing(grpc_exec_ctx *exec_ctx,
- void *transport_writing_ptr, bool success) {
- grpc_chttp2_transport_writing *transport_writing = transport_writing_ptr;
- grpc_chttp2_transport *t = TRANSPORT_FROM_WRITING(transport_writing);
- grpc_chttp2_stream_global *stream_global;
-
- GPR_TIMER_BEGIN("grpc_chttp2_terminate_writing", 0);
-
- lock(t);
+static void terminate_writing_with_lock(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_ignored,
+ void *a) {
+ bool success = (bool)(uintptr_t)a;
allow_endpoint_shutdown_locked(exec_ctx, t);
@@ -663,24 +745,30 @@ void grpc_chttp2_terminate_writing(grpc_exec_ctx *exec_ctx,
grpc_chttp2_cleanup_writing(exec_ctx, &t->global, &t->writing);
+ grpc_chttp2_stream_global *stream_global;
while (grpc_chttp2_list_pop_closed_waiting_for_writing(&t->global,
&stream_global)) {
fail_pending_writes(exec_ctx, stream_global);
GRPC_CHTTP2_STREAM_UNREF(exec_ctx, stream_global, "finish_writes");
}
- /* leave the writing flag up on shutdown to prevent further writes in unlock()
+ /* leave the writing flag up on shutdown to prevent further writes in
+ unlock()
from starting */
- t->writing_active = 0;
+ t->executor.writing_active = 0;
if (t->ep && !t->endpoint_reading) {
destroy_endpoint(exec_ctx, t);
}
- unlock(exec_ctx, t);
-
UNREF_TRANSPORT(exec_ctx, t, "writing");
+}
- GPR_TIMER_END("grpc_chttp2_terminate_writing", 0);
+void grpc_chttp2_terminate_writing(grpc_exec_ctx *exec_ctx,
+ void *transport_writing, bool success) {
+ grpc_chttp2_transport *t = TRANSPORT_FROM_WRITING(transport_writing);
+ grpc_chttp2_run_with_global_lock(exec_ctx, t, NULL,
+ terminate_writing_with_lock,
+ (void *)(uintptr_t)success, 0);
}
static void writing_action(grpc_exec_ctx *exec_ctx, void *gt,
@@ -806,14 +894,16 @@ static int contains_non_ok_status(
static void do_nothing(grpc_exec_ctx *exec_ctx, void *arg, bool success) {}
-static void perform_stream_op_locked(
- grpc_exec_ctx *exec_ctx, grpc_chttp2_transport_global *transport_global,
- grpc_chttp2_stream_global *stream_global, grpc_transport_stream_op *op) {
- grpc_closure *on_complete;
-
+static void perform_stream_op_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s, void *stream_op) {
GPR_TIMER_BEGIN("perform_stream_op_locked", 0);
- on_complete = op->on_complete;
+ grpc_transport_stream_op *op = stream_op;
+ grpc_chttp2_transport_global *transport_global = &t->global;
+ grpc_chttp2_stream_global *stream_global = &s->global;
+
+ grpc_closure *on_complete = op->on_complete;
if (on_complete == NULL) {
on_complete = grpc_closure_create(do_nothing, NULL);
}
@@ -938,10 +1028,8 @@ static void perform_stream_op(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
grpc_stream *gs, grpc_transport_stream_op *op) {
grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
grpc_chttp2_stream *s = (grpc_chttp2_stream *)gs;
-
- lock(t);
- perform_stream_op_locked(exec_ctx, &t->global, &s->global, op);
- unlock(exec_ctx, t);
+ grpc_chttp2_run_with_global_lock(exec_ctx, t, s, perform_stream_op_locked, op,
+ sizeof(*op));
}
static void send_ping_locked(grpc_chttp2_transport *t, grpc_closure *on_recv) {
@@ -961,13 +1049,10 @@ static void send_ping_locked(grpc_chttp2_transport *t, grpc_closure *on_recv) {
gpr_slice_buffer_add(&t->global.qbuf, grpc_chttp2_ping_create(0, p->id));
}
-void grpc_chttp2_ack_ping(grpc_exec_ctx *exec_ctx,
- grpc_chttp2_transport_parsing *transport_parsing,
- const uint8_t *opaque_8bytes) {
+static void ack_ping_locked(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s, void *opaque_8bytes) {
grpc_chttp2_outstanding_ping *ping;
- grpc_chttp2_transport *t = TRANSPORT_FROM_PARSING(transport_parsing);
grpc_chttp2_transport_global *transport_global = &t->global;
- lock(t);
for (ping = transport_global->pings.next; ping != &transport_global->pings;
ping = ping->next) {
if (0 == memcmp(opaque_8bytes, ping->id, 8)) {
@@ -978,13 +1063,31 @@ void grpc_chttp2_ack_ping(grpc_exec_ctx *exec_ctx,
break;
}
}
- unlock(exec_ctx, t);
+}
+
+void grpc_chttp2_ack_ping(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport_parsing *transport_parsing,
+ const uint8_t *opaque_8bytes) {
+ grpc_chttp2_run_with_global_lock(
+ exec_ctx, TRANSPORT_FROM_PARSING(transport_parsing), NULL,
+ ack_ping_locked, (void *)opaque_8bytes, 8);
}
static void perform_transport_op_locked(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t,
- grpc_transport_op *op) {
- bool close_transport = false;
+ grpc_chttp2_stream *s_unused,
+ void *stream_op) {
+ grpc_transport_op *op = stream_op;
+ bool close_transport = op->disconnect;
+
+ /* If there's a set_accept_stream ensure that we're not parsing
+ to avoid changing things out from underneath */
+ if (t->executor.parsing_active && op->set_accept_stream) {
+ GPR_ASSERT(t->post_parsing_op == NULL);
+ t->post_parsing_op = gpr_malloc(sizeof(*op));
+ memcpy(t->post_parsing_op, op, sizeof(*op));
+ return;
+ }
grpc_exec_ctx_enqueue(exec_ctx, op->on_consumed, true, NULL);
@@ -1010,47 +1113,31 @@ static void perform_transport_op_locked(grpc_exec_ctx *exec_ctx,
}
if (op->bind_pollset) {
- add_to_pollset_locked(exec_ctx, t, op->bind_pollset);
+ add_to_pollset_locked(exec_ctx, t, NULL, op->bind_pollset);
}
if (op->bind_pollset_set) {
- add_to_pollset_set_locked(exec_ctx, t, op->bind_pollset_set);
+ add_to_pollset_set_locked(exec_ctx, t, NULL, op->bind_pollset_set);
}
if (op->send_ping) {
send_ping_locked(t, op->send_ping);
}
- if (op->disconnect) {
- close_transport_locked(exec_ctx, t);
- }
-
if (close_transport) {
- close_transport_locked(exec_ctx, t);
+ close_transport_locked(exec_ctx, t, NULL, NULL);
}
}
static void perform_transport_op(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
grpc_transport_op *op) {
grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
-
- lock(t);
-
- /* If there's a set_accept_stream ensure that we're not parsing
- to avoid changing things out from underneath */
- if (t->parsing_active && op->set_accept_stream) {
- GPR_ASSERT(t->post_parsing_op == NULL);
- t->post_parsing_op = gpr_malloc(sizeof(*op));
- memcpy(t->post_parsing_op, op, sizeof(*op));
- } else {
- perform_transport_op_locked(exec_ctx, t, op);
- }
-
- unlock(exec_ctx, t);
+ grpc_chttp2_run_with_global_lock(
+ exec_ctx, t, NULL, perform_transport_op_locked, op, sizeof(*op));
}
/*******************************************************************************
- * INPUT PROCESSING
+ * INPUT PROCESSING - GENERAL
*/
static void check_read_ops(grpc_exec_ctx *exec_ctx,
@@ -1072,7 +1159,7 @@ static void check_read_ops(grpc_exec_ctx *exec_ctx,
while (stream_global->seen_error &&
(bs = grpc_chttp2_incoming_frame_queue_pop(
&stream_global->incoming_frames)) != NULL) {
- grpc_byte_stream_destroy(exec_ctx, bs);
+ incoming_byte_stream_destroy_locked(exec_ctx, NULL, NULL, bs);
}
if (stream_global->incoming_frames.head != NULL) {
*stream_global->recv_message = grpc_chttp2_incoming_frame_queue_pop(
@@ -1093,9 +1180,9 @@ static void check_read_ops(grpc_exec_ctx *exec_ctx,
while (stream_global->seen_error &&
(bs = grpc_chttp2_incoming_frame_queue_pop(
&stream_global->incoming_frames)) != NULL) {
- grpc_byte_stream_destroy(exec_ctx, bs);
+ incoming_byte_stream_destroy_locked(exec_ctx, NULL, NULL, bs);
}
- if (stream_global->incoming_frames.head == NULL) {
+ if (stream_global->all_incoming_byte_streams_finished) {
grpc_chttp2_incoming_metadata_buffer_publish(
&stream_global->received_trailing_metadata,
stream_global->recv_trailing_metadata);
@@ -1107,6 +1194,15 @@ static void check_read_ops(grpc_exec_ctx *exec_ctx,
}
}
+static void decrement_active_streams_locked(
+ grpc_exec_ctx *exec_ctx, grpc_chttp2_transport_global *transport_global,
+ grpc_chttp2_stream_global *stream_global) {
+ if ((stream_global->all_incoming_byte_streams_finished =
+ gpr_unref(&stream_global->active_streams))) {
+ grpc_chttp2_list_add_check_read_ops(transport_global, stream_global);
+ }
+}
+
static void remove_stream(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
uint32_t id) {
size_t new_stream_count;
@@ -1128,7 +1224,7 @@ static void remove_stream(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
}
if (grpc_chttp2_unregister_stream(t, s) && t->global.sent_goaway) {
- close_transport_locked(exec_ctx, t);
+ close_transport_locked(exec_ctx, t, NULL, NULL);
}
if (grpc_chttp2_list_remove_writable_stream(&t->global, &s->global)) {
GRPC_CHTTP2_STREAM_UNREF(exec_ctx, &s->global, "chttp2_writing");
@@ -1229,10 +1325,11 @@ void grpc_chttp2_mark_stream_closed(
stream_global->read_closed = 1;
stream_global->published_initial_metadata = 1;
stream_global->published_trailing_metadata = 1;
+ decrement_active_streams_locked(exec_ctx, transport_global, stream_global);
}
if (close_writes && !stream_global->write_closed) {
stream_global->write_closed = 1;
- if (TRANSPORT_FROM_GLOBAL(transport_global)->writing_active) {
+ if (TRANSPORT_FROM_GLOBAL(transport_global)->executor.writing_active) {
GRPC_CHTTP2_STREAM_REF(stream_global, "finish_writes");
grpc_chttp2_list_add_closed_waiting_for_writing(transport_global,
stream_global);
@@ -1242,7 +1339,7 @@ void grpc_chttp2_mark_stream_closed(
}
if (stream_global->read_closed && stream_global->write_closed) {
if (stream_global->id != 0 &&
- TRANSPORT_FROM_GLOBAL(transport_global)->parsing_active) {
+ TRANSPORT_FROM_GLOBAL(transport_global)->executor.parsing_active) {
grpc_chttp2_list_add_closed_waiting_for_parsing(transport_global,
stream_global);
} else {
@@ -1374,7 +1471,7 @@ static void end_all_the_calls(grpc_exec_ctx *exec_ctx,
}
static void drop_connection(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t) {
- close_transport_locked(exec_ctx, t);
+ close_transport_locked(exec_ctx, t, NULL, NULL);
end_all_the_calls(exec_ctx, t);
}
@@ -1398,102 +1495,136 @@ static void update_global_window(void *args, uint32_t id, void *stream) {
}
}
-static void read_error_locked(grpc_exec_ctx *exec_ctx,
- grpc_chttp2_transport *t) {
- t->endpoint_reading = 0;
- if (!t->writing_active && t->ep) {
- destroy_endpoint(exec_ctx, t);
- }
-}
+/*******************************************************************************
+ * INPUT PROCESSING - PARSING
+ */
-/* tcp read callback */
-static void recv_data(grpc_exec_ctx *exec_ctx, void *tp, bool success) {
- size_t i;
- int keep_reading = 0;
- grpc_chttp2_transport *t = tp;
+static void reading_action_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_unused, void *arg);
+static void parsing_action(grpc_exec_ctx *exec_ctx, void *arg, bool success);
+static void post_reading_action_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_unused, void *arg);
+static void post_parse_locked(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_unused, void *arg);
+
+static void reading_action(grpc_exec_ctx *exec_ctx, void *tp, bool success) {
+ /* Control flow:
+ reading_action_locked ->
+ (parse_unlocked -> post_parse_locked)? ->
+ post_reading_action_locked */
+ grpc_chttp2_run_with_global_lock(exec_ctx, tp, NULL, reading_action_locked,
+ (void *)(uintptr_t)success, 0);
+}
+
+static void reading_action_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_unused, void *arg) {
grpc_chttp2_transport_global *transport_global = &t->global;
grpc_chttp2_transport_parsing *transport_parsing = &t->parsing;
- grpc_chttp2_stream_global *stream_global;
+ bool success = (bool)(uintptr_t)arg;
- GPR_TIMER_BEGIN("recv_data", 0);
-
- lock(t);
- i = 0;
- GPR_ASSERT(!t->parsing_active);
+ GPR_ASSERT(!t->executor.parsing_active);
if (!t->closed) {
- t->parsing_active = 1;
+ t->executor.parsing_active = 1;
/* merge stream lists */
grpc_chttp2_stream_map_move_into(&t->new_stream_map,
&t->parsing_stream_map);
grpc_chttp2_prepare_to_read(transport_global, transport_parsing);
- gpr_mu_unlock(&t->mu);
- GPR_TIMER_BEGIN("recv_data.parse", 0);
- for (; i < t->read_buffer.count &&
- grpc_chttp2_perform_read(exec_ctx, transport_parsing,
- t->read_buffer.slices[i]);
- i++)
- ;
- GPR_TIMER_END("recv_data.parse", 0);
- gpr_mu_lock(&t->mu);
- /* copy parsing qbuf to global qbuf */
- gpr_slice_buffer_move_into(&t->parsing.qbuf, &t->global.qbuf);
- if (i != t->read_buffer.count) {
- unlock(exec_ctx, t);
- lock(t);
- drop_connection(exec_ctx, t);
- }
- /* merge stream lists */
- grpc_chttp2_stream_map_move_into(&t->new_stream_map,
- &t->parsing_stream_map);
- transport_global->concurrent_stream_count =
- (uint32_t)grpc_chttp2_stream_map_size(&t->parsing_stream_map);
- if (transport_parsing->initial_window_update != 0) {
- grpc_chttp2_stream_map_for_each(&t->parsing_stream_map,
- update_global_window, t);
- transport_parsing->initial_window_update = 0;
- }
- /* handle higher level things */
- grpc_chttp2_publish_reads(exec_ctx, transport_global, transport_parsing);
- t->parsing_active = 0;
- /* handle delayed transport ops (if there is one) */
- if (t->post_parsing_op) {
- grpc_transport_op *op = t->post_parsing_op;
- t->post_parsing_op = NULL;
- perform_transport_op_locked(exec_ctx, t, op);
- gpr_free(op);
- }
- /* if a stream is in the stream map, and gets cancelled, we need to ensure
- * we are not parsing before continuing the cancellation to keep things in
- * a sane state */
- while (grpc_chttp2_list_pop_closed_waiting_for_parsing(transport_global,
- &stream_global)) {
- GPR_ASSERT(stream_global->in_stream_map);
- GPR_ASSERT(stream_global->write_closed);
- GPR_ASSERT(stream_global->read_closed);
- remove_stream(exec_ctx, t, stream_global->id);
- GRPC_CHTTP2_STREAM_UNREF(exec_ctx, stream_global, "chttp2");
- }
+ grpc_exec_ctx_enqueue(exec_ctx, &t->parsing_action, success, NULL);
+ } else {
+ post_reading_action_locked(exec_ctx, t, s_unused, arg);
+ }
+}
+
+static void parsing_action(grpc_exec_ctx *exec_ctx, void *arg, bool success) {
+ grpc_chttp2_transport *t = arg;
+ GPR_TIMER_BEGIN("reading_action.parse", 0);
+ size_t i = 0;
+ for (; i < t->read_buffer.count &&
+ grpc_chttp2_perform_read(exec_ctx, &t->parsing,
+ t->read_buffer.slices[i]);
+ i++)
+ ;
+ if (i != t->read_buffer.count) {
+ success = false;
}
- if (!success || i != t->read_buffer.count || t->closed) {
+ GPR_TIMER_END("reading_action.parse", 0);
+ grpc_chttp2_run_with_global_lock(exec_ctx, t, NULL, post_parse_locked,
+ (void *)(uintptr_t)success, 0);
+}
+
+static void post_parse_locked(grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_unused, void *arg) {
+ grpc_chttp2_transport_global *transport_global = &t->global;
+ grpc_chttp2_transport_parsing *transport_parsing = &t->parsing;
+ /* copy parsing qbuf to global qbuf */
+ gpr_slice_buffer_move_into(&t->parsing.qbuf, &t->global.qbuf);
+ /* merge stream lists */
+ grpc_chttp2_stream_map_move_into(&t->new_stream_map, &t->parsing_stream_map);
+ transport_global->concurrent_stream_count =
+ (uint32_t)grpc_chttp2_stream_map_size(&t->parsing_stream_map);
+ if (transport_parsing->initial_window_update != 0) {
+ grpc_chttp2_stream_map_for_each(&t->parsing_stream_map,
+ update_global_window, t);
+ transport_parsing->initial_window_update = 0;
+ }
+ /* handle higher level things */
+ grpc_chttp2_publish_reads(exec_ctx, transport_global, transport_parsing);
+ t->executor.parsing_active = 0;
+ /* handle delayed transport ops (if there is one) */
+ if (t->post_parsing_op) {
+ grpc_transport_op *op = t->post_parsing_op;
+ t->post_parsing_op = NULL;
+ perform_transport_op_locked(exec_ctx, t, NULL, op);
+ gpr_free(op);
+ }
+ /* if a stream is in the stream map, and gets cancelled, we need to
+ * ensure we are not parsing before continuing the cancellation to keep
+ * things in a sane state */
+ grpc_chttp2_stream_global *stream_global;
+ while (grpc_chttp2_list_pop_closed_waiting_for_parsing(transport_global,
+ &stream_global)) {
+ GPR_ASSERT(stream_global->in_stream_map);
+ GPR_ASSERT(stream_global->write_closed);
+ GPR_ASSERT(stream_global->read_closed);
+ remove_stream(exec_ctx, t, stream_global->id);
+ GRPC_CHTTP2_STREAM_UNREF(exec_ctx, stream_global, "chttp2");
+ }
+
+ post_reading_action_locked(exec_ctx, t, s_unused, arg);
+}
+
+static void post_reading_action_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s_unused,
+ void *arg) {
+ bool success = (bool)(uintptr_t)arg;
+ bool keep_reading = false;
+ if (!success || t->closed) {
drop_connection(exec_ctx, t);
- read_error_locked(exec_ctx, t);
+ t->endpoint_reading = 0;
+ if (!t->executor.writing_active && t->ep) {
+ grpc_endpoint_destroy(exec_ctx, t->ep);
+ t->ep = NULL;
+ /* safe as we still have a ref for read */
+ UNREF_TRANSPORT(exec_ctx, t, "disconnect");
+ }
} else if (!t->closed) {
- keep_reading = 1;
+ keep_reading = true;
REF_TRANSPORT(t, "keep_reading");
prevent_endpoint_shutdown(t);
}
gpr_slice_buffer_reset_and_unref(&t->read_buffer);
- unlock(exec_ctx, t);
if (keep_reading) {
- grpc_endpoint_read(exec_ctx, t->ep, &t->read_buffer, &t->recv_data);
- allow_endpoint_shutdown_unlocked(exec_ctx, t);
+ grpc_endpoint_read(exec_ctx, t->ep, &t->read_buffer, &t->reading_action);
+ allow_endpoint_shutdown_locked(exec_ctx, t);
UNREF_TRANSPORT(exec_ctx, t, "keep_reading");
} else {
- UNREF_TRANSPORT(exec_ctx, t, "recv_data");
+ UNREF_TRANSPORT(exec_ctx, t, "reading_action");
}
-
- GPR_TIMER_END("recv_data", 0);
}
/*******************************************************************************
@@ -1517,7 +1648,7 @@ static void connectivity_state_set(
static void add_to_pollset_locked(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t,
- grpc_pollset *pollset) {
+ grpc_chttp2_stream *s_unused, void *pollset) {
if (t->ep) {
grpc_endpoint_add_to_pollset(exec_ctx, t->ep, pollset);
}
@@ -1525,7 +1656,8 @@ static void add_to_pollset_locked(grpc_exec_ctx *exec_ctx,
static void add_to_pollset_set_locked(grpc_exec_ctx *exec_ctx,
grpc_chttp2_transport *t,
- grpc_pollset_set *pollset_set) {
+ grpc_chttp2_stream *s_unused,
+ void *pollset_set) {
if (t->ep) {
grpc_endpoint_add_to_pollset_set(exec_ctx, t->ep, pollset_set);
}
@@ -1533,16 +1665,24 @@ static void add_to_pollset_set_locked(grpc_exec_ctx *exec_ctx,
static void set_pollset(grpc_exec_ctx *exec_ctx, grpc_transport *gt,
grpc_stream *gs, grpc_pollset *pollset) {
- grpc_chttp2_transport *t = (grpc_chttp2_transport *)gt;
- lock(t);
- add_to_pollset_locked(exec_ctx, t, pollset);
- unlock(exec_ctx, t);
+ /* TODO(ctiller): keep pollset alive */
+ grpc_chttp2_run_with_global_lock(exec_ctx, (grpc_chttp2_transport *)gt,
+ (grpc_chttp2_stream *)gs,
+ add_to_pollset_locked, pollset, 0);
}
/*******************************************************************************
* BYTE STREAM
*/
+static void incoming_byte_stream_unref(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_incoming_byte_stream *bs) {
+ if (gpr_unref(&bs->refs)) {
+ gpr_slice_buffer_destroy(&bs->slices);
+ gpr_free(bs);
+ }
+}
+
static void incoming_byte_stream_update_flow_control(
grpc_chttp2_transport_global *transport_global,
grpc_chttp2_stream_global *stream_global, size_t max_size_hint,
@@ -1583,87 +1723,146 @@ static void incoming_byte_stream_update_flow_control(
}
}
-static int incoming_byte_stream_next(grpc_exec_ctx *exec_ctx,
- grpc_byte_stream *byte_stream,
- gpr_slice *slice, size_t max_size_hint,
- grpc_closure *on_complete) {
+typedef struct {
+ grpc_chttp2_incoming_byte_stream *byte_stream;
+ gpr_slice *slice;
+ size_t max_size_hint;
+ grpc_closure *on_complete;
+} incoming_byte_stream_next_arg;
+
+static void incoming_byte_stream_next_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s,
+ void *argp) {
+ incoming_byte_stream_next_arg *arg = argp;
grpc_chttp2_incoming_byte_stream *bs =
- (grpc_chttp2_incoming_byte_stream *)byte_stream;
+ (grpc_chttp2_incoming_byte_stream *)arg->byte_stream;
grpc_chttp2_transport_global *transport_global = &bs->transport->global;
grpc_chttp2_stream_global *stream_global = &bs->stream->global;
- lock(bs->transport);
if (bs->is_tail) {
- incoming_byte_stream_update_flow_control(transport_global, stream_global,
- max_size_hint, bs->slices.length);
+ incoming_byte_stream_update_flow_control(
+ transport_global, stream_global, arg->max_size_hint, bs->slices.length);
}
if (bs->slices.count > 0) {
- *slice = gpr_slice_buffer_take_first(&bs->slices);
- unlock(exec_ctx, bs->transport);
- return 1;
+ *arg->slice = gpr_slice_buffer_take_first(&bs->slices);
+ grpc_exec_ctx_enqueue(exec_ctx, arg->on_complete, true, NULL);
} else if (bs->failed) {
- grpc_exec_ctx_enqueue(exec_ctx, on_complete, false, NULL);
- unlock(exec_ctx, bs->transport);
- return 0;
+ grpc_exec_ctx_enqueue(exec_ctx, arg->on_complete, false, NULL);
} else {
- bs->on_next = on_complete;
- bs->next = slice;
- unlock(exec_ctx, bs->transport);
- return 0;
+ bs->on_next = arg->on_complete;
+ bs->next = arg->slice;
}
+ incoming_byte_stream_unref(exec_ctx, bs);
}
-static void incoming_byte_stream_unref(grpc_chttp2_incoming_byte_stream *bs) {
- if (gpr_unref(&bs->refs)) {
- gpr_slice_buffer_destroy(&bs->slices);
- gpr_free(bs);
- }
+static int incoming_byte_stream_next(grpc_exec_ctx *exec_ctx,
+ grpc_byte_stream *byte_stream,
+ gpr_slice *slice, size_t max_size_hint,
+ grpc_closure *on_complete) {
+ grpc_chttp2_incoming_byte_stream *bs =
+ (grpc_chttp2_incoming_byte_stream *)byte_stream;
+ incoming_byte_stream_next_arg arg = {bs, slice, max_size_hint, on_complete};
+ gpr_ref(&bs->refs);
+ grpc_chttp2_run_with_global_lock(exec_ctx, bs->transport, bs->stream,
+ incoming_byte_stream_next_locked, &arg,
+ sizeof(arg));
+ return 0;
+}
+
+static void incoming_byte_stream_destroy(grpc_exec_ctx *exec_ctx,
+ grpc_byte_stream *byte_stream);
+
+static void incoming_byte_stream_destroy_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s,
+ void *byte_stream) {
+ grpc_chttp2_incoming_byte_stream *bs = byte_stream;
+ GPR_ASSERT(bs->base.destroy == incoming_byte_stream_destroy);
+ decrement_active_streams_locked(exec_ctx, &bs->transport->global,
+ &bs->stream->global);
+ incoming_byte_stream_unref(exec_ctx, bs);
}
static void incoming_byte_stream_destroy(grpc_exec_ctx *exec_ctx,
grpc_byte_stream *byte_stream) {
- incoming_byte_stream_unref((grpc_chttp2_incoming_byte_stream *)byte_stream);
+ grpc_chttp2_incoming_byte_stream *bs =
+ (grpc_chttp2_incoming_byte_stream *)byte_stream;
+ grpc_chttp2_run_with_global_lock(exec_ctx, bs->transport, bs->stream,
+ incoming_byte_stream_destroy_locked, bs, 0);
}
-void grpc_chttp2_incoming_byte_stream_push(grpc_exec_ctx *exec_ctx,
- grpc_chttp2_incoming_byte_stream *bs,
- gpr_slice slice) {
- gpr_mu_lock(&bs->transport->mu);
+typedef struct {
+ grpc_chttp2_incoming_byte_stream *byte_stream;
+ gpr_slice slice;
+} incoming_byte_stream_push_arg;
+
+static void incoming_byte_stream_push_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s,
+ void *argp) {
+ incoming_byte_stream_push_arg *arg = argp;
+ grpc_chttp2_incoming_byte_stream *bs = arg->byte_stream;
if (bs->on_next != NULL) {
- *bs->next = slice;
+ *bs->next = arg->slice;
grpc_exec_ctx_enqueue(exec_ctx, bs->on_next, true, NULL);
bs->on_next = NULL;
} else {
- gpr_slice_buffer_add(&bs->slices, slice);
+ gpr_slice_buffer_add(&bs->slices, arg->slice);
}
- gpr_mu_unlock(&bs->transport->mu);
+ incoming_byte_stream_unref(exec_ctx, bs);
+}
+
+void grpc_chttp2_incoming_byte_stream_push(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_incoming_byte_stream *bs,
+ gpr_slice slice) {
+ incoming_byte_stream_push_arg arg = {bs, slice};
+ gpr_ref(&bs->refs);
+ grpc_chttp2_run_with_global_lock(exec_ctx, bs->transport, bs->stream,
+ incoming_byte_stream_push_locked, &arg,
+ sizeof(arg));
+}
+
+static void incoming_byte_stream_finished_failed_locked(
+ grpc_exec_ctx *exec_ctx, grpc_chttp2_transport *t, grpc_chttp2_stream *s,
+ void *argp) {
+ grpc_chttp2_incoming_byte_stream *bs = argp;
+ grpc_exec_ctx_enqueue(exec_ctx, bs->on_next, false, NULL);
+ bs->on_next = NULL;
+ bs->failed = 1;
+ incoming_byte_stream_unref(exec_ctx, bs);
+}
+
+static void incoming_byte_stream_finished_ok_locked(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s,
+ void *argp) {
+ grpc_chttp2_incoming_byte_stream *bs = argp;
+ incoming_byte_stream_unref(exec_ctx, bs);
}
void grpc_chttp2_incoming_byte_stream_finished(
grpc_exec_ctx *exec_ctx, grpc_chttp2_incoming_byte_stream *bs, int success,
int from_parsing_thread) {
- if (!success) {
- if (from_parsing_thread) {
- gpr_mu_lock(&bs->transport->mu);
- }
- grpc_exec_ctx_enqueue(exec_ctx, bs->on_next, false, NULL);
- bs->on_next = NULL;
- bs->failed = 1;
- if (from_parsing_thread) {
- gpr_mu_unlock(&bs->transport->mu);
+ if (from_parsing_thread) {
+ if (success) {
+ grpc_chttp2_run_with_global_lock(exec_ctx, bs->transport, bs->stream,
+ incoming_byte_stream_finished_ok_locked,
+ bs, 0);
+ } else {
+ incoming_byte_stream_finished_ok_locked(exec_ctx, bs->transport,
+ bs->stream, bs);
}
} else {
-#ifndef NDEBUG
- if (from_parsing_thread) {
- gpr_mu_lock(&bs->transport->mu);
- }
- GPR_ASSERT(bs->on_next == NULL);
- if (from_parsing_thread) {
- gpr_mu_unlock(&bs->transport->mu);
+ if (success) {
+ grpc_chttp2_run_with_global_lock(
+ exec_ctx, bs->transport, bs->stream,
+ incoming_byte_stream_finished_failed_locked, bs, 0);
+ } else {
+ incoming_byte_stream_finished_failed_locked(exec_ctx, bs->transport,
+ bs->stream, bs);
}
-#endif
}
- incoming_byte_stream_unref(bs);
}
grpc_chttp2_incoming_byte_stream *grpc_chttp2_incoming_byte_stream_create(
@@ -1680,6 +1879,7 @@ grpc_chttp2_incoming_byte_stream *grpc_chttp2_incoming_byte_stream_create(
incoming_byte_stream->next_message = NULL;
incoming_byte_stream->transport = TRANSPORT_FROM_PARSING(transport_parsing);
incoming_byte_stream->stream = STREAM_FROM_PARSING(stream_parsing);
+ gpr_ref(&incoming_byte_stream->stream->global.active_streams);
gpr_slice_buffer_init(&incoming_byte_stream->slices);
incoming_byte_stream->on_next = NULL;
incoming_byte_stream->is_tail = 1;
@@ -1810,7 +2010,7 @@ void grpc_chttp2_transport_start_reading(grpc_exec_ctx *exec_ctx,
grpc_transport *transport,
gpr_slice *slices, size_t nslices) {
grpc_chttp2_transport *t = (grpc_chttp2_transport *)transport;
- REF_TRANSPORT(t, "recv_data"); /* matches unref inside recv_data */
+ REF_TRANSPORT(t, "reading_action"); /* matches unref inside reading_action */
gpr_slice_buffer_addn(&t->read_buffer, slices, nslices);
- recv_data(exec_ctx, t, 1);
+ reading_action(exec_ctx, t, 1);
}
diff --git a/src/core/ext/transport/chttp2/transport/internal.h b/src/core/ext/transport/chttp2/transport/internal.h
index 98cd38abd4..8c4fa2d34a 100644
--- a/src/core/ext/transport/chttp2/transport/internal.h
+++ b/src/core/ext/transport/chttp2/transport/internal.h
@@ -236,9 +236,6 @@ struct grpc_chttp2_transport_parsing {
/** was a goaway frame received? */
uint8_t goaway_received;
- /** the last sent max_table_size setting */
- uint32_t last_sent_max_table_size;
-
/** initial window change */
int64_t initial_window_update;
@@ -272,6 +269,9 @@ struct grpc_chttp2_transport_parsing {
uint32_t incoming_frame_size;
uint32_t incoming_stream_id;
+ /* current max frame size */
+ uint32_t max_frame_size;
+
/* active parser */
void *parser_data;
grpc_chttp2_stream_parsing *incoming_stream;
@@ -282,6 +282,8 @@ struct grpc_chttp2_transport_parsing {
/* received settings */
uint32_t settings[GRPC_CHTTP2_NUM_SETTINGS];
+ /* last settings that were sent */
+ uint32_t last_sent_settings[GRPC_CHTTP2_NUM_SETTINGS];
/* goaway data */
grpc_status_code goaway_error;
@@ -291,27 +293,45 @@ struct grpc_chttp2_transport_parsing {
int64_t outgoing_window;
};
+typedef void (*grpc_chttp2_locked_action)(grpc_exec_ctx *ctx,
+ grpc_chttp2_transport *t,
+ grpc_chttp2_stream *s, void *arg);
+
+typedef struct grpc_chttp2_executor_action_header {
+ grpc_chttp2_stream *stream;
+ grpc_chttp2_locked_action action;
+ struct grpc_chttp2_executor_action_header *next;
+ void *arg;
+} grpc_chttp2_executor_action_header;
+
struct grpc_chttp2_transport {
grpc_transport base; /* must be first */
- grpc_endpoint *ep;
gpr_refcount refs;
+ grpc_endpoint *ep;
char *peer_string;
/** when this drops to zero it's safe to shutdown the endpoint */
gpr_refcount shutdown_ep_refs;
- gpr_mu mu;
+ struct {
+ gpr_mu mu;
+
+ /** is a thread currently in the global lock */
+ bool global_active;
+ /** is a thread currently writing */
+ bool writing_active;
+ /** is a thread currently parsing */
+ bool parsing_active;
+
+ grpc_chttp2_executor_action_header *pending_actions_head;
+ grpc_chttp2_executor_action_header *pending_actions_tail;
+ } executor;
/** is the transport destroying itself? */
uint8_t destroying;
/** has the upper layer closed the transport? */
uint8_t closed;
- /** is a thread currently writing */
- uint8_t writing_active;
- /** is a thread currently parsing */
- uint8_t parsing_active;
-
/** is there a read request to the endpoint outstanding? */
uint8_t endpoint_reading;
@@ -338,8 +358,10 @@ struct grpc_chttp2_transport {
/** closure to execute writing */
grpc_closure writing_action;
- /** closure to finish reading from the endpoint */
- grpc_closure recv_data;
+ /** closure to start reading from the endpoint */
+ grpc_closure reading_action;
+ /** closure to actually do parsing */
+ grpc_closure parsing_action;
/** incoming read bytes */
gpr_slice_buffer read_buffer;
@@ -397,21 +419,26 @@ typedef struct {
grpc_transport_stream_stats *collecting_stats;
grpc_transport_stream_stats stats;
+ /** number of streams that are currently being read */
+ gpr_refcount active_streams;
+
/** when the application requests writes be closed, the write_closed is
'queued'; when the close is flow controlled into the send path, we are
'sending' it; when the write has been performed it is 'sent' */
- uint8_t write_closed;
+ bool write_closed;
/** is this stream reading half-closed (boolean) */
- uint8_t read_closed;
+ bool read_closed;
+ /** are all published incoming byte streams closed */
+ bool all_incoming_byte_streams_finished;
/** is this stream in the stream map? (boolean) */
- uint8_t in_stream_map;
+ bool in_stream_map;
/** has this stream seen an error? if 1, then pending incoming frames
can be thrown away */
- uint8_t seen_error;
+ bool seen_error;
- uint8_t published_initial_metadata;
- uint8_t published_trailing_metadata;
- uint8_t faked_trailing_metadata;
+ bool published_initial_metadata;
+ bool published_trailing_metadata;
+ bool faked_trailing_metadata;
grpc_chttp2_incoming_metadata_buffer received_initial_metadata;
grpc_chttp2_incoming_metadata_buffer received_trailing_metadata;
@@ -570,6 +597,9 @@ int grpc_chttp2_list_pop_waiting_for_concurrency(
void grpc_chttp2_list_add_check_read_ops(
grpc_chttp2_transport_global *transport_global,
grpc_chttp2_stream_global *stream_global);
+bool grpc_chttp2_list_remove_check_read_ops(
+ grpc_chttp2_transport_global *transport_global,
+ grpc_chttp2_stream_global *stream_global);
int grpc_chttp2_list_pop_check_read_ops(
grpc_chttp2_transport_global *transport_global,
grpc_chttp2_stream_global **stream_global);
@@ -645,6 +675,12 @@ void grpc_chttp2_complete_closure_step(grpc_exec_ctx *exec_ctx,
grpc_chttp2_stream_global *stream_global,
grpc_closure **pclosure, int success);
+void grpc_chttp2_run_with_global_lock(grpc_exec_ctx *exec_ctx,
+ grpc_chttp2_transport *transport,
+ grpc_chttp2_stream *optional_stream,
+ grpc_chttp2_locked_action action,
+ void *arg, size_t sizeof_arg);
+
#define GRPC_CHTTP2_CLIENT_CONNECT_STRING "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"
#define GRPC_CHTTP2_CLIENT_CONNECT_STRLEN \
(sizeof(GRPC_CHTTP2_CLIENT_CONNECT_STRING) - 1)
diff --git a/src/core/ext/transport/chttp2/transport/parsing.c b/src/core/ext/transport/chttp2/transport/parsing.c
index e827a43f7a..2995066e51 100644
--- a/src/core/ext/transport/chttp2/transport/parsing.c
+++ b/src/core/ext/transport/chttp2/transport/parsing.c
@@ -79,9 +79,12 @@ void grpc_chttp2_prepare_to_read(
GPR_TIMER_BEGIN("grpc_chttp2_prepare_to_read", 0);
transport_parsing->next_stream_id = transport_global->next_stream_id;
- transport_parsing->last_sent_max_table_size =
- transport_global->settings[GRPC_SENT_SETTINGS]
- [GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE];
+ memcpy(transport_parsing->last_sent_settings,
+ transport_global->settings[GRPC_SENT_SETTINGS],
+ sizeof(transport_parsing->last_sent_settings));
+ transport_parsing->max_frame_size =
+ transport_global->settings[GRPC_ACKED_SETTINGS]
+ [GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE];
/* update the parsing view of incoming window */
while (grpc_chttp2_list_pop_unannounced_incoming_window_available(
@@ -388,6 +391,12 @@ int grpc_chttp2_perform_read(grpc_exec_ctx *exec_ctx,
return 1;
}
goto dts_fh_0; /* loop */
+ } else if (transport_parsing->incoming_frame_size >
+ transport_parsing->max_frame_size) {
+ gpr_log(GPR_DEBUG, "Frame size %d is larger than max frame size %d",
+ transport_parsing->incoming_frame_size,
+ transport_parsing->max_frame_size);
+ return 0;
}
if (++cur == end) {
return 1;
@@ -840,7 +849,11 @@ static int init_settings_frame_parser(
transport_parsing->settings_ack_received = 1;
grpc_chttp2_hptbl_set_max_bytes(
&transport_parsing->hpack_parser.table,
- transport_parsing->last_sent_max_table_size);
+ transport_parsing
+ ->last_sent_settings[GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE]);
+ transport_parsing->max_frame_size =
+ transport_parsing
+ ->last_sent_settings[GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE];
}
transport_parsing->parser = grpc_chttp2_settings_parser_parse;
transport_parsing->parser_data = &transport_parsing->simple.settings;
diff --git a/src/core/ext/transport/chttp2/transport/stream_lists.c b/src/core/ext/transport/chttp2/transport/stream_lists.c
index e5b35aadca..8f3ab00e6d 100644
--- a/src/core/ext/transport/chttp2/transport/stream_lists.c
+++ b/src/core/ext/transport/chttp2/transport/stream_lists.c
@@ -305,6 +305,14 @@ void grpc_chttp2_list_add_check_read_ops(
GRPC_CHTTP2_LIST_CHECK_READ_OPS);
}
+bool grpc_chttp2_list_remove_check_read_ops(
+ grpc_chttp2_transport_global *transport_global,
+ grpc_chttp2_stream_global *stream_global) {
+ return stream_list_maybe_remove(TRANSPORT_FROM_GLOBAL(transport_global),
+ STREAM_FROM_GLOBAL(stream_global),
+ GRPC_CHTTP2_LIST_CHECK_READ_OPS);
+}
+
int grpc_chttp2_list_pop_check_read_ops(
grpc_chttp2_transport_global *transport_global,
grpc_chttp2_stream_global **stream_global) {
diff --git a/src/core/lib/channel/channel_stack.c b/src/core/lib/channel/channel_stack.c
index e36066d863..ad182d1f69 100644
--- a/src/core/lib/channel/channel_stack.c
+++ b/src/core/lib/channel/channel_stack.c
@@ -213,14 +213,16 @@ void grpc_call_stack_ignore_set_pollset(grpc_exec_ctx *exec_ctx,
grpc_call_element *elem,
grpc_pollset *pollset) {}
-void grpc_call_stack_destroy(grpc_exec_ctx *exec_ctx, grpc_call_stack *stack) {
+void grpc_call_stack_destroy(grpc_exec_ctx *exec_ctx, grpc_call_stack *stack,
+ void *and_free_memory) {
grpc_call_element *elems = CALL_ELEMS_FROM_STACK(stack);
size_t count = stack->count;
size_t i;
/* destroy per-filter data */
for (i = 0; i < count; i++) {
- elems[i].filter->destroy_call_elem(exec_ctx, &elems[i]);
+ elems[i].filter->destroy_call_elem(exec_ctx, &elems[i],
+ i == count - 1 ? and_free_memory : NULL);
}
}
diff --git a/src/core/lib/channel/channel_stack.h b/src/core/lib/channel/channel_stack.h
index 9e3a25a152..36c17cb467 100644
--- a/src/core/lib/channel/channel_stack.h
+++ b/src/core/lib/channel/channel_stack.h
@@ -104,8 +104,12 @@ typedef struct {
void (*set_pollset)(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_pollset *pollset);
/* Destroy per call data.
- The filter does not need to do any chaining */
- void (*destroy_call_elem)(grpc_exec_ctx *exec_ctx, grpc_call_element *elem);
+ The filter does not need to do any chaining.
+ The bottom filter of a stack will be passed a non-NULL pointer to
+ \a and_free_memory that should be passed to gpr_free when destruction
+ is complete. */
+ void (*destroy_call_elem)(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *and_free_memory);
/* sizeof(per channel data) */
size_t sizeof_channel_data;
@@ -223,7 +227,8 @@ void grpc_call_stack_set_pollset(grpc_exec_ctx *exec_ctx,
#endif
/* Destroy a call stack */
-void grpc_call_stack_destroy(grpc_exec_ctx *exec_ctx, grpc_call_stack *stack);
+void grpc_call_stack_destroy(grpc_exec_ctx *exec_ctx, grpc_call_stack *stack,
+ void *and_free_memory);
/* Ignore set pollset - used by filters to implement the set_pollset method
if they don't care about pollsets at all. Does nothing. */
diff --git a/src/core/lib/channel/compress_filter.c b/src/core/lib/channel/compress_filter.c
index 3d42d0e616..5510c79b18 100644
--- a/src/core/lib/channel/compress_filter.c
+++ b/src/core/lib/channel/compress_filter.c
@@ -47,6 +47,8 @@
#include "src/core/lib/support/string.h"
#include "src/core/lib/transport/static_metadata.h"
+int grpc_compress_filter_trace = 0;
+
typedef struct call_data {
gpr_slice_buffer slices; /**< Buffers up input slices to be compressed */
grpc_linked_mdelem compression_algorithm_storage;
@@ -169,9 +171,29 @@ static void finish_send_message(grpc_exec_ctx *exec_ctx,
did_compress =
grpc_msg_compress(calld->compression_algorithm, &calld->slices, &tmp);
if (did_compress) {
+ if (grpc_compress_filter_trace) {
+ char *algo_name;
+ const size_t before_size = calld->slices.length;
+ const size_t after_size = tmp.length;
+ const float savings_ratio = 1.0f - (float)after_size / (float)before_size;
+ GPR_ASSERT(grpc_compression_algorithm_name(calld->compression_algorithm,
+ &algo_name));
+ gpr_log(GPR_DEBUG,
+ "Compressed[%s] %d bytes vs. %d bytes (%.2f%% savings)",
+ algo_name, before_size, after_size, 100 * savings_ratio);
+ }
gpr_slice_buffer_swap(&calld->slices, &tmp);
calld->send_flags |= GRPC_WRITE_INTERNAL_COMPRESS;
+ } else {
+ if (grpc_compress_filter_trace) {
+ char *algo_name;
+ GPR_ASSERT(grpc_compression_algorithm_name(calld->compression_algorithm,
+ &algo_name));
+ gpr_log(GPR_DEBUG, "Algorithm '%s' enabled but decided not to compress.",
+ algo_name);
+ }
}
+
gpr_slice_buffer_destroy(&tmp);
grpc_slice_buffer_stream_init(&calld->replacement_stream, &calld->slices,
@@ -246,8 +268,8 @@ static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {
/* grab pointers to our data from the call element */
call_data *calld = elem->call_data;
gpr_slice_buffer_destroy(&calld->slices);
diff --git a/src/core/lib/channel/compress_filter.h b/src/core/lib/channel/compress_filter.h
index 0d973329c4..cf5879d82e 100644
--- a/src/core/lib/channel/compress_filter.h
+++ b/src/core/lib/channel/compress_filter.h
@@ -38,6 +38,8 @@
#define GRPC_COMPRESS_REQUEST_ALGORITHM_KEY "grpc-internal-encoding-request"
+extern int grpc_compress_filter_trace;
+
/** Compression filter for outgoing data.
*
* See <grpc/compression.h> for the available compression settings.
diff --git a/src/core/lib/channel/connected_channel.c b/src/core/lib/channel/connected_channel.c
index c1debab4c6..68a3a7d6fd 100644
--- a/src/core/lib/channel/connected_channel.c
+++ b/src/core/lib/channel/connected_channel.c
@@ -102,12 +102,13 @@ static void set_pollset(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *and_free_memory) {
call_data *calld = elem->call_data;
channel_data *chand = elem->channel_data;
grpc_transport_destroy_stream(exec_ctx, chand->transport,
- TRANSPORT_STREAM_FROM_CALL_DATA(calld));
+ TRANSPORT_STREAM_FROM_CALL_DATA(calld),
+ and_free_memory);
}
/* Constructor for channel_data */
diff --git a/src/core/lib/channel/http_client_filter.c b/src/core/lib/channel/http_client_filter.c
index 211f537c69..516e708d1f 100644
--- a/src/core/lib/channel/http_client_filter.c
+++ b/src/core/lib/channel/http_client_filter.c
@@ -155,8 +155,8 @@ static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {}
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {}
static grpc_mdelem *scheme_from_args(const grpc_channel_args *args) {
unsigned i;
diff --git a/src/core/lib/channel/http_server_filter.c b/src/core/lib/channel/http_server_filter.c
index c140c61b8f..ba865416de 100644
--- a/src/core/lib/channel/http_server_filter.c
+++ b/src/core/lib/channel/http_server_filter.c
@@ -39,6 +39,9 @@
#include "src/core/lib/profiling/timers.h"
#include "src/core/lib/transport/static_metadata.h"
+#define EXPECTED_CONTENT_TYPE "application/grpc"
+#define EXPECTED_CONTENT_TYPE_LENGTH sizeof(EXPECTED_CONTENT_TYPE) - 1
+
typedef struct call_data {
uint8_t seen_path;
uint8_t seen_method;
@@ -92,8 +95,11 @@ static grpc_mdelem *server_filter(void *user_data, grpc_mdelem *md) {
require */
return NULL;
} else if (md->key == GRPC_MDSTR_CONTENT_TYPE) {
- if (strncmp(grpc_mdstr_as_c_string(md->value), "application/grpc+", 17) ==
- 0) {
+ const char *value_str = grpc_mdstr_as_c_string(md->value);
+ if (strncmp(value_str, EXPECTED_CONTENT_TYPE,
+ EXPECTED_CONTENT_TYPE_LENGTH) == 0 &&
+ (value_str[EXPECTED_CONTENT_TYPE_LENGTH] == '+' ||
+ value_str[EXPECTED_CONTENT_TYPE_LENGTH] == ';')) {
/* Although the C implementation doesn't (currently) generate them,
any custom +-suffix is explicitly valid. */
/* TODO(klempner): We should consider preallocating common values such
@@ -102,8 +108,7 @@ static grpc_mdelem *server_filter(void *user_data, grpc_mdelem *md) {
} else {
/* TODO(klempner): We're currently allowing this, but we shouldn't
see it without a proxy so log for now. */
- gpr_log(GPR_INFO, "Unexpected content-type %s",
- grpc_mdstr_as_c_string(md->value));
+ gpr_log(GPR_INFO, "Unexpected content-type %s", value_str);
}
return NULL;
} else if (md->key == GRPC_MDSTR_TE || md->key == GRPC_MDSTR_METHOD ||
@@ -220,8 +225,8 @@ static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {}
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {}
/* Constructor for channel_data */
static void init_channel_elem(grpc_exec_ctx *exec_ctx,
diff --git a/src/core/lib/http/parser.c b/src/core/lib/http/parser.c
index 921c772453..a7efb5e73e 100644
--- a/src/core/lib/http/parser.c
+++ b/src/core/lib/http/parser.c
@@ -172,8 +172,8 @@ static int add_header(grpc_http_parser *parser) {
while (cur != end && (*cur == ' ' || *cur == '\t')) {
cur++;
}
- GPR_ASSERT(end - cur >= 2);
- hdr.value = buf2str(cur, (size_t)(end - cur) - 2);
+ GPR_ASSERT((size_t)(end - cur) >= parser->cur_line_end_length);
+ hdr.value = buf2str(cur, (size_t)(end - cur) - parser->cur_line_end_length);
if (parser->type == GRPC_HTTP_RESPONSE) {
hdr_count = &parser->http.response.hdr_count;
@@ -208,7 +208,7 @@ static int finish_line(grpc_http_parser *parser) {
parser->state = GRPC_HTTP_HEADERS;
break;
case GRPC_HTTP_HEADERS:
- if (parser->cur_line_length == 2) {
+ if (parser->cur_line_length == parser->cur_line_end_length) {
parser->state = GRPC_HTTP_BODY;
break;
}
@@ -248,6 +248,30 @@ static int addbyte_body(grpc_http_parser *parser, uint8_t byte) {
return 1;
}
+static int check_line(grpc_http_parser *parser) {
+ if (parser->cur_line_length >= 2 &&
+ parser->cur_line[parser->cur_line_length - 2] == '\r' &&
+ parser->cur_line[parser->cur_line_length - 1] == '\n') {
+ return 1;
+ }
+
+ // HTTP request with \n\r line termiantors.
+ else if (parser->cur_line_length >= 2 &&
+ parser->cur_line[parser->cur_line_length - 2] == '\n' &&
+ parser->cur_line[parser->cur_line_length - 1] == '\r') {
+ return 1;
+ }
+
+ // HTTP request with only \n line terminators.
+ else if (parser->cur_line_length >= 1 &&
+ parser->cur_line[parser->cur_line_length - 1] == '\n') {
+ parser->cur_line_end_length = 1;
+ return 1;
+ }
+
+ return 0;
+}
+
static int addbyte(grpc_http_parser *parser, uint8_t byte) {
switch (parser->state) {
case GRPC_HTTP_FIRST_LINE:
@@ -260,9 +284,7 @@ static int addbyte(grpc_http_parser *parser, uint8_t byte) {
}
parser->cur_line[parser->cur_line_length] = byte;
parser->cur_line_length++;
- if (parser->cur_line_length >= 2 &&
- parser->cur_line[parser->cur_line_length - 2] == '\r' &&
- parser->cur_line[parser->cur_line_length - 1] == '\n') {
+ if (check_line(parser)) {
return finish_line(parser);
} else {
return 1;
@@ -278,6 +300,7 @@ void grpc_http_parser_init(grpc_http_parser *parser) {
memset(parser, 0, sizeof(*parser));
parser->state = GRPC_HTTP_FIRST_LINE;
parser->type = GRPC_HTTP_UNKNOWN;
+ parser->cur_line_end_length = 2;
}
void grpc_http_parser_destroy(grpc_http_parser *parser) {
diff --git a/src/core/lib/http/parser.h b/src/core/lib/http/parser.h
index 42fa5181b8..536637e9a2 100644
--- a/src/core/lib/http/parser.h
+++ b/src/core/lib/http/parser.h
@@ -105,6 +105,7 @@ typedef struct {
uint8_t cur_line[GRPC_HTTP_PARSER_MAX_HEADER_LENGTH];
size_t cur_line_length;
+ size_t cur_line_end_length;
} grpc_http_parser;
void grpc_http_parser_init(grpc_http_parser *parser);
diff --git a/src/core/lib/iomgr/ev_posix.c b/src/core/lib/iomgr/ev_posix.c
index 0eb95a2e09..7df1751352 100644
--- a/src/core/lib/iomgr/ev_posix.c
+++ b/src/core/lib/iomgr/ev_posix.c
@@ -44,7 +44,6 @@
static const grpc_event_engine_vtable *g_event_engine;
grpc_poll_function_type grpc_poll_function = poll;
-grpc_wakeup_fd grpc_global_wakeup_fd;
void grpc_event_engine_init(void) {
if ((g_event_engine = grpc_init_poll_and_epoll_posix())) {
diff --git a/src/core/lib/iomgr/iomgr.c b/src/core/lib/iomgr/iomgr.c
index 146663984d..60cef8ba77 100644
--- a/src/core/lib/iomgr/iomgr.c
+++ b/src/core/lib/iomgr/iomgr.c
@@ -166,8 +166,10 @@ bool grpc_iomgr_abort_on_leaks(void) {
if (env == NULL) return false;
static const char *truthy[] = {"yes", "Yes", "YES", "true",
"True", "TRUE", "1"};
+ bool should_we = false;
for (size_t i = 0; i < GPR_ARRAY_SIZE(truthy); i++) {
- if (0 == strcmp(env, truthy[i])) return true;
+ if (0 == strcmp(env, truthy[i])) should_we = true;
}
- return false;
+ gpr_free(env);
+ return should_we;
}
diff --git a/src/core/lib/iomgr/resolve_address_windows.c b/src/core/lib/iomgr/resolve_address_windows.c
index a65089c017..914736234d 100644
--- a/src/core/lib/iomgr/resolve_address_windows.c
+++ b/src/core/lib/iomgr/resolve_address_windows.c
@@ -167,8 +167,8 @@ static void resolve_address_impl(grpc_exec_ctx *exec_ctx, const char *name,
grpc_executor_enqueue(&r->request_closure, 1);
}
-void (*grpc_resolved_address)(grpc_exec_ctx *exec_ctx, const char *name,
- const char *default_port, grpc_resolve_cb cb,
- void *arg) = resolve_address_impl;
+void (*grpc_resolve_address)(grpc_exec_ctx *exec_ctx, const char *name,
+ const char *default_port, grpc_resolve_cb cb,
+ void *arg) = resolve_address_impl;
#endif
diff --git a/src/core/lib/iomgr/tcp_client_windows.c b/src/core/lib/iomgr/tcp_client_windows.c
index 7d78beb15a..66f9ff7a46 100644
--- a/src/core/lib/iomgr/tcp_client_windows.c
+++ b/src/core/lib/iomgr/tcp_client_windows.c
@@ -63,39 +63,45 @@ typedef struct {
grpc_endpoint **endpoint;
} async_connect;
-static void async_connect_unlock_and_cleanup(async_connect *ac) {
+static void async_connect_unlock_and_cleanup(async_connect *ac,
+ grpc_winsocket *socket) {
int done = (--ac->refs == 0);
gpr_mu_unlock(&ac->mu);
if (done) {
- if (ac->socket != NULL) grpc_winsocket_destroy(ac->socket);
gpr_mu_destroy(&ac->mu);
gpr_free(ac->addr_name);
gpr_free(ac);
}
+ if (socket != NULL) grpc_winsocket_destroy(socket);
}
static void on_alarm(grpc_exec_ctx *exec_ctx, void *acp, bool occured) {
async_connect *ac = acp;
gpr_mu_lock(&ac->mu);
- /* If the alarm didn't occur, it got cancelled. */
- if (ac->socket != NULL && occured) {
+ if (ac->socket != NULL) {
grpc_winsocket_shutdown(ac->socket);
}
- async_connect_unlock_and_cleanup(ac);
+ async_connect_unlock_and_cleanup(ac, ac->socket);
}
static void on_connect(grpc_exec_ctx *exec_ctx, void *acp, bool from_iocp) {
async_connect *ac = acp;
SOCKET sock = ac->socket->socket;
grpc_endpoint **ep = ac->endpoint;
+ GPR_ASSERT(*ep == NULL);
grpc_winsocket_callback_info *info = &ac->socket->write_info;
grpc_closure *on_done = ac->on_done;
+ gpr_mu_lock(&ac->mu);
+ grpc_winsocket *socket = ac->socket;
+ ac->socket = NULL;
+ gpr_mu_unlock(&ac->mu);
+
grpc_timer_cancel(exec_ctx, &ac->alarm);
gpr_mu_lock(&ac->mu);
- if (from_iocp) {
+ if (from_iocp && socket != NULL) {
DWORD transfered_bytes = 0;
DWORD flags;
BOOL wsa_success = WSAGetOverlappedResult(sock, &info->overlapped,
@@ -107,12 +113,12 @@ static void on_connect(grpc_exec_ctx *exec_ctx, void *acp, bool from_iocp) {
ac->addr_name, utf8_message);
gpr_free(utf8_message);
} else {
- *ep = grpc_tcp_create(ac->socket, ac->addr_name);
- ac->socket = NULL;
+ *ep = grpc_tcp_create(socket, ac->addr_name);
+ socket = NULL;
}
}
- async_connect_unlock_and_cleanup(ac);
+ async_connect_unlock_and_cleanup(ac, socket);
/* If the connection was aborted, the callback was already called when
the deadline was met. */
on_done->cb(exec_ctx, on_done->cb_arg, *ep != NULL);
@@ -138,6 +144,7 @@ void grpc_tcp_client_connect(grpc_exec_ctx *exec_ctx, grpc_closure *on_done,
const char *message = NULL;
char *utf8_message;
grpc_winsocket_callback_info *info;
+ int last_error;
*endpoint = NULL;
@@ -208,8 +215,10 @@ void grpc_tcp_client_connect(grpc_exec_ctx *exec_ctx, grpc_closure *on_done,
return;
failure:
- utf8_message = gpr_format_message(WSAGetLastError());
+ last_error = WSAGetLastError();
+ utf8_message = gpr_format_message(last_error);
gpr_log(GPR_ERROR, message, utf8_message);
+ gpr_log(GPR_ERROR, "last error = %d", last_error);
gpr_free(utf8_message);
if (socket != NULL) {
grpc_winsocket_destroy(socket);
diff --git a/src/core/lib/iomgr/tcp_server_windows.c b/src/core/lib/iomgr/tcp_server_windows.c
index 6940dec7b0..125f521d87 100644
--- a/src/core/lib/iomgr/tcp_server_windows.c
+++ b/src/core/lib/iomgr/tcp_server_windows.c
@@ -508,34 +508,6 @@ int grpc_tcp_server_add_port(grpc_tcp_server *s, const void *addr,
}
}
-unsigned grpc_tcp_server_port_fd_count(grpc_tcp_server *s,
- unsigned port_index) {
- grpc_tcp_listener *sp;
- for (sp = s->head; sp && port_index != 0; sp = sp->next, --port_index)
- ;
- if (sp) {
- return 1;
- } else {
- return 0;
- }
-}
-
-int grpc_tcp_server_port_fd(grpc_tcp_server *s, unsigned port_index,
- unsigned fd_index) {
- grpc_tcp_listener *sp;
- if (fd_index != 0) {
- /* Windows implementation has only one fd per port_index. */
- return -1;
- }
- for (sp = s->head; sp && port_index != 0; sp = sp->next, --port_index)
- ;
- if (sp) {
- return _open_osfhandle((intptr_t)sp->socket->socket, 0);
- } else {
- return -1;
- }
-}
-
void grpc_tcp_server_start(grpc_exec_ctx *exec_ctx, grpc_tcp_server *s,
grpc_pollset **pollset, size_t pollset_count,
grpc_tcp_server_cb on_accept_cb,
diff --git a/src/core/lib/iomgr/tcp_windows.c b/src/core/lib/iomgr/tcp_windows.c
index 7ee689a7e4..551149e1a6 100644
--- a/src/core/lib/iomgr/tcp_windows.c
+++ b/src/core/lib/iomgr/tcp_windows.c
@@ -35,6 +35,8 @@
#ifdef GPR_WINSOCK_SOCKET
+#include <limits.h>
+
#include "src/core/lib/iomgr/sockaddr_win32.h"
#include <grpc/support/alloc.h>
@@ -51,12 +53,20 @@
#include "src/core/lib/iomgr/tcp_client.h"
#include "src/core/lib/iomgr/timer.h"
+#if defined(__MSYS__) && defined(GPR_ARCH_64)
+/* Nasty workaround for nasty bug when using the 64 bits msys compiler
+ in conjunction with Microsoft Windows headers. */
+#define GRPC_FIONBIO _IOW('f', 126, uint32_t)
+#else
+#define GRPC_FIONBIO FIONBIO
+#endif
+
static int set_non_block(SOCKET sock) {
int status;
- unsigned long param = 1;
+ uint32_t param = 1;
DWORD ret;
- status =
- WSAIoctl(sock, FIONBIO, &param, sizeof(param), NULL, 0, &ret, NULL, NULL);
+ status = WSAIoctl(sock, GRPC_FIONBIO, &param, sizeof(param), NULL, 0, &ret,
+ NULL, NULL);
return status == 0;
}
diff --git a/src/core/lib/security/client_auth_filter.c b/src/core/lib/security/client_auth_filter.c
index 943b1da85c..8b58cb86bf 100644
--- a/src/core/lib/security/client_auth_filter.c
+++ b/src/core/lib/security/client_auth_filter.c
@@ -277,8 +277,8 @@ static void set_pollset(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {
call_data *calld = elem->call_data;
grpc_call_credentials_unref(calld->creds);
if (calld->host != NULL) {
diff --git a/src/core/lib/security/server_auth_filter.c b/src/core/lib/security/server_auth_filter.c
index 7844dc87cb..3320497d21 100644
--- a/src/core/lib/security/server_auth_filter.c
+++ b/src/core/lib/security/server_auth_filter.c
@@ -224,8 +224,8 @@ static void set_pollset(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_pollset *pollset) {}
/* Destructor for call_data */
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {}
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {}
/* Constructor for channel_data */
static void init_channel_elem(grpc_exec_ctx *exec_ctx,
diff --git a/src/core/lib/support/env_win32.c b/src/core/lib/support/env_win32.c
index ef84c941df..e670e1e8d0 100644
--- a/src/core/lib/support/env_win32.c
+++ b/src/core/lib/support/env_win32.c
@@ -33,41 +33,47 @@
#include <grpc/support/port_platform.h>
-#ifdef GPR_WIN32
+#ifdef GPR_WIN32_ENV
+
+#include <windows.h>
#include "src/core/lib/support/env.h"
#include "src/core/lib/support/string.h"
-
-#ifdef __MINGW32__
-errno_t getenv_s(size_t *size_needed, char *buffer, size_t size,
- const char *varname);
-#else
-#include <stdlib.h>
-#endif
+#include "src/core/lib/support/string_win32.h"
#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
#include <grpc/support/string_util.h>
char *gpr_getenv(const char *name) {
- size_t size;
char *result = NULL;
- errno_t err;
+ DWORD size;
+ LPTSTR tresult = NULL;
+ LPTSTR tname = gpr_char_to_tchar(name);
+ DWORD ret;
- err = getenv_s(&size, NULL, 0, name);
- if (err || (size == 0)) return NULL;
- result = gpr_malloc(size);
- err = getenv_s(&size, result, size, name);
- if (err) {
- gpr_free(result);
+ ret = GetEnvironmentVariable(tname, NULL, 0);
+ if (ret == 0) return NULL;
+ size = ret * (DWORD)sizeof(TCHAR);
+ tresult = gpr_malloc(size);
+ ret = GetEnvironmentVariable(tname, tresult, size);
+ gpr_free(tname);
+ if (ret == 0) {
+ gpr_free(tresult);
return NULL;
}
+ result = gpr_tchar_to_char(tresult);
+ gpr_free(tresult);
return result;
}
void gpr_setenv(const char *name, const char *value) {
- errno_t res = _putenv_s(name, value);
- GPR_ASSERT(res == 0);
+ LPTSTR tname = gpr_char_to_tchar(name);
+ LPTSTR tvalue = gpr_char_to_tchar(value);
+ BOOL res = SetEnvironmentVariable(tname, tvalue);
+ gpr_free(tname);
+ gpr_free(tvalue);
+ GPR_ASSERT(res);
}
-#endif /* GPR_WIN32 */
+#endif /* GPR_WIN32_ENV */
diff --git a/src/core/lib/support/log_linux.c b/src/core/lib/support/log_linux.c
index ff3febb38e..ca04c022e3 100644
--- a/src/core/lib/support/log_linux.c
+++ b/src/core/lib/support/log_linux.c
@@ -41,7 +41,7 @@
#include <grpc/support/port_platform.h>
-#ifdef GPR_LINUX
+#ifdef GPR_LINUX_LOG
#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
@@ -103,4 +103,4 @@ void gpr_default_log(gpr_log_func_args *args) {
gpr_free(prefix);
}
-#endif
+#endif /* GPR_LINUX_LOG */
diff --git a/src/core/lib/support/log_win32.c b/src/core/lib/support/log_win32.c
index ba78497a0a..29735bd18c 100644
--- a/src/core/lib/support/log_win32.c
+++ b/src/core/lib/support/log_win32.c
@@ -33,7 +33,7 @@
#include <grpc/support/port_platform.h>
-#ifdef GPR_WIN32
+#ifdef GPR_WIN32_LOG
#include <stdarg.h>
#include <stdio.h>
@@ -109,18 +109,4 @@ void gpr_default_log(gpr_log_func_args *args) {
fflush(stderr);
}
-char *gpr_format_message(int messageid) {
- LPTSTR tmessage;
- char *message;
- DWORD status = FormatMessage(
- FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
- FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL, (DWORD)messageid, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPTSTR)(&tmessage), 0, NULL);
- if (status == 0) return gpr_strdup("Unable to retrieve error string");
- message = gpr_tchar_to_char(tmessage);
- LocalFree(tmessage);
- return message;
-}
-
-#endif /* GPR_WIN32 */
+#endif /* GPR_WIN32_LOG */
diff --git a/src/core/lib/support/string_util_win32.c b/src/core/lib/support/string_util_win32.c
new file mode 100644
index 0000000000..f3cb0c050f
--- /dev/null
+++ b/src/core/lib/support/string_util_win32.c
@@ -0,0 +1,94 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+/* Posix code for gpr snprintf support. */
+
+#include <grpc/support/port_platform.h>
+
+#ifdef GPR_WIN32
+
+/* Some platforms (namely msys) need wchar to be included BEFORE
+ anything else, especially strsafe.h. */
+#include <wchar.h>
+
+#include <stdarg.h>
+#include <stdio.h>
+#include <string.h>
+#include <strsafe.h>
+
+#include <grpc/support/alloc.h>
+#include <grpc/support/string_util.h>
+
+#include "src/core/lib/support/string.h"
+
+#if defined UNICODE || defined _UNICODE
+LPTSTR
+gpr_char_to_tchar(LPCSTR input) {
+ LPTSTR ret;
+ int needed = MultiByteToWideChar(CP_UTF8, 0, input, -1, NULL, 0);
+ if (needed <= 0) return NULL;
+ ret = gpr_malloc((unsigned)needed * sizeof(TCHAR));
+ MultiByteToWideChar(CP_UTF8, 0, input, -1, ret, needed);
+ return ret;
+}
+
+LPSTR
+gpr_tchar_to_char(LPCTSTR input) {
+ LPSTR ret;
+ int needed = WideCharToMultiByte(CP_UTF8, 0, input, -1, NULL, 0, NULL, NULL);
+ if (needed <= 0) return NULL;
+ ret = gpr_malloc((unsigned)needed);
+ WideCharToMultiByte(CP_UTF8, 0, input, -1, ret, needed, NULL, NULL);
+ return ret;
+}
+#else
+char *gpr_tchar_to_char(LPTSTR input) { return gpr_strdup(input); }
+
+char *gpr_char_to_tchar(LPTSTR input) { return gpr_strdup(input); }
+#endif
+
+char *gpr_format_message(int messageid) {
+ LPTSTR tmessage;
+ char *message;
+ DWORD status = FormatMessage(
+ FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |
+ FORMAT_MESSAGE_IGNORE_INSERTS,
+ NULL, (DWORD)messageid, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
+ (LPTSTR)(&tmessage), 0, NULL);
+ if (status == 0) return gpr_strdup("Unable to retrieve error string");
+ message = gpr_tchar_to_char(tmessage);
+ LocalFree(tmessage);
+ return message;
+}
+
+#endif /* GPR_WIN32 */
diff --git a/src/core/lib/support/string_win32.c b/src/core/lib/support/string_win32.c
index a2f9857356..6b92f79253 100644
--- a/src/core/lib/support/string_win32.c
+++ b/src/core/lib/support/string_win32.c
@@ -31,11 +31,11 @@
*
*/
-/* Posix code for gpr snprintf support. */
+/* Windows code for gpr snprintf support. */
#include <grpc/support/port_platform.h>
-#ifdef GPR_WIN32
+#ifdef GPR_WIN32_STRING
#include <stdarg.h>
#include <stdio.h>
@@ -80,30 +80,4 @@ int gpr_asprintf(char **strp, const char *format, ...) {
return -1;
}
-#if defined UNICODE || defined _UNICODE
-LPTSTR
-gpr_char_to_tchar(LPCSTR input) {
- LPTSTR ret;
- int needed = MultiByteToWideChar(CP_UTF8, 0, input, -1, NULL, 0);
- if (needed <= 0) return NULL;
- ret = gpr_malloc((unsigned)needed * sizeof(TCHAR));
- MultiByteToWideChar(CP_UTF8, 0, input, -1, ret, needed);
- return ret;
-}
-
-LPSTR
-gpr_tchar_to_char(LPCTSTR input) {
- LPSTR ret;
- int needed = WideCharToMultiByte(CP_UTF8, 0, input, -1, NULL, 0, NULL, NULL);
- if (needed <= 0) return NULL;
- ret = gpr_malloc((unsigned)needed);
- WideCharToMultiByte(CP_UTF8, 0, input, -1, ret, needed, NULL, NULL);
- return ret;
-}
-#else
-char *gpr_tchar_to_char(LPTSTR input) { return gpr_strdup(input); }
-
-char *gpr_char_to_tchar(LPTSTR input) { return gpr_strdup(input); }
-#endif
-
-#endif /* GPR_WIN32 */
+#endif /* GPR_WIN32_STRING */
diff --git a/src/core/lib/support/time_win32.c b/src/core/lib/support/time_win32.c
index f7acbd14a6..9e924ab3f4 100644
--- a/src/core/lib/support/time_win32.c
+++ b/src/core/lib/support/time_win32.c
@@ -35,7 +35,7 @@
#include <grpc/support/port_platform.h>
-#ifdef GPR_WIN32
+#ifdef GPR_WIN32_TIME
#include <grpc/support/log.h>
#include <grpc/support/time.h>
@@ -107,4 +107,4 @@ void gpr_sleep_until(gpr_timespec until) {
}
}
-#endif /* GPR_WIN32 */
+#endif /* GPR_WIN32_TIME */
diff --git a/src/core/lib/support/tmpfile_msys.c b/src/core/lib/support/tmpfile_msys.c
new file mode 100644
index 0000000000..2fdc89a64f
--- /dev/null
+++ b/src/core/lib/support/tmpfile_msys.c
@@ -0,0 +1,73 @@
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <grpc/support/port_platform.h>
+
+#ifdef GPR_MSYS_TMPFILE
+
+#include <io.h>
+#include <stdio.h>
+#include <string.h>
+#include <tchar.h>
+
+#include <grpc/support/alloc.h>
+#include <grpc/support/log.h>
+#include <grpc/support/string_util.h>
+
+#include "src/core/lib/support/string_win32.h"
+#include "src/core/lib/support/tmpfile.h"
+
+FILE *gpr_tmpfile(const char *prefix, char **tmp_filename_out) {
+ FILE *result = NULL;
+ char tmp_filename[MAX_PATH];
+ UINT success;
+
+ if (tmp_filename_out != NULL) *tmp_filename_out = NULL;
+
+ /* Generate a unique filename with our template + temporary path. */
+ success = GetTempFileNameA(".", prefix, 0, tmp_filename);
+ fprintf(stderr, "success = %d\n", success);
+
+ if (success) {
+ /* Open a file there. */
+ result = fopen(tmp_filename, "wb+");
+ fprintf(stderr, "result = %p\n", result);
+ }
+ if (result != NULL && tmp_filename_out) {
+ *tmp_filename_out = gpr_strdup(tmp_filename);
+ }
+
+ return result;
+}
+
+#endif /* GPR_MSYS_TMPFILE */
diff --git a/src/core/lib/support/tmpfile_posix.c b/src/core/lib/support/tmpfile_posix.c
index 9e0e7ad808..0cd4bb6fc3 100644
--- a/src/core/lib/support/tmpfile_posix.c
+++ b/src/core/lib/support/tmpfile_posix.c
@@ -33,7 +33,7 @@
#include <grpc/support/port_platform.h>
-#ifdef GPR_POSIX_FILE
+#ifdef GPR_POSIX_TMPFILE
#include "src/core/lib/support/tmpfile.h"
@@ -82,4 +82,4 @@ end:
return result;
}
-#endif /* GPR_POSIX_FILE */
+#endif /* GPR_POSIX_TMPFILE */
diff --git a/src/core/lib/support/tmpfile_win32.c b/src/core/lib/support/tmpfile_win32.c
index 0cb2904f8d..9ac73128c3 100644
--- a/src/core/lib/support/tmpfile_win32.c
+++ b/src/core/lib/support/tmpfile_win32.c
@@ -33,7 +33,7 @@
#include <grpc/support/port_platform.h>
-#ifdef GPR_WIN32
+#ifdef GPR_WIN32_TMPFILE
#include <io.h>
#include <stdio.h>
@@ -81,4 +81,4 @@ end:
return result;
}
-#endif /* GPR_WIN32 */
+#endif /* GPR_WIN32_TMPFILE */
diff --git a/src/core/lib/surface/call.c b/src/core/lib/surface/call.c
index fa12b6ea61..9b2b94eedf 100644
--- a/src/core/lib/surface/call.c
+++ b/src/core/lib/surface/call.c
@@ -373,8 +373,6 @@ static void destroy_call(grpc_exec_ctx *exec_ctx, void *call, bool success) {
if (c->receiving_stream != NULL) {
grpc_byte_stream_destroy(exec_ctx, c->receiving_stream);
}
- grpc_call_stack_destroy(exec_ctx, CALL_STACK_FROM_CALL(c));
- GRPC_CHANNEL_INTERNAL_UNREF(exec_ctx, c->channel, "call");
gpr_mu_destroy(&c->mu);
for (i = 0; i < STATUS_SOURCE_COUNT; i++) {
if (c->status[i].details) {
@@ -392,7 +390,9 @@ static void destroy_call(grpc_exec_ctx *exec_ctx, void *call, bool success) {
if (c->cq) {
GRPC_CQ_INTERNAL_UNREF(c->cq, "bind");
}
- gpr_free(c);
+ grpc_channel *channel = c->channel;
+ grpc_call_stack_destroy(exec_ctx, CALL_STACK_FROM_CALL(c), c);
+ GRPC_CHANNEL_INTERNAL_UNREF(exec_ctx, channel, "call");
GPR_TIMER_END("destroy_call", 0);
}
@@ -1517,3 +1517,39 @@ grpc_compression_algorithm grpc_call_compression_for_level(
gpr_mu_unlock(&call->mu);
return grpc_compression_algorithm_for_level(level, accepted_encodings);
}
+
+const char *grpc_call_error_to_string(grpc_call_error error) {
+ switch (error) {
+ case GRPC_CALL_ERROR:
+ return "GRPC_CALL_ERROR";
+ case GRPC_CALL_ERROR_ALREADY_ACCEPTED:
+ return "GRPC_CALL_ERROR_ALREADY_ACCEPTED";
+ case GRPC_CALL_ERROR_ALREADY_FINISHED:
+ return "GRPC_CALL_ERROR_ALREADY_FINISHED";
+ case GRPC_CALL_ERROR_ALREADY_INVOKED:
+ return "GRPC_CALL_ERROR_ALREADY_INVOKED";
+ case GRPC_CALL_ERROR_BATCH_TOO_BIG:
+ return "GRPC_CALL_ERROR_BATCH_TOO_BIG";
+ case GRPC_CALL_ERROR_INVALID_FLAGS:
+ return "GRPC_CALL_ERROR_INVALID_FLAGS";
+ case GRPC_CALL_ERROR_INVALID_MESSAGE:
+ return "GRPC_CALL_ERROR_INVALID_MESSAGE";
+ case GRPC_CALL_ERROR_INVALID_METADATA:
+ return "GRPC_CALL_ERROR_INVALID_METADATA";
+ case GRPC_CALL_ERROR_NOT_INVOKED:
+ return "GRPC_CALL_ERROR_NOT_INVOKED";
+ case GRPC_CALL_ERROR_NOT_ON_CLIENT:
+ return "GRPC_CALL_ERROR_NOT_ON_CLIENT";
+ case GRPC_CALL_ERROR_NOT_ON_SERVER:
+ return "GRPC_CALL_ERROR_NOT_ON_SERVER";
+ case GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE:
+ return "GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE";
+ case GRPC_CALL_ERROR_PAYLOAD_TYPE_MISMATCH:
+ return "GRPC_CALL_ERROR_PAYLOAD_TYPE_MISMATCH";
+ case GRPC_CALL_ERROR_TOO_MANY_OPERATIONS:
+ return "GRPC_CALL_ERROR_TOO_MANY_OPERATIONS";
+ case GRPC_CALL_OK:
+ return "GRPC_CALL_OK";
+ }
+ GPR_UNREACHABLE_CODE(return "GRPC_CALL_ERROR_UNKNOW");
+}
diff --git a/src/core/lib/surface/completion_queue.c b/src/core/lib/surface/completion_queue.c
index 5ec8808b50..1f82c3bad2 100644
--- a/src/core/lib/surface/completion_queue.c
+++ b/src/core/lib/surface/completion_queue.c
@@ -227,6 +227,10 @@ void grpc_cq_end_op(grpc_exec_ctx *exec_ctx, grpc_completion_queue *cc,
#endif
GPR_TIMER_BEGIN("grpc_cq_end_op", 0);
+ GRPC_API_TRACE(
+ "grpc_cq_end_op(exec_ctx=%p, cc=%p, tag=%p, success=%d, done=%p, "
+ "done_arg=%p, storage=%p)",
+ 7, (exec_ctx, cc, tag, success, done, done_arg, storage));
storage->tag = tag;
storage->done = done;
diff --git a/src/core/lib/surface/init.c b/src/core/lib/surface/init.c
index 03f379aba8..57c6897626 100644
--- a/src/core/lib/surface/init.c
+++ b/src/core/lib/surface/init.c
@@ -164,10 +164,10 @@ void grpc_init(void) {
grpc_register_tracer("channel_stack_builder",
&grpc_trace_channel_stack_builder);
grpc_register_tracer("http1", &grpc_http1_trace);
+ grpc_register_tracer("compression", &grpc_compress_filter_trace);
grpc_security_pre_init();
grpc_iomgr_init();
grpc_executor_init();
- grpc_tracer_init("GRPC_TRACE");
gpr_timers_global_init();
grpc_cq_global_init();
for (i = 0; i < g_number_of_plugins; i++) {
@@ -179,6 +179,7 @@ void grpc_init(void) {
* at the appropriate time */
grpc_register_security_filters();
register_builtin_channel_init();
+ grpc_tracer_init("GRPC_TRACE");
/* no more changes to channel init pipelines */
grpc_channel_init_finalize();
}
diff --git a/src/core/lib/surface/lame_client.c b/src/core/lib/surface/lame_client.c
index 80bd95df68..f50ec54cea 100644
--- a/src/core/lib/surface/lame_client.c
+++ b/src/core/lib/surface/lame_client.c
@@ -107,8 +107,10 @@ static void lame_start_transport_op(grpc_exec_ctx *exec_ctx,
static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_call_element_args *args) {}
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {}
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *and_free_memory) {
+ gpr_free(and_free_memory);
+}
static void init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem,
diff --git a/src/core/lib/surface/server.c b/src/core/lib/surface/server.c
index ad8ee8c7a9..2db95b9cdf 100644
--- a/src/core/lib/surface/server.c
+++ b/src/core/lib/surface/server.c
@@ -820,8 +820,8 @@ static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
server_ref(chand->server);
}
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {
channel_data *chand = elem->channel_data;
call_data *calld = elem->call_data;
diff --git a/src/core/lib/transport/metadata.c b/src/core/lib/transport/metadata.c
index 779efbb97d..5847ec9053 100644
--- a/src/core/lib/transport/metadata.c
+++ b/src/core/lib/transport/metadata.c
@@ -386,10 +386,18 @@ grpc_mdstr *grpc_mdstr_from_buffer(const uint8_t *buf, size_t length) {
for (s = shard->strs[idx]; s; s = s->bucket_next) {
if (s->hash == hash && GPR_SLICE_LENGTH(s->slice) == length &&
0 == memcmp(buf, GPR_SLICE_START_PTR(s->slice), length)) {
- GRPC_MDSTR_REF((grpc_mdstr *)s);
- gpr_mu_unlock(&shard->mu);
- GPR_TIMER_END("grpc_mdstr_from_buffer", 0);
- return (grpc_mdstr *)s;
+ if (gpr_atm_full_fetch_add(&s->refcnt, 1) == 0) {
+ /* If we get here, we've added a ref to something that was about to
+ * die - drop it immediately.
+ * The *only* possible path here (given the shard mutex) should be to
+ * drop from one ref back to zero - assert that with a CAS */
+ GPR_ASSERT(gpr_atm_rel_cas(&s->refcnt, 1, 0));
+ /* and treat this as if we were never here... sshhh */
+ } else {
+ gpr_mu_unlock(&shard->mu);
+ GPR_TIMER_END("grpc_mdstr_from_buffer", 0);
+ return (grpc_mdstr *)s;
+ }
}
}
@@ -397,7 +405,7 @@ grpc_mdstr *grpc_mdstr_from_buffer(const uint8_t *buf, size_t length) {
if (length + 1 < GPR_SLICE_INLINED_SIZE) {
/* string data goes directly into the slice */
s = gpr_malloc(sizeof(internal_string));
- gpr_atm_rel_store(&s->refcnt, 2);
+ gpr_atm_rel_store(&s->refcnt, 1);
s->slice.refcount = NULL;
memcpy(s->slice.data.inlined.bytes, buf, length);
s->slice.data.inlined.bytes[length] = 0;
@@ -406,7 +414,7 @@ grpc_mdstr *grpc_mdstr_from_buffer(const uint8_t *buf, size_t length) {
/* string data goes after the internal_string header, and we +1 for null
terminator */
s = gpr_malloc(sizeof(internal_string) + length + 1);
- gpr_atm_rel_store(&s->refcnt, 2);
+ gpr_atm_rel_store(&s->refcnt, 1);
s->refcount.ref = slice_ref;
s->refcount.unref = slice_unref;
s->slice.refcount = &s->refcount;
@@ -675,20 +683,19 @@ const char *grpc_mdstr_as_c_string(grpc_mdstr *s) {
grpc_mdstr *grpc_mdstr_ref(grpc_mdstr *gs DEBUG_ARGS) {
internal_string *s = (internal_string *)gs;
if (is_mdstr_static(gs)) return gs;
- GPR_ASSERT(gpr_atm_full_fetch_add(&s->refcnt, 1) != 0);
+ GPR_ASSERT(gpr_atm_full_fetch_add(&s->refcnt, 1) > 0);
return gs;
}
void grpc_mdstr_unref(grpc_mdstr *gs DEBUG_ARGS) {
internal_string *s = (internal_string *)gs;
if (is_mdstr_static(gs)) return;
- if (2 == gpr_atm_full_fetch_add(&s->refcnt, -1)) {
+ if (1 == gpr_atm_full_fetch_add(&s->refcnt, -1)) {
strtab_shard *shard =
&g_strtab_shard[SHARD_IDX(s->hash, LOG2_STRTAB_SHARD_COUNT)];
gpr_mu_lock(&shard->mu);
- if (1 == gpr_atm_no_barrier_load(&s->refcnt)) {
- internal_destroy_string(shard, s);
- }
+ GPR_ASSERT(0 == gpr_atm_no_barrier_load(&s->refcnt));
+ internal_destroy_string(shard, s);
gpr_mu_unlock(&shard->mu);
}
}
diff --git a/src/core/lib/transport/transport.c b/src/core/lib/transport/transport.c
index 53c634adca..e6d524abe6 100644
--- a/src/core/lib/transport/transport.c
+++ b/src/core/lib/transport/transport.c
@@ -133,8 +133,9 @@ void grpc_transport_set_pollset(grpc_exec_ctx *exec_ctx,
void grpc_transport_destroy_stream(grpc_exec_ctx *exec_ctx,
grpc_transport *transport,
- grpc_stream *stream) {
- transport->vtable->destroy_stream(exec_ctx, transport, stream);
+ grpc_stream *stream, void *and_free_memory) {
+ transport->vtable->destroy_stream(exec_ctx, transport, stream,
+ and_free_memory);
}
char *grpc_transport_get_peer(grpc_exec_ctx *exec_ctx,
diff --git a/src/core/lib/transport/transport.h b/src/core/lib/transport/transport.h
index 1eb446312b..482a9d1791 100644
--- a/src/core/lib/transport/transport.h
+++ b/src/core/lib/transport/transport.h
@@ -98,6 +98,11 @@ void grpc_transport_move_stats(grpc_transport_stream_stats *from,
/* Transport stream op: a set of operations to perform on a transport
against a single stream */
typedef struct grpc_transport_stream_op {
+ /** Should be enqueued when all requested operations (excluding recv_message
+ and recv_initial_metadata which have their own closures) in a given batch
+ have been completed. */
+ grpc_closure *on_complete;
+
/** Send initial metadata to the peer, from the provided metadata batch.
idempotent_request MUST be set if this is non-null */
grpc_metadata_batch *send_initial_metadata;
@@ -129,11 +134,6 @@ typedef struct grpc_transport_stream_op {
/** Collect any stats into provided buffer, zero internal stat counters */
grpc_transport_stream_stats *collect_stats;
- /** Should be enqueued when all requested operations (excluding recv_message
- and recv_initial_metadata which have their own closures) in a given batch
- have been completed. */
- grpc_closure *on_complete;
-
/** If != GRPC_STATUS_OK, cancel this stream */
grpc_status_code cancel_with_status;
@@ -213,7 +213,7 @@ void grpc_transport_set_pollset(grpc_exec_ctx *exec_ctx,
caller, but any child memory must be cleaned up) */
void grpc_transport_destroy_stream(grpc_exec_ctx *exec_ctx,
grpc_transport *transport,
- grpc_stream *stream);
+ grpc_stream *stream, void *and_free_memory);
void grpc_transport_stream_op_finish_with_failure(grpc_exec_ctx *exec_ctx,
grpc_transport_stream_op *op);
diff --git a/src/core/lib/transport/transport_impl.h b/src/core/lib/transport/transport_impl.h
index 2ff67073af..956155eec8 100644
--- a/src/core/lib/transport/transport_impl.h
+++ b/src/core/lib/transport/transport_impl.h
@@ -63,7 +63,7 @@ typedef struct grpc_transport_vtable {
/* implementation of grpc_transport_destroy_stream */
void (*destroy_stream)(grpc_exec_ctx *exec_ctx, grpc_transport *self,
- grpc_stream *stream);
+ grpc_stream *stream, void *and_free_memory);
/* implementation of grpc_transport_destroy */
void (*destroy)(grpc_exec_ctx *exec_ctx, grpc_transport *self);
diff --git a/src/csharp/Grpc.Core.Tests/CallOptionsTest.cs b/src/csharp/Grpc.Core.Tests/CallOptionsTest.cs
index a3a613be74..99a2d47e6e 100644
--- a/src/csharp/Grpc.Core.Tests/CallOptionsTest.cs
+++ b/src/csharp/Grpc.Core.Tests/CallOptionsTest.cs
@@ -54,10 +54,20 @@ namespace Grpc.Core.Tests
var deadline = DateTime.UtcNow;
Assert.AreEqual(deadline, options.WithDeadline(deadline).Deadline.Value);
- var token = new CancellationTokenSource().Token;
- Assert.AreEqual(token, options.WithCancellationToken(token).CancellationToken);
+ var cancellationToken = new CancellationTokenSource().Token;
+ Assert.AreEqual(cancellationToken, options.WithCancellationToken(cancellationToken).CancellationToken);
+
+ var writeOptions = new WriteOptions();
+ Assert.AreSame(writeOptions, options.WithWriteOptions(writeOptions).WriteOptions);
+
+ var propagationToken = new ContextPropagationToken(CallSafeHandle.NullInstance, DateTime.UtcNow,
+ CancellationToken.None, ContextPropagationOptions.Default);
+ Assert.AreSame(propagationToken, options.WithPropagationToken(propagationToken).PropagationToken);
+
+ var credentials = new FakeCallCredentials();
+ Assert.AreSame(credentials, options.WithCredentials(credentials).Credentials);
- // Change original instance is unchanged.
+ // Check that the original instance is unchanged.
Assert.IsNull(options.Headers);
Assert.IsNull(options.Deadline);
Assert.AreEqual(CancellationToken.None, options.CancellationToken);
diff --git a/src/csharp/Grpc.Core.Tests/Internal/AsyncCallTest.cs b/src/csharp/Grpc.Core.Tests/Internal/AsyncCallTest.cs
index 60530d3250..a678e4dafe 100644
--- a/src/csharp/Grpc.Core.Tests/Internal/AsyncCallTest.cs
+++ b/src/csharp/Grpc.Core.Tests/Internal/AsyncCallTest.cs
@@ -64,28 +64,115 @@ namespace Grpc.Core.Internal.Tests
}
[Test]
- public void AsyncUnary_CompletionSuccess()
+ public void AsyncUnary_CanBeStartedOnlyOnce()
+ {
+ asyncCall.UnaryCallAsync("request1");
+ Assert.Throws(typeof(InvalidOperationException),
+ () => asyncCall.UnaryCallAsync("abc"));
+ }
+
+ [Test]
+ public void AsyncUnary_StreamingOperationsNotAllowed()
+ {
+ asyncCall.UnaryCallAsync("request1");
+ Assert.Throws(typeof(InvalidOperationException),
+ () => asyncCall.StartReadMessage((x,y) => {}));
+ Assert.Throws(typeof(InvalidOperationException),
+ () => asyncCall.StartSendMessage("abc", new WriteFlags(), (x,y) => {}));
+ }
+
+ [Test]
+ public void AsyncUnary_Success()
+ {
+ var resultTask = asyncCall.UnaryCallAsync("request1");
+ fakeCall.UnaryResponseClientHandler(true,
+ new ClientSideStatus(Status.DefaultSuccess, new Metadata()),
+ CreateResponsePayload(),
+ new Metadata());
+
+ AssertUnaryResponseSuccess(asyncCall, fakeCall, resultTask);
+ }
+
+ [Test]
+ public void AsyncUnary_NonSuccessStatusCode()
+ {
+ var resultTask = asyncCall.UnaryCallAsync("request1");
+ fakeCall.UnaryResponseClientHandler(true,
+ CreateClientSideStatus(StatusCode.InvalidArgument),
+ CreateResponsePayload(),
+ new Metadata());
+
+ AssertUnaryResponseError(asyncCall, fakeCall, resultTask, StatusCode.InvalidArgument);
+ }
+
+ [Test]
+ public void AsyncUnary_NullResponsePayload()
+ {
+ var resultTask = asyncCall.UnaryCallAsync("request1");
+ fakeCall.UnaryResponseClientHandler(true,
+ new ClientSideStatus(Status.DefaultSuccess, new Metadata()),
+ null,
+ new Metadata());
+
+ // failure to deserialize will result in InvalidArgument status.
+ AssertUnaryResponseError(asyncCall, fakeCall, resultTask, StatusCode.Internal);
+ }
+
+ [Test]
+ public void ClientStreaming_NoRequest_Success()
+ {
+ var resultTask = asyncCall.ClientStreamingCallAsync();
+ fakeCall.UnaryResponseClientHandler(true,
+ new ClientSideStatus(Status.DefaultSuccess, new Metadata()),
+ CreateResponsePayload(),
+ new Metadata());
+
+ AssertUnaryResponseSuccess(asyncCall, fakeCall, resultTask);
+ }
+
+ [Test]
+ public void ClientStreaming_NoRequest_NonSuccessStatusCode()
+ {
+ var resultTask = asyncCall.ClientStreamingCallAsync();
+ fakeCall.UnaryResponseClientHandler(true,
+ CreateClientSideStatus(StatusCode.InvalidArgument),
+ CreateResponsePayload(),
+ new Metadata());
+
+ AssertUnaryResponseError(asyncCall, fakeCall, resultTask, StatusCode.InvalidArgument);
+ }
+
+ ClientSideStatus CreateClientSideStatus(StatusCode statusCode)
+ {
+ return new ClientSideStatus(new Status(statusCode, ""), new Metadata());
+ }
+
+ byte[] CreateResponsePayload()
+ {
+ return Marshallers.StringMarshaller.Serializer("response1");
+ }
+
+ static void AssertUnaryResponseSuccess(AsyncCall<string, string> asyncCall, FakeNativeCall fakeCall, Task<string> resultTask)
{
- var resultTask = asyncCall.UnaryCallAsync("abc");
- fakeCall.UnaryResponseClientHandler(true, new ClientSideStatus(Status.DefaultSuccess, new Metadata()), new byte[] { 1, 2, 3 }, new Metadata());
Assert.IsTrue(resultTask.IsCompleted);
Assert.IsTrue(fakeCall.IsDisposed);
+
Assert.AreEqual(Status.DefaultSuccess, asyncCall.GetStatus());
+ Assert.AreEqual(0, asyncCall.ResponseHeadersAsync.Result.Count);
+ Assert.AreEqual(0, asyncCall.GetTrailers().Count);
+ Assert.AreEqual("response1", resultTask.Result);
}
- [Test]
- public void AsyncUnary_CompletionFailure()
+ static void AssertUnaryResponseError(AsyncCall<string, string> asyncCall, FakeNativeCall fakeCall, Task<string> resultTask, StatusCode expectedStatusCode)
{
- var resultTask = asyncCall.UnaryCallAsync("abc");
- fakeCall.UnaryResponseClientHandler(false, new ClientSideStatus(new Status(StatusCode.Internal, ""), null), new byte[] { 1, 2, 3 }, new Metadata());
-
Assert.IsTrue(resultTask.IsCompleted);
Assert.IsTrue(fakeCall.IsDisposed);
- Assert.AreEqual(StatusCode.Internal, asyncCall.GetStatus().StatusCode);
- Assert.IsNull(asyncCall.GetTrailers());
+ Assert.AreEqual(expectedStatusCode, asyncCall.GetStatus().StatusCode);
var ex = Assert.ThrowsAsync<RpcException>(async () => await resultTask);
- Assert.AreEqual(StatusCode.Internal, ex.Status.StatusCode);
+ Assert.AreEqual(expectedStatusCode, ex.Status.StatusCode);
+ Assert.AreEqual(0, asyncCall.ResponseHeadersAsync.Result.Count);
+ Assert.AreEqual(0, asyncCall.GetTrailers().Count);
}
internal class FakeNativeCall : INativeCall
diff --git a/src/csharp/Grpc.Core/CallOptions.cs b/src/csharp/Grpc.Core/CallOptions.cs
index caf8210d91..9ca88849ee 100644
--- a/src/csharp/Grpc.Core/CallOptions.cs
+++ b/src/csharp/Grpc.Core/CallOptions.cs
@@ -100,10 +100,7 @@ namespace Grpc.Core
/// </summary>
public WriteOptions WriteOptions
{
- get
- {
- return this.writeOptions;
- }
+ get { return this.writeOptions; }
}
/// <summary>
@@ -111,10 +108,7 @@ namespace Grpc.Core
/// </summary>
public ContextPropagationToken PropagationToken
{
- get
- {
- return this.propagationToken;
- }
+ get { return this.propagationToken; }
}
/// <summary>
@@ -122,10 +116,7 @@ namespace Grpc.Core
/// </summary>
public CallCredentials Credentials
{
- get
- {
- return this.credentials;
- }
+ get { return this.credentials; }
}
/// <summary>
@@ -165,6 +156,42 @@ namespace Grpc.Core
}
/// <summary>
+ /// Returns new instance of <see cref="CallOptions"/> with
+ /// <c>WriteOptions</c> set to the value provided. Values of all other fields are preserved.
+ /// </summary>
+ /// <param name="writeOptions">The write options.</param>
+ public CallOptions WithWriteOptions(WriteOptions writeOptions)
+ {
+ var newOptions = this;
+ newOptions.writeOptions = writeOptions;
+ return newOptions;
+ }
+
+ /// <summary>
+ /// Returns new instance of <see cref="CallOptions"/> with
+ /// <c>PropagationToken</c> set to the value provided. Values of all other fields are preserved.
+ /// </summary>
+ /// <param name="propagationToken">The context propagation token.</param>
+ public CallOptions WithPropagationToken(ContextPropagationToken propagationToken)
+ {
+ var newOptions = this;
+ newOptions.propagationToken = propagationToken;
+ return newOptions;
+ }
+
+ /// <summary>
+ /// Returns new instance of <see cref="CallOptions"/> with
+ /// <c>Credentials</c> set to the value provided. Values of all other fields are preserved.
+ /// </summary>
+ /// <param name="credentials">The call credentials.</param>
+ public CallOptions WithCredentials(CallCredentials credentials)
+ {
+ var newOptions = this;
+ newOptions.credentials = credentials;
+ return newOptions;
+ }
+
+ /// <summary>
/// Returns a new instance of <see cref="CallOptions"/> with
/// all previously unset values set to their defaults and deadline and cancellation
/// token propagated when appropriate.
diff --git a/src/csharp/Grpc.Core/Internal/AsyncCall.cs b/src/csharp/Grpc.Core/Internal/AsyncCall.cs
index 016e1b8587..50ba617cdb 100644
--- a/src/csharp/Grpc.Core/Internal/AsyncCall.cs
+++ b/src/csharp/Grpc.Core/Internal/AsyncCall.cs
@@ -409,10 +409,13 @@ namespace Grpc.Core.Internal
/// </summary>
private void HandleUnaryResponse(bool success, ClientSideStatus receivedStatus, byte[] receivedMessage, Metadata responseHeaders)
{
+ // NOTE: because this event is a result of batch containing GRPC_OP_RECV_STATUS_ON_CLIENT,
+ // success will be always set to true.
+
using (Profilers.ForCurrentThread().NewScope("AsyncCall.HandleUnaryResponse"))
{
TResponse msg = default(TResponse);
- var deserializeException = success ? TryDeserialize(receivedMessage, out msg) : null;
+ var deserializeException = TryDeserialize(receivedMessage, out msg);
lock (myLock)
{
@@ -425,14 +428,13 @@ namespace Grpc.Core.Internal
finishedStatus = receivedStatus;
ReleaseResourcesIfPossible();
-
}
responseHeadersTcs.SetResult(responseHeaders);
var status = receivedStatus.Status;
- if (!success || status.StatusCode != StatusCode.OK)
+ if (status.StatusCode != StatusCode.OK)
{
unaryResponseTcs.SetException(new RpcException(status));
return;
@@ -447,6 +449,9 @@ namespace Grpc.Core.Internal
/// </summary>
private void HandleFinished(bool success, ClientSideStatus receivedStatus)
{
+ // NOTE: because this event is a result of batch containing GRPC_OP_RECV_STATUS_ON_CLIENT,
+ // success will be always set to true.
+
lock (myLock)
{
finished = true;
@@ -457,7 +462,7 @@ namespace Grpc.Core.Internal
var status = receivedStatus.Status;
- if (!success || status.StatusCode != StatusCode.OK)
+ if (status.StatusCode != StatusCode.OK)
{
streamingCallFinishedTcs.SetException(new RpcException(status));
return;
diff --git a/src/csharp/Grpc.Core/Version.cs b/src/csharp/Grpc.Core/Version.cs
index 8a26bd8362..f5c44fd098 100644
--- a/src/csharp/Grpc.Core/Version.cs
+++ b/src/csharp/Grpc.Core/Version.cs
@@ -33,5 +33,6 @@
using System.Reflection;
-// The current version of gRPC C#.
[assembly: AssemblyVersion(Grpc.Core.VersionInfo.CurrentAssemblyVersion)]
+[assembly: AssemblyFileVersion(Grpc.Core.VersionInfo.CurrentAssemblyFileVersion)]
+[assembly: AssemblyInformationalVersion(Grpc.Core.VersionInfo.CurrentVersion)]
diff --git a/src/csharp/Grpc.Core/VersionInfo.cs b/src/csharp/Grpc.Core/VersionInfo.cs
index 9014a13f40..f7a9cb9c1c 100644
--- a/src/csharp/Grpc.Core/VersionInfo.cs
+++ b/src/csharp/Grpc.Core/VersionInfo.cs
@@ -35,13 +35,20 @@ namespace Grpc.Core
{
/// <summary>
/// Provides info about current version of gRPC.
+ /// See https://codingforsmarties.wordpress.com/2016/01/21/how-to-version-assemblies-destined-for-nuget/
+ /// for rationale about assembly versioning.
/// </summary>
public static class VersionInfo
{
/// <summary>
- /// Current version of gRPC C# assemblies
+ /// Current <c>AssemblyVersion</c> attribute of gRPC C# assemblies
/// </summary>
- public const string CurrentAssemblyVersion = "0.14.0.0";
+ public const string CurrentAssemblyVersion = "1.0.0.0";
+
+ /// <summary>
+ /// Current <c>AssemblyFileVersion</c> of gRPC C# assemblies
+ /// </summary>
+ public const string CurrentAssemblyFileVersion = "0.14.0.0";
/// <summary>
/// Current version of gRPC C#
diff --git a/src/csharp/Grpc.Examples/MathGrpc.cs b/src/csharp/Grpc.Examples/MathGrpc.cs
index f3bb0d1cdc..2d3034d28b 100644
--- a/src/csharp/Grpc.Examples/MathGrpc.cs
+++ b/src/csharp/Grpc.Examples/MathGrpc.cs
@@ -1,5 +1,35 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: math.proto
+// Original file comments:
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
#region Designer generated code
using System;
@@ -45,56 +75,140 @@ namespace Math {
__Marshaller_Num,
__Marshaller_Num);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Math.MathReflection.Descriptor.Services[0]; }
}
- // client interface
+ /// <summary>Client for Math</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface IMathClient
{
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
global::Math.DivReply Div(global::Math.DivArgs request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
global::Math.DivReply Div(global::Math.DivArgs request, CallOptions options);
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
AsyncUnaryCall<global::Math.DivReply> DivAsync(global::Math.DivArgs request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
AsyncUnaryCall<global::Math.DivReply> DivAsync(global::Math.DivArgs request, CallOptions options);
+ /// <summary>
+ /// DivMany accepts an arbitrary number of division args from the client stream
+ /// and sends back the results in the reply stream. The stream continues until
+ /// the client closes its end; the server does the same after sending all the
+ /// replies. The stream ends immediately if either end aborts.
+ /// </summary>
AsyncDuplexStreamingCall<global::Math.DivArgs, global::Math.DivReply> DivMany(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// DivMany accepts an arbitrary number of division args from the client stream
+ /// and sends back the results in the reply stream. The stream continues until
+ /// the client closes its end; the server does the same after sending all the
+ /// replies. The stream ends immediately if either end aborts.
+ /// </summary>
AsyncDuplexStreamingCall<global::Math.DivArgs, global::Math.DivReply> DivMany(CallOptions options);
+ /// <summary>
+ /// Fib generates numbers in the Fibonacci sequence. If args.limit > 0, Fib
+ /// generates up to limit numbers; otherwise it continues until the call is
+ /// canceled. Unlike Fib above, Fib has no final FibReply.
+ /// </summary>
AsyncServerStreamingCall<global::Math.Num> Fib(global::Math.FibArgs request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Fib generates numbers in the Fibonacci sequence. If args.limit > 0, Fib
+ /// generates up to limit numbers; otherwise it continues until the call is
+ /// canceled. Unlike Fib above, Fib has no final FibReply.
+ /// </summary>
AsyncServerStreamingCall<global::Math.Num> Fib(global::Math.FibArgs request, CallOptions options);
+ /// <summary>
+ /// Sum sums a stream of numbers, returning the final result once the stream
+ /// is closed.
+ /// </summary>
AsyncClientStreamingCall<global::Math.Num, global::Math.Num> Sum(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Sum sums a stream of numbers, returning the final result once the stream
+ /// is closed.
+ /// </summary>
AsyncClientStreamingCall<global::Math.Num, global::Math.Num> Sum(CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of Math</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface IMath
{
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
Task<global::Math.DivReply> Div(global::Math.DivArgs request, ServerCallContext context);
+ /// <summary>
+ /// DivMany accepts an arbitrary number of division args from the client stream
+ /// and sends back the results in the reply stream. The stream continues until
+ /// the client closes its end; the server does the same after sending all the
+ /// replies. The stream ends immediately if either end aborts.
+ /// </summary>
Task DivMany(IAsyncStreamReader<global::Math.DivArgs> requestStream, IServerStreamWriter<global::Math.DivReply> responseStream, ServerCallContext context);
+ /// <summary>
+ /// Fib generates numbers in the Fibonacci sequence. If args.limit > 0, Fib
+ /// generates up to limit numbers; otherwise it continues until the call is
+ /// canceled. Unlike Fib above, Fib has no final FibReply.
+ /// </summary>
Task Fib(global::Math.FibArgs request, IServerStreamWriter<global::Math.Num> responseStream, ServerCallContext context);
+ /// <summary>
+ /// Sum sums a stream of numbers, returning the final result once the stream
+ /// is closed.
+ /// </summary>
Task<global::Math.Num> Sum(IAsyncStreamReader<global::Math.Num> requestStream, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of Math</summary>
public abstract class MathBase
{
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
public virtual Task<global::Math.DivReply> Div(global::Math.DivArgs request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// DivMany accepts an arbitrary number of division args from the client stream
+ /// and sends back the results in the reply stream. The stream continues until
+ /// the client closes its end; the server does the same after sending all the
+ /// replies. The stream ends immediately if either end aborts.
+ /// </summary>
public virtual Task DivMany(IAsyncStreamReader<global::Math.DivArgs> requestStream, IServerStreamWriter<global::Math.DivReply> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// Fib generates numbers in the Fibonacci sequence. If args.limit > 0, Fib
+ /// generates up to limit numbers; otherwise it continues until the call is
+ /// canceled. Unlike Fib above, Fib has no final FibReply.
+ /// </summary>
public virtual Task Fib(global::Math.FibArgs request, IServerStreamWriter<global::Math.Num> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// Sum sums a stream of numbers, returning the final result once the stream
+ /// is closed.
+ /// </summary>
public virtual Task<global::Math.Num> Sum(IAsyncStreamReader<global::Math.Num> requestStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
@@ -102,8 +216,10 @@ namespace Math {
}
- // client stub
+ /// <summary>Client for Math</summary>
+ #pragma warning disable 0618
public class MathClient : ClientBase<MathClient>, IMathClient
+ #pragma warning restore 0618
{
public MathClient(Channel channel) : base(channel)
{
@@ -120,42 +236,88 @@ namespace Math {
{
}
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
public virtual global::Math.DivReply Div(global::Math.DivArgs request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return Div(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
public virtual global::Math.DivReply Div(global::Math.DivArgs request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_Div, null, options, request);
}
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
public virtual AsyncUnaryCall<global::Math.DivReply> DivAsync(global::Math.DivArgs request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return DivAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Div divides args.dividend by args.divisor and returns the quotient and
+ /// remainder.
+ /// </summary>
public virtual AsyncUnaryCall<global::Math.DivReply> DivAsync(global::Math.DivArgs request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_Div, null, options, request);
}
+ /// <summary>
+ /// DivMany accepts an arbitrary number of division args from the client stream
+ /// and sends back the results in the reply stream. The stream continues until
+ /// the client closes its end; the server does the same after sending all the
+ /// replies. The stream ends immediately if either end aborts.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Math.DivArgs, global::Math.DivReply> DivMany(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return DivMany(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// DivMany accepts an arbitrary number of division args from the client stream
+ /// and sends back the results in the reply stream. The stream continues until
+ /// the client closes its end; the server does the same after sending all the
+ /// replies. The stream ends immediately if either end aborts.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Math.DivArgs, global::Math.DivReply> DivMany(CallOptions options)
{
return CallInvoker.AsyncDuplexStreamingCall(__Method_DivMany, null, options);
}
+ /// <summary>
+ /// Fib generates numbers in the Fibonacci sequence. If args.limit > 0, Fib
+ /// generates up to limit numbers; otherwise it continues until the call is
+ /// canceled. Unlike Fib above, Fib has no final FibReply.
+ /// </summary>
public virtual AsyncServerStreamingCall<global::Math.Num> Fib(global::Math.FibArgs request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return Fib(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Fib generates numbers in the Fibonacci sequence. If args.limit > 0, Fib
+ /// generates up to limit numbers; otherwise it continues until the call is
+ /// canceled. Unlike Fib above, Fib has no final FibReply.
+ /// </summary>
public virtual AsyncServerStreamingCall<global::Math.Num> Fib(global::Math.FibArgs request, CallOptions options)
{
return CallInvoker.AsyncServerStreamingCall(__Method_Fib, null, options, request);
}
+ /// <summary>
+ /// Sum sums a stream of numbers, returning the final result once the stream
+ /// is closed.
+ /// </summary>
public virtual AsyncClientStreamingCall<global::Math.Num, global::Math.Num> Sum(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return Sum(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Sum sums a stream of numbers, returning the final result once the stream
+ /// is closed.
+ /// </summary>
public virtual AsyncClientStreamingCall<global::Math.Num, global::Math.Num> Sum(CallOptions options)
{
return CallInvoker.AsyncClientStreamingCall(__Method_Sum, null, options);
@@ -166,8 +328,16 @@ namespace Math {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for Math</summary>
+ public static MathClient NewClient(Channel channel)
+ {
+ return new MathClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(IMath serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_Div, serviceImpl.Div)
@@ -176,8 +346,10 @@ namespace Math {
.AddMethod(__Method_Sum, serviceImpl.Sum).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(MathBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_Div, serviceImpl.Div)
@@ -186,12 +358,6 @@ namespace Math {
.AddMethod(__Method_Sum, serviceImpl.Sum).Build();
}
- // creates a new client
- public static MathClient NewClient(Channel channel)
- {
- return new MathClient(channel);
- }
-
}
}
#endregion
diff --git a/src/csharp/Grpc.HealthCheck/HealthGrpc.cs b/src/csharp/Grpc.HealthCheck/HealthGrpc.cs
index 72e11cca3a..967d1170be 100644
--- a/src/csharp/Grpc.HealthCheck/HealthGrpc.cs
+++ b/src/csharp/Grpc.HealthCheck/HealthGrpc.cs
@@ -1,5 +1,35 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: health.proto
+// Original file comments:
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
#region Designer generated code
using System;
@@ -22,13 +52,13 @@ namespace Grpc.Health.V1 {
__Marshaller_HealthCheckRequest,
__Marshaller_HealthCheckResponse);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Grpc.Health.V1.HealthReflection.Descriptor.Services[0]; }
}
- // client interface
+ /// <summary>Client for Health</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface IHealthClient
{
@@ -38,14 +68,14 @@ namespace Grpc.Health.V1 {
AsyncUnaryCall<global::Grpc.Health.V1.HealthCheckResponse> CheckAsync(global::Grpc.Health.V1.HealthCheckRequest request, CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of Health</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface IHealth
{
Task<global::Grpc.Health.V1.HealthCheckResponse> Check(global::Grpc.Health.V1.HealthCheckRequest request, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of Health</summary>
public abstract class HealthBase
{
public virtual Task<global::Grpc.Health.V1.HealthCheckResponse> Check(global::Grpc.Health.V1.HealthCheckRequest request, ServerCallContext context)
@@ -55,8 +85,10 @@ namespace Grpc.Health.V1 {
}
- // client stub
+ /// <summary>Client for Health</summary>
+ #pragma warning disable 0618
public class HealthClient : ClientBase<HealthClient>, IHealthClient
+ #pragma warning restore 0618
{
public HealthClient(Channel channel) : base(channel)
{
@@ -95,26 +127,30 @@ namespace Grpc.Health.V1 {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for Health</summary>
+ public static HealthClient NewClient(Channel channel)
+ {
+ return new HealthClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(IHealth serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_Check, serviceImpl.Check).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(HealthBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_Check, serviceImpl.Check).Build();
}
- // creates a new client
- public static HealthClient NewClient(Channel channel)
- {
- return new HealthClient(channel);
- }
-
}
}
#endregion
diff --git a/src/csharp/Grpc.IntegrationTesting.StressClient/.gitignore b/src/csharp/Grpc.IntegrationTesting.StressClient/.gitignore
new file mode 100644
index 0000000000..a382af2294
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting.StressClient/.gitignore
@@ -0,0 +1,3 @@
+bin
+obj
+
diff --git a/src/csharp/Grpc.IntegrationTesting.StressClient/Grpc.IntegrationTesting.StressClient.csproj b/src/csharp/Grpc.IntegrationTesting.StressClient/Grpc.IntegrationTesting.StressClient.csproj
new file mode 100644
index 0000000000..d6eba74289
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting.StressClient/Grpc.IntegrationTesting.StressClient.csproj
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProjectGuid>{ADEBA147-80AE-4710-82E9-5B7F93690266}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <RootNamespace>Grpc.IntegrationTesting.StressClient</RootNamespace>
+ <AssemblyName>Grpc.IntegrationTesting.StressClient</AssemblyName>
+ <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG;</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <PlatformTarget>AnyCPU</PlatformTarget>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <PlatformTarget>AnyCPU</PlatformTarget>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'ReleaseSigned|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\ReleaseSigned</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <SignAssembly>True</SignAssembly>
+ <AssemblyOriginatorKeyFile>..\keys\Grpc.snk</AssemblyOriginatorKeyFile>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="..\Grpc.Core\Version.cs">
+ <Link>Version.cs</Link>
+ </Compile>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <ItemGroup>
+ <ProjectReference Include="..\Grpc.Core\Grpc.Core.csproj">
+ <Project>{CCC4440E-49F7-4790-B0AF-FEABB0837AE7}</Project>
+ <Name>Grpc.Core</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\Grpc.IntegrationTesting\Grpc.IntegrationTesting.csproj">
+ <Project>{C61154BA-DD4A-4838-8420-0162A28925E0}</Project>
+ <Name>Grpc.IntegrationTesting</Name>
+ </ProjectReference>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/src/python/grpcio/tests/interop/empty.proto b/src/csharp/Grpc.IntegrationTesting.StressClient/Program.cs
index 6d0eb937d6..dffdf22fa5 100644
--- a/src/python/grpcio/tests/interop/empty.proto
+++ b/src/csharp/Grpc.IntegrationTesting.StressClient/Program.cs
@@ -1,5 +1,6 @@
+#region Copyright notice and license
-// Copyright 2015, Google Inc.
+// Copyright 2016, Google Inc.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
@@ -28,16 +29,17 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-syntax = "proto3";
+#endregion
-package grpc.testing;
+using System;
-// An empty message that you can re-use to avoid defining duplicated empty
-// messages in your project. A typical example is to use it as argument or the
-// return value of a service API. For instance:
-//
-// service Foo {
-// rpc Bar (grpc.testing.Empty) returns (grpc.testing.Empty) { };
-// };
-//
-message Empty {}
+namespace Grpc.IntegrationTesting.StressClient
+{
+ class MainClass
+ {
+ public static void Main(string[] args)
+ {
+ StressTestClient.Run(args);
+ }
+ }
+}
diff --git a/src/csharp/Grpc.IntegrationTesting.StressClient/Properties/AssemblyInfo.cs b/src/csharp/Grpc.IntegrationTesting.StressClient/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000000..e845bbfb9e
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting.StressClient/Properties/AssemblyInfo.cs
@@ -0,0 +1,11 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+[assembly: AssemblyTitle("Grpc.IntegrationTesting.StressClient")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("Google Inc. All rights reserved.")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
diff --git a/src/csharp/Grpc.IntegrationTesting/Control.cs b/src/csharp/Grpc.IntegrationTesting/Control.cs
index 003d2428fa..3fa8d43f38 100644
--- a/src/csharp/Grpc.IntegrationTesting/Control.cs
+++ b/src/csharp/Grpc.IntegrationTesting/Control.cs
@@ -31,7 +31,7 @@ namespace Grpc.Testing {
"cnBjLnRlc3RpbmcuQ2xvc2VkTG9vcFBhcmFtc0gAEi4KB3BvaXNzb24YAiAB",
"KAsyGy5ncnBjLnRlc3RpbmcuUG9pc3NvblBhcmFtc0gAQgYKBGxvYWQiQwoO",
"U2VjdXJpdHlQYXJhbXMSEwoLdXNlX3Rlc3RfY2EYASABKAgSHAoUc2VydmVy",
- "X2hvc3Rfb3ZlcnJpZGUYAiABKAki1gMKDENsaWVudENvbmZpZxIWCg5zZXJ2",
+ "X2hvc3Rfb3ZlcnJpZGUYAiABKAki8AMKDENsaWVudENvbmZpZxIWCg5zZXJ2",
"ZXJfdGFyZ2V0cxgBIAMoCRItCgtjbGllbnRfdHlwZRgCIAEoDjIYLmdycGMu",
"dGVzdGluZy5DbGllbnRUeXBlEjUKD3NlY3VyaXR5X3BhcmFtcxgDIAEoCzIc",
"LmdycGMudGVzdGluZy5TZWN1cml0eVBhcmFtcxIkChxvdXRzdGFuZGluZ19y",
@@ -41,46 +41,48 @@ namespace Grpc.Testing {
"ASgLMhguZ3JwYy50ZXN0aW5nLkxvYWRQYXJhbXMSMwoOcGF5bG9hZF9jb25m",
"aWcYCyABKAsyGy5ncnBjLnRlc3RpbmcuUGF5bG9hZENvbmZpZxI3ChBoaXN0",
"b2dyYW1fcGFyYW1zGAwgASgLMh0uZ3JwYy50ZXN0aW5nLkhpc3RvZ3JhbVBh",
- "cmFtcxIRCgljb3JlX2xpc3QYDSADKAUSEgoKY29yZV9saW1pdBgOIAEoBSI4",
- "CgxDbGllbnRTdGF0dXMSKAoFc3RhdHMYASABKAsyGS5ncnBjLnRlc3Rpbmcu",
- "Q2xpZW50U3RhdHMiFQoETWFyaxINCgVyZXNldBgBIAEoCCJoCgpDbGllbnRB",
- "cmdzEisKBXNldHVwGAEgASgLMhouZ3JwYy50ZXN0aW5nLkNsaWVudENvbmZp",
- "Z0gAEiIKBG1hcmsYAiABKAsyEi5ncnBjLnRlc3RpbmcuTWFya0gAQgkKB2Fy",
- "Z3R5cGUi/AEKDFNlcnZlckNvbmZpZxItCgtzZXJ2ZXJfdHlwZRgBIAEoDjIY",
- "LmdycGMudGVzdGluZy5TZXJ2ZXJUeXBlEjUKD3NlY3VyaXR5X3BhcmFtcxgC",
- "IAEoCzIcLmdycGMudGVzdGluZy5TZWN1cml0eVBhcmFtcxIMCgRwb3J0GAQg",
- "ASgFEhwKFGFzeW5jX3NlcnZlcl90aHJlYWRzGAcgASgFEhIKCmNvcmVfbGlt",
- "aXQYCCABKAUSMwoOcGF5bG9hZF9jb25maWcYCSABKAsyGy5ncnBjLnRlc3Rp",
- "bmcuUGF5bG9hZENvbmZpZxIRCgljb3JlX2xpc3QYCiADKAUiaAoKU2VydmVy",
- "QXJncxIrCgVzZXR1cBgBIAEoCzIaLmdycGMudGVzdGluZy5TZXJ2ZXJDb25m",
- "aWdIABIiCgRtYXJrGAIgASgLMhIuZ3JwYy50ZXN0aW5nLk1hcmtIAEIJCgdh",
- "cmd0eXBlIlUKDFNlcnZlclN0YXR1cxIoCgVzdGF0cxgBIAEoCzIZLmdycGMu",
- "dGVzdGluZy5TZXJ2ZXJTdGF0cxIMCgRwb3J0GAIgASgFEg0KBWNvcmVzGAMg",
- "ASgFIg0KC0NvcmVSZXF1ZXN0Ih0KDENvcmVSZXNwb25zZRINCgVjb3JlcxgB",
- "IAEoBSIGCgRWb2lkIv0BCghTY2VuYXJpbxIMCgRuYW1lGAEgASgJEjEKDWNs",
- "aWVudF9jb25maWcYAiABKAsyGi5ncnBjLnRlc3RpbmcuQ2xpZW50Q29uZmln",
- "EhMKC251bV9jbGllbnRzGAMgASgFEjEKDXNlcnZlcl9jb25maWcYBCABKAsy",
- "Gi5ncnBjLnRlc3RpbmcuU2VydmVyQ29uZmlnEhMKC251bV9zZXJ2ZXJzGAUg",
- "ASgFEhYKDndhcm11cF9zZWNvbmRzGAYgASgFEhkKEWJlbmNobWFya19zZWNv",
- "bmRzGAcgASgFEiAKGHNwYXduX2xvY2FsX3dvcmtlcl9jb3VudBgIIAEoBSI2",
- "CglTY2VuYXJpb3MSKQoJc2NlbmFyaW9zGAEgAygLMhYuZ3JwYy50ZXN0aW5n",
- "LlNjZW5hcmlvIpICChVTY2VuYXJpb1Jlc3VsdFN1bW1hcnkSCwoDcXBzGAEg",
- "ASgBEhsKE3Fwc19wZXJfc2VydmVyX2NvcmUYAiABKAESGgoSc2VydmVyX3N5",
- "c3RlbV90aW1lGAMgASgBEhgKEHNlcnZlcl91c2VyX3RpbWUYBCABKAESGgoS",
- "Y2xpZW50X3N5c3RlbV90aW1lGAUgASgBEhgKEGNsaWVudF91c2VyX3RpbWUY",
- "BiABKAESEgoKbGF0ZW5jeV81MBgHIAEoARISCgpsYXRlbmN5XzkwGAggASgB",
- "EhIKCmxhdGVuY3lfOTUYCSABKAESEgoKbGF0ZW5jeV85ORgKIAEoARITCgts",
- "YXRlbmN5Xzk5ORgLIAEoASKYAgoOU2NlbmFyaW9SZXN1bHQSKAoIc2NlbmFy",
- "aW8YASABKAsyFi5ncnBjLnRlc3RpbmcuU2NlbmFyaW8SLgoJbGF0ZW5jaWVz",
- "GAIgASgLMhsuZ3JwYy50ZXN0aW5nLkhpc3RvZ3JhbURhdGESLwoMY2xpZW50",
- "X3N0YXRzGAMgAygLMhkuZ3JwYy50ZXN0aW5nLkNsaWVudFN0YXRzEi8KDHNl",
- "cnZlcl9zdGF0cxgEIAMoCzIZLmdycGMudGVzdGluZy5TZXJ2ZXJTdGF0cxIU",
- "CgxzZXJ2ZXJfY29yZXMYBSADKAUSNAoHc3VtbWFyeRgGIAEoCzIjLmdycGMu",
- "dGVzdGluZy5TY2VuYXJpb1Jlc3VsdFN1bW1hcnkqLwoKQ2xpZW50VHlwZRIP",
- "CgtTWU5DX0NMSUVOVBAAEhAKDEFTWU5DX0NMSUVOVBABKkkKClNlcnZlclR5",
- "cGUSDwoLU1lOQ19TRVJWRVIQABIQCgxBU1lOQ19TRVJWRVIQARIYChRBU1lO",
- "Q19HRU5FUklDX1NFUlZFUhACKiMKB1JwY1R5cGUSCQoFVU5BUlkQABINCglT",
- "VFJFQU1JTkcQAWIGcHJvdG8z"));
+ "cmFtcxIRCgljb3JlX2xpc3QYDSADKAUSEgoKY29yZV9saW1pdBgOIAEoBRIY",
+ "ChBvdGhlcl9jbGllbnRfYXBpGA8gASgJIjgKDENsaWVudFN0YXR1cxIoCgVz",
+ "dGF0cxgBIAEoCzIZLmdycGMudGVzdGluZy5DbGllbnRTdGF0cyIVCgRNYXJr",
+ "Eg0KBXJlc2V0GAEgASgIImgKCkNsaWVudEFyZ3MSKwoFc2V0dXAYASABKAsy",
+ "Gi5ncnBjLnRlc3RpbmcuQ2xpZW50Q29uZmlnSAASIgoEbWFyaxgCIAEoCzIS",
+ "LmdycGMudGVzdGluZy5NYXJrSABCCQoHYXJndHlwZSKWAgoMU2VydmVyQ29u",
+ "ZmlnEi0KC3NlcnZlcl90eXBlGAEgASgOMhguZ3JwYy50ZXN0aW5nLlNlcnZl",
+ "clR5cGUSNQoPc2VjdXJpdHlfcGFyYW1zGAIgASgLMhwuZ3JwYy50ZXN0aW5n",
+ "LlNlY3VyaXR5UGFyYW1zEgwKBHBvcnQYBCABKAUSHAoUYXN5bmNfc2VydmVy",
+ "X3RocmVhZHMYByABKAUSEgoKY29yZV9saW1pdBgIIAEoBRIzCg5wYXlsb2Fk",
+ "X2NvbmZpZxgJIAEoCzIbLmdycGMudGVzdGluZy5QYXlsb2FkQ29uZmlnEhEK",
+ "CWNvcmVfbGlzdBgKIAMoBRIYChBvdGhlcl9zZXJ2ZXJfYXBpGAsgASgJImgK",
+ "ClNlcnZlckFyZ3MSKwoFc2V0dXAYASABKAsyGi5ncnBjLnRlc3RpbmcuU2Vy",
+ "dmVyQ29uZmlnSAASIgoEbWFyaxgCIAEoCzISLmdycGMudGVzdGluZy5NYXJr",
+ "SABCCQoHYXJndHlwZSJVCgxTZXJ2ZXJTdGF0dXMSKAoFc3RhdHMYASABKAsy",
+ "GS5ncnBjLnRlc3RpbmcuU2VydmVyU3RhdHMSDAoEcG9ydBgCIAEoBRINCgVj",
+ "b3JlcxgDIAEoBSINCgtDb3JlUmVxdWVzdCIdCgxDb3JlUmVzcG9uc2USDQoF",
+ "Y29yZXMYASABKAUiBgoEVm9pZCL9AQoIU2NlbmFyaW8SDAoEbmFtZRgBIAEo",
+ "CRIxCg1jbGllbnRfY29uZmlnGAIgASgLMhouZ3JwYy50ZXN0aW5nLkNsaWVu",
+ "dENvbmZpZxITCgtudW1fY2xpZW50cxgDIAEoBRIxCg1zZXJ2ZXJfY29uZmln",
+ "GAQgASgLMhouZ3JwYy50ZXN0aW5nLlNlcnZlckNvbmZpZxITCgtudW1fc2Vy",
+ "dmVycxgFIAEoBRIWCg53YXJtdXBfc2Vjb25kcxgGIAEoBRIZChFiZW5jaG1h",
+ "cmtfc2Vjb25kcxgHIAEoBRIgChhzcGF3bl9sb2NhbF93b3JrZXJfY291bnQY",
+ "CCABKAUiNgoJU2NlbmFyaW9zEikKCXNjZW5hcmlvcxgBIAMoCzIWLmdycGMu",
+ "dGVzdGluZy5TY2VuYXJpbyKSAgoVU2NlbmFyaW9SZXN1bHRTdW1tYXJ5EgsK",
+ "A3FwcxgBIAEoARIbChNxcHNfcGVyX3NlcnZlcl9jb3JlGAIgASgBEhoKEnNl",
+ "cnZlcl9zeXN0ZW1fdGltZRgDIAEoARIYChBzZXJ2ZXJfdXNlcl90aW1lGAQg",
+ "ASgBEhoKEmNsaWVudF9zeXN0ZW1fdGltZRgFIAEoARIYChBjbGllbnRfdXNl",
+ "cl90aW1lGAYgASgBEhIKCmxhdGVuY3lfNTAYByABKAESEgoKbGF0ZW5jeV85",
+ "MBgIIAEoARISCgpsYXRlbmN5Xzk1GAkgASgBEhIKCmxhdGVuY3lfOTkYCiAB",
+ "KAESEwoLbGF0ZW5jeV85OTkYCyABKAEimAIKDlNjZW5hcmlvUmVzdWx0EigK",
+ "CHNjZW5hcmlvGAEgASgLMhYuZ3JwYy50ZXN0aW5nLlNjZW5hcmlvEi4KCWxh",
+ "dGVuY2llcxgCIAEoCzIbLmdycGMudGVzdGluZy5IaXN0b2dyYW1EYXRhEi8K",
+ "DGNsaWVudF9zdGF0cxgDIAMoCzIZLmdycGMudGVzdGluZy5DbGllbnRTdGF0",
+ "cxIvCgxzZXJ2ZXJfc3RhdHMYBCADKAsyGS5ncnBjLnRlc3RpbmcuU2VydmVy",
+ "U3RhdHMSFAoMc2VydmVyX2NvcmVzGAUgAygFEjQKB3N1bW1hcnkYBiABKAsy",
+ "Iy5ncnBjLnRlc3RpbmcuU2NlbmFyaW9SZXN1bHRTdW1tYXJ5KkEKCkNsaWVu",
+ "dFR5cGUSDwoLU1lOQ19DTElFTlQQABIQCgxBU1lOQ19DTElFTlQQARIQCgxP",
+ "VEhFUl9DTElFTlQQAipbCgpTZXJ2ZXJUeXBlEg8KC1NZTkNfU0VSVkVSEAAS",
+ "EAoMQVNZTkNfU0VSVkVSEAESGAoUQVNZTkNfR0VORVJJQ19TRVJWRVIQAhIQ",
+ "CgxPVEhFUl9TRVJWRVIQAyojCgdScGNUeXBlEgkKBVVOQVJZEAASDQoJU1RS",
+ "RUFNSU5HEAFiBnByb3RvMw=="));
descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
new pbr::FileDescriptor[] { global::Grpc.Testing.PayloadsReflection.Descriptor, global::Grpc.Testing.StatsReflection.Descriptor, },
new pbr::GeneratedCodeInfo(new[] {typeof(global::Grpc.Testing.ClientType), typeof(global::Grpc.Testing.ServerType), typeof(global::Grpc.Testing.RpcType), }, new pbr::GeneratedCodeInfo[] {
@@ -88,11 +90,11 @@ namespace Grpc.Testing {
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ClosedLoopParams), global::Grpc.Testing.ClosedLoopParams.Parser, null, null, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.LoadParams), global::Grpc.Testing.LoadParams.Parser, new[]{ "ClosedLoop", "Poisson" }, new[]{ "Load" }, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.SecurityParams), global::Grpc.Testing.SecurityParams.Parser, new[]{ "UseTestCa", "ServerHostOverride" }, null, null, null),
- new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ClientConfig), global::Grpc.Testing.ClientConfig.Parser, new[]{ "ServerTargets", "ClientType", "SecurityParams", "OutstandingRpcsPerChannel", "ClientChannels", "AsyncClientThreads", "RpcType", "LoadParams", "PayloadConfig", "HistogramParams", "CoreList", "CoreLimit" }, null, null, null),
+ new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ClientConfig), global::Grpc.Testing.ClientConfig.Parser, new[]{ "ServerTargets", "ClientType", "SecurityParams", "OutstandingRpcsPerChannel", "ClientChannels", "AsyncClientThreads", "RpcType", "LoadParams", "PayloadConfig", "HistogramParams", "CoreList", "CoreLimit", "OtherClientApi" }, null, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ClientStatus), global::Grpc.Testing.ClientStatus.Parser, new[]{ "Stats" }, null, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.Mark), global::Grpc.Testing.Mark.Parser, new[]{ "Reset" }, null, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ClientArgs), global::Grpc.Testing.ClientArgs.Parser, new[]{ "Setup", "Mark" }, new[]{ "Argtype" }, null, null),
- new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ServerConfig), global::Grpc.Testing.ServerConfig.Parser, new[]{ "ServerType", "SecurityParams", "Port", "AsyncServerThreads", "CoreLimit", "PayloadConfig", "CoreList" }, null, null, null),
+ new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ServerConfig), global::Grpc.Testing.ServerConfig.Parser, new[]{ "ServerType", "SecurityParams", "Port", "AsyncServerThreads", "CoreLimit", "PayloadConfig", "CoreList", "OtherServerApi" }, null, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ServerArgs), global::Grpc.Testing.ServerArgs.Parser, new[]{ "Setup", "Mark" }, new[]{ "Argtype" }, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.ServerStatus), global::Grpc.Testing.ServerStatus.Parser, new[]{ "Stats", "Port", "Cores" }, null, null, null),
new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.CoreRequest), global::Grpc.Testing.CoreRequest.Parser, null, null, null, null),
@@ -109,14 +111,26 @@ namespace Grpc.Testing {
}
#region Enums
public enum ClientType {
+ /// <summary>
+ /// Many languages support a basic distinction between using
+ /// sync or async client, and this allows the specification
+ /// </summary>
SYNC_CLIENT = 0,
ASYNC_CLIENT = 1,
+ /// <summary>
+ /// used for some language-specific variants
+ /// </summary>
+ OTHER_CLIENT = 2,
}
public enum ServerType {
SYNC_SERVER = 0,
ASYNC_SERVER = 1,
ASYNC_GENERIC_SERVER = 2,
+ /// <summary>
+ /// used for some language-specific variants
+ /// </summary>
+ OTHER_SERVER = 3,
}
public enum RpcType {
@@ -651,6 +665,7 @@ namespace Grpc.Testing {
HistogramParams = other.histogramParams_ != null ? other.HistogramParams.Clone() : null;
coreList_ = other.coreList_.Clone();
coreLimit_ = other.coreLimit_;
+ otherClientApi_ = other.otherClientApi_;
}
public ClientConfig Clone() {
@@ -795,6 +810,19 @@ namespace Grpc.Testing {
}
}
+ /// <summary>Field number for the "other_client_api" field.</summary>
+ public const int OtherClientApiFieldNumber = 15;
+ private string otherClientApi_ = "";
+ /// <summary>
+ /// If we use an OTHER_CLIENT client_type, this string gives more detail
+ /// </summary>
+ public string OtherClientApi {
+ get { return otherClientApi_; }
+ set {
+ otherClientApi_ = pb::Preconditions.CheckNotNull(value, "value");
+ }
+ }
+
public override bool Equals(object other) {
return Equals(other as ClientConfig);
}
@@ -818,6 +846,7 @@ namespace Grpc.Testing {
if (!object.Equals(HistogramParams, other.HistogramParams)) return false;
if(!coreList_.Equals(other.coreList_)) return false;
if (CoreLimit != other.CoreLimit) return false;
+ if (OtherClientApi != other.OtherClientApi) return false;
return true;
}
@@ -835,6 +864,7 @@ namespace Grpc.Testing {
if (histogramParams_ != null) hash ^= HistogramParams.GetHashCode();
hash ^= coreList_.GetHashCode();
if (CoreLimit != 0) hash ^= CoreLimit.GetHashCode();
+ if (OtherClientApi.Length != 0) hash ^= OtherClientApi.GetHashCode();
return hash;
}
@@ -885,6 +915,10 @@ namespace Grpc.Testing {
output.WriteRawTag(112);
output.WriteInt32(CoreLimit);
}
+ if (OtherClientApi.Length != 0) {
+ output.WriteRawTag(122);
+ output.WriteString(OtherClientApi);
+ }
}
public int CalculateSize() {
@@ -921,6 +955,9 @@ namespace Grpc.Testing {
if (CoreLimit != 0) {
size += 1 + pb::CodedOutputStream.ComputeInt32Size(CoreLimit);
}
+ if (OtherClientApi.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(OtherClientApi);
+ }
return size;
}
@@ -972,6 +1009,9 @@ namespace Grpc.Testing {
if (other.CoreLimit != 0) {
CoreLimit = other.CoreLimit;
}
+ if (other.OtherClientApi.Length != 0) {
+ OtherClientApi = other.OtherClientApi;
+ }
}
public void MergeFrom(pb::CodedInputStream input) {
@@ -1042,6 +1082,10 @@ namespace Grpc.Testing {
CoreLimit = input.ReadInt32();
break;
}
+ case 122: {
+ OtherClientApi = input.ReadString();
+ break;
+ }
}
}
}
@@ -1462,6 +1506,7 @@ namespace Grpc.Testing {
coreLimit_ = other.coreLimit_;
PayloadConfig = other.payloadConfig_ != null ? other.PayloadConfig.Clone() : null;
coreList_ = other.coreList_.Clone();
+ otherServerApi_ = other.otherServerApi_;
}
public ServerConfig Clone() {
@@ -1552,6 +1597,19 @@ namespace Grpc.Testing {
get { return coreList_; }
}
+ /// <summary>Field number for the "other_server_api" field.</summary>
+ public const int OtherServerApiFieldNumber = 11;
+ private string otherServerApi_ = "";
+ /// <summary>
+ /// If we use an OTHER_SERVER client_type, this string gives more detail
+ /// </summary>
+ public string OtherServerApi {
+ get { return otherServerApi_; }
+ set {
+ otherServerApi_ = pb::Preconditions.CheckNotNull(value, "value");
+ }
+ }
+
public override bool Equals(object other) {
return Equals(other as ServerConfig);
}
@@ -1570,6 +1628,7 @@ namespace Grpc.Testing {
if (CoreLimit != other.CoreLimit) return false;
if (!object.Equals(PayloadConfig, other.PayloadConfig)) return false;
if(!coreList_.Equals(other.coreList_)) return false;
+ if (OtherServerApi != other.OtherServerApi) return false;
return true;
}
@@ -1582,6 +1641,7 @@ namespace Grpc.Testing {
if (CoreLimit != 0) hash ^= CoreLimit.GetHashCode();
if (payloadConfig_ != null) hash ^= PayloadConfig.GetHashCode();
hash ^= coreList_.GetHashCode();
+ if (OtherServerApi.Length != 0) hash ^= OtherServerApi.GetHashCode();
return hash;
}
@@ -1615,6 +1675,10 @@ namespace Grpc.Testing {
output.WriteMessage(PayloadConfig);
}
coreList_.WriteTo(output, _repeated_coreList_codec);
+ if (OtherServerApi.Length != 0) {
+ output.WriteRawTag(90);
+ output.WriteString(OtherServerApi);
+ }
}
public int CalculateSize() {
@@ -1638,6 +1702,9 @@ namespace Grpc.Testing {
size += 1 + pb::CodedOutputStream.ComputeMessageSize(PayloadConfig);
}
size += coreList_.CalculateSize(_repeated_coreList_codec);
+ if (OtherServerApi.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(OtherServerApi);
+ }
return size;
}
@@ -1670,6 +1737,9 @@ namespace Grpc.Testing {
PayloadConfig.MergeFrom(other.PayloadConfig);
}
coreList_.Add(other.coreList_);
+ if (other.OtherServerApi.Length != 0) {
+ OtherServerApi = other.OtherServerApi;
+ }
}
public void MergeFrom(pb::CodedInputStream input) {
@@ -1714,6 +1784,10 @@ namespace Grpc.Testing {
coreList_.AddEntriesFrom(input, _repeated_coreList_codec);
break;
}
+ case 90: {
+ OtherServerApi = input.ReadString();
+ break;
+ }
}
}
}
diff --git a/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj b/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj
index c16d0e5c5d..9685cf1837 100644
--- a/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj
+++ b/src/csharp/Grpc.IntegrationTesting/Grpc.IntegrationTesting.csproj
@@ -113,6 +113,9 @@
<Compile Include="GeneratedClientTest.cs" />
<Compile Include="InterarrivalTimers.cs" />
<Compile Include="NUnitMain.cs" />
+ <Compile Include="StressTestClient.cs" />
+ <Compile Include="Metrics.cs" />
+ <Compile Include="MetricsGrpc.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
diff --git a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
index 5436517960..b3b1abf1bc 100644
--- a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
+++ b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
@@ -494,7 +494,8 @@ namespace Grpc.IntegrationTesting
}
var ex = Assert.ThrowsAsync<RpcException>(async () => await call.ResponseStream.MoveNext());
- Assert.AreEqual(StatusCode.DeadlineExceeded, ex.Status.StatusCode);
+ // We can't guarantee the status code always DeadlineExceeded. See issue #2685.
+ Assert.Contains(ex.Status.StatusCode, new[] { StatusCode.DeadlineExceeded, StatusCode.Internal });
}
Console.WriteLine("Passed!");
}
diff --git a/src/csharp/Grpc.IntegrationTesting/Metrics.cs b/src/csharp/Grpc.IntegrationTesting/Metrics.cs
new file mode 100644
index 0000000000..3163949d32
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting/Metrics.cs
@@ -0,0 +1,452 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: src/proto/grpc/testing/metrics.proto
+#pragma warning disable 1591, 0612, 3021
+#region Designer generated code
+
+using pb = global::Google.Protobuf;
+using pbc = global::Google.Protobuf.Collections;
+using pbr = global::Google.Protobuf.Reflection;
+using scg = global::System.Collections.Generic;
+namespace Grpc.Testing {
+
+ /// <summary>Holder for reflection information generated from src/proto/grpc/testing/metrics.proto</summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ public static partial class MetricsReflection {
+
+ #region Descriptor
+ /// <summary>File descriptor for src/proto/grpc/testing/metrics.proto</summary>
+ public static pbr::FileDescriptor Descriptor {
+ get { return descriptor; }
+ }
+ private static pbr::FileDescriptor descriptor;
+
+ static MetricsReflection() {
+ byte[] descriptorData = global::System.Convert.FromBase64String(
+ string.Concat(
+ "CiRzcmMvcHJvdG8vZ3JwYy90ZXN0aW5nL21ldHJpY3MucHJvdG8SDGdycGMu",
+ "dGVzdGluZyJsCg1HYXVnZVJlc3BvbnNlEgwKBG5hbWUYASABKAkSFAoKbG9u",
+ "Z192YWx1ZRgCIAEoA0gAEhYKDGRvdWJsZV92YWx1ZRgDIAEoAUgAEhYKDHN0",
+ "cmluZ192YWx1ZRgEIAEoCUgAQgcKBXZhbHVlIhwKDEdhdWdlUmVxdWVzdBIM",
+ "CgRuYW1lGAEgASgJIg4KDEVtcHR5TWVzc2FnZTKgAQoOTWV0cmljc1NlcnZp",
+ "Y2USSQoMR2V0QWxsR2F1Z2VzEhouZ3JwYy50ZXN0aW5nLkVtcHR5TWVzc2Fn",
+ "ZRobLmdycGMudGVzdGluZy5HYXVnZVJlc3BvbnNlMAESQwoIR2V0R2F1Z2US",
+ "Gi5ncnBjLnRlc3RpbmcuR2F1Z2VSZXF1ZXN0GhsuZ3JwYy50ZXN0aW5nLkdh",
+ "dWdlUmVzcG9uc2ViBnByb3RvMw=="));
+ descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData,
+ new pbr::FileDescriptor[] { },
+ new pbr::GeneratedCodeInfo(null, new pbr::GeneratedCodeInfo[] {
+ new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.GaugeResponse), global::Grpc.Testing.GaugeResponse.Parser, new[]{ "Name", "LongValue", "DoubleValue", "StringValue" }, new[]{ "Value" }, null, null),
+ new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.GaugeRequest), global::Grpc.Testing.GaugeRequest.Parser, new[]{ "Name" }, null, null, null),
+ new pbr::GeneratedCodeInfo(typeof(global::Grpc.Testing.EmptyMessage), global::Grpc.Testing.EmptyMessage.Parser, null, null, null, null)
+ }));
+ }
+ #endregion
+
+ }
+ #region Messages
+ /// <summary>
+ /// Reponse message containing the gauge name and value
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ public sealed partial class GaugeResponse : pb::IMessage<GaugeResponse> {
+ private static readonly pb::MessageParser<GaugeResponse> _parser = new pb::MessageParser<GaugeResponse>(() => new GaugeResponse());
+ public static pb::MessageParser<GaugeResponse> Parser { get { return _parser; } }
+
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Grpc.Testing.MetricsReflection.Descriptor.MessageTypes[0]; }
+ }
+
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ public GaugeResponse() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ public GaugeResponse(GaugeResponse other) : this() {
+ name_ = other.name_;
+ switch (other.ValueCase) {
+ case ValueOneofCase.LongValue:
+ LongValue = other.LongValue;
+ break;
+ case ValueOneofCase.DoubleValue:
+ DoubleValue = other.DoubleValue;
+ break;
+ case ValueOneofCase.StringValue:
+ StringValue = other.StringValue;
+ break;
+ }
+
+ }
+
+ public GaugeResponse Clone() {
+ return new GaugeResponse(this);
+ }
+
+ /// <summary>Field number for the "name" field.</summary>
+ public const int NameFieldNumber = 1;
+ private string name_ = "";
+ public string Name {
+ get { return name_; }
+ set {
+ name_ = pb::Preconditions.CheckNotNull(value, "value");
+ }
+ }
+
+ /// <summary>Field number for the "long_value" field.</summary>
+ public const int LongValueFieldNumber = 2;
+ public long LongValue {
+ get { return valueCase_ == ValueOneofCase.LongValue ? (long) value_ : 0L; }
+ set {
+ value_ = value;
+ valueCase_ = ValueOneofCase.LongValue;
+ }
+ }
+
+ /// <summary>Field number for the "double_value" field.</summary>
+ public const int DoubleValueFieldNumber = 3;
+ public double DoubleValue {
+ get { return valueCase_ == ValueOneofCase.DoubleValue ? (double) value_ : 0D; }
+ set {
+ value_ = value;
+ valueCase_ = ValueOneofCase.DoubleValue;
+ }
+ }
+
+ /// <summary>Field number for the "string_value" field.</summary>
+ public const int StringValueFieldNumber = 4;
+ public string StringValue {
+ get { return valueCase_ == ValueOneofCase.StringValue ? (string) value_ : ""; }
+ set {
+ value_ = pb::Preconditions.CheckNotNull(value, "value");
+ valueCase_ = ValueOneofCase.StringValue;
+ }
+ }
+
+ private object value_;
+ /// <summary>Enum of possible cases for the "value" oneof.</summary>
+ public enum ValueOneofCase {
+ None = 0,
+ LongValue = 2,
+ DoubleValue = 3,
+ StringValue = 4,
+ }
+ private ValueOneofCase valueCase_ = ValueOneofCase.None;
+ public ValueOneofCase ValueCase {
+ get { return valueCase_; }
+ }
+
+ public void ClearValue() {
+ valueCase_ = ValueOneofCase.None;
+ value_ = null;
+ }
+
+ public override bool Equals(object other) {
+ return Equals(other as GaugeResponse);
+ }
+
+ public bool Equals(GaugeResponse other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (Name != other.Name) return false;
+ if (LongValue != other.LongValue) return false;
+ if (DoubleValue != other.DoubleValue) return false;
+ if (StringValue != other.StringValue) return false;
+ if (ValueCase != other.ValueCase) return false;
+ return true;
+ }
+
+ public override int GetHashCode() {
+ int hash = 1;
+ if (Name.Length != 0) hash ^= Name.GetHashCode();
+ if (valueCase_ == ValueOneofCase.LongValue) hash ^= LongValue.GetHashCode();
+ if (valueCase_ == ValueOneofCase.DoubleValue) hash ^= DoubleValue.GetHashCode();
+ if (valueCase_ == ValueOneofCase.StringValue) hash ^= StringValue.GetHashCode();
+ hash ^= (int) valueCase_;
+ return hash;
+ }
+
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (Name.Length != 0) {
+ output.WriteRawTag(10);
+ output.WriteString(Name);
+ }
+ if (valueCase_ == ValueOneofCase.LongValue) {
+ output.WriteRawTag(16);
+ output.WriteInt64(LongValue);
+ }
+ if (valueCase_ == ValueOneofCase.DoubleValue) {
+ output.WriteRawTag(25);
+ output.WriteDouble(DoubleValue);
+ }
+ if (valueCase_ == ValueOneofCase.StringValue) {
+ output.WriteRawTag(34);
+ output.WriteString(StringValue);
+ }
+ }
+
+ public int CalculateSize() {
+ int size = 0;
+ if (Name.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
+ }
+ if (valueCase_ == ValueOneofCase.LongValue) {
+ size += 1 + pb::CodedOutputStream.ComputeInt64Size(LongValue);
+ }
+ if (valueCase_ == ValueOneofCase.DoubleValue) {
+ size += 1 + 8;
+ }
+ if (valueCase_ == ValueOneofCase.StringValue) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(StringValue);
+ }
+ return size;
+ }
+
+ public void MergeFrom(GaugeResponse other) {
+ if (other == null) {
+ return;
+ }
+ if (other.Name.Length != 0) {
+ Name = other.Name;
+ }
+ switch (other.ValueCase) {
+ case ValueOneofCase.LongValue:
+ LongValue = other.LongValue;
+ break;
+ case ValueOneofCase.DoubleValue:
+ DoubleValue = other.DoubleValue;
+ break;
+ case ValueOneofCase.StringValue:
+ StringValue = other.StringValue;
+ break;
+ }
+
+ }
+
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 10: {
+ Name = input.ReadString();
+ break;
+ }
+ case 16: {
+ LongValue = input.ReadInt64();
+ break;
+ }
+ case 25: {
+ DoubleValue = input.ReadDouble();
+ break;
+ }
+ case 34: {
+ StringValue = input.ReadString();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ /// <summary>
+ /// Request message containing the gauge name
+ /// </summary>
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ public sealed partial class GaugeRequest : pb::IMessage<GaugeRequest> {
+ private static readonly pb::MessageParser<GaugeRequest> _parser = new pb::MessageParser<GaugeRequest>(() => new GaugeRequest());
+ public static pb::MessageParser<GaugeRequest> Parser { get { return _parser; } }
+
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Grpc.Testing.MetricsReflection.Descriptor.MessageTypes[1]; }
+ }
+
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ public GaugeRequest() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ public GaugeRequest(GaugeRequest other) : this() {
+ name_ = other.name_;
+ }
+
+ public GaugeRequest Clone() {
+ return new GaugeRequest(this);
+ }
+
+ /// <summary>Field number for the "name" field.</summary>
+ public const int NameFieldNumber = 1;
+ private string name_ = "";
+ public string Name {
+ get { return name_; }
+ set {
+ name_ = pb::Preconditions.CheckNotNull(value, "value");
+ }
+ }
+
+ public override bool Equals(object other) {
+ return Equals(other as GaugeRequest);
+ }
+
+ public bool Equals(GaugeRequest other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ if (Name != other.Name) return false;
+ return true;
+ }
+
+ public override int GetHashCode() {
+ int hash = 1;
+ if (Name.Length != 0) hash ^= Name.GetHashCode();
+ return hash;
+ }
+
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ public void WriteTo(pb::CodedOutputStream output) {
+ if (Name.Length != 0) {
+ output.WriteRawTag(10);
+ output.WriteString(Name);
+ }
+ }
+
+ public int CalculateSize() {
+ int size = 0;
+ if (Name.Length != 0) {
+ size += 1 + pb::CodedOutputStream.ComputeStringSize(Name);
+ }
+ return size;
+ }
+
+ public void MergeFrom(GaugeRequest other) {
+ if (other == null) {
+ return;
+ }
+ if (other.Name.Length != 0) {
+ Name = other.Name;
+ }
+ }
+
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ case 10: {
+ Name = input.ReadString();
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ public sealed partial class EmptyMessage : pb::IMessage<EmptyMessage> {
+ private static readonly pb::MessageParser<EmptyMessage> _parser = new pb::MessageParser<EmptyMessage>(() => new EmptyMessage());
+ public static pb::MessageParser<EmptyMessage> Parser { get { return _parser; } }
+
+ public static pbr::MessageDescriptor Descriptor {
+ get { return global::Grpc.Testing.MetricsReflection.Descriptor.MessageTypes[2]; }
+ }
+
+ pbr::MessageDescriptor pb::IMessage.Descriptor {
+ get { return Descriptor; }
+ }
+
+ public EmptyMessage() {
+ OnConstruction();
+ }
+
+ partial void OnConstruction();
+
+ public EmptyMessage(EmptyMessage other) : this() {
+ }
+
+ public EmptyMessage Clone() {
+ return new EmptyMessage(this);
+ }
+
+ public override bool Equals(object other) {
+ return Equals(other as EmptyMessage);
+ }
+
+ public bool Equals(EmptyMessage other) {
+ if (ReferenceEquals(other, null)) {
+ return false;
+ }
+ if (ReferenceEquals(other, this)) {
+ return true;
+ }
+ return true;
+ }
+
+ public override int GetHashCode() {
+ int hash = 1;
+ return hash;
+ }
+
+ public override string ToString() {
+ return pb::JsonFormatter.ToDiagnosticString(this);
+ }
+
+ public void WriteTo(pb::CodedOutputStream output) {
+ }
+
+ public int CalculateSize() {
+ int size = 0;
+ return size;
+ }
+
+ public void MergeFrom(EmptyMessage other) {
+ if (other == null) {
+ return;
+ }
+ }
+
+ public void MergeFrom(pb::CodedInputStream input) {
+ uint tag;
+ while ((tag = input.ReadTag()) != 0) {
+ switch(tag) {
+ default:
+ input.SkipLastField();
+ break;
+ }
+ }
+ }
+
+ }
+
+ #endregion
+
+}
+
+#endregion Designer generated code
diff --git a/src/csharp/Grpc.IntegrationTesting/MetricsGrpc.cs b/src/csharp/Grpc.IntegrationTesting/MetricsGrpc.cs
new file mode 100644
index 0000000000..aa4f1c5c3e
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting/MetricsGrpc.cs
@@ -0,0 +1,242 @@
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// source: src/proto/grpc/testing/metrics.proto
+// Original file comments:
+// Copyright 2015-2016, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
+// Contains the definitions for a metrics service and the type of metrics
+// exposed by the service.
+//
+// Currently, 'Gauge' (i.e a metric that represents the measured value of
+// something at an instant of time) is the only metric type supported by the
+// service.
+#region Designer generated code
+
+using System;
+using System.Threading;
+using System.Threading.Tasks;
+using Grpc.Core;
+
+namespace Grpc.Testing {
+ public static class MetricsService
+ {
+ static readonly string __ServiceName = "grpc.testing.MetricsService";
+
+ static readonly Marshaller<global::Grpc.Testing.EmptyMessage> __Marshaller_EmptyMessage = Marshallers.Create((arg) => global::Google.Protobuf.MessageExtensions.ToByteArray(arg), global::Grpc.Testing.EmptyMessage.Parser.ParseFrom);
+ static readonly Marshaller<global::Grpc.Testing.GaugeResponse> __Marshaller_GaugeResponse = Marshallers.Create((arg) => global::Google.Protobuf.MessageExtensions.ToByteArray(arg), global::Grpc.Testing.GaugeResponse.Parser.ParseFrom);
+ static readonly Marshaller<global::Grpc.Testing.GaugeRequest> __Marshaller_GaugeRequest = Marshallers.Create((arg) => global::Google.Protobuf.MessageExtensions.ToByteArray(arg), global::Grpc.Testing.GaugeRequest.Parser.ParseFrom);
+
+ static readonly Method<global::Grpc.Testing.EmptyMessage, global::Grpc.Testing.GaugeResponse> __Method_GetAllGauges = new Method<global::Grpc.Testing.EmptyMessage, global::Grpc.Testing.GaugeResponse>(
+ MethodType.ServerStreaming,
+ __ServiceName,
+ "GetAllGauges",
+ __Marshaller_EmptyMessage,
+ __Marshaller_GaugeResponse);
+
+ static readonly Method<global::Grpc.Testing.GaugeRequest, global::Grpc.Testing.GaugeResponse> __Method_GetGauge = new Method<global::Grpc.Testing.GaugeRequest, global::Grpc.Testing.GaugeResponse>(
+ MethodType.Unary,
+ __ServiceName,
+ "GetGauge",
+ __Marshaller_GaugeRequest,
+ __Marshaller_GaugeResponse);
+
+ /// <summary>Service descriptor</summary>
+ public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
+ {
+ get { return global::Grpc.Testing.MetricsReflection.Descriptor.Services[0]; }
+ }
+
+ /// <summary>Client for MetricsService</summary>
+ [System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
+ public interface IMetricsServiceClient
+ {
+ /// <summary>
+ /// Returns the values of all the gauges that are currently being maintained by
+ /// the service
+ /// </summary>
+ AsyncServerStreamingCall<global::Grpc.Testing.GaugeResponse> GetAllGauges(global::Grpc.Testing.EmptyMessage request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Returns the values of all the gauges that are currently being maintained by
+ /// the service
+ /// </summary>
+ AsyncServerStreamingCall<global::Grpc.Testing.GaugeResponse> GetAllGauges(global::Grpc.Testing.EmptyMessage request, CallOptions options);
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ global::Grpc.Testing.GaugeResponse GetGauge(global::Grpc.Testing.GaugeRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ global::Grpc.Testing.GaugeResponse GetGauge(global::Grpc.Testing.GaugeRequest request, CallOptions options);
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ AsyncUnaryCall<global::Grpc.Testing.GaugeResponse> GetGaugeAsync(global::Grpc.Testing.GaugeRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ AsyncUnaryCall<global::Grpc.Testing.GaugeResponse> GetGaugeAsync(global::Grpc.Testing.GaugeRequest request, CallOptions options);
+ }
+
+ /// <summary>Interface of server-side implementations of MetricsService</summary>
+ [System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
+ public interface IMetricsService
+ {
+ /// <summary>
+ /// Returns the values of all the gauges that are currently being maintained by
+ /// the service
+ /// </summary>
+ Task GetAllGauges(global::Grpc.Testing.EmptyMessage request, IServerStreamWriter<global::Grpc.Testing.GaugeResponse> responseStream, ServerCallContext context);
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ Task<global::Grpc.Testing.GaugeResponse> GetGauge(global::Grpc.Testing.GaugeRequest request, ServerCallContext context);
+ }
+
+ /// <summary>Base class for server-side implementations of MetricsService</summary>
+ public abstract class MetricsServiceBase
+ {
+ /// <summary>
+ /// Returns the values of all the gauges that are currently being maintained by
+ /// the service
+ /// </summary>
+ public virtual Task GetAllGauges(global::Grpc.Testing.EmptyMessage request, IServerStreamWriter<global::Grpc.Testing.GaugeResponse> responseStream, ServerCallContext context)
+ {
+ throw new RpcException(new Status(StatusCode.Unimplemented, ""));
+ }
+
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ public virtual Task<global::Grpc.Testing.GaugeResponse> GetGauge(global::Grpc.Testing.GaugeRequest request, ServerCallContext context)
+ {
+ throw new RpcException(new Status(StatusCode.Unimplemented, ""));
+ }
+
+ }
+
+ /// <summary>Client for MetricsService</summary>
+ #pragma warning disable 0618
+ public class MetricsServiceClient : ClientBase<MetricsServiceClient>, IMetricsServiceClient
+ #pragma warning restore 0618
+ {
+ public MetricsServiceClient(Channel channel) : base(channel)
+ {
+ }
+ public MetricsServiceClient(CallInvoker callInvoker) : base(callInvoker)
+ {
+ }
+ ///<summary>Protected parameterless constructor to allow creation of test doubles.</summary>
+ protected MetricsServiceClient() : base()
+ {
+ }
+ ///<summary>Protected constructor to allow creation of configured clients.</summary>
+ protected MetricsServiceClient(ClientBaseConfiguration configuration) : base(configuration)
+ {
+ }
+
+ /// <summary>
+ /// Returns the values of all the gauges that are currently being maintained by
+ /// the service
+ /// </summary>
+ public virtual AsyncServerStreamingCall<global::Grpc.Testing.GaugeResponse> GetAllGauges(global::Grpc.Testing.EmptyMessage request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ return GetAllGauges(request, new CallOptions(headers, deadline, cancellationToken));
+ }
+ /// <summary>
+ /// Returns the values of all the gauges that are currently being maintained by
+ /// the service
+ /// </summary>
+ public virtual AsyncServerStreamingCall<global::Grpc.Testing.GaugeResponse> GetAllGauges(global::Grpc.Testing.EmptyMessage request, CallOptions options)
+ {
+ return CallInvoker.AsyncServerStreamingCall(__Method_GetAllGauges, null, options, request);
+ }
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ public virtual global::Grpc.Testing.GaugeResponse GetGauge(global::Grpc.Testing.GaugeRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ return GetGauge(request, new CallOptions(headers, deadline, cancellationToken));
+ }
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ public virtual global::Grpc.Testing.GaugeResponse GetGauge(global::Grpc.Testing.GaugeRequest request, CallOptions options)
+ {
+ return CallInvoker.BlockingUnaryCall(__Method_GetGauge, null, options, request);
+ }
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ public virtual AsyncUnaryCall<global::Grpc.Testing.GaugeResponse> GetGaugeAsync(global::Grpc.Testing.GaugeRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
+ {
+ return GetGaugeAsync(request, new CallOptions(headers, deadline, cancellationToken));
+ }
+ /// <summary>
+ /// Returns the value of one gauge
+ /// </summary>
+ public virtual AsyncUnaryCall<global::Grpc.Testing.GaugeResponse> GetGaugeAsync(global::Grpc.Testing.GaugeRequest request, CallOptions options)
+ {
+ return CallInvoker.AsyncUnaryCall(__Method_GetGauge, null, options, request);
+ }
+ protected override MetricsServiceClient NewInstance(ClientBaseConfiguration configuration)
+ {
+ return new MetricsServiceClient(configuration);
+ }
+ }
+
+ /// <summary>Creates a new client for MetricsService</summary>
+ public static MetricsServiceClient NewClient(Channel channel)
+ {
+ return new MetricsServiceClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
+ public static ServerServiceDefinition BindService(IMetricsService serviceImpl)
+ #pragma warning restore 0618
+ {
+ return ServerServiceDefinition.CreateBuilder(__ServiceName)
+ .AddMethod(__Method_GetAllGauges, serviceImpl.GetAllGauges)
+ .AddMethod(__Method_GetGauge, serviceImpl.GetGauge).Build();
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
+ public static ServerServiceDefinition BindService(MetricsServiceBase serviceImpl)
+ #pragma warning restore 0618
+ {
+ return ServerServiceDefinition.CreateBuilder(__ServiceName)
+ .AddMethod(__Method_GetAllGauges, serviceImpl.GetAllGauges)
+ .AddMethod(__Method_GetGauge, serviceImpl.GetGauge).Build();
+ }
+
+ }
+}
+#endregion
diff --git a/src/csharp/Grpc.IntegrationTesting/ServicesGrpc.cs b/src/csharp/Grpc.IntegrationTesting/ServicesGrpc.cs
index 46b16cf202..42bf5e0b58 100644
--- a/src/csharp/Grpc.IntegrationTesting/ServicesGrpc.cs
+++ b/src/csharp/Grpc.IntegrationTesting/ServicesGrpc.cs
@@ -1,5 +1,37 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: src/proto/grpc/testing/services.proto
+// Original file comments:
+// Copyright 2015, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
+// An integration test service that covers all the method signature permutations
+// of unary/streaming requests/responses.
#region Designer generated code
using System;
@@ -29,40 +61,80 @@ namespace Grpc.Testing {
__Marshaller_SimpleRequest,
__Marshaller_SimpleResponse);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Grpc.Testing.ServicesReflection.Descriptor.Services[0]; }
}
- // client interface
+ /// <summary>Client for BenchmarkService</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface IBenchmarkServiceClient
{
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, CallOptions options);
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, CallOptions options);
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.SimpleRequest, global::Grpc.Testing.SimpleResponse> StreamingCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.SimpleRequest, global::Grpc.Testing.SimpleResponse> StreamingCall(CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of BenchmarkService</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface IBenchmarkService
{
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
Task<global::Grpc.Testing.SimpleResponse> UnaryCall(global::Grpc.Testing.SimpleRequest request, ServerCallContext context);
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
Task StreamingCall(IAsyncStreamReader<global::Grpc.Testing.SimpleRequest> requestStream, IServerStreamWriter<global::Grpc.Testing.SimpleResponse> responseStream, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of BenchmarkService</summary>
public abstract class BenchmarkServiceBase
{
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual Task<global::Grpc.Testing.SimpleResponse> UnaryCall(global::Grpc.Testing.SimpleRequest request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual Task StreamingCall(IAsyncStreamReader<global::Grpc.Testing.SimpleRequest> requestStream, IServerStreamWriter<global::Grpc.Testing.SimpleResponse> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
@@ -70,8 +142,10 @@ namespace Grpc.Testing {
}
- // client stub
+ /// <summary>Client for BenchmarkService</summary>
+ #pragma warning disable 0618
public class BenchmarkServiceClient : ClientBase<BenchmarkServiceClient>, IBenchmarkServiceClient
+ #pragma warning restore 0618
{
public BenchmarkServiceClient(Channel channel) : base(channel)
{
@@ -88,26 +162,50 @@ namespace Grpc.Testing {
{
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return UnaryCall(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_UnaryCall, null, options, request);
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return UnaryCallAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_UnaryCall, null, options, request);
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.SimpleRequest, global::Grpc.Testing.SimpleResponse> StreamingCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return StreamingCall(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// The server returns the client payload as-is.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.SimpleRequest, global::Grpc.Testing.SimpleResponse> StreamingCall(CallOptions options)
{
return CallInvoker.AsyncDuplexStreamingCall(__Method_StreamingCall, null, options);
@@ -118,28 +216,32 @@ namespace Grpc.Testing {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for BenchmarkService</summary>
+ public static BenchmarkServiceClient NewClient(Channel channel)
+ {
+ return new BenchmarkServiceClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(IBenchmarkService serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_UnaryCall, serviceImpl.UnaryCall)
.AddMethod(__Method_StreamingCall, serviceImpl.StreamingCall).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(BenchmarkServiceBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_UnaryCall, serviceImpl.UnaryCall)
.AddMethod(__Method_StreamingCall, serviceImpl.StreamingCall).Build();
}
- // creates a new client
- public static BenchmarkServiceClient NewClient(Channel channel)
- {
- return new BenchmarkServiceClient(channel);
- }
-
}
public static class WorkerService
{
@@ -181,58 +283,158 @@ namespace Grpc.Testing {
__Marshaller_Void,
__Marshaller_Void);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Grpc.Testing.ServicesReflection.Descriptor.Services[1]; }
}
- // client interface
+ /// <summary>Client for WorkerService</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface IWorkerServiceClient
{
+ /// <summary>
+ /// Start server with specified workload.
+ /// First request sent specifies the ServerConfig followed by ServerStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test server
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.ServerArgs, global::Grpc.Testing.ServerStatus> RunServer(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Start server with specified workload.
+ /// First request sent specifies the ServerConfig followed by ServerStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test server
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.ServerArgs, global::Grpc.Testing.ServerStatus> RunServer(CallOptions options);
+ /// <summary>
+ /// Start client with specified workload.
+ /// First request sent specifies the ClientConfig followed by ClientStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test client
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.ClientArgs, global::Grpc.Testing.ClientStatus> RunClient(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Start client with specified workload.
+ /// First request sent specifies the ClientConfig followed by ClientStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test client
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.ClientArgs, global::Grpc.Testing.ClientStatus> RunClient(CallOptions options);
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
global::Grpc.Testing.CoreResponse CoreCount(global::Grpc.Testing.CoreRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
global::Grpc.Testing.CoreResponse CoreCount(global::Grpc.Testing.CoreRequest request, CallOptions options);
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.CoreResponse> CoreCountAsync(global::Grpc.Testing.CoreRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.CoreResponse> CoreCountAsync(global::Grpc.Testing.CoreRequest request, CallOptions options);
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
global::Grpc.Testing.Void QuitWorker(global::Grpc.Testing.Void request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
global::Grpc.Testing.Void QuitWorker(global::Grpc.Testing.Void request, CallOptions options);
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.Void> QuitWorkerAsync(global::Grpc.Testing.Void request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.Void> QuitWorkerAsync(global::Grpc.Testing.Void request, CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of WorkerService</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface IWorkerService
{
+ /// <summary>
+ /// Start server with specified workload.
+ /// First request sent specifies the ServerConfig followed by ServerStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test server
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
Task RunServer(IAsyncStreamReader<global::Grpc.Testing.ServerArgs> requestStream, IServerStreamWriter<global::Grpc.Testing.ServerStatus> responseStream, ServerCallContext context);
+ /// <summary>
+ /// Start client with specified workload.
+ /// First request sent specifies the ClientConfig followed by ClientStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test client
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
Task RunClient(IAsyncStreamReader<global::Grpc.Testing.ClientArgs> requestStream, IServerStreamWriter<global::Grpc.Testing.ClientStatus> responseStream, ServerCallContext context);
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
Task<global::Grpc.Testing.CoreResponse> CoreCount(global::Grpc.Testing.CoreRequest request, ServerCallContext context);
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
Task<global::Grpc.Testing.Void> QuitWorker(global::Grpc.Testing.Void request, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of WorkerService</summary>
public abstract class WorkerServiceBase
{
+ /// <summary>
+ /// Start server with specified workload.
+ /// First request sent specifies the ServerConfig followed by ServerStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test server
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
public virtual Task RunServer(IAsyncStreamReader<global::Grpc.Testing.ServerArgs> requestStream, IServerStreamWriter<global::Grpc.Testing.ServerStatus> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// Start client with specified workload.
+ /// First request sent specifies the ClientConfig followed by ClientStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test client
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
public virtual Task RunClient(IAsyncStreamReader<global::Grpc.Testing.ClientArgs> requestStream, IServerStreamWriter<global::Grpc.Testing.ClientStatus> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
public virtual Task<global::Grpc.Testing.CoreResponse> CoreCount(global::Grpc.Testing.CoreRequest request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
public virtual Task<global::Grpc.Testing.Void> QuitWorker(global::Grpc.Testing.Void request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
@@ -240,8 +442,10 @@ namespace Grpc.Testing {
}
- // client stub
+ /// <summary>Client for WorkerService</summary>
+ #pragma warning disable 0618
public class WorkerServiceClient : ClientBase<WorkerServiceClient>, IWorkerServiceClient
+ #pragma warning restore 0618
{
public WorkerServiceClient(Channel channel) : base(channel)
{
@@ -258,50 +462,106 @@ namespace Grpc.Testing {
{
}
+ /// <summary>
+ /// Start server with specified workload.
+ /// First request sent specifies the ServerConfig followed by ServerStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test server
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.ServerArgs, global::Grpc.Testing.ServerStatus> RunServer(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return RunServer(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Start server with specified workload.
+ /// First request sent specifies the ServerConfig followed by ServerStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test server
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.ServerArgs, global::Grpc.Testing.ServerStatus> RunServer(CallOptions options)
{
return CallInvoker.AsyncDuplexStreamingCall(__Method_RunServer, null, options);
}
+ /// <summary>
+ /// Start client with specified workload.
+ /// First request sent specifies the ClientConfig followed by ClientStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test client
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.ClientArgs, global::Grpc.Testing.ClientStatus> RunClient(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return RunClient(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Start client with specified workload.
+ /// First request sent specifies the ClientConfig followed by ClientStatus
+ /// response. After that, a "Mark" can be sent anytime to request the latest
+ /// stats. Closing the stream will initiate shutdown of the test client
+ /// and once the shutdown has finished, the OK status is sent to terminate
+ /// this RPC.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.ClientArgs, global::Grpc.Testing.ClientStatus> RunClient(CallOptions options)
{
return CallInvoker.AsyncDuplexStreamingCall(__Method_RunClient, null, options);
}
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
public virtual global::Grpc.Testing.CoreResponse CoreCount(global::Grpc.Testing.CoreRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return CoreCount(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
public virtual global::Grpc.Testing.CoreResponse CoreCount(global::Grpc.Testing.CoreRequest request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_CoreCount, null, options, request);
}
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.CoreResponse> CoreCountAsync(global::Grpc.Testing.CoreRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return CoreCountAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Just return the core count - unary call
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.CoreResponse> CoreCountAsync(global::Grpc.Testing.CoreRequest request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_CoreCount, null, options, request);
}
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
public virtual global::Grpc.Testing.Void QuitWorker(global::Grpc.Testing.Void request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return QuitWorker(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
public virtual global::Grpc.Testing.Void QuitWorker(global::Grpc.Testing.Void request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_QuitWorker, null, options, request);
}
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.Void> QuitWorkerAsync(global::Grpc.Testing.Void request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return QuitWorkerAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// Quit this worker
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.Void> QuitWorkerAsync(global::Grpc.Testing.Void request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_QuitWorker, null, options, request);
@@ -312,8 +572,16 @@ namespace Grpc.Testing {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for WorkerService</summary>
+ public static WorkerServiceClient NewClient(Channel channel)
+ {
+ return new WorkerServiceClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(IWorkerService serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_RunServer, serviceImpl.RunServer)
@@ -322,8 +590,10 @@ namespace Grpc.Testing {
.AddMethod(__Method_QuitWorker, serviceImpl.QuitWorker).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(WorkerServiceBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_RunServer, serviceImpl.RunServer)
@@ -332,12 +602,6 @@ namespace Grpc.Testing {
.AddMethod(__Method_QuitWorker, serviceImpl.QuitWorker).Build();
}
- // creates a new client
- public static WorkerServiceClient NewClient(Channel channel)
- {
- return new WorkerServiceClient(channel);
- }
-
}
}
#endregion
diff --git a/src/csharp/Grpc.IntegrationTesting/StressTestClient.cs b/src/csharp/Grpc.IntegrationTesting/StressTestClient.cs
new file mode 100644
index 0000000000..8db691cb04
--- /dev/null
+++ b/src/csharp/Grpc.IntegrationTesting/StressTestClient.cs
@@ -0,0 +1,318 @@
+#region Copyright notice and license
+
+// Copyright 2015-2016, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+#endregion
+
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Linq;
+using System.Threading;
+using System.Threading.Tasks;
+
+using CommandLine;
+using CommandLine.Text;
+using Grpc.Core;
+using Grpc.Core.Logging;
+using Grpc.Core.Utils;
+using Grpc.Testing;
+
+namespace Grpc.IntegrationTesting
+{
+ public class StressTestClient
+ {
+ static readonly ILogger Logger = GrpcEnvironment.Logger.ForType<StressTestClient>();
+ const double SecondsToNanos = 1e9;
+
+ private class ClientOptions
+ {
+ [Option("server_addresses", DefaultValue = "localhost:8080")]
+ public string ServerAddresses { get; set; }
+
+ [Option("test_cases", DefaultValue = "large_unary:100")]
+ public string TestCases { get; set; }
+
+ [Option("test_duration_secs", DefaultValue = -1)]
+ public int TestDurationSecs { get; set; }
+
+ [Option("num_channels_per_server", DefaultValue = 1)]
+ public int NumChannelsPerServer { get; set; }
+
+ [Option("num_stubs_per_channel", DefaultValue = 1)]
+ public int NumStubsPerChannel { get; set; }
+
+ [Option("metrics_port", DefaultValue = 8081)]
+ public int MetricsPort { get; set; }
+
+ [HelpOption]
+ public string GetUsage()
+ {
+ var help = new HelpText
+ {
+ Heading = "gRPC C# stress test client",
+ AddDashesToOption = true
+ };
+ help.AddPreOptionsLine("Usage:");
+ help.AddOptions(this);
+ return help;
+ }
+ }
+
+ ClientOptions options;
+ List<string> serverAddresses;
+ Dictionary<string, int> weightedTestCases;
+ WeightedRandomGenerator testCaseGenerator;
+
+ // cancellation will be emitted once test_duration_secs has elapsed.
+ CancellationTokenSource finishedTokenSource = new CancellationTokenSource();
+ Histogram histogram = new Histogram(0.01, 60 * SecondsToNanos);
+
+ private StressTestClient(ClientOptions options, List<string> serverAddresses, Dictionary<string, int> weightedTestCases)
+ {
+ this.options = options;
+ this.serverAddresses = serverAddresses;
+ this.weightedTestCases = weightedTestCases;
+ this.testCaseGenerator = new WeightedRandomGenerator(this.weightedTestCases);
+ }
+
+ public static void Run(string[] args)
+ {
+ var options = new ClientOptions();
+ if (!Parser.Default.ParseArguments(args, options))
+ {
+ Environment.Exit(1);
+ }
+
+ GrpcPreconditions.CheckArgument(options.NumChannelsPerServer > 0);
+ GrpcPreconditions.CheckArgument(options.NumStubsPerChannel > 0);
+
+ var serverAddresses = options.ServerAddresses.Split(',');
+ GrpcPreconditions.CheckArgument(serverAddresses.Length > 0, "You need to provide at least one server address");
+
+ var testCases = ParseWeightedTestCases(options.TestCases);
+ GrpcPreconditions.CheckArgument(testCases.Count > 0, "You need to provide at least one test case");
+
+ var interopClient = new StressTestClient(options, serverAddresses.ToList(), testCases);
+ interopClient.Run().Wait();
+ }
+
+ async Task Run()
+ {
+ var metricsServer = new Server()
+ {
+ Services = { MetricsService.BindService(new MetricsServiceImpl(histogram)) },
+ Ports = { { "[::]", options.MetricsPort, ServerCredentials.Insecure } }
+ };
+ metricsServer.Start();
+
+ if (options.TestDurationSecs >= 0)
+ {
+ finishedTokenSource.CancelAfter(TimeSpan.FromSeconds(options.TestDurationSecs));
+ }
+
+ var tasks = new List<Task>();
+ var channels = new List<Channel>();
+ foreach (var serverAddress in serverAddresses)
+ {
+ for (int i = 0; i < options.NumChannelsPerServer; i++)
+ {
+ var channel = new Channel(serverAddress, ChannelCredentials.Insecure);
+ channels.Add(channel);
+ for (int j = 0; j < options.NumStubsPerChannel; j++)
+ {
+ var client = TestService.NewClient(channel);
+ var task = Task.Factory.StartNew(() => RunBodyAsync(client).GetAwaiter().GetResult(),
+ TaskCreationOptions.LongRunning);
+ tasks.Add(task);
+ }
+ }
+ }
+ await Task.WhenAll(tasks);
+
+ foreach (var channel in channels)
+ {
+ await channel.ShutdownAsync();
+ }
+
+ await metricsServer.ShutdownAsync();
+ }
+
+ async Task RunBodyAsync(TestService.TestServiceClient client)
+ {
+ Logger.Info("Starting stress test client thread.");
+ while (!finishedTokenSource.Token.IsCancellationRequested)
+ {
+ var testCase = testCaseGenerator.GetNext();
+
+ var stopwatch = Stopwatch.StartNew();
+
+ await RunTestCaseAsync(client, testCase);
+
+ stopwatch.Stop();
+ histogram.AddObservation(stopwatch.Elapsed.TotalSeconds * SecondsToNanos);
+ }
+ Logger.Info("Stress test client thread finished.");
+ }
+
+ async Task RunTestCaseAsync(TestService.TestServiceClient client, string testCase)
+ {
+ switch (testCase)
+ {
+ case "empty_unary":
+ InteropClient.RunEmptyUnary(client);
+ break;
+ case "large_unary":
+ InteropClient.RunLargeUnary(client);
+ break;
+ case "client_streaming":
+ await InteropClient.RunClientStreamingAsync(client);
+ break;
+ case "server_streaming":
+ await InteropClient.RunServerStreamingAsync(client);
+ break;
+ case "ping_pong":
+ await InteropClient.RunPingPongAsync(client);
+ break;
+ case "empty_stream":
+ await InteropClient.RunEmptyStreamAsync(client);
+ break;
+ case "cancel_after_begin":
+ await InteropClient.RunCancelAfterBeginAsync(client);
+ break;
+ case "cancel_after_first_response":
+ await InteropClient.RunCancelAfterFirstResponseAsync(client);
+ break;
+ case "timeout_on_sleeping_server":
+ await InteropClient.RunTimeoutOnSleepingServerAsync(client);
+ break;
+ case "custom_metadata":
+ await InteropClient.RunCustomMetadataAsync(client);
+ break;
+ case "status_code_and_message":
+ await InteropClient.RunStatusCodeAndMessageAsync(client);
+ break;
+ default:
+ throw new ArgumentException("Unsupported test case " + testCase);
+ }
+ }
+
+ static Dictionary<string, int> ParseWeightedTestCases(string weightedTestCases)
+ {
+ var result = new Dictionary<string, int>();
+ foreach (var weightedTestCase in weightedTestCases.Split(','))
+ {
+ var parts = weightedTestCase.Split(new char[] {':'}, 2);
+ GrpcPreconditions.CheckArgument(parts.Length == 2, "Malformed test_cases option.");
+ result.Add(parts[0], int.Parse(parts[1]));
+ }
+ return result;
+ }
+
+ class WeightedRandomGenerator
+ {
+ readonly Random random = new Random();
+ readonly List<Tuple<int, string>> cumulativeSums;
+ readonly int weightSum;
+
+ public WeightedRandomGenerator(Dictionary<string, int> weightedItems)
+ {
+ cumulativeSums = new List<Tuple<int, string>>();
+ weightSum = 0;
+ foreach (var entry in weightedItems)
+ {
+ weightSum += entry.Value;
+ cumulativeSums.Add(Tuple.Create(weightSum, entry.Key));
+ }
+ }
+
+ public string GetNext()
+ {
+ int rand = random.Next(weightSum);
+ foreach (var entry in cumulativeSums)
+ {
+ if (rand < entry.Item1)
+ {
+ return entry.Item2;
+ }
+ }
+ throw new InvalidOperationException("GetNext() failed.");
+ }
+ }
+
+ class MetricsServiceImpl : MetricsService.MetricsServiceBase
+ {
+ const string GaugeName = "csharp_overall_qps";
+
+ readonly Histogram histogram;
+ readonly WallClockStopwatch wallClockStopwatch = new WallClockStopwatch();
+
+ public MetricsServiceImpl(Histogram histogram)
+ {
+ this.histogram = histogram;
+ }
+
+ public override Task<GaugeResponse> GetGauge(GaugeRequest request, ServerCallContext context)
+ {
+ if (request.Name == GaugeName)
+ {
+ long qps = GetQpsAndReset();
+
+ return Task.FromResult(new GaugeResponse
+ {
+ Name = GaugeName,
+ LongValue = qps
+ });
+ }
+ throw new RpcException(new Status(StatusCode.InvalidArgument, "Gauge does not exist"));
+ }
+
+ public override async Task GetAllGauges(EmptyMessage request, IServerStreamWriter<GaugeResponse> responseStream, ServerCallContext context)
+ {
+ long qps = GetQpsAndReset();
+
+ var response = new GaugeResponse
+ {
+ Name = GaugeName,
+ LongValue = qps
+ };
+ await responseStream.WriteAsync(response);
+ }
+
+ long GetQpsAndReset()
+ {
+ var snapshot = histogram.GetSnapshot(true);
+ var elapsedSnapshot = wallClockStopwatch.GetElapsedSnapshot(true);
+
+ return (long) (snapshot.Count / elapsedSnapshot.Seconds);
+ }
+ }
+ }
+}
diff --git a/src/csharp/Grpc.IntegrationTesting/TestGrpc.cs b/src/csharp/Grpc.IntegrationTesting/TestGrpc.cs
index 31746cbe71..f1878cbb55 100644
--- a/src/csharp/Grpc.IntegrationTesting/TestGrpc.cs
+++ b/src/csharp/Grpc.IntegrationTesting/TestGrpc.cs
@@ -1,5 +1,38 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: src/proto/grpc/testing/test.proto
+// Original file comments:
+// Copyright 2015-2016, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
+// An integration test service that covers all the method signature permutations
+// of unary/streaming requests/responses.
+//
#region Designer generated code
using System;
@@ -8,6 +41,10 @@ using System.Threading.Tasks;
using Grpc.Core;
namespace Grpc.Testing {
+ /// <summary>
+ /// A simple service to test the various types of RPCs and experiment with
+ /// performance with various types of payload.
+ /// </summary>
public static class TestService
{
static readonly string __ServiceName = "grpc.testing.TestService";
@@ -62,74 +99,186 @@ namespace Grpc.Testing {
__Marshaller_StreamingOutputCallRequest,
__Marshaller_StreamingOutputCallResponse);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Grpc.Testing.TestReflection.Descriptor.Services[0]; }
}
- // client interface
+ /// <summary>Client for TestService</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface ITestServiceClient
{
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
global::Grpc.Testing.Empty EmptyCall(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
global::Grpc.Testing.Empty EmptyCall(global::Grpc.Testing.Empty request, CallOptions options);
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.Empty> EmptyCallAsync(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.Empty> EmptyCallAsync(global::Grpc.Testing.Empty request, CallOptions options);
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, CallOptions options);
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, CallOptions options);
+ /// <summary>
+ /// One request followed by a sequence of responses (streamed download).
+ /// The server returns the payload with client desired type and sizes.
+ /// </summary>
AsyncServerStreamingCall<global::Grpc.Testing.StreamingOutputCallResponse> StreamingOutputCall(global::Grpc.Testing.StreamingOutputCallRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// One request followed by a sequence of responses (streamed download).
+ /// The server returns the payload with client desired type and sizes.
+ /// </summary>
AsyncServerStreamingCall<global::Grpc.Testing.StreamingOutputCallResponse> StreamingOutputCall(global::Grpc.Testing.StreamingOutputCallRequest request, CallOptions options);
+ /// <summary>
+ /// A sequence of requests followed by one response (streamed upload).
+ /// The server returns the aggregated size of client payload as the result.
+ /// </summary>
AsyncClientStreamingCall<global::Grpc.Testing.StreamingInputCallRequest, global::Grpc.Testing.StreamingInputCallResponse> StreamingInputCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// A sequence of requests followed by one response (streamed upload).
+ /// The server returns the aggregated size of client payload as the result.
+ /// </summary>
AsyncClientStreamingCall<global::Grpc.Testing.StreamingInputCallRequest, global::Grpc.Testing.StreamingInputCallResponse> StreamingInputCall(CallOptions options);
+ /// <summary>
+ /// A sequence of requests with each request served by the server immediately.
+ /// As one request could lead to multiple responses, this interface
+ /// demonstrates the idea of full duplexing.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> FullDuplexCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// A sequence of requests with each request served by the server immediately.
+ /// As one request could lead to multiple responses, this interface
+ /// demonstrates the idea of full duplexing.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> FullDuplexCall(CallOptions options);
+ /// <summary>
+ /// A sequence of requests followed by a sequence of responses.
+ /// The server buffers all the client requests and then serves them in order. A
+ /// stream of responses are returned to the client when the server starts with
+ /// first request.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> HalfDuplexCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// A sequence of requests followed by a sequence of responses.
+ /// The server buffers all the client requests and then serves them in order. A
+ /// stream of responses are returned to the client when the server starts with
+ /// first request.
+ /// </summary>
AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> HalfDuplexCall(CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of TestService</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface ITestService
{
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
Task<global::Grpc.Testing.Empty> EmptyCall(global::Grpc.Testing.Empty request, ServerCallContext context);
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
Task<global::Grpc.Testing.SimpleResponse> UnaryCall(global::Grpc.Testing.SimpleRequest request, ServerCallContext context);
+ /// <summary>
+ /// One request followed by a sequence of responses (streamed download).
+ /// The server returns the payload with client desired type and sizes.
+ /// </summary>
Task StreamingOutputCall(global::Grpc.Testing.StreamingOutputCallRequest request, IServerStreamWriter<global::Grpc.Testing.StreamingOutputCallResponse> responseStream, ServerCallContext context);
+ /// <summary>
+ /// A sequence of requests followed by one response (streamed upload).
+ /// The server returns the aggregated size of client payload as the result.
+ /// </summary>
Task<global::Grpc.Testing.StreamingInputCallResponse> StreamingInputCall(IAsyncStreamReader<global::Grpc.Testing.StreamingInputCallRequest> requestStream, ServerCallContext context);
+ /// <summary>
+ /// A sequence of requests with each request served by the server immediately.
+ /// As one request could lead to multiple responses, this interface
+ /// demonstrates the idea of full duplexing.
+ /// </summary>
Task FullDuplexCall(IAsyncStreamReader<global::Grpc.Testing.StreamingOutputCallRequest> requestStream, IServerStreamWriter<global::Grpc.Testing.StreamingOutputCallResponse> responseStream, ServerCallContext context);
+ /// <summary>
+ /// A sequence of requests followed by a sequence of responses.
+ /// The server buffers all the client requests and then serves them in order. A
+ /// stream of responses are returned to the client when the server starts with
+ /// first request.
+ /// </summary>
Task HalfDuplexCall(IAsyncStreamReader<global::Grpc.Testing.StreamingOutputCallRequest> requestStream, IServerStreamWriter<global::Grpc.Testing.StreamingOutputCallResponse> responseStream, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of TestService</summary>
public abstract class TestServiceBase
{
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
public virtual Task<global::Grpc.Testing.Empty> EmptyCall(global::Grpc.Testing.Empty request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
public virtual Task<global::Grpc.Testing.SimpleResponse> UnaryCall(global::Grpc.Testing.SimpleRequest request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// One request followed by a sequence of responses (streamed download).
+ /// The server returns the payload with client desired type and sizes.
+ /// </summary>
public virtual Task StreamingOutputCall(global::Grpc.Testing.StreamingOutputCallRequest request, IServerStreamWriter<global::Grpc.Testing.StreamingOutputCallResponse> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// A sequence of requests followed by one response (streamed upload).
+ /// The server returns the aggregated size of client payload as the result.
+ /// </summary>
public virtual Task<global::Grpc.Testing.StreamingInputCallResponse> StreamingInputCall(IAsyncStreamReader<global::Grpc.Testing.StreamingInputCallRequest> requestStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// A sequence of requests with each request served by the server immediately.
+ /// As one request could lead to multiple responses, this interface
+ /// demonstrates the idea of full duplexing.
+ /// </summary>
public virtual Task FullDuplexCall(IAsyncStreamReader<global::Grpc.Testing.StreamingOutputCallRequest> requestStream, IServerStreamWriter<global::Grpc.Testing.StreamingOutputCallResponse> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
}
+ /// <summary>
+ /// A sequence of requests followed by a sequence of responses.
+ /// The server buffers all the client requests and then serves them in order. A
+ /// stream of responses are returned to the client when the server starts with
+ /// first request.
+ /// </summary>
public virtual Task HalfDuplexCall(IAsyncStreamReader<global::Grpc.Testing.StreamingOutputCallRequest> requestStream, IServerStreamWriter<global::Grpc.Testing.StreamingOutputCallResponse> responseStream, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
@@ -137,8 +286,10 @@ namespace Grpc.Testing {
}
- // client stub
+ /// <summary>Client for TestService</summary>
+ #pragma warning disable 0618
public class TestServiceClient : ClientBase<TestServiceClient>, ITestServiceClient
+ #pragma warning restore 0618
{
public TestServiceClient(Channel channel) : base(channel)
{
@@ -155,66 +306,128 @@ namespace Grpc.Testing {
{
}
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
public virtual global::Grpc.Testing.Empty EmptyCall(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return EmptyCall(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
public virtual global::Grpc.Testing.Empty EmptyCall(global::Grpc.Testing.Empty request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_EmptyCall, null, options, request);
}
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.Empty> EmptyCallAsync(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return EmptyCallAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One empty request followed by one empty response.
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.Empty> EmptyCallAsync(global::Grpc.Testing.Empty request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_EmptyCall, null, options, request);
}
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
public virtual global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return UnaryCall(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
public virtual global::Grpc.Testing.SimpleResponse UnaryCall(global::Grpc.Testing.SimpleRequest request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_UnaryCall, null, options, request);
}
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return UnaryCallAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One request followed by one response.
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.SimpleResponse> UnaryCallAsync(global::Grpc.Testing.SimpleRequest request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_UnaryCall, null, options, request);
}
+ /// <summary>
+ /// One request followed by a sequence of responses (streamed download).
+ /// The server returns the payload with client desired type and sizes.
+ /// </summary>
public virtual AsyncServerStreamingCall<global::Grpc.Testing.StreamingOutputCallResponse> StreamingOutputCall(global::Grpc.Testing.StreamingOutputCallRequest request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return StreamingOutputCall(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// One request followed by a sequence of responses (streamed download).
+ /// The server returns the payload with client desired type and sizes.
+ /// </summary>
public virtual AsyncServerStreamingCall<global::Grpc.Testing.StreamingOutputCallResponse> StreamingOutputCall(global::Grpc.Testing.StreamingOutputCallRequest request, CallOptions options)
{
return CallInvoker.AsyncServerStreamingCall(__Method_StreamingOutputCall, null, options, request);
}
+ /// <summary>
+ /// A sequence of requests followed by one response (streamed upload).
+ /// The server returns the aggregated size of client payload as the result.
+ /// </summary>
public virtual AsyncClientStreamingCall<global::Grpc.Testing.StreamingInputCallRequest, global::Grpc.Testing.StreamingInputCallResponse> StreamingInputCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return StreamingInputCall(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// A sequence of requests followed by one response (streamed upload).
+ /// The server returns the aggregated size of client payload as the result.
+ /// </summary>
public virtual AsyncClientStreamingCall<global::Grpc.Testing.StreamingInputCallRequest, global::Grpc.Testing.StreamingInputCallResponse> StreamingInputCall(CallOptions options)
{
return CallInvoker.AsyncClientStreamingCall(__Method_StreamingInputCall, null, options);
}
+ /// <summary>
+ /// A sequence of requests with each request served by the server immediately.
+ /// As one request could lead to multiple responses, this interface
+ /// demonstrates the idea of full duplexing.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> FullDuplexCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return FullDuplexCall(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// A sequence of requests with each request served by the server immediately.
+ /// As one request could lead to multiple responses, this interface
+ /// demonstrates the idea of full duplexing.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> FullDuplexCall(CallOptions options)
{
return CallInvoker.AsyncDuplexStreamingCall(__Method_FullDuplexCall, null, options);
}
+ /// <summary>
+ /// A sequence of requests followed by a sequence of responses.
+ /// The server buffers all the client requests and then serves them in order. A
+ /// stream of responses are returned to the client when the server starts with
+ /// first request.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> HalfDuplexCall(Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return HalfDuplexCall(new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// A sequence of requests followed by a sequence of responses.
+ /// The server buffers all the client requests and then serves them in order. A
+ /// stream of responses are returned to the client when the server starts with
+ /// first request.
+ /// </summary>
public virtual AsyncDuplexStreamingCall<global::Grpc.Testing.StreamingOutputCallRequest, global::Grpc.Testing.StreamingOutputCallResponse> HalfDuplexCall(CallOptions options)
{
return CallInvoker.AsyncDuplexStreamingCall(__Method_HalfDuplexCall, null, options);
@@ -225,8 +438,16 @@ namespace Grpc.Testing {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for TestService</summary>
+ public static TestServiceClient NewClient(Channel channel)
+ {
+ return new TestServiceClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(ITestService serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_EmptyCall, serviceImpl.EmptyCall)
@@ -237,8 +458,10 @@ namespace Grpc.Testing {
.AddMethod(__Method_HalfDuplexCall, serviceImpl.HalfDuplexCall).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(TestServiceBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_EmptyCall, serviceImpl.EmptyCall)
@@ -249,13 +472,11 @@ namespace Grpc.Testing {
.AddMethod(__Method_HalfDuplexCall, serviceImpl.HalfDuplexCall).Build();
}
- // creates a new client
- public static TestServiceClient NewClient(Channel channel)
- {
- return new TestServiceClient(channel);
- }
-
}
+ /// <summary>
+ /// A simple service NOT implemented at servers so clients can test for
+ /// that case.
+ /// </summary>
public static class UnimplementedService
{
static readonly string __ServiceName = "grpc.testing.UnimplementedService";
@@ -269,32 +490,50 @@ namespace Grpc.Testing {
__Marshaller_Empty,
__Marshaller_Empty);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Grpc.Testing.TestReflection.Descriptor.Services[1]; }
}
- // client interface
+ /// <summary>Client for UnimplementedService</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface IUnimplementedServiceClient
{
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
global::Grpc.Testing.Empty UnimplementedCall(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
global::Grpc.Testing.Empty UnimplementedCall(global::Grpc.Testing.Empty request, CallOptions options);
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.Empty> UnimplementedCallAsync(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken));
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
AsyncUnaryCall<global::Grpc.Testing.Empty> UnimplementedCallAsync(global::Grpc.Testing.Empty request, CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of UnimplementedService</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface IUnimplementedService
{
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
Task<global::Grpc.Testing.Empty> UnimplementedCall(global::Grpc.Testing.Empty request, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of UnimplementedService</summary>
public abstract class UnimplementedServiceBase
{
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
public virtual Task<global::Grpc.Testing.Empty> UnimplementedCall(global::Grpc.Testing.Empty request, ServerCallContext context)
{
throw new RpcException(new Status(StatusCode.Unimplemented, ""));
@@ -302,8 +541,10 @@ namespace Grpc.Testing {
}
- // client stub
+ /// <summary>Client for UnimplementedService</summary>
+ #pragma warning disable 0618
public class UnimplementedServiceClient : ClientBase<UnimplementedServiceClient>, IUnimplementedServiceClient
+ #pragma warning restore 0618
{
public UnimplementedServiceClient(Channel channel) : base(channel)
{
@@ -320,18 +561,30 @@ namespace Grpc.Testing {
{
}
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
public virtual global::Grpc.Testing.Empty UnimplementedCall(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return UnimplementedCall(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
public virtual global::Grpc.Testing.Empty UnimplementedCall(global::Grpc.Testing.Empty request, CallOptions options)
{
return CallInvoker.BlockingUnaryCall(__Method_UnimplementedCall, null, options, request);
}
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.Empty> UnimplementedCallAsync(global::Grpc.Testing.Empty request, Metadata headers = null, DateTime? deadline = null, CancellationToken cancellationToken = default(CancellationToken))
{
return UnimplementedCallAsync(request, new CallOptions(headers, deadline, cancellationToken));
}
+ /// <summary>
+ /// A call that no server should implement
+ /// </summary>
public virtual AsyncUnaryCall<global::Grpc.Testing.Empty> UnimplementedCallAsync(global::Grpc.Testing.Empty request, CallOptions options)
{
return CallInvoker.AsyncUnaryCall(__Method_UnimplementedCall, null, options, request);
@@ -342,27 +595,34 @@ namespace Grpc.Testing {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for UnimplementedService</summary>
+ public static UnimplementedServiceClient NewClient(Channel channel)
+ {
+ return new UnimplementedServiceClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(IUnimplementedService serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_UnimplementedCall, serviceImpl.UnimplementedCall).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(UnimplementedServiceBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_UnimplementedCall, serviceImpl.UnimplementedCall).Build();
}
- // creates a new client
- public static UnimplementedServiceClient NewClient(Channel channel)
- {
- return new UnimplementedServiceClient(channel);
- }
-
}
+ /// <summary>
+ /// A service used to control reconnect server.
+ /// </summary>
public static class ReconnectService
{
static readonly string __ServiceName = "grpc.testing.ReconnectService";
@@ -385,13 +645,13 @@ namespace Grpc.Testing {
__Marshaller_Empty,
__Marshaller_ReconnectInfo);
- // service descriptor
+ /// <summary>Service descriptor</summary>
public static global::Google.Protobuf.Reflection.ServiceDescriptor Descriptor
{
get { return global::Grpc.Testing.TestReflection.Descriptor.Services[2]; }
}
- // client interface
+ /// <summary>Client for ReconnectService</summary>
[System.Obsolete("Client side interfaced will be removed in the next release. Use client class directly.")]
public interface IReconnectServiceClient
{
@@ -405,7 +665,7 @@ namespace Grpc.Testing {
AsyncUnaryCall<global::Grpc.Testing.ReconnectInfo> StopAsync(global::Grpc.Testing.Empty request, CallOptions options);
}
- // server-side interface
+ /// <summary>Interface of server-side implementations of ReconnectService</summary>
[System.Obsolete("Service implementations should inherit from the generated abstract base class instead.")]
public interface IReconnectService
{
@@ -413,7 +673,7 @@ namespace Grpc.Testing {
Task<global::Grpc.Testing.ReconnectInfo> Stop(global::Grpc.Testing.Empty request, ServerCallContext context);
}
- // server-side abstract class
+ /// <summary>Base class for server-side implementations of ReconnectService</summary>
public abstract class ReconnectServiceBase
{
public virtual Task<global::Grpc.Testing.Empty> Start(global::Grpc.Testing.ReconnectParams request, ServerCallContext context)
@@ -428,8 +688,10 @@ namespace Grpc.Testing {
}
- // client stub
+ /// <summary>Client for ReconnectService</summary>
+ #pragma warning disable 0618
public class ReconnectServiceClient : ClientBase<ReconnectServiceClient>, IReconnectServiceClient
+ #pragma warning restore 0618
{
public ReconnectServiceClient(Channel channel) : base(channel)
{
@@ -484,28 +746,32 @@ namespace Grpc.Testing {
}
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates a new client for ReconnectService</summary>
+ public static ReconnectServiceClient NewClient(Channel channel)
+ {
+ return new ReconnectServiceClient(channel);
+ }
+
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(IReconnectService serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_Start, serviceImpl.Start)
.AddMethod(__Method_Stop, serviceImpl.Stop).Build();
}
- // creates service definition that can be registered with a server
+ /// <summary>Creates service definition that can be registered with a server</summary>
+ #pragma warning disable 0618
public static ServerServiceDefinition BindService(ReconnectServiceBase serviceImpl)
+ #pragma warning restore 0618
{
return ServerServiceDefinition.CreateBuilder(__ServiceName)
.AddMethod(__Method_Start, serviceImpl.Start)
.AddMethod(__Method_Stop, serviceImpl.Stop).Build();
}
- // creates a new client
- public static ReconnectServiceClient NewClient(Channel channel)
- {
- return new ReconnectServiceClient(channel);
- }
-
}
}
#endregion
diff --git a/src/csharp/Grpc.sln b/src/csharp/Grpc.sln
index 8ff35e8c0d..9be36c0caa 100644
--- a/src/csharp/Grpc.sln
+++ b/src/csharp/Grpc.sln
@@ -34,6 +34,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Grpc.HealthCheck.Tests", "G
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Grpc.IntegrationTesting.QpsWorker", "Grpc.IntegrationTesting.QpsWorker\Grpc.IntegrationTesting.QpsWorker.csproj", "{B82B7DFE-7F7B-40EF-B3D6-064FF2B01294}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Grpc.IntegrationTesting.StressClient", "Grpc.IntegrationTesting.StressClient\Grpc.IntegrationTesting.StressClient.csproj", "{ADEBA147-80AE-4710-82E9-5B7F93690266}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -83,6 +85,12 @@ Global
{AA5E328A-8835-49D7-98ED-C29F2B3049F0}.Release|Any CPU.Build.0 = Release|Any CPU
{AA5E328A-8835-49D7-98ED-C29F2B3049F0}.ReleaseSigned|Any CPU.ActiveCfg = ReleaseSigned|Any CPU
{AA5E328A-8835-49D7-98ED-C29F2B3049F0}.ReleaseSigned|Any CPU.Build.0 = ReleaseSigned|Any CPU
+ {ADEBA147-80AE-4710-82E9-5B7F93690266}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {ADEBA147-80AE-4710-82E9-5B7F93690266}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {ADEBA147-80AE-4710-82E9-5B7F93690266}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {ADEBA147-80AE-4710-82E9-5B7F93690266}.Release|Any CPU.Build.0 = Release|Any CPU
+ {ADEBA147-80AE-4710-82E9-5B7F93690266}.ReleaseSigned|Any CPU.ActiveCfg = Release|Any CPU
+ {ADEBA147-80AE-4710-82E9-5B7F93690266}.ReleaseSigned|Any CPU.Build.0 = Release|Any CPU
{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AE21D0EE-9A2C-4C15-AB7F-5224EED5B0EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
diff --git a/src/csharp/buildall.bat b/src/csharp/buildall.bat
index fcc8442656..f800756dfe 100644
--- a/src/csharp/buildall.bat
+++ b/src/csharp/buildall.bat
@@ -8,6 +8,12 @@ cd /d %~dp0
@rem Set VS variables (uses Visual Studio 2013)
@call "%VS120COMNTOOLS%\..\..\vc\vcvarsall.bat" x86
+@rem Fetch all dependencies
+nuget restore ..\..\vsprojects\grpc.sln || goto :error
+nuget restore ..\..\vsprojects\grpc_csharp_ext.sln || goto :error
+nuget restore ..\..\vsprojects\grpc_protoc_plugins.sln || goto :error
+nuget restore Grpc.sln || goto :error
+
@rem Build the C# native extension
msbuild ..\..\vsprojects\grpc_csharp_ext.sln /p:Configuration=Debug /p:PlatformToolset=v120 || goto :error
msbuild ..\..\vsprojects\grpc_csharp_ext.sln /p:Configuration=Release /p:PlatformToolset=v120 || goto :error
diff --git a/src/csharp/generate_proto_csharp.sh b/src/csharp/generate_proto_csharp.sh
index 9ac770b79d..79488e02a5 100755
--- a/src/csharp/generate_proto_csharp.sh
+++ b/src/csharp/generate_proto_csharp.sh
@@ -45,4 +45,4 @@ $PROTOC --plugin=$PLUGIN --csharp_out=$HEALTHCHECK_DIR --grpc_out=$HEALTHCHECK_D
-I src/proto/grpc/health/v1 src/proto/grpc/health/v1/health.proto
$PROTOC --plugin=$PLUGIN --csharp_out=$TESTING_DIR --grpc_out=$TESTING_DIR \
- -I . src/proto/grpc/testing/{control,empty,messages,payloads,services,stats,test}.proto
+ -I . src/proto/grpc/testing/{control,empty,messages,metrics,payloads,services,stats,test}.proto
diff --git a/src/node/.gitignore b/src/node/.gitignore
deleted file mode 100644
index e3fbd98336..0000000000
--- a/src/node/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-build
-node_modules
diff --git a/src/node/.jshintignore b/src/node/.jshintignore
new file mode 100644
index 0000000000..0a73e1e2b6
--- /dev/null
+++ b/src/node/.jshintignore
@@ -0,0 +1 @@
+**/*_pb.js \ No newline at end of file
diff --git a/src/node/.jshintrc b/src/node/.jshintrc
deleted file mode 100644
index 8237e0d2b6..0000000000
--- a/src/node/.jshintrc
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "bitwise": true,
- "curly": true,
- "eqeqeq": true,
- "esnext": true,
- "freeze": true,
- "immed": true,
- "indent": 2,
- "latedef": "nofunc",
- "maxlen": 80,
- "newcap": true,
- "node": true,
- "noarg": true,
- "quotmark": "single",
- "strict": true,
- "trailing": true,
- "undef": true,
- "unused": "vars",
- "globals": {
- /* Mocha-provided globals */
- "describe": false,
- "it": false,
- "before": false,
- "beforeEach": false,
- "after": false,
- "afterEach": false
- }
-}
diff --git a/src/node/ext/node_grpc.cc b/src/node/ext/node_grpc.cc
index b988f29878..6b6e42737b 100644
--- a/src/node/ext/node_grpc.cc
+++ b/src/node/ext/node_grpc.cc
@@ -35,6 +35,8 @@
#include <nan.h>
#include <v8.h>
#include "grpc/grpc.h"
+#include "grpc/grpc_security.h"
+#include "grpc/support/alloc.h"
#include "call.h"
#include "call_credentials.h"
@@ -51,6 +53,8 @@ using v8::Object;
using v8::Uint32;
using v8::String;
+static char *pem_root_certs = NULL;
+
void InitStatusConstants(Local<Object> exports) {
Nan::HandleScope scope;
Local<Object> status = Nan::New<Object>();
@@ -268,9 +272,36 @@ NAN_METHOD(MetadataKeyIsBinary) {
grpc_is_binary_header(key_str, static_cast<size_t>(key->Length()))));
}
+static grpc_ssl_roots_override_result get_ssl_roots_override(
+ char **pem_root_certs_ptr) {
+ *pem_root_certs_ptr = pem_root_certs;
+ if (pem_root_certs == NULL) {
+ return GRPC_SSL_ROOTS_OVERRIDE_FAIL;
+ } else {
+ return GRPC_SSL_ROOTS_OVERRIDE_OK;
+ }
+}
+
+/* This should only be called once, and only before creating any
+ *ServerCredentials */
+NAN_METHOD(SetDefaultRootsPem) {
+ if (!info[0]->IsString()) {
+ return Nan::ThrowTypeError(
+ "setDefaultRootsPem's argument must be a string");
+ }
+ Nan::Utf8String utf8_roots(info[0]);
+ size_t length = static_cast<size_t>(utf8_roots.length());
+ if (length > 0) {
+ const char *data = *utf8_roots;
+ pem_root_certs = (char *)gpr_malloc((length + 1) * sizeof(char));
+ memcpy(pem_root_certs, data, length + 1);
+ }
+}
+
void init(Local<Object> exports) {
Nan::HandleScope scope;
grpc_init();
+ grpc_set_ssl_roots_override_callback(get_ssl_roots_override);
InitStatusConstants(exports);
InitCallErrorConstants(exports);
InitOpTypeConstants(exports);
@@ -298,6 +329,10 @@ void init(Local<Object> exports) {
Nan::GetFunction(
Nan::New<FunctionTemplate>(MetadataKeyIsBinary)
).ToLocalChecked());
+ Nan::Set(exports, Nan::New("setDefaultRootsPem").ToLocalChecked(),
+ Nan::GetFunction(
+ Nan::New<FunctionTemplate>(SetDefaultRootsPem)
+ ).ToLocalChecked());
}
NODE_MODULE(grpc_node, init)
diff --git a/src/node/ext/server_credentials.cc b/src/node/ext/server_credentials.cc
index cff821aafc..a817ade518 100644
--- a/src/node/ext/server_credentials.cc
+++ b/src/node/ext/server_credentials.cc
@@ -146,7 +146,9 @@ NAN_METHOD(ServerCredentials::CreateSsl) {
"createSsl's second argument must be a list of objects");
}
- grpc_ssl_client_certificate_request_type client_certificate_request;
+ // Default to not requesting the client certificate
+ grpc_ssl_client_certificate_request_type client_certificate_request =
+ GRPC_SSL_DONT_REQUEST_CLIENT_CERTIFICATE;
if (info[2]->IsBoolean()) {
client_certificate_request =
Nan::To<bool>(info[2]).FromJust()
diff --git a/src/node/index.js b/src/node/index.js
index d345a5142d..66664d94b5 100644
--- a/src/node/index.js
+++ b/src/node/index.js
@@ -34,13 +34,10 @@
'use strict';
var path = require('path');
+var fs = require('fs');
var SSL_ROOTS_PATH = path.resolve(__dirname, '..', '..', 'etc', 'roots.pem');
-if (!process.env.GRPC_DEFAULT_SSL_ROOTS_FILE_PATH) {
- process.env.GRPC_DEFAULT_SSL_ROOTS_FILE_PATH = SSL_ROOTS_PATH;
-}
-
var _ = require('lodash');
var ProtoBuf = require('protobufjs');
@@ -53,6 +50,8 @@ var Metadata = require('./src/metadata.js');
var grpc = require('./src/grpc_extension');
+grpc.setDefaultRootsPem(fs.readFileSync(SSL_ROOTS_PATH, 'ascii'));
+
/**
* Load a gRPC object from an existing ProtoBuf.Reflect object.
* @param {ProtoBuf.Reflect.Namespace} value The ProtoBuf object to load.
diff --git a/src/node/src/client.js b/src/node/src/client.js
index 5e07046fc6..f75f951eb8 100644
--- a/src/node/src/client.js
+++ b/src/node/src/client.js
@@ -815,8 +815,7 @@ exports.waitForClientReady = function(client, deadline, callback) {
* @return {function(string, Object)} New client constructor
*/
exports.makeProtobufClientConstructor = function(service, options) {
- var method_attrs = common.getProtobufServiceAttrs(service, service.name,
- options);
+ var method_attrs = common.getProtobufServiceAttrs(service, options);
var deprecatedArgumentOrder = false;
if (options) {
deprecatedArgumentOrder = options.deprecatedArgumentOrder;
diff --git a/src/node/src/server.js b/src/node/src/server.js
index 22128343a9..fd5153f124 100644
--- a/src/node/src/server.js
+++ b/src/node/src/server.js
@@ -684,6 +684,26 @@ Server.prototype.register = function(name, handler, serialize, deserialize,
return true;
};
+var unimplementedStatusResponse = {
+ code: grpc.status.UNIMPLEMENTED,
+ details: 'The server does not implement this method'
+};
+
+var defaultHandler = {
+ unary: function(call, callback) {
+ callback(unimplementedStatusResponse);
+ },
+ client_stream: function(call, callback) {
+ callback(unimplementedStatusResponse);
+ },
+ server_stream: function(call) {
+ call.emit('error', unimplementedStatusResponse);
+ },
+ bidi: function(call) {
+ call.emit('error', unimplementedStatusResponse);
+ }
+};
+
/**
* Add a service to the server, with a corresponding implementation. If you are
* generating this from a proto file, you should instead use
@@ -713,16 +733,18 @@ Server.prototype.addService = function(service, implementation) {
method_type = 'unary';
}
}
+ var impl;
if (implementation[name] === undefined) {
- throw new Error('Method handler for ' + attrs.path +
- ' not provided.');
+ console.warn('Method handler for %s expected but not provided',
+ attrs.path);
+ impl = defaultHandler[method_type];
+ } else {
+ impl = _.bind(implementation[name], implementation);
}
var serialize = attrs.responseSerialize;
var deserialize = attrs.requestDeserialize;
- var register_success = self.register(attrs.path,
- _.bind(implementation[name],
- implementation),
- serialize, deserialize, method_type);
+ var register_success = self.register(attrs.path, impl, serialize,
+ deserialize, method_type);
if (!register_success) {
throw new Error('Method handler for ' + attrs.path +
' already provided.');
diff --git a/src/node/test/math/math_grpc_pb.js b/src/node/test/math/math_grpc_pb.js
new file mode 100644
index 0000000000..083ed66913
--- /dev/null
+++ b/src/node/test/math/math_grpc_pb.js
@@ -0,0 +1,99 @@
+// GENERATED CODE -- DO NOT EDIT!
+
+'use strict';
+var grpc = require('grpc');
+var math_pb = require('./math_pb.js');
+
+function serialize_DivArgs(arg) {
+ if (!(arg instanceof math_pb.DivArgs)) {
+ throw new Error('Expected argument of type DivArgs');
+ }
+ return new Buffer(arg.serializeBinary());
+}
+
+function deserialize_DivArgs(buffer_arg) {
+ return math_pb.DivArgs.deserializeBinary(new Uint8Array(buffer_arg));
+}
+
+function serialize_DivReply(arg) {
+ if (!(arg instanceof math_pb.DivReply)) {
+ throw new Error('Expected argument of type DivReply');
+ }
+ return new Buffer(arg.serializeBinary());
+}
+
+function deserialize_DivReply(buffer_arg) {
+ return math_pb.DivReply.deserializeBinary(new Uint8Array(buffer_arg));
+}
+
+function serialize_FibArgs(arg) {
+ if (!(arg instanceof math_pb.FibArgs)) {
+ throw new Error('Expected argument of type FibArgs');
+ }
+ return new Buffer(arg.serializeBinary());
+}
+
+function deserialize_FibArgs(buffer_arg) {
+ return math_pb.FibArgs.deserializeBinary(new Uint8Array(buffer_arg));
+}
+
+function serialize_Num(arg) {
+ if (!(arg instanceof math_pb.Num)) {
+ throw new Error('Expected argument of type Num');
+ }
+ return new Buffer(arg.serializeBinary());
+}
+
+function deserialize_Num(buffer_arg) {
+ return math_pb.Num.deserializeBinary(new Uint8Array(buffer_arg));
+}
+
+
+var MathService = exports.MathService = {
+ div: {
+ path: '/math.Math/Div',
+ requestStream: false,
+ responseStream: false,
+ requestType: math_pb.DivArgs,
+ responseType: math_pb.DivReply,
+ requestSerialize: serialize_DivArgs,
+ requestDeserialize: deserialize_DivArgs,
+ responseSerialize: serialize_DivReply,
+ responseDeserialize: deserialize_DivReply,
+ },
+ divMany: {
+ path: '/math.Math/DivMany',
+ requestStream: true,
+ responseStream: true,
+ requestType: math_pb.DivArgs,
+ responseType: math_pb.DivReply,
+ requestSerialize: serialize_DivArgs,
+ requestDeserialize: deserialize_DivArgs,
+ responseSerialize: serialize_DivReply,
+ responseDeserialize: deserialize_DivReply,
+ },
+ fib: {
+ path: '/math.Math/Fib',
+ requestStream: false,
+ responseStream: true,
+ requestType: math_pb.FibArgs,
+ responseType: math_pb.Num,
+ requestSerialize: serialize_FibArgs,
+ requestDeserialize: deserialize_FibArgs,
+ responseSerialize: serialize_Num,
+ responseDeserialize: deserialize_Num,
+ },
+ sum: {
+ path: '/math.Math/Sum',
+ requestStream: true,
+ responseStream: false,
+ requestType: math_pb.Num,
+ responseType: math_pb.Num,
+ requestSerialize: serialize_Num,
+ requestDeserialize: deserialize_Num,
+ responseSerialize: serialize_Num,
+ responseDeserialize: deserialize_Num,
+ },
+};
+
+exports.MathClient = grpc.makeGenericClientConstructor(MathService);
diff --git a/src/node/test/math/math_pb.js b/src/node/test/math/math_pb.js
new file mode 100644
index 0000000000..3489143bec
--- /dev/null
+++ b/src/node/test/math/math_pb.js
@@ -0,0 +1,866 @@
+/**
+ * @fileoverview
+ * @enhanceable
+ * @public
+ */
+// GENERATED CODE -- DO NOT EDIT!
+
+var jspb = require('google-protobuf');
+var goog = jspb;
+var global = Function('return this')();
+
+goog.exportSymbol('proto.math.DivArgs', null, global);
+goog.exportSymbol('proto.math.DivReply', null, global);
+goog.exportSymbol('proto.math.FibArgs', null, global);
+goog.exportSymbol('proto.math.FibReply', null, global);
+goog.exportSymbol('proto.math.Num', null, global);
+
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.math.DivArgs = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.math.DivArgs, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ proto.math.DivArgs.displayName = 'proto.math.DivArgs';
+}
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto suitable for use in Soy templates.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
+ * @param {boolean=} opt_includeInstance Whether to include the JSPB instance
+ * for transitional soy proto support: http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.math.DivArgs.prototype.toObject = function(opt_includeInstance) {
+ return proto.math.DivArgs.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Whether to include the JSPB
+ * instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.math.DivArgs} msg The msg instance to transform.
+ * @return {!Object}
+ */
+proto.math.DivArgs.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ dividend: msg.getDividend(),
+ divisor: msg.getDivisor()
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.math.DivArgs}
+ */
+proto.math.DivArgs.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.math.DivArgs;
+ return proto.math.DivArgs.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.math.DivArgs} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.math.DivArgs}
+ */
+proto.math.DivArgs.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setDividend(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setDivisor(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Class method variant: serializes the given message to binary data
+ * (in protobuf wire format), writing to the given BinaryWriter.
+ * @param {!proto.math.DivArgs} message
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.DivArgs.serializeBinaryToWriter = function(message, writer) {
+ message.serializeBinaryToWriter(writer);
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.math.DivArgs.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ this.serializeBinaryToWriter(writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format),
+ * writing to the given BinaryWriter.
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.DivArgs.prototype.serializeBinaryToWriter = function (writer) {
+ var f = undefined;
+ f = this.getDividend();
+ if (f !== 0) {
+ writer.writeInt64(
+ 1,
+ f
+ );
+ }
+ f = this.getDivisor();
+ if (f !== 0) {
+ writer.writeInt64(
+ 2,
+ f
+ );
+ }
+};
+
+
+/**
+ * Creates a deep clone of this proto. No data is shared with the original.
+ * @return {!proto.math.DivArgs} The clone.
+ */
+proto.math.DivArgs.prototype.cloneMessage = function() {
+ return /** @type {!proto.math.DivArgs} */ (jspb.Message.cloneMessage(this));
+};
+
+
+/**
+ * optional int64 dividend = 1;
+ * @return {number}
+ */
+proto.math.DivArgs.prototype.getDividend = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 1, 0));
+};
+
+
+/** @param {number} value */
+proto.math.DivArgs.prototype.setDividend = function(value) {
+ jspb.Message.setField(this, 1, value);
+};
+
+
+/**
+ * optional int64 divisor = 2;
+ * @return {number}
+ */
+proto.math.DivArgs.prototype.getDivisor = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 2, 0));
+};
+
+
+/** @param {number} value */
+proto.math.DivArgs.prototype.setDivisor = function(value) {
+ jspb.Message.setField(this, 2, value);
+};
+
+
+
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.math.DivReply = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.math.DivReply, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ proto.math.DivReply.displayName = 'proto.math.DivReply';
+}
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto suitable for use in Soy templates.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
+ * @param {boolean=} opt_includeInstance Whether to include the JSPB instance
+ * for transitional soy proto support: http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.math.DivReply.prototype.toObject = function(opt_includeInstance) {
+ return proto.math.DivReply.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Whether to include the JSPB
+ * instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.math.DivReply} msg The msg instance to transform.
+ * @return {!Object}
+ */
+proto.math.DivReply.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ quotient: msg.getQuotient(),
+ remainder: msg.getRemainder()
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.math.DivReply}
+ */
+proto.math.DivReply.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.math.DivReply;
+ return proto.math.DivReply.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.math.DivReply} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.math.DivReply}
+ */
+proto.math.DivReply.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setQuotient(value);
+ break;
+ case 2:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setRemainder(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Class method variant: serializes the given message to binary data
+ * (in protobuf wire format), writing to the given BinaryWriter.
+ * @param {!proto.math.DivReply} message
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.DivReply.serializeBinaryToWriter = function(message, writer) {
+ message.serializeBinaryToWriter(writer);
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.math.DivReply.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ this.serializeBinaryToWriter(writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format),
+ * writing to the given BinaryWriter.
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.DivReply.prototype.serializeBinaryToWriter = function (writer) {
+ var f = undefined;
+ f = this.getQuotient();
+ if (f !== 0) {
+ writer.writeInt64(
+ 1,
+ f
+ );
+ }
+ f = this.getRemainder();
+ if (f !== 0) {
+ writer.writeInt64(
+ 2,
+ f
+ );
+ }
+};
+
+
+/**
+ * Creates a deep clone of this proto. No data is shared with the original.
+ * @return {!proto.math.DivReply} The clone.
+ */
+proto.math.DivReply.prototype.cloneMessage = function() {
+ return /** @type {!proto.math.DivReply} */ (jspb.Message.cloneMessage(this));
+};
+
+
+/**
+ * optional int64 quotient = 1;
+ * @return {number}
+ */
+proto.math.DivReply.prototype.getQuotient = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 1, 0));
+};
+
+
+/** @param {number} value */
+proto.math.DivReply.prototype.setQuotient = function(value) {
+ jspb.Message.setField(this, 1, value);
+};
+
+
+/**
+ * optional int64 remainder = 2;
+ * @return {number}
+ */
+proto.math.DivReply.prototype.getRemainder = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 2, 0));
+};
+
+
+/** @param {number} value */
+proto.math.DivReply.prototype.setRemainder = function(value) {
+ jspb.Message.setField(this, 2, value);
+};
+
+
+
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.math.FibArgs = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.math.FibArgs, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ proto.math.FibArgs.displayName = 'proto.math.FibArgs';
+}
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto suitable for use in Soy templates.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
+ * @param {boolean=} opt_includeInstance Whether to include the JSPB instance
+ * for transitional soy proto support: http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.math.FibArgs.prototype.toObject = function(opt_includeInstance) {
+ return proto.math.FibArgs.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Whether to include the JSPB
+ * instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.math.FibArgs} msg The msg instance to transform.
+ * @return {!Object}
+ */
+proto.math.FibArgs.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ limit: msg.getLimit()
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.math.FibArgs}
+ */
+proto.math.FibArgs.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.math.FibArgs;
+ return proto.math.FibArgs.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.math.FibArgs} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.math.FibArgs}
+ */
+proto.math.FibArgs.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setLimit(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Class method variant: serializes the given message to binary data
+ * (in protobuf wire format), writing to the given BinaryWriter.
+ * @param {!proto.math.FibArgs} message
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.FibArgs.serializeBinaryToWriter = function(message, writer) {
+ message.serializeBinaryToWriter(writer);
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.math.FibArgs.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ this.serializeBinaryToWriter(writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format),
+ * writing to the given BinaryWriter.
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.FibArgs.prototype.serializeBinaryToWriter = function (writer) {
+ var f = undefined;
+ f = this.getLimit();
+ if (f !== 0) {
+ writer.writeInt64(
+ 1,
+ f
+ );
+ }
+};
+
+
+/**
+ * Creates a deep clone of this proto. No data is shared with the original.
+ * @return {!proto.math.FibArgs} The clone.
+ */
+proto.math.FibArgs.prototype.cloneMessage = function() {
+ return /** @type {!proto.math.FibArgs} */ (jspb.Message.cloneMessage(this));
+};
+
+
+/**
+ * optional int64 limit = 1;
+ * @return {number}
+ */
+proto.math.FibArgs.prototype.getLimit = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 1, 0));
+};
+
+
+/** @param {number} value */
+proto.math.FibArgs.prototype.setLimit = function(value) {
+ jspb.Message.setField(this, 1, value);
+};
+
+
+
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.math.Num = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.math.Num, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ proto.math.Num.displayName = 'proto.math.Num';
+}
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto suitable for use in Soy templates.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
+ * @param {boolean=} opt_includeInstance Whether to include the JSPB instance
+ * for transitional soy proto support: http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.math.Num.prototype.toObject = function(opt_includeInstance) {
+ return proto.math.Num.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Whether to include the JSPB
+ * instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.math.Num} msg The msg instance to transform.
+ * @return {!Object}
+ */
+proto.math.Num.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ num: msg.getNum()
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.math.Num}
+ */
+proto.math.Num.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.math.Num;
+ return proto.math.Num.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.math.Num} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.math.Num}
+ */
+proto.math.Num.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setNum(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Class method variant: serializes the given message to binary data
+ * (in protobuf wire format), writing to the given BinaryWriter.
+ * @param {!proto.math.Num} message
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.Num.serializeBinaryToWriter = function(message, writer) {
+ message.serializeBinaryToWriter(writer);
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.math.Num.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ this.serializeBinaryToWriter(writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format),
+ * writing to the given BinaryWriter.
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.Num.prototype.serializeBinaryToWriter = function (writer) {
+ var f = undefined;
+ f = this.getNum();
+ if (f !== 0) {
+ writer.writeInt64(
+ 1,
+ f
+ );
+ }
+};
+
+
+/**
+ * Creates a deep clone of this proto. No data is shared with the original.
+ * @return {!proto.math.Num} The clone.
+ */
+proto.math.Num.prototype.cloneMessage = function() {
+ return /** @type {!proto.math.Num} */ (jspb.Message.cloneMessage(this));
+};
+
+
+/**
+ * optional int64 num = 1;
+ * @return {number}
+ */
+proto.math.Num.prototype.getNum = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 1, 0));
+};
+
+
+/** @param {number} value */
+proto.math.Num.prototype.setNum = function(value) {
+ jspb.Message.setField(this, 1, value);
+};
+
+
+
+/**
+ * Generated by JsPbCodeGenerator.
+ * @param {Array=} opt_data Optional initial data array, typically from a
+ * server response, or constructed directly in Javascript. The array is used
+ * in place and becomes part of the constructed object. It is not cloned.
+ * If no data is provided, the constructed object will be empty, but still
+ * valid.
+ * @extends {jspb.Message}
+ * @constructor
+ */
+proto.math.FibReply = function(opt_data) {
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
+};
+goog.inherits(proto.math.FibReply, jspb.Message);
+if (goog.DEBUG && !COMPILED) {
+ proto.math.FibReply.displayName = 'proto.math.FibReply';
+}
+
+
+if (jspb.Message.GENERATE_TO_OBJECT) {
+/**
+ * Creates an object representation of this proto suitable for use in Soy templates.
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
+ * For the list of reserved names please see:
+ * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
+ * @param {boolean=} opt_includeInstance Whether to include the JSPB instance
+ * for transitional soy proto support: http://goto/soy-param-migration
+ * @return {!Object}
+ */
+proto.math.FibReply.prototype.toObject = function(opt_includeInstance) {
+ return proto.math.FibReply.toObject(opt_includeInstance, this);
+};
+
+
+/**
+ * Static version of the {@see toObject} method.
+ * @param {boolean|undefined} includeInstance Whether to include the JSPB
+ * instance for transitional soy proto support:
+ * http://goto/soy-param-migration
+ * @param {!proto.math.FibReply} msg The msg instance to transform.
+ * @return {!Object}
+ */
+proto.math.FibReply.toObject = function(includeInstance, msg) {
+ var f, obj = {
+ count: msg.getCount()
+ };
+
+ if (includeInstance) {
+ obj.$jspbMessageInstance = msg
+ }
+ return obj;
+};
+}
+
+
+/**
+ * Deserializes binary data (in protobuf wire format).
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
+ * @return {!proto.math.FibReply}
+ */
+proto.math.FibReply.deserializeBinary = function(bytes) {
+ var reader = new jspb.BinaryReader(bytes);
+ var msg = new proto.math.FibReply;
+ return proto.math.FibReply.deserializeBinaryFromReader(msg, reader);
+};
+
+
+/**
+ * Deserializes binary data (in protobuf wire format) from the
+ * given reader into the given message object.
+ * @param {!proto.math.FibReply} msg The message object to deserialize into.
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
+ * @return {!proto.math.FibReply}
+ */
+proto.math.FibReply.deserializeBinaryFromReader = function(msg, reader) {
+ while (reader.nextField()) {
+ if (reader.isEndGroup()) {
+ break;
+ }
+ var field = reader.getFieldNumber();
+ switch (field) {
+ case 1:
+ var value = /** @type {number} */ (reader.readInt64());
+ msg.setCount(value);
+ break;
+ default:
+ reader.skipField();
+ break;
+ }
+ }
+ return msg;
+};
+
+
+/**
+ * Class method variant: serializes the given message to binary data
+ * (in protobuf wire format), writing to the given BinaryWriter.
+ * @param {!proto.math.FibReply} message
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.FibReply.serializeBinaryToWriter = function(message, writer) {
+ message.serializeBinaryToWriter(writer);
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format).
+ * @return {!Uint8Array}
+ */
+proto.math.FibReply.prototype.serializeBinary = function() {
+ var writer = new jspb.BinaryWriter();
+ this.serializeBinaryToWriter(writer);
+ return writer.getResultBuffer();
+};
+
+
+/**
+ * Serializes the message to binary data (in protobuf wire format),
+ * writing to the given BinaryWriter.
+ * @param {!jspb.BinaryWriter} writer
+ */
+proto.math.FibReply.prototype.serializeBinaryToWriter = function (writer) {
+ var f = undefined;
+ f = this.getCount();
+ if (f !== 0) {
+ writer.writeInt64(
+ 1,
+ f
+ );
+ }
+};
+
+
+/**
+ * Creates a deep clone of this proto. No data is shared with the original.
+ * @return {!proto.math.FibReply} The clone.
+ */
+proto.math.FibReply.prototype.cloneMessage = function() {
+ return /** @type {!proto.math.FibReply} */ (jspb.Message.cloneMessage(this));
+};
+
+
+/**
+ * optional int64 count = 1;
+ * @return {number}
+ */
+proto.math.FibReply.prototype.getCount = function() {
+ return /** @type {number} */ (jspb.Message.getFieldProto3(this, 1, 0));
+};
+
+
+/** @param {number} value */
+proto.math.FibReply.prototype.setCount = function(value) {
+ jspb.Message.setField(this, 1, value);
+};
+
+
+goog.object.extend(exports, proto.math);
diff --git a/src/node/test/math/math_server.js b/src/node/test/math/math_server.js
index 9f67c52ab0..fa05ed0165 100644
--- a/src/node/test/math/math_server.js
+++ b/src/node/test/math/math_server.js
@@ -34,8 +34,8 @@
'use strict';
var grpc = require('../..');
-var math = grpc.load(__dirname + '/../../../proto/math/math.proto').math;
-
+var grpcMath = require('./math_grpc_pb');
+var math = require('./math_pb');
/**
* Server function for division. Provides the /Math/DivMany and /Math/Div
@@ -46,14 +46,16 @@ var math = grpc.load(__dirname + '/../../../proto/math/math.proto').math;
*/
function mathDiv(call, cb) {
var req = call.request;
+ var divisor = req.getDivisor();
+ var dividend = req.getDividend();
// Unary + is explicit coersion to integer
- if (+req.divisor === 0) {
+ if (req.getDivisor() === 0) {
cb(new Error('cannot divide by zero'));
} else {
- cb(null, {
- quotient: req.dividend / req.divisor,
- remainder: req.dividend % req.divisor
- });
+ var response = new math.DivReply();
+ response.setQuotient(Math.floor(dividend / divisor));
+ response.setRemainder(dividend % divisor);
+ cb(null, response);
}
}
@@ -67,7 +69,9 @@ function mathFib(stream) {
// Here, call is a standard writable Node object Stream
var previous = 0, current = 1;
for (var i = 0; i < stream.request.limit; i++) {
- stream.write({num: current});
+ var response = new math.Num();
+ response.setNum(current);
+ stream.write(response);
var temp = current;
current += previous;
previous = temp;
@@ -85,22 +89,26 @@ function mathSum(call, cb) {
// Here, call is a standard readable Node object Stream
var sum = 0;
call.on('data', function(data) {
- sum += (+data.num);
+ sum += data.getNum();
});
call.on('end', function() {
- cb(null, {num: sum});
+ var response = new math.Num();
+ response.setNum(sum);
+ cb(null, response);
});
}
function mathDivMany(stream) {
stream.on('data', function(div_args) {
- if (+div_args.divisor === 0) {
+ var divisor = div_args.getDivisor();
+ var dividend = div_args.getDividend();
+ if (divisor === 0) {
stream.emit('error', new Error('cannot divide by zero'));
} else {
- stream.write({
- quotient: div_args.dividend / div_args.divisor,
- remainder: div_args.dividend % div_args.divisor
- });
+ var response = new math.DivReply();
+ response.setQuotient(Math.floor(dividend / divisor));
+ response.setRemainder(dividend % divisor);
+ stream.write(response);
}
});
stream.on('end', function() {
@@ -110,7 +118,7 @@ function mathDivMany(stream) {
function getMathServer() {
var server = new grpc.Server();
- server.addProtoService(math.Math.service, {
+ server.addService(grpcMath.MathService, {
div: mathDiv,
fib: mathFib,
sum: mathSum,
diff --git a/src/node/test/math/node_modules/grpc.js b/src/node/test/math/node_modules/grpc.js
new file mode 100644
index 0000000000..17c8fd96d9
--- /dev/null
+++ b/src/node/test/math/node_modules/grpc.js
@@ -0,0 +1,37 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+/* This exists solely to allow the generated code to import the grpc module
+ * without using a relative path */
+
+module.exports = require('../../..');
diff --git a/src/node/test/math_client_test.js b/src/node/test/math_client_test.js
index 3d44610536..34c16e070b 100644
--- a/src/node/test/math_client_test.js
+++ b/src/node/test/math_client_test.js
@@ -36,7 +36,8 @@
var assert = require('assert');
var grpc = require('..');
-var math = grpc.load(__dirname + '/../../proto/math/math.proto').math;
+var math = require('./math/math_pb');
+var MathClient = require('./math/math_grpc_pb').MathClient;
/**
* Client to use to make requests to a running server.
@@ -55,35 +56,41 @@ describe('Math client', function() {
var port_num = server.bind('0.0.0.0:0',
grpc.ServerCredentials.createInsecure());
server.start();
- math_client = new math.Math('localhost:' + port_num,
- grpc.credentials.createInsecure());
+ math_client = new MathClient('localhost:' + port_num,
+ grpc.credentials.createInsecure());
done();
});
after(function() {
server.forceShutdown();
});
it('should handle a single request', function(done) {
- var arg = {dividend: 7, divisor: 4};
+ var arg = new math.DivArgs();
+ arg.setDividend(7);
+ arg.setDivisor(4);
math_client.div(arg, function handleDivResult(err, value) {
assert.ifError(err);
- assert.equal(value.quotient, 1);
- assert.equal(value.remainder, 3);
+ assert.equal(value.getQuotient(), 1);
+ assert.equal(value.getRemainder(), 3);
done();
});
});
it('should handle an error from a unary request', function(done) {
- var arg = {dividend: 7, divisor: 0};
+ var arg = new math.DivArgs();
+ arg.setDividend(7);
+ arg.setDivisor(0);
math_client.div(arg, function handleDivResult(err, value) {
assert(err);
done();
});
});
it('should handle a server streaming request', function(done) {
- var call = math_client.fib({limit: 7});
+ var arg = new math.FibArgs();
+ arg.setLimit(7);
+ var call = math_client.fib(arg);
var expected_results = [1, 1, 2, 3, 5, 8, 13];
var next_expected = 0;
call.on('data', function checkResponse(value) {
- assert.equal(value.num, expected_results[next_expected]);
+ assert.equal(value.getNum(), expected_results[next_expected]);
next_expected += 1;
});
call.on('status', function checkStatus(status) {
@@ -94,10 +101,12 @@ describe('Math client', function() {
it('should handle a client streaming request', function(done) {
var call = math_client.sum(function handleSumResult(err, value) {
assert.ifError(err);
- assert.equal(value.num, 21);
+ assert.equal(value.getNum(), 21);
});
for (var i = 0; i < 7; i++) {
- call.write({'num': i});
+ var arg = new math.Num();
+ arg.setNum(i);
+ call.write(arg);
}
call.end();
call.on('status', function checkStatus(status) {
@@ -107,8 +116,8 @@ describe('Math client', function() {
});
it('should handle a bidirectional streaming request', function(done) {
function checkResponse(index, value) {
- assert.equal(value.quotient, index);
- assert.equal(value.remainder, 1);
+ assert.equal(value.getQuotient(), index);
+ assert.equal(value.getRemainder(), 1);
}
var call = math_client.divMany();
var response_index = 0;
@@ -117,7 +126,10 @@ describe('Math client', function() {
response_index += 1;
});
for (var i = 0; i < 7; i++) {
- call.write({dividend: 2 * i + 1, divisor: 2});
+ var arg = new math.DivArgs();
+ arg.setDividend(2 * i + 1);
+ arg.setDivisor(2);
+ call.write(arg);
}
call.end();
call.on('status', function checkStatus(status) {
@@ -131,7 +143,10 @@ describe('Math client', function() {
assert.fail(value, undefined, 'Unexpected data response on failing call',
'!=');
});
- call.write({dividend: 7, divisor: 0});
+ var arg = new math.DivArgs();
+ arg.setDividend(7);
+ arg.setDivisor(0);
+ call.write(arg);
call.end();
call.on('error', function checkStatus(status) {
done();
diff --git a/src/node/test/surface_test.js b/src/node/test/surface_test.js
index b96e8e487c..d8b36dc55c 100644
--- a/src/node/test/surface_test.js
+++ b/src/node/test/surface_test.js
@@ -143,21 +143,59 @@ describe('Server.prototype.addProtoService', function() {
server.addProtoService(mathService, dummyImpls);
});
});
- it('Should fail with missing handlers', function() {
- assert.throws(function() {
- server.addProtoService(mathService, {
- 'div': function() {},
- 'divMany': function() {},
- 'fib': function() {}
- });
- }, /math.Math.Sum/);
- });
it('Should fail if the server has been started', function() {
server.start();
assert.throws(function() {
server.addProtoService(mathService, dummyImpls);
});
});
+ describe('Default handlers', function() {
+ var client;
+ beforeEach(function() {
+ server.addProtoService(mathService, {});
+ var port = server.bind('localhost:0', server_insecure_creds);
+ var Client = surface_client.makeProtobufClientConstructor(mathService);
+ client = new Client('localhost:' + port,
+ grpc.credentials.createInsecure());
+ server.start();
+ });
+ it('should respond to a unary call with UNIMPLEMENTED', function(done) {
+ client.div({divisor: 4, dividend: 3}, function(error, response) {
+ assert(error);
+ assert.strictEqual(error.code, grpc.status.UNIMPLEMENTED);
+ done();
+ });
+ });
+ it('should respond to a client stream with UNIMPLEMENTED', function(done) {
+ var call = client.sum(function(error, respones) {
+ assert(error);
+ assert.strictEqual(error.code, grpc.status.UNIMPLEMENTED);
+ done();
+ });
+ call.end();
+ });
+ it('should respond to a server stream with UNIMPLEMENTED', function(done) {
+ var call = client.fib({limit: 5});
+ call.on('data', function(value) {
+ assert.fail('No messages expected');
+ });
+ call.on('status', function(status) {
+ assert.strictEqual(status.code, grpc.status.UNIMPLEMENTED);
+ done();
+ });
+ });
+ it('should respond to a bidi call with UNIMPLEMENTED', function(done) {
+ var call = client.divMany();
+ call.on('data', function(value) {
+ assert.fail('No messages expected');
+ });
+ call.on('status', function(status) {
+ assert.strictEqual(status.code, grpc.status.UNIMPLEMENTED);
+ done();
+ });
+ call.end();
+ });
+ });
});
describe('Client constructor building', function() {
var illegal_service_attrs = {
diff --git a/src/node/tools/bin/protoc.js b/src/node/tools/bin/protoc.js
index 0c6d7ce017..4d50c94b0f 100755
--- a/src/node/tools/bin/protoc.js
+++ b/src/node/tools/bin/protoc.js
@@ -43,7 +43,9 @@
var path = require('path');
var execFile = require('child_process').execFile;
-var protoc = path.resolve(__dirname, 'protoc');
+var exe_ext = process.platform === 'win32' ? '.exe' : '';
+
+var protoc = path.resolve(__dirname, 'protoc' + exe_ext);
execFile(protoc, process.argv.slice(2), function(error, stdout, stderr) {
if (error) {
diff --git a/src/node/tools/bin/protoc_plugin.js b/src/node/tools/bin/protoc_plugin.js
new file mode 100755
index 0000000000..281ec0d85e
--- /dev/null
+++ b/src/node/tools/bin/protoc_plugin.js
@@ -0,0 +1,56 @@
+#!/usr/bin/env node
+/*
+ *
+ * Copyright 2015, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+/**
+ * This file is required because package.json cannot reference a file that
+ * is not distributed with the package, and we use node-pre-gyp to distribute
+ * the plugin binary
+ */
+
+'use strict';
+
+var path = require('path');
+var execFile = require('child_process').execFile;
+
+var exe_ext = process.platform === 'win32' ? '.exe' : '';
+
+var plugin = path.resolve(__dirname, 'grpc_node_plugin' + exe_ext);
+
+execFile(plugin, process.argv.slice(2), function(error, stdout, stderr) {
+ if (error) {
+ throw error;
+ }
+ console.log(stdout);
+ console.log(stderr);
+});
diff --git a/src/node/tools/package.json b/src/node/tools/package.json
index 4b3499f2f9..d98ed0b1fc 100644
--- a/src/node/tools/package.json
+++ b/src/node/tools/package.json
@@ -16,7 +16,8 @@
}
],
"bin": {
- "grpc-tools-protoc": "./bin/protoc.js"
+ "grpc-tools-protoc": "./bin/protoc.js",
+ "grpc-tools-plugin": "./bin/protoc_plugin.js"
},
"scripts": {
"install": "./node_modules/.bin/node-pre-gyp install"
@@ -32,6 +33,7 @@
"files": [
"index.js",
"bin/protoc.js",
+ "bin/protoc_plugin.js",
"LICENSE"
],
"main": "index.js"
diff --git a/src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h b/src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h
new file mode 100644
index 0000000000..343dd48a14
--- /dev/null
+++ b/src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.h
@@ -0,0 +1,56 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#import "GRPCCall.h"
+
+/** Helpers for setting TLS Trusted Roots, Client Certificates, and Private Key */
+@interface GRPCCall (ChannelCredentials)
+
+/**
+ * Use the provided @c pemRootCert as the set of trusted root Certificate Authorities for @c host.
+ */
++ (BOOL)setTLSPEMRootCerts:(nullable NSString *)pemRootCert
+ forHost:(nonnull NSString *)host
+ error:(NSError **)errorPtr;
+/**
+ * Configures @c host with TLS/SSL Client Credentials and optionally trusted root Certificate
+ * Authorities. If @c pemRootCerts is nil, the default CA Certificates bundled with gRPC will be
+ * used.
+ */
++ (BOOL)setTLSPEMRootCerts:(nullable NSString *)pemRootCerts
+ withPrivateKey:(nullable NSString *)pemPrivateKey
+ withCertChain:(nullable NSString *)pemCertChain
+ forHost:(nonnull NSString *)host
+ error:(NSError **)errorPtr;
+
+@end
diff --git a/src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.m b/src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.m
new file mode 100644
index 0000000000..a8bcd0aab4
--- /dev/null
+++ b/src/objective-c/GRPCClient/GRPCCall+ChannelCredentials.m
@@ -0,0 +1,66 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#import "GRPCCall+ChannelCredentials.h"
+
+#import "private/GRPCHost.h"
+
+@implementation GRPCCall (ChannelCredentials)
+
++ (BOOL)setTLSPEMRootCerts:(nullable NSString *)pemRootCerts
+ withPrivateKey:(nullable NSString *)pemPrivateKey
+ withCertChain:(nullable NSString *)pemCertChain
+ forHost:(nonnull NSString *)host
+ error:(NSError **)errorPtr {
+ if (!host) {
+ [NSException raise:NSInvalidArgumentException
+ format:@"host must be provided."];
+ }
+ GRPCHost *hostConfig = [GRPCHost hostWithAddress:host];
+ return [hostConfig setTLSPEMRootCerts:pemRootCerts
+ withPrivateKey:pemPrivateKey
+ withCertChain:pemCertChain
+ error:errorPtr];
+}
+
++ (BOOL)setTLSPEMRootCerts:(nullable NSString *)pemRootCerts
+ forHost:(nonnull NSString *)host
+ error:(NSError **)errorPtr {
+ return [GRPCCall setTLSPEMRootCerts:pemRootCerts
+ withPrivateKey:nil
+ withCertChain:nil
+ forHost:host
+ error:errorPtr];
+}
+
+@end
diff --git a/src/objective-c/GRPCClient/GRPCCall+Tests.m b/src/objective-c/GRPCClient/GRPCCall+Tests.m
index c8e8133703..b9456691bd 100644
--- a/src/objective-c/GRPCClient/GRPCCall+Tests.m
+++ b/src/objective-c/GRPCClient/GRPCCall+Tests.m
@@ -1,6 +1,6 @@
/*
*
- * Copyright 2015, Google Inc.
+ * Copyright 2015-2016, Google Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -43,8 +43,16 @@
if (!host || !certsPath || !testName) {
[NSException raise:NSInvalidArgumentException format:@"host, path and name must be provided."];
}
+ NSError *error = nil;
+ NSString *certs = [NSString stringWithContentsOfFile:certsPath
+ encoding:NSUTF8StringEncoding
+ error:&error];
+ if (error != nil) {
+ [NSException raise:[error localizedDescription] format:@"failed to load certs"];
+ }
+
GRPCHost *hostConfig = [GRPCHost hostWithAddress:host];
- hostConfig.pathToCertificates = certsPath;
+ [hostConfig setTLSPEMRootCerts:certs withPrivateKey:nil withCertChain:nil error:nil];
hostConfig.hostNameOverride = testName;
}
diff --git a/src/objective-c/GRPCClient/GRPCCall.m b/src/objective-c/GRPCClient/GRPCCall.m
index 1847d6016f..0eb10656dd 100644
--- a/src/objective-c/GRPCClient/GRPCCall.m
+++ b/src/objective-c/GRPCClient/GRPCCall.m
@@ -136,6 +136,10 @@ NSString * const kGRPCTrailersKey = @"io.grpc.TrailersKey";
#pragma mark Finish
- (void)finishWithError:(NSError *)errorOrNil {
+ @synchronized(self) {
+ _state = GRXWriterStateFinished;
+ }
+
// If the call isn't retained anywhere else, it can be deallocated now.
_retainSelf = nil;
@@ -342,6 +346,10 @@ NSString * const kGRPCTrailersKey = @"io.grpc.TrailersKey";
#pragma mark GRXWriter implementation
- (void)startWithWriteable:(id<GRXWriteable>)writeable {
+ @synchronized(self) {
+ _state = GRXWriterStateStarted;
+ }
+
// Create a retain cycle so that this instance lives until the RPC finishes (or is cancelled).
// This makes RPCs in which the call isn't externally retained possible (as long as it is started
// before being autoreleased).
@@ -375,30 +383,32 @@ NSString * const kGRPCTrailersKey = @"io.grpc.TrailersKey";
}
- (void)setState:(GRXWriterState)newState {
- // Manual transitions are only allowed from the started or paused states.
- if (_state == GRXWriterStateNotStarted || _state == GRXWriterStateFinished) {
- return;
- }
-
- switch (newState) {
- case GRXWriterStateFinished:
- _state = newState;
- // Per GRXWriter's contract, setting the state to Finished manually
- // means one doesn't wish the writeable to be messaged anymore.
- [_responseWriteable cancelSilently];
- _responseWriteable = nil;
- return;
- case GRXWriterStatePaused:
- _state = newState;
+ @synchronized(self) {
+ // Manual transitions are only allowed from the started or paused states.
+ if (_state == GRXWriterStateNotStarted || _state == GRXWriterStateFinished) {
return;
- case GRXWriterStateStarted:
- if (_state == GRXWriterStatePaused) {
+ }
+
+ switch (newState) {
+ case GRXWriterStateFinished:
_state = newState;
- [self startNextRead];
- }
- return;
- case GRXWriterStateNotStarted:
- return;
+ // Per GRXWriter's contract, setting the state to Finished manually
+ // means one doesn't wish the writeable to be messaged anymore.
+ [_responseWriteable cancelSilently];
+ _responseWriteable = nil;
+ return;
+ case GRXWriterStatePaused:
+ _state = newState;
+ return;
+ case GRXWriterStateStarted:
+ if (_state == GRXWriterStatePaused) {
+ _state = newState;
+ [self startNextRead];
+ }
+ return;
+ case GRXWriterStateNotStarted:
+ return;
+ }
}
}
diff --git a/src/objective-c/GRPCClient/private/GRPCChannel.h b/src/objective-c/GRPCClient/private/GRPCChannel.h
index 73bf8d95e7..70d1a9bd2f 100644
--- a/src/objective-c/GRPCClient/private/GRPCChannel.h
+++ b/src/objective-c/GRPCClient/private/GRPCChannel.h
@@ -56,18 +56,6 @@ struct grpc_channel_credentials;
+ (nullable GRPCChannel *)secureChannelWithHost:(nonnull NSString *)host;
/**
- * Creates a secure channel to the specified @c host using the specified @c pathToCertificates and
- * @c channelArgs. Only in tests should @c pathToCertificates be nil or
- * @c GRPC_SSL_TARGET_NAME_OVERRIDE_ARG channel arg be set. Passing nil for @c pathToCertificates
- * results in using the default root certificates distributed with the library. If certificates
- * could not be found in any case, then @c nil is returned.
- */
-+ (nullable GRPCChannel *)secureChannelWithHost:(nonnull NSString *)host
- pathToCertificates:(nullable NSString *)pathToCertificates
- channelArgs:(nullable NSDictionary *)channelArgs;
-
-
-/**
* Creates a secure channel to the specified @c host using the specified @c credentials and
* @c channelArgs. Only in tests should @c GRPC_SSL_TARGET_NAME_OVERRIDE_ARG channel arg be set.
*/
diff --git a/src/objective-c/GRPCClient/private/GRPCChannel.m b/src/objective-c/GRPCClient/private/GRPCChannel.m
index 926f55048d..203ef58c0d 100644
--- a/src/objective-c/GRPCClient/private/GRPCChannel.m
+++ b/src/objective-c/GRPCClient/private/GRPCChannel.m
@@ -40,26 +40,6 @@
#import "GRPCCompletionQueue.h"
-/**
- * Returns @c grpc_channel_credentials from the specified @c path. If the file at the path could not
- * be read then NULL is returned. If NULL is returned, @c errorPtr may not be NULL if there are
- * details available describing what went wrong.
- */
-static grpc_channel_credentials *CertificatesAtPath(NSString *path, NSError **errorPtr) {
- // Files in PEM format can have non-ASCII characters in their comments (e.g. for the name of the
- // issuer). Load them as UTF8 and produce an ASCII equivalent.
- NSString *contentInUTF8 = [NSString stringWithContentsOfFile:path
- encoding:NSUTF8StringEncoding
- error:errorPtr];
- NSData *contentInASCII = [contentInUTF8 dataUsingEncoding:NSASCIIStringEncoding
- allowLossyConversion:YES];
- if (!contentInASCII.bytes) {
- // Passing NULL to grpc_ssl_credentials_create produces behavior we don't want, so return.
- return NULL;
- }
- return grpc_ssl_credentials_create(contentInASCII.bytes, NULL, NULL);
-}
-
void freeChannelArgs(grpc_channel_args *channel_args) {
for (size_t i = 0; i < channel_args->num_args; ++i) {
grpc_arg *arg = &channel_args->args[i];
@@ -158,38 +138,6 @@ grpc_channel_args * buildChannelArgs(NSDictionary *dictionary) {
}
+ (GRPCChannel *)secureChannelWithHost:(NSString *)host
- pathToCertificates:(NSString *)path
- channelArgs:(NSDictionary *)channelArgs {
- // Load default SSL certificates once.
- static grpc_channel_credentials *kDefaultCertificates;
- static dispatch_once_t loading;
- dispatch_once(&loading, ^{
- NSString *defaultPath = @"gRPCCertificates.bundle/roots"; // .pem
- // Do not use NSBundle.mainBundle, as it's nil for tests of library projects.
- NSBundle *bundle = [NSBundle bundleForClass:self.class];
- NSString *path = [bundle pathForResource:defaultPath ofType:@"pem"];
- NSError *error;
- kDefaultCertificates = CertificatesAtPath(path, &error);
- NSAssert(kDefaultCertificates, @"Could not read %@/%@.pem. This file, with the root "
- "certificates, is needed to establish secure (TLS) connections. Because the file is "
- "distributed with the gRPC library, this error is usually a sign that the library "
- "wasn't configured correctly for your project. Error: %@",
- bundle.bundlePath, defaultPath, error);
- });
-
- //TODO(jcanizales): Add NSError** parameter to the initializer.
- grpc_channel_credentials *certificates = path
- ? CertificatesAtPath(path, NULL)
- : kDefaultCertificates;
-
- return [[GRPCChannel alloc] initWithHost:host
- secure:YES
- credentials:certificates
- channelArgs:channelArgs];
-}
-
-
-+ (GRPCChannel *)secureChannelWithHost:(NSString *)host
credentials:(struct grpc_channel_credentials *)credentials
channelArgs:(NSDictionary *)channelArgs {
return [[GRPCChannel alloc] initWithHost:host
diff --git a/src/objective-c/GRPCClient/private/GRPCHost.h b/src/objective-c/GRPCClient/private/GRPCHost.h
index e58bb7a2d9..9220e2a33d 100644
--- a/src/objective-c/GRPCClient/private/GRPCHost.h
+++ b/src/objective-c/GRPCClient/private/GRPCHost.h
@@ -37,23 +37,28 @@ NS_ASSUME_NONNULL_BEGIN
@class GRPCCompletionQueue;
struct grpc_call;
+struct grpc_channel_credentials;
@interface GRPCHost : NSObject
@property(nonatomic, readonly) NSString *address;
@property(nonatomic, copy, nullable) NSString *userAgentPrefix;
+@property(nonatomic, nullable) struct grpc_channel_credentials *channelCreds;
/** The following properties should only be modified for testing: */
@property(nonatomic, getter=isSecure) BOOL secure;
-@property(nonatomic, copy, nullable) NSString *pathToCertificates;
@property(nonatomic, copy, nullable) NSString *hostNameOverride;
- (nullable instancetype)init NS_UNAVAILABLE;
/** Host objects initialized with the same address are the same. */
+ (nullable instancetype)hostWithAddress:(NSString *)address;
- (nullable instancetype)initWithAddress:(NSString *)address NS_DESIGNATED_INITIALIZER;
+- (BOOL)setTLSPEMRootCerts:(nullable NSString *)pemRootCerts
+ withPrivateKey:(nullable NSString *)pemPrivateKey
+ withCertChain:(nullable NSString *)pemCertChain
+ error:(NSError **)errorPtr;
/** Create a grpc_call object to the provided path on this host. */
- (nullable struct grpc_call *)unmanagedCallWithPath:(NSString *)path
diff --git a/src/objective-c/GRPCClient/private/GRPCHost.m b/src/objective-c/GRPCClient/private/GRPCHost.m
index 739d808c53..43166cbb52 100644
--- a/src/objective-c/GRPCClient/private/GRPCHost.m
+++ b/src/objective-c/GRPCClient/private/GRPCHost.m
@@ -34,6 +34,7 @@
#import "GRPCHost.h"
#include <grpc/grpc.h>
+#include <grpc/grpc_security.h>
#import <GRPCClient/GRPCCall.h>
#import <GRPCClient/GRPCCall+ChannelArg.h>
@@ -56,6 +57,12 @@ NS_ASSUME_NONNULL_BEGIN
return [[self alloc] initWithAddress:address];
}
+- (void)dealloc {
+ if (_channelCreds != nil) {
+ grpc_channel_credentials_release(_channelCreds);
+ }
+}
+
// Default initializer.
- (nullable instancetype)initWithAddress:(NSString *)address {
if (!address) {
@@ -105,6 +112,75 @@ NS_ASSUME_NONNULL_BEGIN
return [channel unmanagedCallWithPath:path completionQueue:queue];
}
+- (BOOL)setTLSPEMRootCerts:(nullable NSString *)pemRootCerts
+ withPrivateKey:(nullable NSString *)pemPrivateKey
+ withCertChain:(nullable NSString *)pemCertChain
+ error:(NSError **)errorPtr {
+ static NSData *kDefaultRootsASCII;
+ static NSError *kDefaultRootsError;
+ static dispatch_once_t loading;
+ dispatch_once(&loading, ^{
+ NSString *defaultPath = @"gRPCCertificates.bundle/roots"; // .pem
+ // Do not use NSBundle.mainBundle, as it's nil for tests of library projects.
+ NSBundle *bundle = [NSBundle bundleForClass:self.class];
+ NSString *path = [bundle pathForResource:defaultPath ofType:@"pem"];
+ NSError *error;
+ // Files in PEM format can have non-ASCII characters in their comments (e.g. for the name of the
+ // issuer). Load them as UTF8 and produce an ASCII equivalent.
+ NSString *contentInUTF8 = [NSString stringWithContentsOfFile:path
+ encoding:NSUTF8StringEncoding
+ error:&error];
+ if (contentInUTF8 == nil) {
+ kDefaultRootsError = error;
+ return;
+ }
+ kDefaultRootsASCII = [contentInUTF8 dataUsingEncoding:NSASCIIStringEncoding
+ allowLossyConversion:YES];
+ });
+
+ NSData *rootsASCII;
+ if (pemRootCerts != nil) {
+ rootsASCII = [pemRootCerts dataUsingEncoding:NSASCIIStringEncoding
+ allowLossyConversion:YES];
+ } else {
+ if (kDefaultRootsASCII == nil) {
+ if (errorPtr) {
+ *errorPtr = kDefaultRootsError;
+ }
+ NSAssert(kDefaultRootsASCII, @"Could not read gRPCCertificates.bundle/roots.pem. This file, "
+ "with the root certificates, is needed to establish secure (TLS) connections. "
+ "Because the file is distributed with the gRPC library, this error is usually a sign "
+ "that the library wasn't configured correctly for your project. Error: %@",
+ kDefaultRootsError);
+ return NO;
+ }
+ rootsASCII = kDefaultRootsASCII;
+ }
+
+ grpc_channel_credentials *creds;
+ if (pemPrivateKey == nil && pemCertChain == nil) {
+ creds = grpc_ssl_credentials_create(rootsASCII.bytes, NULL, NULL);
+ } else {
+ grpc_ssl_pem_key_cert_pair key_cert_pair;
+ NSData *privateKeyASCII = [pemPrivateKey dataUsingEncoding:NSASCIIStringEncoding
+ allowLossyConversion:YES];
+ NSData *certChainASCII = [pemCertChain dataUsingEncoding:NSASCIIStringEncoding
+ allowLossyConversion:YES];
+ key_cert_pair.private_key = privateKeyASCII.bytes;
+ key_cert_pair.cert_chain = certChainASCII.bytes;
+ creds = grpc_ssl_credentials_create(rootsASCII.bytes, &key_cert_pair, NULL);
+ }
+
+ @synchronized(self) {
+ if (_channelCreds != nil) {
+ grpc_channel_credentials_release(_channelCreds);
+ }
+ _channelCreds = creds;
+ }
+
+ return YES;
+}
+
- (NSDictionary *)channelArgs {
NSMutableDictionary *args = [NSMutableDictionary dictionary];
@@ -125,9 +201,16 @@ NS_ASSUME_NONNULL_BEGIN
- (GRPCChannel *)newChannel {
NSDictionary *args = [self channelArgs];
if (_secure) {
- return [GRPCChannel secureChannelWithHost:_address
- pathToCertificates:_pathToCertificates
- channelArgs:args];
+ GRPCChannel *channel;
+ @synchronized(self) {
+ if (_channelCreds == nil) {
+ [self setTLSPEMRootCerts:nil withPrivateKey:nil withCertChain:nil error:nil];
+ }
+ channel = [GRPCChannel secureChannelWithHost:_address
+ credentials:_channelCreds
+ channelArgs:args];
+ }
+ return channel;
} else {
return [GRPCChannel insecureChannelWithHost:_address channelArgs:args];
}
@@ -145,9 +228,6 @@ NS_ASSUME_NONNULL_BEGIN
}
}
-// TODO(jcanizales): Don't let set |secure| to |NO| if |pathToCertificates| or |hostNameOverride|
-// have been set. Don't let set either of the latter if |secure| has been set to |NO|.
-
@end
NS_ASSUME_NONNULL_END
diff --git a/src/objective-c/tests/InteropTests.m b/src/objective-c/tests/InteropTests.m
index 26877b1ae8..4f096b9efa 100644
--- a/src/objective-c/tests/InteropTests.m
+++ b/src/objective-c/tests/InteropTests.m
@@ -272,8 +272,14 @@
XCTAssertEqual(error.code, GRPC_STATUS_CANCELLED);
[expectation fulfill];
}];
+ XCTAssertEqual(call.state, GRXWriterStateNotStarted);
+
[call start];
+ XCTAssertEqual(call.state, GRXWriterStateStarted);
+
[call cancel];
+ XCTAssertEqual(call.state, GRXWriterStateFinished);
+
[self waitForExpectationsWithTimeout:1 handler:nil];
}
diff --git a/src/proto/grpc/testing/compiler_test.proto b/src/proto/grpc/testing/compiler_test.proto
new file mode 100644
index 0000000000..085e8ae59f
--- /dev/null
+++ b/src/proto/grpc/testing/compiler_test.proto
@@ -0,0 +1,75 @@
+// Copyright 2016, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+// File detached comment 1
+
+// File detached comment 2
+
+// File leading comment 1
+syntax = "proto3";
+
+// Ignored detached comment
+
+// Ignored package leading comment
+package grpc.testing;
+
+message Request {
+}
+message Response {
+}
+
+// ServiceA detached comment 1
+
+// ServiceA detached comment 2
+
+// ServiceA leading comment 1
+service ServiceA {
+ // MethodA1 leading comment 1
+ rpc MethodA1(Request) returns (Response); // MethodA1 trailing comment 1
+
+ // MethodA2 detached leading comment 1
+
+ // Method A2 leading comment 1
+ // Method A2 leading comment 2
+ rpc MethodA2(stream Request) returns (Response);
+ // MethodA2 trailing comment 1
+}
+// Ignored ServiceA trailing comment 1
+
+// ServiceB leading comment 1
+service ServiceB {
+ // ServiceB trailing comment 1
+
+ // MethodB1 leading comment 1
+ rpc MethodB1(Request) returns (Response);
+ // MethodB1 trailing comment 1
+}
+// Ignored ServiceB trailing comment 2
+
+// Ignored file trailing comment
diff --git a/src/proto/grpc/testing/control.proto b/src/proto/grpc/testing/control.proto
index 28769ef653..20496a8116 100644
--- a/src/proto/grpc/testing/control.proto
+++ b/src/proto/grpc/testing/control.proto
@@ -35,14 +35,18 @@ import "src/proto/grpc/testing/stats.proto";
package grpc.testing;
enum ClientType {
+ // Many languages support a basic distinction between using
+ // sync or async client, and this allows the specification
SYNC_CLIENT = 0;
ASYNC_CLIENT = 1;
+ OTHER_CLIENT = 2; // used for some language-specific variants
}
enum ServerType {
SYNC_SERVER = 0;
ASYNC_SERVER = 1;
ASYNC_GENERIC_SERVER = 2;
+ OTHER_SERVER = 3; // used for some language-specific variants
}
enum RpcType {
@@ -96,6 +100,9 @@ message ClientConfig {
// Specify the cores we should run the client on, if desired
repeated int32 core_list = 13;
int32 core_limit = 14;
+
+ // If we use an OTHER_CLIENT client_type, this string gives more detail
+ string other_client_api = 15;
}
message ClientStatus { ClientStats stats = 1; }
@@ -127,6 +134,9 @@ message ServerConfig {
// Specify the cores we should run the server on, if desired
repeated int32 core_list = 10;
+
+ // If we use an OTHER_SERVER client_type, this string gives more detail
+ string other_server_api = 11;
}
message ServerArgs {
diff --git a/src/python/.gitignore b/src/python/.gitignore
new file mode 100644
index 0000000000..f158efa4bf
--- /dev/null
+++ b/src/python/.gitignore
@@ -0,0 +1 @@
+gens/
diff --git a/src/python/grpcio/README.rst b/src/python/grpcio/README.rst
index 33a462b66f..cb3f6b87fe 100644
--- a/src/python/grpcio/README.rst
+++ b/src/python/grpcio/README.rst
@@ -23,6 +23,16 @@ Else system wide (on Ubuntu)...
$ sudo pip install grpcio
+If you're on Windows make sure that you installed the :code:`pip.exe` component
+when you installed Python (if not go back and install it!) then invoke:
+
+::
+
+ $ pip.exe install grpcio
+
+Windows users may need to invoke :code:`pip.exe` from a command line ran as
+administrator.
+
n.b. On Windows and on Mac OS X one *must* have a recent release of :code:`pip`
to retrieve the proper wheel from PyPI. Be sure to upgrade to the latest
version!
@@ -43,6 +53,9 @@ package named :code:`python-dev`).
$ pip install -rrequirements.txt
$ GRPC_PYTHON_BUILD_WITH_CYTHON=1 pip install .
+You cannot currently install Python from source on Windows. Things might work
+out for you in MSYS2 (follow the Linux instructions), but it isn't officially
+supported at the moment.
Troubleshooting
~~~~~~~~~~~~~~~
diff --git a/src/python/grpcio/commands.py b/src/python/grpcio/commands.py
index 9e745701c1..295dab2d27 100644
--- a/src/python/grpcio/commands.py
+++ b/src/python/grpcio/commands.py
@@ -50,6 +50,9 @@ from setuptools.command import test
import support
PYTHON_STEM = os.path.dirname(os.path.abspath(__file__))
+GRPC_STEM = os.path.abspath(PYTHON_STEM + '../../../../')
+PROTO_STEM = os.path.join(GRPC_STEM, 'src', 'proto')
+PROTO_GEN_STEM = os.path.join(GRPC_STEM, 'src', 'python', 'gens')
CONF_PY_ADDENDUM = """
extensions.append('sphinx.ext.napoleon')
@@ -157,30 +160,45 @@ class BuildProtoModules(setuptools.Command):
if not self.grpc_python_plugin_command:
raise CommandError('could not find grpc_python_plugin '
'(protoc plugin for GRPC Python)')
+
+ if not os.path.exists(PROTO_GEN_STEM):
+ os.makedirs(PROTO_GEN_STEM)
+
include_regex = re.compile(self.include)
exclude_regex = re.compile(self.exclude) if self.exclude else None
paths = []
- root_directory = PYTHON_STEM
- for walk_root, directories, filenames in os.walk(root_directory):
+ for walk_root, directories, filenames in os.walk(PROTO_STEM):
for filename in filenames:
path = os.path.join(walk_root, filename)
if include_regex.match(path) and not (
exclude_regex and exclude_regex.match(path)):
paths.append(path)
- command = [
- self.protoc_command,
- '--plugin=protoc-gen-python-grpc={}'.format(
- self.grpc_python_plugin_command),
- '-I {}'.format(root_directory),
- '--python_out={}'.format(root_directory),
- '--python-grpc_out={}'.format(root_directory),
- ] + paths
- try:
- subprocess.check_output(' '.join(command), cwd=root_directory, shell=True,
- stderr=subprocess.STDOUT)
- except subprocess.CalledProcessError as e:
- raise CommandError('Command:\n{}\nMessage:\n{}\nOutput:\n{}'.format(
- command, e.message, e.output))
+
+ # TODO(kpayson): It would be nice to do this in a batch command,
+ # but we currently have name conflicts in src/proto
+ for path in paths:
+ command = [
+ self.protoc_command,
+ '--plugin=protoc-gen-python-grpc={}'.format(
+ self.grpc_python_plugin_command),
+ '-I {}'.format(GRPC_STEM),
+ '--python_out={}'.format(PROTO_GEN_STEM),
+ '--python-grpc_out={}'.format(PROTO_GEN_STEM),
+ ] + [path]
+ try:
+ subprocess.check_output(' '.join(command), cwd=PYTHON_STEM, shell=True,
+ stderr=subprocess.STDOUT)
+ except subprocess.CalledProcessError as e:
+ sys.stderr.write(
+ 'warning: Command:\n{}\nMessage:\n{}\nOutput:\n{}'.format(
+ command, e.message, e.output))
+
+ # Generated proto directories dont include __init__.py, but
+ # these are needed for python package resolution
+ for walk_root, _, _ in os.walk(PROTO_GEN_STEM):
+ if walk_root != PROTO_GEN_STEM:
+ path = os.path.join(walk_root, '__init__.py')
+ open(path, 'a').close()
class BuildProjectMetadata(setuptools.Command):
diff --git a/src/python/grpcio/grpc/_adapter/fore.py b/src/python/grpcio/grpc/_adapter/fore.py
deleted file mode 100644
index acdd69c420..0000000000
--- a/src/python/grpcio/grpc/_adapter/fore.py
+++ /dev/null
@@ -1,363 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""The RPC-service-side bridge between RPC Framework and GRPC-on-the-wire."""
-
-import enum
-import logging
-import threading
-import time
-
-from grpc._adapter import _common
-from grpc._adapter import _intermediary_low as _low
-from grpc.framework.base import interfaces as base_interfaces
-from grpc.framework.base import null
-from grpc.framework.foundation import activated
-from grpc.framework.foundation import logging_pool
-
-_THREAD_POOL_SIZE = 10
-
-
-@enum.unique
-class _LowWrite(enum.Enum):
- """The possible categories of low-level write state."""
-
- OPEN = 'OPEN'
- ACTIVE = 'ACTIVE'
- CLOSED = 'CLOSED'
-
-
-def _write(call, rpc_state, payload):
- serialized_payload = rpc_state.serializer(payload)
- if rpc_state.write.low is _LowWrite.OPEN:
- call.write(serialized_payload, call, 0)
- rpc_state.write.low = _LowWrite.ACTIVE
- else:
- rpc_state.write.pending.append(serialized_payload)
-
-
-def _status(call, rpc_state):
- call.status(_low.Status(_low.Code.OK, ''), call)
- rpc_state.write.low = _LowWrite.CLOSED
-
-
-class ForeLink(base_interfaces.ForeLink, activated.Activated):
- """A service-side bridge between RPC Framework and the C-ish _low code."""
-
- def __init__(
- self, pool, request_deserializers, response_serializers,
- root_certificates, key_chain_pairs, port=None):
- """Constructor.
-
- Args:
- pool: A thread pool.
- request_deserializers: A dict from RPC method names to request object
- deserializer behaviors.
- response_serializers: A dict from RPC method names to response object
- serializer behaviors.
- root_certificates: The PEM-encoded client root certificates as a
- bytestring or None.
- key_chain_pairs: A sequence of PEM-encoded private key-certificate chain
- pairs.
- port: The port on which to serve, or None to have a port selected
- automatically.
- """
- self._condition = threading.Condition()
- self._pool = pool
- self._request_deserializers = request_deserializers
- self._response_serializers = response_serializers
- self._root_certificates = root_certificates
- self._key_chain_pairs = key_chain_pairs
- self._requested_port = port
-
- self._rear_link = null.NULL_REAR_LINK
- self._completion_queue = None
- self._server = None
- self._rpc_states = {}
- self._spinning = False
- self._port = None
-
- def _on_stop_event(self):
- self._spinning = False
- self._condition.notify_all()
-
- def _on_service_acceptance_event(self, event, server):
- """Handle a service invocation event."""
- service_acceptance = event.service_acceptance
- if service_acceptance is None:
- return
-
- call = service_acceptance.call
- call.accept(self._completion_queue, call)
- # TODO(nathaniel): Metadata support.
- call.premetadata()
- call.read(call)
- method = service_acceptance.method
-
- self._rpc_states[call] = _common.CommonRPCState(
- _common.WriteState(_LowWrite.OPEN, _common.HighWrite.OPEN, []), 1,
- self._request_deserializers[method],
- self._response_serializers[method])
-
- ticket = base_interfaces.FrontToBackTicket(
- call, 0, base_interfaces.FrontToBackTicket.Kind.COMMENCEMENT, method,
- base_interfaces.ServicedSubscription.Kind.FULL, None, None,
- service_acceptance.deadline - time.time())
- self._rear_link.accept_front_to_back_ticket(ticket)
-
- server.service(None)
-
- def _on_read_event(self, event):
- """Handle data arriving during an RPC."""
- call = event.tag
- rpc_state = self._rpc_states.get(call, None)
- if rpc_state is None:
- return
-
- sequence_number = rpc_state.sequence_number
- rpc_state.sequence_number += 1
- if event.bytes is None:
- ticket = base_interfaces.FrontToBackTicket(
- call, sequence_number,
- base_interfaces.FrontToBackTicket.Kind.COMPLETION, None, None, None,
- None, None)
- else:
- call.read(call)
- ticket = base_interfaces.FrontToBackTicket(
- call, sequence_number,
- base_interfaces.FrontToBackTicket.Kind.CONTINUATION, None, None,
- None, rpc_state.deserializer(event.bytes), None)
-
- self._rear_link.accept_front_to_back_ticket(ticket)
-
- def _on_write_event(self, event):
- call = event.tag
- rpc_state = self._rpc_states.get(call, None)
- if rpc_state is None:
- return
-
- if rpc_state.write.pending:
- serialized_payload = rpc_state.write.pending.pop(0)
- call.write(serialized_payload, call, 0)
- elif rpc_state.write.high is _common.HighWrite.CLOSED:
- _status(call, rpc_state)
- else:
- rpc_state.write.low = _LowWrite.OPEN
-
- def _on_complete_event(self, event):
- if not event.complete_accepted:
- logging.error('Complete not accepted! %s', (event,))
- call = event.tag
- rpc_state = self._rpc_states.pop(call, None)
- if rpc_state is None:
- return
-
- sequence_number = rpc_state.sequence_number
- rpc_state.sequence_number += 1
- ticket = base_interfaces.FrontToBackTicket(
- call, sequence_number,
- base_interfaces.FrontToBackTicket.Kind.TRANSMISSION_FAILURE, None,
- None, None, None, None)
- self._rear_link.accept_front_to_back_ticket(ticket)
-
- def _on_finish_event(self, event):
- """Handle termination of an RPC."""
- call = event.tag
- rpc_state = self._rpc_states.pop(call, None)
- if rpc_state is None:
- return
-
- code = event.status.code
- if code is _low.Code.OK:
- return
-
- sequence_number = rpc_state.sequence_number
- rpc_state.sequence_number += 1
- if code is _low.Code.CANCELLED:
- ticket = base_interfaces.FrontToBackTicket(
- call, sequence_number,
- base_interfaces.FrontToBackTicket.Kind.CANCELLATION, None, None,
- None, None, None)
- elif code is _low.Code.DEADLINE_EXCEEDED:
- ticket = base_interfaces.FrontToBackTicket(
- call, sequence_number,
- base_interfaces.FrontToBackTicket.Kind.EXPIRATION, None, None, None,
- None, None)
- else:
- # TODO(nathaniel): Better mapping of codes to ticket-categories
- ticket = base_interfaces.FrontToBackTicket(
- call, sequence_number,
- base_interfaces.FrontToBackTicket.Kind.TRANSMISSION_FAILURE, None,
- None, None, None, None)
- self._rear_link.accept_front_to_back_ticket(ticket)
-
- def _spin(self, completion_queue, server):
- while True:
- event = completion_queue.get(None)
-
- with self._condition:
- if event.kind is _low.Event.Kind.STOP:
- self._on_stop_event()
- return
- elif self._server is None:
- continue
- elif event.kind is _low.Event.Kind.SERVICE_ACCEPTED:
- self._on_service_acceptance_event(event, server)
- elif event.kind is _low.Event.Kind.READ_ACCEPTED:
- self._on_read_event(event)
- elif event.kind is _low.Event.Kind.WRITE_ACCEPTED:
- self._on_write_event(event)
- elif event.kind is _low.Event.Kind.COMPLETE_ACCEPTED:
- self._on_complete_event(event)
- elif event.kind is _low.Event.Kind.FINISH:
- self._on_finish_event(event)
- else:
- logging.error('Illegal event! %s', (event,))
-
- def _continue(self, call, payload):
- rpc_state = self._rpc_states.get(call, None)
- if rpc_state is None:
- return
-
- _write(call, rpc_state, payload)
-
- def _complete(self, call, payload):
- """Handle completion of the writes of an RPC."""
- rpc_state = self._rpc_states.get(call, None)
- if rpc_state is None:
- return
-
- if rpc_state.write.low is _LowWrite.OPEN:
- if payload is None:
- _status(call, rpc_state)
- else:
- _write(call, rpc_state, payload)
- elif rpc_state.write.low is _LowWrite.ACTIVE:
- if payload is not None:
- rpc_state.write.pending.append(rpc_state.serializer(payload))
- else:
- raise ValueError('Called to complete after having already completed!')
- rpc_state.write.high = _common.HighWrite.CLOSED
-
- def _cancel(self, call):
- call.cancel()
- self._rpc_states.pop(call, None)
-
- def join_rear_link(self, rear_link):
- """See base_interfaces.ForeLink.join_rear_link for specification."""
- self._rear_link = null.NULL_REAR_LINK if rear_link is None else rear_link
-
- def _start(self):
- """Starts this ForeLink.
-
- This method must be called before attempting to exchange tickets with this
- object.
- """
- with self._condition:
- address = '[::]:%d' % (
- 0 if self._requested_port is None else self._requested_port)
- self._completion_queue = _low.CompletionQueue()
- if self._root_certificates is None and not self._key_chain_pairs:
- self._server = _low.Server(self._completion_queue)
- self._port = self._server.add_http2_addr(address)
- else:
- server_credentials = _low.ServerCredentials(
- self._root_certificates, self._key_chain_pairs, False)
- self._server = _low.Server(self._completion_queue)
- self._port = self._server.add_secure_http2_addr(
- address, server_credentials)
- self._server.start()
-
- self._server.service(None)
-
- self._pool.submit(self._spin, self._completion_queue, self._server)
- self._spinning = True
-
- return self
-
- # TODO(nathaniel): Expose graceful-shutdown semantics in which this object
- # enters a state in which it finishes ongoing RPCs but refuses new ones.
- def _stop(self):
- """Stops this ForeLink.
-
- This method must be called for proper termination of this object, and no
- attempts to exchange tickets with this object may be made after this method
- has been called.
- """
- with self._condition:
- self._server.stop()
- # TODO(nathaniel): Yep, this is weird. Deleting a server shouldn't have a
- # behaviorally significant side-effect.
- self._server = None
- self._completion_queue.stop()
-
- while self._spinning:
- self._condition.wait()
-
- self._port = None
-
- def __enter__(self):
- """See activated.Activated.__enter__ for specification."""
- return self._start()
-
- def __exit__(self, exc_type, exc_val, exc_tb):
- """See activated.Activated.__exit__ for specification."""
- self._stop()
- return False
-
- def start(self):
- """See activated.Activated.start for specification."""
- return self._start()
-
- def stop(self):
- """See activated.Activated.stop for specification."""
- self._stop()
-
- def port(self):
- """Identifies the port on which this ForeLink is servicing RPCs.
-
- Returns:
- The number of the port on which this ForeLink is servicing RPCs, or None
- if this ForeLink is not currently activated and servicing RPCs.
- """
- with self._condition:
- return self._port
-
- def accept_back_to_front_ticket(self, ticket):
- """See base_interfaces.ForeLink.accept_back_to_front_ticket for spec."""
- with self._condition:
- if self._server is None:
- return
-
- if ticket.kind is base_interfaces.BackToFrontTicket.Kind.CONTINUATION:
- self._continue(ticket.operation_id, ticket.payload)
- elif ticket.kind is base_interfaces.BackToFrontTicket.Kind.COMPLETION:
- self._complete(ticket.operation_id, ticket.payload)
- else:
- self._cancel(ticket.operation_id)
diff --git a/src/python/grpcio/grpc/_adapter/rear.py b/src/python/grpcio/grpc/_adapter/rear.py
deleted file mode 100644
index 17fa47f746..0000000000
--- a/src/python/grpcio/grpc/_adapter/rear.py
+++ /dev/null
@@ -1,395 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""The RPC-invocation-side bridge between RPC Framework and GRPC-on-the-wire."""
-
-import enum
-import logging
-import threading
-import time
-
-from grpc._adapter import _common
-from grpc._adapter import _intermediary_low as _low
-from grpc.framework.base import interfaces as base_interfaces
-from grpc.framework.base import null
-from grpc.framework.foundation import activated
-from grpc.framework.foundation import logging_pool
-
-_THREAD_POOL_SIZE = 10
-
-_INVOCATION_EVENT_KINDS = (
- _low.Event.Kind.METADATA_ACCEPTED,
- _low.Event.Kind.FINISH
-)
-
-
-@enum.unique
-class _LowWrite(enum.Enum):
- """The possible categories of low-level write state."""
-
- OPEN = 'OPEN'
- ACTIVE = 'ACTIVE'
- CLOSED = 'CLOSED'
-
-
-class _RPCState(object):
- """The full state of any tracked RPC.
-
- Attributes:
- call: The _low.Call object for the RPC.
- outstanding: The set of Event.Kind values describing expected future events
- for the RPC.
- active: A boolean indicating whether or not the RPC is active.
- common: An _common.RPCState describing additional state for the RPC.
- """
-
- def __init__(self, call, outstanding, active, common):
- self.call = call
- self.outstanding = outstanding
- self.active = active
- self.common = common
-
-
-def _write(operation_id, call, outstanding, write_state, serialized_payload):
- if write_state.low is _LowWrite.OPEN:
- call.write(serialized_payload, operation_id, 0)
- outstanding.add(_low.Event.Kind.WRITE_ACCEPTED)
- write_state.low = _LowWrite.ACTIVE
- elif write_state.low is _LowWrite.ACTIVE:
- write_state.pending.append(serialized_payload)
- else:
- raise ValueError('Write attempted after writes completed!')
-
-
-class RearLink(base_interfaces.RearLink, activated.Activated):
- """An invocation-side bridge between RPC Framework and the C-ish _low code."""
-
- def __init__(
- self, host, port, pool, request_serializers, response_deserializers,
- secure, root_certificates, private_key, certificate_chain,
- metadata_transformer=None, server_host_override=None):
- """Constructor.
-
- Args:
- host: The host to which to connect for RPC service.
- port: The port to which to connect for RPC service.
- pool: A thread pool.
- request_serializers: A dict from RPC method names to request object
- serializer behaviors.
- response_deserializers: A dict from RPC method names to response object
- deserializer behaviors.
- secure: A boolean indicating whether or not to use a secure connection.
- root_certificates: The PEM-encoded root certificates or None to ask for
- them to be retrieved from a default location.
- private_key: The PEM-encoded private key to use or None if no private
- key should be used.
- certificate_chain: The PEM-encoded certificate chain to use or None if
- no certificate chain should be used.
- metadata_transformer: A function that given a metadata object produces
- another metadata to be used in the underlying communication on the
- wire.
- server_host_override: (For testing only) the target name used for SSL
- host name checking.
- """
- self._condition = threading.Condition()
- self._host = host
- self._port = port
- self._pool = pool
- self._request_serializers = request_serializers
- self._response_deserializers = response_deserializers
-
- self._fore_link = null.NULL_FORE_LINK
- self._completion_queue = None
- self._channel = None
- self._rpc_states = {}
- self._spinning = False
- if secure:
- self._client_credentials = _low.ClientCredentials(
- root_certificates, private_key, certificate_chain)
- else:
- self._client_credentials = None
- self._root_certificates = root_certificates
- self._private_key = private_key
- self._certificate_chain = certificate_chain
- self._metadata_transformer = metadata_transformer
- self._server_host_override = server_host_override
-
- def _on_write_event(self, operation_id, event, rpc_state):
- if event.write_accepted:
- if rpc_state.common.write.pending:
- rpc_state.call.write(
- rpc_state.common.write.pending.pop(0), operation_id, 0)
- rpc_state.outstanding.add(_low.Event.Kind.WRITE_ACCEPTED)
- elif rpc_state.common.write.high is _common.HighWrite.CLOSED:
- rpc_state.call.complete(operation_id)
- rpc_state.outstanding.add(_low.Event.Kind.COMPLETE_ACCEPTED)
- rpc_state.common.write.low = _LowWrite.CLOSED
- else:
- rpc_state.common.write.low = _LowWrite.OPEN
- else:
- logging.error('RPC write not accepted! Event: %s', (event,))
- rpc_state.active = False
- ticket = base_interfaces.BackToFrontTicket(
- operation_id, rpc_state.common.sequence_number,
- base_interfaces.BackToFrontTicket.Kind.TRANSMISSION_FAILURE, None)
- rpc_state.common.sequence_number += 1
- self._fore_link.accept_back_to_front_ticket(ticket)
-
- def _on_read_event(self, operation_id, event, rpc_state):
- if event.bytes is not None:
- rpc_state.call.read(operation_id)
- rpc_state.outstanding.add(_low.Event.Kind.READ_ACCEPTED)
-
- ticket = base_interfaces.BackToFrontTicket(
- operation_id, rpc_state.common.sequence_number,
- base_interfaces.BackToFrontTicket.Kind.CONTINUATION,
- rpc_state.common.deserializer(event.bytes))
- rpc_state.common.sequence_number += 1
- self._fore_link.accept_back_to_front_ticket(ticket)
-
- def _on_complete_event(self, operation_id, event, rpc_state):
- if not event.complete_accepted:
- logging.error('RPC complete not accepted! Event: %s', (event,))
- rpc_state.active = False
- ticket = base_interfaces.BackToFrontTicket(
- operation_id, rpc_state.common.sequence_number,
- base_interfaces.BackToFrontTicket.Kind.TRANSMISSION_FAILURE, None)
- rpc_state.common.sequence_number += 1
- self._fore_link.accept_back_to_front_ticket(ticket)
-
- # TODO(nathaniel): Metadata support.
- def _on_metadata_event(self, operation_id, event, rpc_state): # pylint: disable=unused-argument
- rpc_state.call.read(operation_id)
- rpc_state.outstanding.add(_low.Event.Kind.READ_ACCEPTED)
-
- def _on_finish_event(self, operation_id, event, rpc_state):
- """Handle termination of an RPC."""
- # TODO(nathaniel): Cover all statuses.
- if event.status.code is _low.Code.OK:
- kind = base_interfaces.BackToFrontTicket.Kind.COMPLETION
- elif event.status.code is _low.Code.CANCELLED:
- kind = base_interfaces.BackToFrontTicket.Kind.CANCELLATION
- elif event.status.code is _low.Code.DEADLINE_EXCEEDED:
- kind = base_interfaces.BackToFrontTicket.Kind.EXPIRATION
- else:
- kind = base_interfaces.BackToFrontTicket.Kind.TRANSMISSION_FAILURE
- ticket = base_interfaces.BackToFrontTicket(
- operation_id, rpc_state.common.sequence_number, kind, None)
- rpc_state.common.sequence_number += 1
- self._fore_link.accept_back_to_front_ticket(ticket)
-
- def _spin(self, completion_queue):
- while True:
- event = completion_queue.get(None)
- operation_id = event.tag
-
- with self._condition:
- rpc_state = self._rpc_states[operation_id]
- rpc_state.outstanding.remove(event.kind)
- if rpc_state.active and self._completion_queue is not None:
- if event.kind is _low.Event.Kind.WRITE_ACCEPTED:
- self._on_write_event(operation_id, event, rpc_state)
- elif event.kind is _low.Event.Kind.METADATA_ACCEPTED:
- self._on_metadata_event(operation_id, event, rpc_state)
- elif event.kind is _low.Event.Kind.READ_ACCEPTED:
- self._on_read_event(operation_id, event, rpc_state)
- elif event.kind is _low.Event.Kind.COMPLETE_ACCEPTED:
- self._on_complete_event(operation_id, event, rpc_state)
- elif event.kind is _low.Event.Kind.FINISH:
- self._on_finish_event(operation_id, event, rpc_state)
- else:
- logging.error('Illegal RPC event! %s', (event,))
-
- if not rpc_state.outstanding:
- self._rpc_states.pop(operation_id)
- if not self._rpc_states:
- self._spinning = False
- self._condition.notify_all()
- return
-
- def _invoke(self, operation_id, name, high_state, payload, timeout):
- """Invoke an RPC.
-
- Args:
- operation_id: Any object to be used as an operation ID for the RPC.
- name: The RPC method name.
- high_state: A _common.HighWrite value representing the "high write state"
- of the RPC.
- payload: A payload object for the RPC or None if no payload was given at
- invocation-time.
- timeout: A duration of time in seconds to allow for the RPC.
- """
- request_serializer = self._request_serializers[name]
- call = _low.Call(self._channel, self._completion_queue, name, self._host, time.time() + timeout)
- if self._metadata_transformer is not None:
- metadata = self._metadata_transformer([])
- for metadata_key, metadata_value in metadata:
- call.add_metadata(metadata_key, metadata_value)
- call.invoke(self._completion_queue, operation_id, operation_id)
- outstanding = set(_INVOCATION_EVENT_KINDS)
-
- if payload is None:
- if high_state is _common.HighWrite.CLOSED:
- call.complete(operation_id)
- low_state = _LowWrite.CLOSED
- outstanding.add(_low.Event.Kind.COMPLETE_ACCEPTED)
- else:
- low_state = _LowWrite.OPEN
- else:
- serialized_payload = request_serializer(payload)
- call.write(serialized_payload, operation_id, 0)
- outstanding.add(_low.Event.Kind.WRITE_ACCEPTED)
- low_state = _LowWrite.ACTIVE
-
- write_state = _common.WriteState(low_state, high_state, [])
- common_state = _common.CommonRPCState(
- write_state, 0, self._response_deserializers[name], request_serializer)
- self._rpc_states[operation_id] = _RPCState(
- call, outstanding, True, common_state)
-
- if not self._spinning:
- self._pool.submit(self._spin, self._completion_queue)
- self._spinning = True
-
- def _commence(self, operation_id, name, payload, timeout):
- self._invoke(operation_id, name, _common.HighWrite.OPEN, payload, timeout)
-
- def _continue(self, operation_id, payload):
- rpc_state = self._rpc_states.get(operation_id, None)
- if rpc_state is None or not rpc_state.active:
- return
-
- _write(
- operation_id, rpc_state.call, rpc_state.outstanding,
- rpc_state.common.write, rpc_state.common.serializer(payload))
-
- def _complete(self, operation_id, payload):
- """Close writes associated with an ongoing RPC.
-
- Args:
- operation_id: Any object being use as an operation ID for the RPC.
- payload: A payload object for the RPC (and thus the last payload object
- for the RPC) or None if no payload was given along with the instruction
- to indicate the end of writes for the RPC.
- """
- rpc_state = self._rpc_states.get(operation_id, None)
- if rpc_state is None or not rpc_state.active:
- return
-
- write_state = rpc_state.common.write
- if payload is None:
- if write_state.low is _LowWrite.OPEN:
- rpc_state.call.complete(operation_id)
- rpc_state.outstanding.add(_low.Event.Kind.COMPLETE_ACCEPTED)
- write_state.low = _LowWrite.CLOSED
- else:
- _write(
- operation_id, rpc_state.call, rpc_state.outstanding, write_state,
- rpc_state.common.serializer(payload))
- write_state.high = _common.HighWrite.CLOSED
-
- def _entire(self, operation_id, name, payload, timeout):
- self._invoke(operation_id, name, _common.HighWrite.CLOSED, payload, timeout)
-
- def _cancel(self, operation_id):
- rpc_state = self._rpc_states.get(operation_id, None)
- if rpc_state is not None and rpc_state.active:
- rpc_state.call.cancel()
- rpc_state.active = False
-
- def join_fore_link(self, fore_link):
- """See base_interfaces.RearLink.join_fore_link for specification."""
- with self._condition:
- self._fore_link = null.NULL_FORE_LINK if fore_link is None else fore_link
-
- def _start(self):
- """Starts this RearLink.
-
- This method must be called before attempting to exchange tickets with this
- object.
- """
- with self._condition:
- self._completion_queue = _low.CompletionQueue()
- self._channel = _low.Channel(
- '%s:%d' % (self._host, self._port), self._client_credentials,
- server_host_override=self._server_host_override)
- return self
-
- def _stop(self):
- """Stops this RearLink.
-
- This method must be called for proper termination of this object, and no
- attempts to exchange tickets with this object may be made after this method
- has been called.
- """
- with self._condition:
- self._completion_queue.stop()
- self._completion_queue = None
-
- while self._spinning:
- self._condition.wait()
-
- def __enter__(self):
- """See activated.Activated.__enter__ for specification."""
- return self._start()
-
- def __exit__(self, exc_type, exc_val, exc_tb):
- """See activated.Activated.__exit__ for specification."""
- self._stop()
- return False
-
- def start(self):
- """See activated.Activated.start for specification."""
- return self._start()
-
- def stop(self):
- """See activated.Activated.stop for specification."""
- self._stop()
-
- def accept_front_to_back_ticket(self, ticket):
- """See base_interfaces.RearLink.accept_front_to_back_ticket for spec."""
- with self._condition:
- if self._completion_queue is None:
- return
-
- if ticket.kind is base_interfaces.FrontToBackTicket.Kind.COMMENCEMENT:
- self._commence(
- ticket.operation_id, ticket.name, ticket.payload, ticket.timeout)
- elif ticket.kind is base_interfaces.FrontToBackTicket.Kind.CONTINUATION:
- self._continue(ticket.operation_id, ticket.payload)
- elif ticket.kind is base_interfaces.FrontToBackTicket.Kind.COMPLETION:
- self._complete(ticket.operation_id, ticket.payload)
- elif ticket.kind is base_interfaces.FrontToBackTicket.Kind.ENTIRE:
- self._entire(
- ticket.operation_id, ticket.name, ticket.payload, ticket.timeout)
- elif ticket.kind is base_interfaces.FrontToBackTicket.Kind.CANCELLATION:
- self._cancel(ticket.operation_id)
- else:
- # NOTE(nathaniel): All other categories are treated as cancellation.
- self._cancel(ticket.operation_id)
diff --git a/src/python/grpcio/grpc/_cython/imports.generated.c b/src/python/grpcio/grpc/_cython/imports.generated.c
index 9ab0696702..f0a40dbb35 100644
--- a/src/python/grpcio/grpc/_cython/imports.generated.c
+++ b/src/python/grpcio/grpc/_cython/imports.generated.c
@@ -124,6 +124,7 @@ grpc_tracer_set_enabled_type grpc_tracer_set_enabled_import;
grpc_header_key_is_legal_type grpc_header_key_is_legal_import;
grpc_header_nonbin_value_is_legal_type grpc_header_nonbin_value_is_legal_import;
grpc_is_binary_header_type grpc_is_binary_header_import;
+grpc_call_error_to_string_type grpc_call_error_to_string_import;
grpc_auth_property_iterator_next_type grpc_auth_property_iterator_next_import;
grpc_auth_context_property_iterator_type grpc_auth_context_property_iterator_import;
grpc_auth_context_peer_identity_type grpc_auth_context_peer_identity_import;
@@ -393,6 +394,7 @@ void pygrpc_load_imports(HMODULE library) {
grpc_header_key_is_legal_import = (grpc_header_key_is_legal_type) GetProcAddress(library, "grpc_header_key_is_legal");
grpc_header_nonbin_value_is_legal_import = (grpc_header_nonbin_value_is_legal_type) GetProcAddress(library, "grpc_header_nonbin_value_is_legal");
grpc_is_binary_header_import = (grpc_is_binary_header_type) GetProcAddress(library, "grpc_is_binary_header");
+ grpc_call_error_to_string_import = (grpc_call_error_to_string_type) GetProcAddress(library, "grpc_call_error_to_string");
grpc_auth_property_iterator_next_import = (grpc_auth_property_iterator_next_type) GetProcAddress(library, "grpc_auth_property_iterator_next");
grpc_auth_context_property_iterator_import = (grpc_auth_context_property_iterator_type) GetProcAddress(library, "grpc_auth_context_property_iterator");
grpc_auth_context_peer_identity_import = (grpc_auth_context_peer_identity_type) GetProcAddress(library, "grpc_auth_context_peer_identity");
diff --git a/src/python/grpcio/grpc/_cython/imports.generated.h b/src/python/grpcio/grpc/_cython/imports.generated.h
index e50051ddc7..d5e810b7cf 100644
--- a/src/python/grpcio/grpc/_cython/imports.generated.h
+++ b/src/python/grpcio/grpc/_cython/imports.generated.h
@@ -322,6 +322,9 @@ extern grpc_header_nonbin_value_is_legal_type grpc_header_nonbin_value_is_legal_
typedef int(*grpc_is_binary_header_type)(const char *key, size_t length);
extern grpc_is_binary_header_type grpc_is_binary_header_import;
#define grpc_is_binary_header grpc_is_binary_header_import
+typedef const char *(*grpc_call_error_to_string_type)(grpc_call_error error);
+extern grpc_call_error_to_string_type grpc_call_error_to_string_import;
+#define grpc_call_error_to_string grpc_call_error_to_string_import
typedef const grpc_auth_property *(*grpc_auth_property_iterator_next_type)(grpc_auth_property_iterator *it);
extern grpc_auth_property_iterator_next_type grpc_auth_property_iterator_next_import;
#define grpc_auth_property_iterator_next grpc_auth_property_iterator_next_import
diff --git a/src/python/grpcio/grpc/early_adopter/__init__.py b/src/python/grpcio/grpc/early_adopter/__init__.py
deleted file mode 100644
index bff74be2c7..0000000000
--- a/src/python/grpcio/grpc/early_adopter/__init__.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-import warnings
-
-warnings.simplefilter('always', DeprecationWarning)
-warnings.warn('the alpha API (includes this package) is deprecated, '
- 'unmaintained, and no longer tested. Please migrate to the beta '
- 'API.', DeprecationWarning, stacklevel=2)
diff --git a/src/python/grpcio/grpc/early_adopter/implementations.py b/src/python/grpcio/grpc/early_adopter/implementations.py
deleted file mode 100644
index 9c396aa7ad..0000000000
--- a/src/python/grpcio/grpc/early_adopter/implementations.py
+++ /dev/null
@@ -1,262 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Entry points into GRPC."""
-
-import threading
-
-from grpc._adapter import fore as _fore
-from grpc._adapter import rear as _rear
-from grpc.framework.alpha import _face_utilities
-from grpc.framework.alpha import _reexport
-from grpc.framework.alpha import interfaces
-from grpc.framework.base import implementations as _base_implementations
-from grpc.framework.base import util as _base_utilities
-from grpc.framework.face import implementations as _face_implementations
-from grpc.framework.foundation import logging_pool
-
-_DEFAULT_THREAD_POOL_SIZE = 8
-_ONE_DAY_IN_SECONDS = 24 * 60 * 60
-
-
-class _Server(interfaces.Server):
-
- def __init__(
- self, breakdown, port, private_key, certificate_chain,
- thread_pool_size=_DEFAULT_THREAD_POOL_SIZE):
- self._lock = threading.Lock()
- self._breakdown = breakdown
- self._port = port
- if private_key is None or certificate_chain is None:
- self._key_chain_pairs = ()
- else:
- self._key_chain_pairs = ((private_key, certificate_chain),)
-
- self._pool_size = thread_pool_size
- self._pool = None
- self._back = None
- self._fore_link = None
-
- def _start(self):
- with self._lock:
- if self._pool is None:
- self._pool = logging_pool.pool(self._pool_size)
- servicer = _face_implementations.servicer(
- self._pool, self._breakdown.implementations, None)
- self._back = _base_implementations.back_link(
- servicer, self._pool, self._pool, self._pool, _ONE_DAY_IN_SECONDS,
- _ONE_DAY_IN_SECONDS)
- self._fore_link = _fore.ForeLink(
- self._pool, self._breakdown.request_deserializers,
- self._breakdown.response_serializers, None, self._key_chain_pairs,
- port=self._port)
- self._back.join_fore_link(self._fore_link)
- self._fore_link.join_rear_link(self._back)
- self._fore_link.start()
- else:
- raise ValueError('Server currently running!')
-
- def _stop(self):
- with self._lock:
- if self._pool is None:
- raise ValueError('Server not running!')
- else:
- self._fore_link.stop()
- _base_utilities.wait_for_idle(self._back)
- self._pool.shutdown(wait=True)
- self._fore_link = None
- self._back = None
- self._pool = None
-
- def __enter__(self):
- self._start()
- return self
-
- def __exit__(self, exc_type, exc_val, exc_tb):
- self._stop()
- return False
-
- def start(self):
- self._start()
-
- def stop(self):
- self._stop()
-
- def port(self):
- with self._lock:
- return self._fore_link.port()
-
-
-class _Stub(interfaces.Stub):
-
- def __init__(
- self, breakdown, host, port, secure, root_certificates, private_key,
- certificate_chain, metadata_transformer=None, server_host_override=None,
- thread_pool_size=_DEFAULT_THREAD_POOL_SIZE):
- self._lock = threading.Lock()
- self._breakdown = breakdown
- self._host = host
- self._port = port
- self._secure = secure
- self._root_certificates = root_certificates
- self._private_key = private_key
- self._certificate_chain = certificate_chain
- self._metadata_transformer = metadata_transformer
- self._server_host_override = server_host_override
-
- self._pool_size = thread_pool_size
- self._pool = None
- self._front = None
- self._rear_link = None
- self._understub = None
-
- def __enter__(self):
- with self._lock:
- if self._pool is None:
- self._pool = logging_pool.pool(self._pool_size)
- self._front = _base_implementations.front_link(
- self._pool, self._pool, self._pool)
- self._rear_link = _rear.RearLink(
- self._host, self._port, self._pool,
- self._breakdown.request_serializers,
- self._breakdown.response_deserializers, self._secure,
- self._root_certificates, self._private_key, self._certificate_chain,
- metadata_transformer=self._metadata_transformer,
- server_host_override=self._server_host_override)
- self._front.join_rear_link(self._rear_link)
- self._rear_link.join_fore_link(self._front)
- self._rear_link.start()
- self._understub = _face_implementations.dynamic_stub(
- self._breakdown.face_cardinalities, self._front, self._pool, '')
- else:
- raise ValueError('Tried to __enter__ already-__enter__ed Stub!')
- return self
-
- def __exit__(self, exc_type, exc_val, exc_tb):
- with self._lock:
- if self._pool is None:
- raise ValueError('Tried to __exit__ non-__enter__ed Stub!')
- else:
- self._rear_link.stop()
- _base_utilities.wait_for_idle(self._front)
- self._pool.shutdown(wait=True)
- self._rear_link = None
- self._front = None
- self._pool = None
- self._understub = None
- return False
-
- def __getattr__(self, attr):
- with self._lock:
- if self._pool is None:
- raise ValueError('Tried to __getattr__ non-__enter__ed Stub!')
- else:
- method_cardinality = self._breakdown.cardinalities.get(attr)
- underlying_attr = getattr(
- self._understub, self._breakdown.qualified_names.get(attr), None)
- if method_cardinality is interfaces.Cardinality.UNARY_UNARY:
- return _reexport.unary_unary_sync_async(underlying_attr)
- elif method_cardinality is interfaces.Cardinality.UNARY_STREAM:
- return lambda request, timeout: _reexport.cancellable_iterator(
- underlying_attr(request, timeout))
- elif method_cardinality is interfaces.Cardinality.STREAM_UNARY:
- return _reexport.stream_unary_sync_async(underlying_attr)
- elif method_cardinality is interfaces.Cardinality.STREAM_STREAM:
- return lambda request_iterator, timeout: (
- _reexport.cancellable_iterator(underlying_attr(
- request_iterator, timeout)))
- else:
- raise AttributeError(attr)
-
-
-def stub(
- service_name, methods, host, port, metadata_transformer=None, secure=False,
- root_certificates=None, private_key=None, certificate_chain=None,
- server_host_override=None, thread_pool_size=_DEFAULT_THREAD_POOL_SIZE):
- """Constructs an interfaces.Stub.
-
- Args:
- service_name: The package-qualified full name of the service.
- methods: A dictionary from RPC method name to
- interfaces.RpcMethodInvocationDescription describing the RPCs to be
- supported by the created stub. The RPC method names in the dictionary are
- not qualified by the service name or decorated in any other way.
- host: The host to which to connect for RPC service.
- port: The port to which to connect for RPC service.
- metadata_transformer: A callable that given a metadata object produces
- another metadata object to be used in the underlying communication on the
- wire.
- secure: Whether or not to construct the stub with a secure connection.
- root_certificates: The PEM-encoded root certificates or None to ask for
- them to be retrieved from a default location.
- private_key: The PEM-encoded private key to use or None if no private key
- should be used.
- certificate_chain: The PEM-encoded certificate chain to use or None if no
- certificate chain should be used.
- server_host_override: (For testing only) the target name used for SSL
- host name checking.
- thread_pool_size: The maximum number of threads to allow in the backing
- thread pool.
-
- Returns:
- An interfaces.Stub affording RPC invocation.
- """
- breakdown = _face_utilities.break_down_invocation(service_name, methods)
- return _Stub(
- breakdown, host, port, secure, root_certificates, private_key,
- certificate_chain, server_host_override=server_host_override,
- metadata_transformer=metadata_transformer,
- thread_pool_size=thread_pool_size)
-
-
-def server(
- service_name, methods, port, private_key=None, certificate_chain=None,
- thread_pool_size=_DEFAULT_THREAD_POOL_SIZE):
- """Constructs an interfaces.Server.
-
- Args:
- service_name: The package-qualified full name of the service.
- methods: A dictionary from RPC method name to
- interfaces.RpcMethodServiceDescription describing the RPCs to
- be serviced by the created server. The RPC method names in the dictionary
- are not qualified by the service name or decorated in any other way.
- port: The port on which to serve or zero to ask for a port to be
- automatically selected.
- private_key: A pem-encoded private key, or None for an insecure server.
- certificate_chain: A pem-encoded certificate chain, or None for an insecure
- server.
- thread_pool_size: The maximum number of threads to allow in the backing
- thread pool.
-
- Returns:
- An interfaces.Server that will serve secure traffic.
- """
- breakdown = _face_utilities.break_down_service(service_name, methods)
- return _Server(breakdown, port, private_key, certificate_chain,
- thread_pool_size=thread_pool_size)
diff --git a/src/python/grpcio/grpc/framework/alpha/__init__.py b/src/python/grpcio/grpc/framework/alpha/__init__.py
deleted file mode 100644
index bff74be2c7..0000000000
--- a/src/python/grpcio/grpc/framework/alpha/__init__.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-import warnings
-
-warnings.simplefilter('always', DeprecationWarning)
-warnings.warn('the alpha API (includes this package) is deprecated, '
- 'unmaintained, and no longer tested. Please migrate to the beta '
- 'API.', DeprecationWarning, stacklevel=2)
diff --git a/src/python/grpcio/grpc/framework/alpha/_face_utilities.py b/src/python/grpcio/grpc/framework/alpha/_face_utilities.py
deleted file mode 100644
index 15c47d5c92..0000000000
--- a/src/python/grpcio/grpc/framework/alpha/_face_utilities.py
+++ /dev/null
@@ -1,183 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-import abc
-import collections
-
-import six
-
-# face_interfaces is referenced from specification in this module.
-from grpc.framework.common import cardinality
-from grpc.framework.face import interfaces as face_interfaces # pylint: disable=unused-import
-from grpc.framework.face import utilities as face_utilities
-from grpc.framework.alpha import _reexport
-from grpc.framework.alpha import interfaces
-
-
-def _qualified_name(service_name, method_name):
- return '/%s/%s' % (service_name, method_name)
-
-
-# TODO(nathaniel): This structure is getting bloated; it could be shrunk if
-# implementations._Stub used a generic rather than a dynamic underlying
-# face-layer stub.
-class InvocationBreakdown(six.with_metaclass(abc.ABCMeta)):
- """An intermediate representation of invocation-side views of RPC methods.
-
- Attributes:
- cardinalities: A dictionary from RPC method name to interfaces.Cardinality
- value.
- qualified_names: A dictionary from unqualified RPC method name to
- service-qualified RPC method name.
- face_cardinalities: A dictionary from service-qualified RPC method name to
- to cardinality.Cardinality value.
- request_serializers: A dictionary from service-qualified RPC method name to
- callable behavior to be used serializing request values for the RPC.
- response_deserializers: A dictionary from service-qualified RPC method name
- to callable behavior to be used deserializing response values for the
- RPC.
- """
-
-
-class _EasyInvocationBreakdown(
- InvocationBreakdown,
- collections.namedtuple(
- '_EasyInvocationBreakdown',
- ('cardinalities', 'qualified_names', 'face_cardinalities',
- 'request_serializers', 'response_deserializers'))):
- pass
-
-
-class ServiceBreakdown(six.with_metaclass(abc.ABCMeta)):
- """An intermediate representation of service-side views of RPC methods.
-
- Attributes:
- implementations: A dictionary from service-qualified RPC method name to
- face_interfaces.MethodImplementation implementing the RPC method.
- request_deserializers: A dictionary from service-qualified RPC method name
- to callable behavior to be used deserializing request values for the RPC.
- response_serializers: A dictionary from service-qualified RPC method name
- to callable behavior to be used serializing response values for the RPC.
- """
-
-
-class _EasyServiceBreakdown(
- ServiceBreakdown,
- collections.namedtuple(
- '_EasyServiceBreakdown',
- ('implementations', 'request_deserializers', 'response_serializers'))):
- pass
-
-
-def break_down_invocation(service_name, method_descriptions):
- """Derives an InvocationBreakdown from several RPC method descriptions.
-
- Args:
- service_name: The package-qualified full name of the service.
- method_descriptions: A dictionary from RPC method name to
- interfaces.RpcMethodInvocationDescription describing the RPCs.
-
- Returns:
- An InvocationBreakdown corresponding to the given method descriptions.
- """
- cardinalities = {}
- qualified_names = {}
- face_cardinalities = {}
- request_serializers = {}
- response_deserializers = {}
- for name, method_description in six.iteritems(method_descriptions):
- qualified_name = _qualified_name(service_name, name)
- method_cardinality = method_description.cardinality()
- cardinalities[name] = method_description.cardinality()
- qualified_names[name] = qualified_name
- face_cardinalities[qualified_name] = _reexport.common_cardinality(
- method_cardinality)
- request_serializers[qualified_name] = method_description.serialize_request
- response_deserializers[qualified_name] = (
- method_description.deserialize_response)
- return _EasyInvocationBreakdown(
- cardinalities, qualified_names, face_cardinalities, request_serializers,
- response_deserializers)
-
-
-def break_down_service(service_name, method_descriptions):
- """Derives a ServiceBreakdown from several RPC method descriptions.
-
- Args:
- method_descriptions: A dictionary from RPC method name to
- interfaces.RpcMethodServiceDescription describing the RPCs.
-
- Returns:
- A ServiceBreakdown corresponding to the given method descriptions.
- """
- implementations = {}
- request_deserializers = {}
- response_serializers = {}
- for name, method_description in six.iteritems(method_descriptions):
- qualified_name = _qualified_name(service_name, name)
- method_cardinality = method_description.cardinality()
- if method_cardinality is interfaces.Cardinality.UNARY_UNARY:
- def service(
- request, face_rpc_context,
- service_behavior=method_description.service_unary_unary):
- return service_behavior(
- request, _reexport.rpc_context(face_rpc_context))
- implementations[qualified_name] = face_utilities.unary_unary_inline(
- service)
- elif method_cardinality is interfaces.Cardinality.UNARY_STREAM:
- def service(
- request, face_rpc_context,
- service_behavior=method_description.service_unary_stream):
- return service_behavior(
- request, _reexport.rpc_context(face_rpc_context))
- implementations[qualified_name] = face_utilities.unary_stream_inline(
- service)
- elif method_cardinality is interfaces.Cardinality.STREAM_UNARY:
- def service(
- request_iterator, face_rpc_context,
- service_behavior=method_description.service_stream_unary):
- return service_behavior(
- request_iterator, _reexport.rpc_context(face_rpc_context))
- implementations[qualified_name] = face_utilities.stream_unary_inline(
- service)
- elif method_cardinality is interfaces.Cardinality.STREAM_STREAM:
- def service(
- request_iterator, face_rpc_context,
- service_behavior=method_description.service_stream_stream):
- return service_behavior(
- request_iterator, _reexport.rpc_context(face_rpc_context))
- implementations[qualified_name] = face_utilities.stream_stream_inline(
- service)
- request_deserializers[qualified_name] = (
- method_description.deserialize_request)
- response_serializers[qualified_name] = (
- method_description.serialize_response)
-
- return _EasyServiceBreakdown(
- implementations, request_deserializers, response_serializers)
diff --git a/src/python/grpcio/grpc/framework/alpha/_reexport.py b/src/python/grpcio/grpc/framework/alpha/_reexport.py
deleted file mode 100644
index e027077a77..0000000000
--- a/src/python/grpcio/grpc/framework/alpha/_reexport.py
+++ /dev/null
@@ -1,205 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-import six
-
-from grpc.framework.common import cardinality
-from grpc.framework.face import exceptions as face_exceptions
-from grpc.framework.face import interfaces as face_interfaces
-from grpc.framework.foundation import future
-from grpc.framework.alpha import exceptions
-from grpc.framework.alpha import interfaces
-
-_EARLY_ADOPTER_CARDINALITY_TO_COMMON_CARDINALITY = {
- interfaces.Cardinality.UNARY_UNARY: cardinality.Cardinality.UNARY_UNARY,
- interfaces.Cardinality.UNARY_STREAM: cardinality.Cardinality.UNARY_STREAM,
- interfaces.Cardinality.STREAM_UNARY: cardinality.Cardinality.STREAM_UNARY,
- interfaces.Cardinality.STREAM_STREAM: cardinality.Cardinality.STREAM_STREAM,
-}
-
-_ABORTION_REEXPORT = {
- face_interfaces.Abortion.CANCELLED: interfaces.Abortion.CANCELLED,
- face_interfaces.Abortion.EXPIRED: interfaces.Abortion.EXPIRED,
- face_interfaces.Abortion.NETWORK_FAILURE:
- interfaces.Abortion.NETWORK_FAILURE,
- face_interfaces.Abortion.SERVICED_FAILURE:
- interfaces.Abortion.SERVICED_FAILURE,
- face_interfaces.Abortion.SERVICER_FAILURE:
- interfaces.Abortion.SERVICER_FAILURE,
-}
-
-
-class _RpcError(exceptions.RpcError):
- pass
-
-
-def _reexport_error(face_rpc_error):
- if isinstance(face_rpc_error, face_exceptions.CancellationError):
- return exceptions.CancellationError()
- elif isinstance(face_rpc_error, face_exceptions.ExpirationError):
- return exceptions.ExpirationError()
- else:
- return _RpcError()
-
-
-def _as_face_abortion_callback(abortion_callback):
- def face_abortion_callback(face_abortion):
- abortion_callback(_ABORTION_REEXPORT[face_abortion])
- return face_abortion_callback
-
-
-class _ReexportedFuture(future.Future):
-
- def __init__(self, face_future):
- self._face_future = face_future
-
- def cancel(self):
- return self._face_future.cancel()
-
- def cancelled(self):
- return self._face_future.cancelled()
-
- def running(self):
- return self._face_future.running()
-
- def done(self):
- return self._face_future.done()
-
- def result(self, timeout=None):
- try:
- return self._face_future.result(timeout=timeout)
- except face_exceptions.RpcError as e:
- raise _reexport_error(e)
-
- def exception(self, timeout=None):
- face_error = self._face_future.exception(timeout=timeout)
- return None if face_error is None else _reexport_error(face_error)
-
- def traceback(self, timeout=None):
- return self._face_future.traceback(timeout=timeout)
-
- def add_done_callback(self, fn):
- self._face_future.add_done_callback(lambda unused_face_future: fn(self))
-
-
-def _call_reexporting_errors(behavior, *args, **kwargs):
- try:
- return behavior(*args, **kwargs)
- except face_exceptions.RpcError as e:
- raise _reexport_error(e)
-
-
-def _reexported_future(face_future):
- return _ReexportedFuture(face_future)
-
-
-class _CancellableIterator(interfaces.CancellableIterator):
-
- def __init__(self, face_cancellable_iterator):
- self._face_cancellable_iterator = face_cancellable_iterator
-
- def __iter__(self):
- return self
-
- def next(self):
- return _call_reexporting_errors(self._face_cancellable_iterator.next)
-
- def cancel(self):
- self._face_cancellable_iterator.cancel()
-
-
-class _RpcContext(interfaces.RpcContext):
-
- def __init__(self, face_rpc_context):
- self._face_rpc_context = face_rpc_context
-
- def is_active(self):
- return self._face_rpc_context.is_active()
-
- def time_remaining(self):
- return self._face_rpc_context.time_remaining()
-
- def add_abortion_callback(self, abortion_callback):
- self._face_rpc_context.add_abortion_callback(
- _as_face_abortion_callback(abortion_callback))
-
-
-class _UnaryUnarySyncAsync(interfaces.UnaryUnarySyncAsync):
-
- def __init__(self, face_unary_unary_multi_callable):
- self._underlying = face_unary_unary_multi_callable
-
- def __call__(self, request, timeout):
- return _call_reexporting_errors(
- self._underlying, request, timeout)
-
- def async(self, request, timeout):
- return _ReexportedFuture(self._underlying.future(request, timeout))
-
-
-class _StreamUnarySyncAsync(interfaces.StreamUnarySyncAsync):
-
- def __init__(self, face_stream_unary_multi_callable):
- self._underlying = face_stream_unary_multi_callable
-
- def __call__(self, request_iterator, timeout):
- return _call_reexporting_errors(
- self._underlying, request_iterator, timeout)
-
- def async(self, request_iterator, timeout):
- return _ReexportedFuture(self._underlying.future(request_iterator, timeout))
-
-
-def common_cardinality(early_adopter_cardinality):
- return _EARLY_ADOPTER_CARDINALITY_TO_COMMON_CARDINALITY[
- early_adopter_cardinality]
-
-
-def common_cardinalities(early_adopter_cardinalities):
- common_cardinalities = {}
- for name, early_adopter_cardinality in six.iteritems(early_adopter_cardinalities):
- common_cardinalities[name] = _EARLY_ADOPTER_CARDINALITY_TO_COMMON_CARDINALITY[
- early_adopter_cardinality]
- return common_cardinalities
-
-
-def rpc_context(face_rpc_context):
- return _RpcContext(face_rpc_context)
-
-
-def cancellable_iterator(face_cancellable_iterator):
- return _CancellableIterator(face_cancellable_iterator)
-
-
-def unary_unary_sync_async(face_unary_unary_multi_callable):
- return _UnaryUnarySyncAsync(face_unary_unary_multi_callable)
-
-
-def stream_unary_sync_async(face_stream_unary_multi_callable):
- return _StreamUnarySyncAsync(face_stream_unary_multi_callable)
diff --git a/src/python/grpcio/grpc/framework/alpha/interfaces.py b/src/python/grpcio/grpc/framework/alpha/interfaces.py
deleted file mode 100644
index 48f144f614..0000000000
--- a/src/python/grpcio/grpc/framework/alpha/interfaces.py
+++ /dev/null
@@ -1,384 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Interfaces of GRPC."""
-
-import abc
-import enum
-
-import six
-
-# exceptions is referenced from specification in this module.
-from grpc.framework.alpha import exceptions # pylint: disable=unused-import
-from grpc.framework.foundation import activated
-from grpc.framework.foundation import future
-
-
-@enum.unique
-class Cardinality(enum.Enum):
- """Constants for the four cardinalities of RPC."""
-
- UNARY_UNARY = 'request-unary/response-unary'
- UNARY_STREAM = 'request-unary/response-streaming'
- STREAM_UNARY = 'request-streaming/response-unary'
- STREAM_STREAM = 'request-streaming/response-streaming'
-
-
-@enum.unique
-class Abortion(enum.Enum):
- """Categories of RPC abortion."""
-
- CANCELLED = 'cancelled'
- EXPIRED = 'expired'
- NETWORK_FAILURE = 'network failure'
- SERVICED_FAILURE = 'serviced failure'
- SERVICER_FAILURE = 'servicer failure'
-
-
-class CancellableIterator(six.with_metaclass(abc.ABCMeta)):
- """Implements the Iterator protocol and affords a cancel method."""
-
- @abc.abstractmethod
- def __iter__(self):
- """Returns the self object in accordance with the Iterator protocol."""
- raise NotImplementedError()
-
- def __next__(self):
- return self.next()
-
- @abc.abstractmethod
- def next(self):
- """Returns a value or raises StopIteration per the Iterator protocol."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def cancel(self):
- """Requests cancellation of whatever computation underlies this iterator."""
- raise NotImplementedError()
-
-
-class RpcContext(six.with_metaclass(abc.ABCMeta)):
- """Provides RPC-related information and action."""
-
- @abc.abstractmethod
- def is_active(self):
- """Describes whether the RPC is active or has terminated."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def time_remaining(self):
- """Describes the length of allowed time remaining for the RPC.
- Returns:
- A nonnegative float indicating the length of allowed time in seconds
- remaining for the RPC to complete before it is considered to have timed
- out.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def add_abortion_callback(self, abortion_callback):
- """Registers a callback to be called if the RPC is aborted.
- Args:
- abortion_callback: A callable to be called and passed an Abortion value
- in the event of RPC abortion.
- """
- raise NotImplementedError()
-
-
-class UnaryUnarySyncAsync(six.with_metaclass(abc.ABCMeta)):
- """Affords invoking a unary-unary RPC synchronously or asynchronously.
- Values implementing this interface are directly callable and present an
- "async" method. Both calls take a request value and a numeric timeout.
- Direct invocation of a value of this type invokes its associated RPC and
- blocks until the RPC's response is available. Calling the "async" method
- of a value of this type invokes its associated RPC and immediately returns a
- future.Future bound to the asynchronous execution of the RPC.
- """
-
- @abc.abstractmethod
- def __call__(self, request, timeout):
- """Synchronously invokes the underlying RPC.
- Args:
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
- Returns:
- The response value for the RPC.
- Raises:
- exceptions.RpcError: Indicating that the RPC was aborted.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def async(self, request, timeout):
- """Asynchronously invokes the underlying RPC.
- Args:
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
- Returns:
- A future.Future representing the RPC. In the event of RPC completion, the
- returned Future's result value will be the response value of the RPC.
- In the event of RPC abortion, the returned Future's exception value
- will be an exceptions.RpcError.
- """
- raise NotImplementedError()
-
-
-class StreamUnarySyncAsync(six.with_metaclass(abc.ABCMeta)):
- """Affords invoking a stream-unary RPC synchronously or asynchronously.
- Values implementing this interface are directly callable and present an
- "async" method. Both calls take an iterator of request values and a numeric
- timeout. Direct invocation of a value of this type invokes its associated RPC
- and blocks until the RPC's response is available. Calling the "async" method
- of a value of this type invokes its associated RPC and immediately returns a
- future.Future bound to the asynchronous execution of the RPC.
- """
-
- @abc.abstractmethod
- def __call__(self, request_iterator, timeout):
- """Synchronously invokes the underlying RPC.
-
- Args:
- request_iterator: An iterator that yields request values for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- The response value for the RPC.
-
- Raises:
- exceptions.RpcError: Indicating that the RPC was aborted.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def async(self, request_iterator, timeout):
- """Asynchronously invokes the underlying RPC.
-
- Args:
- request_iterator: An iterator that yields request values for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A future.Future representing the RPC. In the event of RPC completion, the
- returned Future's result value will be the response value of the RPC.
- In the event of RPC abortion, the returned Future's exception value
- will be an exceptions.RpcError.
- """
- raise NotImplementedError()
-
-
-class RpcMethodDescription(six.with_metaclass(abc.ABCMeta)):
- """A type for the common aspects of RPC method descriptions."""
-
- @abc.abstractmethod
- def cardinality(self):
- """Identifies the cardinality of this RpcMethodDescription.
-
- Returns:
- A Cardinality value identifying whether or not this
- RpcMethodDescription is request-unary or request-streaming and
- whether or not it is response-unary or response-streaming.
- """
- raise NotImplementedError()
-
-
-class RpcMethodInvocationDescription(six.with_metaclass(abc.ABCMeta, RpcMethodDescription)):
- """Invocation-side description of an RPC method."""
-
- @abc.abstractmethod
- def serialize_request(self, request):
- """Serializes a request value.
-
- Args:
- request: A request value appropriate for the RPC method described by this
- RpcMethodInvocationDescription.
-
- Returns:
- The serialization of the given request value as a
- bytestring.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def deserialize_response(self, serialized_response):
- """Deserializes a response value.
-
- Args:
- serialized_response: A bytestring that is the serialization of a response
- value appropriate for the RPC method described by this
- RpcMethodInvocationDescription.
-
- Returns:
- A response value corresponding to the given bytestring.
- """
- raise NotImplementedError()
-
-
-class RpcMethodServiceDescription(six.with_metaclass(abc.ABCMeta, RpcMethodDescription)):
- """Service-side description of an RPC method."""
-
- @abc.abstractmethod
- def deserialize_request(self, serialized_request):
- """Deserializes a request value.
-
- Args:
- serialized_request: A bytestring that is the serialization of a request
- value appropriate for the RPC method described by this
- RpcMethodServiceDescription.
-
- Returns:
- A request value corresponding to the given bytestring.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def serialize_response(self, response):
- """Serializes a response value.
-
- Args:
- response: A response value appropriate for the RPC method described by
- this RpcMethodServiceDescription.
-
- Returns:
- The serialization of the given response value as a
- bytestring.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def service_unary_unary(self, request, context):
- """Carries out this RPC.
-
- This method may only be called if the cardinality of this
- RpcMethodServiceDescription is Cardinality.UNARY_UNARY.
-
- Args:
- request: A request value appropriate for the RPC method described by this
- RpcMethodServiceDescription.
- context: An RpcContext object for the RPC.
-
- Returns:
- A response value appropriate for the RPC method described by this
- RpcMethodServiceDescription.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def service_unary_stream(self, request, context):
- """Carries out this RPC.
-
- This method may only be called if the cardinality of this
- RpcMethodServiceDescription is Cardinality.UNARY_STREAM.
-
- Args:
- request: A request value appropriate for the RPC method described by this
- RpcMethodServiceDescription.
- context: An RpcContext object for the RPC.
-
- Yields:
- Zero or more response values appropriate for the RPC method described by
- this RpcMethodServiceDescription.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def service_stream_unary(self, request_iterator, context):
- """Carries out this RPC.
-
- This method may only be called if the cardinality of this
- RpcMethodServiceDescription is Cardinality.STREAM_UNARY.
-
- Args:
- request_iterator: An iterator of request values appropriate for the RPC
- method described by this RpcMethodServiceDescription.
- context: An RpcContext object for the RPC.
-
- Returns:
- A response value appropriate for the RPC method described by this
- RpcMethodServiceDescription.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def service_stream_stream(self, request_iterator, context):
- """Carries out this RPC.
-
- This method may only be called if the cardinality of this
- RpcMethodServiceDescription is Cardinality.STREAM_STREAM.
-
- Args:
- request_iterator: An iterator of request values appropriate for the RPC
- method described by this RpcMethodServiceDescription.
- context: An RpcContext object for the RPC.
-
- Yields:
- Zero or more response values appropriate for the RPC method described by
- this RpcMethodServiceDescription.
- """
- raise NotImplementedError()
-
-
-class Stub(six.with_metaclass(abc.ABCMeta)):
- """A stub with callable RPC method names for attributes.
-
- Instances of this type are context managers and only afford RPC invocation
- when used in context.
-
- Instances of this type, when used in context, respond to attribute access
- as follows: if the requested attribute is the name of a unary-unary RPC
- method, the value of the attribute will be a UnaryUnarySyncAsync with which
- to invoke the RPC method. If the requested attribute is the name of a
- unary-stream RPC method, the value of the attribute will be a callable taking
- a request object and a timeout parameter and returning a CancellableIterator
- that yields the response values of the RPC. If the requested attribute is the
- name of a stream-unary RPC method, the value of the attribute will be a
- StreamUnarySyncAsync with which to invoke the RPC method. If the requested
- attribute is the name of a stream-stream RPC method, the value of the
- attribute will be a callable taking an iterator of request objects and a
- timeout and returning a CancellableIterator that yields the response values
- of the RPC.
-
- In all cases indication of abortion is indicated by raising of
- exceptions.RpcError, exceptions.CancellationError,
- and exceptions.ExpirationError.
- """
-
-
-class Server(six.with_metaclass(abc.ABCMeta, activated.Activated)):
- """A GRPC Server."""
-
- @abc.abstractmethod
- def port(self):
- """Reports the port on which the server is serving.
-
- This method may only be called while the server is activated.
-
- Returns:
- The port on which the server is serving.
- """
- raise NotImplementedError()
diff --git a/src/python/grpcio/grpc/framework/alpha/utilities.py b/src/python/grpcio/grpc/framework/alpha/utilities.py
deleted file mode 100644
index 7d7f78f5e4..0000000000
--- a/src/python/grpcio/grpc/framework/alpha/utilities.py
+++ /dev/null
@@ -1,269 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Utilities for use with GRPC."""
-
-from grpc.framework.alpha import interfaces
-
-
-class _RpcMethodDescription(
- interfaces.RpcMethodInvocationDescription,
- interfaces.RpcMethodServiceDescription):
-
- def __init__(
- self, cardinality, unary_unary, unary_stream, stream_unary,
- stream_stream, request_serializer, request_deserializer,
- response_serializer, response_deserializer):
- self._cardinality = cardinality
- self._unary_unary = unary_unary
- self._unary_stream = unary_stream
- self._stream_unary = stream_unary
- self._stream_stream = stream_stream
- self._request_serializer = request_serializer
- self._request_deserializer = request_deserializer
- self._response_serializer = response_serializer
- self._response_deserializer = response_deserializer
-
- def cardinality(self):
- """See interfaces.RpcMethodDescription.cardinality for specification."""
- return self._cardinality
-
- def serialize_request(self, request):
- """See interfaces.RpcMethodInvocationDescription.serialize_request."""
- return self._request_serializer(request)
-
- def deserialize_request(self, serialized_request):
- """See interfaces.RpcMethodServiceDescription.deserialize_request."""
- return self._request_deserializer(serialized_request)
-
- def serialize_response(self, response):
- """See interfaces.RpcMethodServiceDescription.serialize_response."""
- return self._response_serializer(response)
-
- def deserialize_response(self, serialized_response):
- """See interfaces.RpcMethodInvocationDescription.deserialize_response."""
- return self._response_deserializer(serialized_response)
-
- def service_unary_unary(self, request, context):
- """See interfaces.RpcMethodServiceDescription.service_unary_unary."""
- return self._unary_unary(request, context)
-
- def service_unary_stream(self, request, context):
- """See interfaces.RpcMethodServiceDescription.service_unary_stream."""
- return self._unary_stream(request, context)
-
- def service_stream_unary(self, request_iterator, context):
- """See interfaces.RpcMethodServiceDescription.service_stream_unary."""
- return self._stream_unary(request_iterator, context)
-
- def service_stream_stream(self, request_iterator, context):
- """See interfaces.RpcMethodServiceDescription.service_stream_stream."""
- return self._stream_stream(request_iterator, context)
-
-
-def unary_unary_invocation_description(
- request_serializer, response_deserializer):
- """Creates an interfaces.RpcMethodInvocationDescription for an RPC method.
-
- Args:
- request_serializer: A callable that when called on a request
- value returns a bytestring corresponding to that value.
- response_deserializer: A callable that when called on a
- bytestring returns the response value corresponding to
- that bytestring.
-
- Returns:
- An interfaces.RpcMethodInvocationDescription constructed from the given
- arguments representing a unary-request/unary-response RPC method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.UNARY_UNARY, None, None, None, None,
- request_serializer, None, None, response_deserializer)
-
-
-def unary_stream_invocation_description(
- request_serializer, response_deserializer):
- """Creates an interfaces.RpcMethodInvocationDescription for an RPC method.
-
- Args:
- request_serializer: A callable that when called on a request
- value returns a bytestring corresponding to that value.
- response_deserializer: A callable that when called on a
- bytestring returns the response value corresponding to
- that bytestring.
-
- Returns:
- An interfaces.RpcMethodInvocationDescription constructed from the given
- arguments representing a unary-request/streaming-response RPC method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.UNARY_STREAM, None, None, None, None,
- request_serializer, None, None, response_deserializer)
-
-
-def stream_unary_invocation_description(
- request_serializer, response_deserializer):
- """Creates an interfaces.RpcMethodInvocationDescription for an RPC method.
-
- Args:
- request_serializer: A callable that when called on a request
- value returns a bytestring corresponding to that value.
- response_deserializer: A callable that when called on a
- bytestring returns the response value corresponding to
- that bytestring.
-
- Returns:
- An interfaces.RpcMethodInvocationDescription constructed from the given
- arguments representing a streaming-request/unary-response RPC method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.STREAM_UNARY, None, None, None, None,
- request_serializer, None, None, response_deserializer)
-
-
-def stream_stream_invocation_description(
- request_serializer, response_deserializer):
- """Creates an interfaces.RpcMethodInvocationDescription for an RPC method.
-
- Args:
- request_serializer: A callable that when called on a request
- value returns a bytestring corresponding to that value.
- response_deserializer: A callable that when called on a
- bytestring returns the response value corresponding to
- that bytestring.
-
- Returns:
- An interfaces.RpcMethodInvocationDescription constructed from the given
- arguments representing a streaming-request/streaming-response RPC
- method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.STREAM_STREAM, None, None, None, None,
- request_serializer, None, None, response_deserializer)
-
-
-def unary_unary_service_description(
- behavior, request_deserializer, response_serializer):
- """Creates an interfaces.RpcMethodServiceDescription for the given behavior.
-
- Args:
- behavior: A callable that implements a unary-unary RPC
- method that accepts a single request and an interfaces.RpcContext and
- returns a single response.
- request_deserializer: A callable that when called on a
- bytestring returns the request value corresponding to that
- bytestring.
- response_serializer: A callable that when called on a
- response value returns the bytestring corresponding to
- that value.
-
- Returns:
- An interfaces.RpcMethodServiceDescription constructed from the given
- arguments representing a unary-request/unary-response RPC
- method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.UNARY_UNARY, behavior, None, None, None,
- None, request_deserializer, response_serializer, None)
-
-
-def unary_stream_service_description(
- behavior, request_deserializer, response_serializer):
- """Creates an interfaces.RpcMethodServiceDescription for the given behavior.
-
- Args:
- behavior: A callable that implements a unary-stream RPC
- method that accepts a single request and an interfaces.RpcContext
- and returns an iterator of zero or more responses.
- request_deserializer: A callable that when called on a
- bytestring returns the request value corresponding to that
- bytestring.
- response_serializer: A callable that when called on a
- response value returns the bytestring corresponding to
- that value.
-
- Returns:
- An interfaces.RpcMethodServiceDescription constructed from the given
- arguments representing a unary-request/streaming-response
- RPC method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.UNARY_STREAM, None, behavior, None, None,
- None, request_deserializer, response_serializer, None)
-
-
-def stream_unary_service_description(
- behavior, request_deserializer, response_serializer):
- """Creates an interfaces.RpcMethodServiceDescription for the given behavior.
-
- Args:
- behavior: A callable that implements a stream-unary RPC
- method that accepts an iterator of zero or more requests
- and an interfaces.RpcContext and returns a single response.
- request_deserializer: A callable that when called on a
- bytestring returns the request value corresponding to that
- bytestring.
- response_serializer: A callable that when called on a
- response value returns the bytestring corresponding to
- that value.
-
- Returns:
- An interfaces.RpcMethodServiceDescription constructed from the given
- arguments representing a streaming-request/unary-response
- RPC method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.STREAM_UNARY, None, None, behavior, None,
- None, request_deserializer, response_serializer, None)
-
-
-def stream_stream_service_description(
- behavior, request_deserializer, response_serializer):
- """Creates an interfaces.RpcMethodServiceDescription for the given behavior.
-
- Args:
- behavior: A callable that implements a stream-stream RPC
- method that accepts an iterator of zero or more requests
- and an interfaces.RpcContext and returns an iterator of
- zero or more responses.
- request_deserializer: A callable that when called on a
- bytestring returns the request value corresponding to that
- bytestring.
- response_serializer: A callable that when called on a
- response value returns the bytestring corresponding to
- that value.
-
- Returns:
- An interfaces.RpcMethodServiceDescription constructed from the given
- arguments representing a
- streaming-request/streaming-response RPC method.
- """
- return _RpcMethodDescription(
- interfaces.Cardinality.STREAM_STREAM, None, None, None, behavior,
- None, request_deserializer, response_serializer, None)
diff --git a/src/python/grpcio/grpc/framework/base/_constants.py b/src/python/grpcio/grpc/framework/base/_constants.py
deleted file mode 100644
index 8fbdc82782..0000000000
--- a/src/python/grpcio/grpc/framework/base/_constants.py
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Private constants for the package."""
-
-INTERNAL_ERROR_LOG_MESSAGE = ':-( RPC Framework (Base) internal error! :-('
diff --git a/src/python/grpcio/grpc/framework/base/_context.py b/src/python/grpcio/grpc/framework/base/_context.py
deleted file mode 100644
index d84871d639..0000000000
--- a/src/python/grpcio/grpc/framework/base/_context.py
+++ /dev/null
@@ -1,99 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for operation context."""
-
-import time
-
-# _interfaces is referenced from specification in this module.
-from grpc.framework.base import interfaces
-from grpc.framework.base import _interfaces # pylint: disable=unused-import
-
-
-class OperationContext(interfaces.OperationContext):
- """An implementation of interfaces.OperationContext."""
-
- def __init__(
- self, lock, operation_id, local_failure, termination_manager,
- transmission_manager):
- """Constructor.
-
- Args:
- lock: The operation-wide lock.
- operation_id: An object identifying the operation.
- local_failure: Whichever one of interfaces.Outcome.SERVICED_FAILURE or
- interfaces.Outcome.SERVICER_FAILURE describes local failure of
- customer code.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- """
- self._lock = lock
- self._local_failure = local_failure
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._ingestion_manager = None
- self._expiration_manager = None
-
- self.operation_id = operation_id
-
- def set_ingestion_and_expiration_managers(
- self, ingestion_manager, expiration_manager):
- """Sets managers with which this OperationContext cooperates.
-
- Args:
- ingestion_manager: The _interfaces.IngestionManager for the operation.
- expiration_manager: The _interfaces.ExpirationManager for the operation.
- """
- self._ingestion_manager = ingestion_manager
- self._expiration_manager = expiration_manager
-
- def is_active(self):
- """See interfaces.OperationContext.is_active for specification."""
- with self._lock:
- return self._termination_manager.is_active()
-
- def add_termination_callback(self, callback):
- """See interfaces.OperationContext.add_termination_callback."""
- with self._lock:
- self._termination_manager.add_callback(callback)
-
- def time_remaining(self):
- """See interfaces.OperationContext.time_remaining for specification."""
- with self._lock:
- deadline = self._expiration_manager.deadline()
- return max(0.0, deadline - time.time())
-
- def fail(self, exception):
- """See interfaces.OperationContext.fail for specification."""
- with self._lock:
- self._termination_manager.abort(self._local_failure)
- self._transmission_manager.abort(self._local_failure)
- self._ingestion_manager.abort()
- self._expiration_manager.abort()
diff --git a/src/python/grpcio/grpc/framework/base/_emission.py b/src/python/grpcio/grpc/framework/base/_emission.py
deleted file mode 100644
index 1829669a72..0000000000
--- a/src/python/grpcio/grpc/framework/base/_emission.py
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for handling emitted values."""
-
-from grpc.framework.base import interfaces
-from grpc.framework.base import _interfaces
-
-
-class _EmissionManager(_interfaces.EmissionManager):
- """An implementation of _interfaces.EmissionManager."""
-
- def __init__(
- self, lock, failure_outcome, termination_manager, transmission_manager):
- """Constructor.
-
- Args:
- lock: The operation-wide lock.
- failure_outcome: Whichever one of interfaces.Outcome.SERVICED_FAILURE or
- interfaces.Outcome.SERVICER_FAILURE describes this object's methods
- being called inappropriately by customer code.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- """
- self._lock = lock
- self._failure_outcome = failure_outcome
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._ingestion_manager = None
- self._expiration_manager = None
-
- self._emission_complete = False
-
- def set_ingestion_manager_and_expiration_manager(
- self, ingestion_manager, expiration_manager):
- self._ingestion_manager = ingestion_manager
- self._expiration_manager = expiration_manager
-
- def _abort(self):
- self._termination_manager.abort(self._failure_outcome)
- self._transmission_manager.abort(self._failure_outcome)
- self._ingestion_manager.abort()
- self._expiration_manager.abort()
-
- def consume(self, value):
- with self._lock:
- if self._emission_complete:
- self._abort()
- else:
- self._transmission_manager.inmit(value, False)
-
- def terminate(self):
- with self._lock:
- if not self._emission_complete:
- self._termination_manager.emission_complete()
- self._transmission_manager.inmit(None, True)
- self._emission_complete = True
-
- def consume_and_terminate(self, value):
- with self._lock:
- if self._emission_complete:
- self._abort()
- else:
- self._termination_manager.emission_complete()
- self._transmission_manager.inmit(value, True)
- self._emission_complete = True
-
-
-def front_emission_manager(lock, termination_manager, transmission_manager):
- """Creates an _interfaces.EmissionManager appropriate for front-side use.
-
- Args:
- lock: The operation-wide lock.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the operation.
-
- Returns:
- An _interfaces.EmissionManager appropriate for front-side use.
- """
- return _EmissionManager(
- lock, interfaces.Outcome.SERVICED_FAILURE, termination_manager,
- transmission_manager)
-
-
-def back_emission_manager(lock, termination_manager, transmission_manager):
- """Creates an _interfaces.EmissionManager appropriate for back-side use.
-
- Args:
- lock: The operation-wide lock.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the operation.
-
- Returns:
- An _interfaces.EmissionManager appropriate for back-side use.
- """
- return _EmissionManager(
- lock, interfaces.Outcome.SERVICER_FAILURE, termination_manager,
- transmission_manager)
diff --git a/src/python/grpcio/grpc/framework/base/_ends.py b/src/python/grpcio/grpc/framework/base/_ends.py
deleted file mode 100644
index 176f3ac06e..0000000000
--- a/src/python/grpcio/grpc/framework/base/_ends.py
+++ /dev/null
@@ -1,399 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Implementations of FrontLinks and BackLinks."""
-
-import collections
-import threading
-import uuid
-
-# _interfaces is referenced from specification in this module.
-from grpc.framework.base import _cancellation
-from grpc.framework.base import _context
-from grpc.framework.base import _emission
-from grpc.framework.base import _expiration
-from grpc.framework.base import _ingestion
-from grpc.framework.base import _interfaces # pylint: disable=unused-import
-from grpc.framework.base import _reception
-from grpc.framework.base import _termination
-from grpc.framework.base import _transmission
-from grpc.framework.base import interfaces
-from grpc.framework.foundation import callable_util
-
-_IDLE_ACTION_EXCEPTION_LOG_MESSAGE = 'Exception calling idle action!'
-
-
-class _EasyOperation(interfaces.Operation):
- """A trivial implementation of interfaces.Operation."""
-
- def __init__(self, emission_manager, context, cancellation_manager):
- """Constructor.
-
- Args:
- emission_manager: The _interfaces.EmissionManager for the operation that
- will accept values emitted by customer code.
- context: The interfaces.OperationContext for use by the customer
- during the operation.
- cancellation_manager: The _interfaces.CancellationManager for the
- operation.
- """
- self.consumer = emission_manager
- self.context = context
- self._cancellation_manager = cancellation_manager
-
- def cancel(self):
- self._cancellation_manager.cancel()
-
-
-class _Endlette(object):
- """Utility for stateful behavior common to Fronts and Backs."""
-
- def __init__(self, pool):
- """Constructor.
-
- Args:
- pool: A thread pool to use when calling registered idle actions.
- """
- self._lock = threading.Lock()
- self._pool = pool
- # Dictionary from operation IDs to ReceptionManager-or-None. A None value
- # indicates an in-progress fire-and-forget operation for which the customer
- # has chosen to ignore results.
- self._operations = {}
- self._stats = {outcome: 0 for outcome in interfaces.Outcome}
- self._idle_actions = []
-
- def terminal_action(self, operation_id):
- """Constructs the termination action for a single operation.
-
- Args:
- operation_id: An operation ID.
-
- Returns:
- A callable that takes an operation outcome for an argument to be used as
- the termination action for the operation associated with the given
- operation ID.
- """
- def termination_action(outcome):
- with self._lock:
- self._stats[outcome] += 1
- self._operations.pop(operation_id, None)
- if not self._operations:
- for action in self._idle_actions:
- self._pool.submit(callable_util.with_exceptions_logged(
- action, _IDLE_ACTION_EXCEPTION_LOG_MESSAGE))
- self._idle_actions = []
- return termination_action
-
- def __enter__(self):
- self._lock.acquire()
-
- def __exit__(self, exc_type, exc_val, exc_tb):
- self._lock.release()
-
- def get_operation(self, operation_id):
- return self._operations.get(operation_id, None)
-
- def add_operation(self, operation_id, operation_reception_manager):
- self._operations[operation_id] = operation_reception_manager
-
- def operation_stats(self):
- with self._lock:
- return dict(self._stats)
-
- def add_idle_action(self, action):
- with self._lock:
- if self._operations:
- self._idle_actions.append(action)
- else:
- self._pool.submit(callable_util.with_exceptions_logged(
- action, _IDLE_ACTION_EXCEPTION_LOG_MESSAGE))
-
-
-class _FrontManagement(
- collections.namedtuple(
- '_FrontManagement',
- ('reception', 'emission', 'operation', 'cancellation'))):
- """Just a trivial helper class to bundle four fellow-traveling objects."""
-
-
-def _front_operate(
- callback, work_pool, transmission_pool, utility_pool,
- termination_action, operation_id, name, payload, complete, timeout,
- subscription, trace_id):
- """Constructs objects necessary for front-side operation management.
-
- Args:
- callback: A callable that accepts interfaces.FrontToBackTickets and
- delivers them to the other side of the operation. Execution of this
- callable may take any arbitrary length of time.
- work_pool: A thread pool in which to execute customer code.
- transmission_pool: A thread pool to use for transmitting to the other side
- of the operation.
- utility_pool: A thread pool for utility tasks.
- termination_action: A no-arg behavior to be called upon operation
- completion.
- operation_id: An object identifying the operation.
- name: The name of the method being called during the operation.
- payload: The first customer-significant value to be transmitted to the other
- side. May be None if there is no such value or if the customer chose not
- to pass it at operation invocation.
- complete: A boolean indicating whether or not additional payloads will be
- supplied by the customer.
- timeout: A length of time in seconds to allow for the operation.
- subscription: A interfaces.ServicedSubscription describing the
- customer's interest in the results of the operation.
- trace_id: A uuid.UUID identifying a set of related operations to which this
- operation belongs. May be None.
-
- Returns:
- A _FrontManagement object bundling together the
- _interfaces.ReceptionManager, _interfaces.EmissionManager,
- _context.OperationContext, and _interfaces.CancellationManager for the
- operation.
- """
- lock = threading.Lock()
- with lock:
- termination_manager = _termination.front_termination_manager(
- work_pool, utility_pool, termination_action, subscription.kind)
- transmission_manager = _transmission.front_transmission_manager(
- lock, transmission_pool, callback, operation_id, name,
- subscription.kind, trace_id, timeout, termination_manager)
- operation_context = _context.OperationContext(
- lock, operation_id, interfaces.Outcome.SERVICED_FAILURE,
- termination_manager, transmission_manager)
- emission_manager = _emission.front_emission_manager(
- lock, termination_manager, transmission_manager)
- ingestion_manager = _ingestion.front_ingestion_manager(
- lock, work_pool, subscription, termination_manager,
- transmission_manager, operation_context)
- expiration_manager = _expiration.front_expiration_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- timeout)
- reception_manager = _reception.front_reception_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager)
- cancellation_manager = _cancellation.CancellationManager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager)
-
- termination_manager.set_expiration_manager(expiration_manager)
- transmission_manager.set_ingestion_and_expiration_managers(
- ingestion_manager, expiration_manager)
- operation_context.set_ingestion_and_expiration_managers(
- ingestion_manager, expiration_manager)
- emission_manager.set_ingestion_manager_and_expiration_manager(
- ingestion_manager, expiration_manager)
- ingestion_manager.set_expiration_manager(expiration_manager)
-
- transmission_manager.inmit(payload, complete)
-
- if subscription.kind is interfaces.ServicedSubscription.Kind.NONE:
- returned_reception_manager = None
- else:
- returned_reception_manager = reception_manager
-
- return _FrontManagement(
- returned_reception_manager, emission_manager, operation_context,
- cancellation_manager)
-
-
-class FrontLink(interfaces.FrontLink):
- """An implementation of interfaces.FrontLink."""
-
- def __init__(self, work_pool, transmission_pool, utility_pool):
- """Constructor.
-
- Args:
- work_pool: A thread pool to be used for executing customer code.
- transmission_pool: A thread pool to be used for transmitting values to
- the other side of the operation.
- utility_pool: A thread pool to be used for utility tasks.
- """
- self._endlette = _Endlette(utility_pool)
- self._work_pool = work_pool
- self._transmission_pool = transmission_pool
- self._utility_pool = utility_pool
- self._callback = None
-
- self._operations = {}
-
- def join_rear_link(self, rear_link):
- """See interfaces.ForeLink.join_rear_link for specification."""
- with self._endlette:
- self._callback = rear_link.accept_front_to_back_ticket
-
- def operation_stats(self):
- """See interfaces.End.operation_stats for specification."""
- return self._endlette.operation_stats()
-
- def add_idle_action(self, action):
- """See interfaces.End.add_idle_action for specification."""
- self._endlette.add_idle_action(action)
-
- def operate(
- self, name, payload, complete, timeout, subscription, trace_id):
- """See interfaces.Front.operate for specification."""
- operation_id = uuid.uuid4()
- with self._endlette:
- management = _front_operate(
- self._callback, self._work_pool, self._transmission_pool,
- self._utility_pool, self._endlette.terminal_action(operation_id),
- operation_id, name, payload, complete, timeout, subscription,
- trace_id)
- self._endlette.add_operation(operation_id, management.reception)
- return _EasyOperation(
- management.emission, management.operation, management.cancellation)
-
- def accept_back_to_front_ticket(self, ticket):
- """See interfaces.End.act for specification."""
- with self._endlette:
- reception_manager = self._endlette.get_operation(ticket.operation_id)
- if reception_manager:
- reception_manager.receive_ticket(ticket)
-
-
-def _back_operate(
- servicer, callback, work_pool, transmission_pool, utility_pool,
- termination_action, ticket, default_timeout, maximum_timeout):
- """Constructs objects necessary for back-side operation management.
-
- Also begins back-side operation by feeding the first received ticket into the
- constructed _interfaces.ReceptionManager.
-
- Args:
- servicer: An interfaces.Servicer for servicing operations.
- callback: A callable that accepts interfaces.BackToFrontTickets and
- delivers them to the other side of the operation. Execution of this
- callable may take any arbitrary length of time.
- work_pool: A thread pool in which to execute customer code.
- transmission_pool: A thread pool to use for transmitting to the other side
- of the operation.
- utility_pool: A thread pool for utility tasks.
- termination_action: A no-arg behavior to be called upon operation
- completion.
- ticket: The first interfaces.FrontToBackTicket received for the operation.
- default_timeout: A length of time in seconds to be used as the default
- time alloted for a single operation.
- maximum_timeout: A length of time in seconds to be used as the maximum
- time alloted for a single operation.
-
- Returns:
- The _interfaces.ReceptionManager to be used for the operation.
- """
- lock = threading.Lock()
- with lock:
- termination_manager = _termination.back_termination_manager(
- work_pool, utility_pool, termination_action, ticket.subscription)
- transmission_manager = _transmission.back_transmission_manager(
- lock, transmission_pool, callback, ticket.operation_id,
- termination_manager, ticket.subscription)
- operation_context = _context.OperationContext(
- lock, ticket.operation_id, interfaces.Outcome.SERVICER_FAILURE,
- termination_manager, transmission_manager)
- emission_manager = _emission.back_emission_manager(
- lock, termination_manager, transmission_manager)
- ingestion_manager = _ingestion.back_ingestion_manager(
- lock, work_pool, servicer, termination_manager,
- transmission_manager, operation_context, emission_manager)
- expiration_manager = _expiration.back_expiration_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- ticket.timeout, default_timeout, maximum_timeout)
- reception_manager = _reception.back_reception_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager)
-
- termination_manager.set_expiration_manager(expiration_manager)
- transmission_manager.set_ingestion_and_expiration_managers(
- ingestion_manager, expiration_manager)
- operation_context.set_ingestion_and_expiration_managers(
- ingestion_manager, expiration_manager)
- emission_manager.set_ingestion_manager_and_expiration_manager(
- ingestion_manager, expiration_manager)
- ingestion_manager.set_expiration_manager(expiration_manager)
-
- reception_manager.receive_ticket(ticket)
-
- return reception_manager
-
-
-class BackLink(interfaces.BackLink):
- """An implementation of interfaces.BackLink."""
-
- def __init__(
- self, servicer, work_pool, transmission_pool, utility_pool,
- default_timeout, maximum_timeout):
- """Constructor.
-
- Args:
- servicer: An interfaces.Servicer for servicing operations.
- work_pool: A thread pool in which to execute customer code.
- transmission_pool: A thread pool to use for transmitting to the other side
- of the operation.
- utility_pool: A thread pool for utility tasks.
- default_timeout: A length of time in seconds to be used as the default
- time alloted for a single operation.
- maximum_timeout: A length of time in seconds to be used as the maximum
- time alloted for a single operation.
- """
- self._endlette = _Endlette(utility_pool)
- self._servicer = servicer
- self._work_pool = work_pool
- self._transmission_pool = transmission_pool
- self._utility_pool = utility_pool
- self._default_timeout = default_timeout
- self._maximum_timeout = maximum_timeout
- self._callback = None
-
- def join_fore_link(self, fore_link):
- """See interfaces.RearLink.join_fore_link for specification."""
- with self._endlette:
- self._callback = fore_link.accept_back_to_front_ticket
-
- def accept_front_to_back_ticket(self, ticket):
- """See interfaces.RearLink.accept_front_to_back_ticket for specification."""
- with self._endlette:
- reception_manager = self._endlette.get_operation(ticket.operation_id)
- if reception_manager is None:
- reception_manager = _back_operate(
- self._servicer, self._callback, self._work_pool,
- self._transmission_pool, self._utility_pool,
- self._endlette.terminal_action(ticket.operation_id), ticket,
- self._default_timeout, self._maximum_timeout)
- self._endlette.add_operation(ticket.operation_id, reception_manager)
- else:
- reception_manager.receive_ticket(ticket)
-
- def operation_stats(self):
- """See interfaces.End.operation_stats for specification."""
- return self._endlette.operation_stats()
-
- def add_idle_action(self, action):
- """See interfaces.End.add_idle_action for specification."""
- self._endlette.add_idle_action(action)
diff --git a/src/python/grpcio/grpc/framework/base/_expiration.py b/src/python/grpcio/grpc/framework/base/_expiration.py
deleted file mode 100644
index 17acbef4c1..0000000000
--- a/src/python/grpcio/grpc/framework/base/_expiration.py
+++ /dev/null
@@ -1,158 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for operation expiration."""
-
-import time
-
-from grpc.framework.base import _interfaces
-from grpc.framework.base import interfaces
-from grpc.framework.foundation import later
-
-
-class _ExpirationManager(_interfaces.ExpirationManager):
- """An implementation of _interfaces.ExpirationManager."""
-
- def __init__(
- self, lock, termination_manager, transmission_manager, ingestion_manager,
- commencement, timeout, maximum_timeout):
- """Constructor.
-
- Args:
- lock: The operation-wide lock.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- ingestion_manager: The _interfaces.IngestionManager for the operation.
- commencement: The time in seconds since the epoch at which the operation
- began.
- timeout: A length of time in seconds to allow for the operation to run.
- maximum_timeout: The maximum length of time in seconds to allow for the
- operation to run despite what is requested via this object's
- change_timout method.
- """
- self._lock = lock
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._ingestion_manager = ingestion_manager
- self._commencement = commencement
- self._maximum_timeout = maximum_timeout
-
- self._timeout = timeout
- self._deadline = commencement + timeout
- self._index = None
- self._future = None
-
- def _expire(self, index):
- with self._lock:
- if self._future is not None and index == self._index:
- self._future = None
- self._termination_manager.abort(interfaces.Outcome.EXPIRED)
- self._transmission_manager.abort(interfaces.Outcome.EXPIRED)
- self._ingestion_manager.abort()
-
- def start(self):
- self._index = 0
- self._future = later.later(self._timeout, lambda: self._expire(0))
-
- def change_timeout(self, timeout):
- if self._future is not None and timeout != self._timeout:
- self._future.cancel()
- new_timeout = min(timeout, self._maximum_timeout)
- new_index = self._index + 1
- self._timeout = new_timeout
- self._deadline = self._commencement + new_timeout
- self._index = new_index
- delay = self._deadline - time.time()
- self._future = later.later(
- delay, lambda: self._expire(new_index))
-
- def deadline(self):
- return self._deadline
-
- def abort(self):
- if self._future:
- self._future.cancel()
- self._future = None
- self._deadline_index = None
-
-
-def front_expiration_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- timeout):
- """Creates an _interfaces.ExpirationManager appropriate for front-side use.
-
- Args:
- lock: The operation-wide lock.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- ingestion_manager: The _interfaces.IngestionManager for the operation.
- timeout: A length of time in seconds to allow for the operation to run.
-
- Returns:
- An _interfaces.ExpirationManager appropriate for front-side use.
- """
- commencement = time.time()
- expiration_manager = _ExpirationManager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- commencement, timeout, timeout)
- expiration_manager.start()
- return expiration_manager
-
-
-def back_expiration_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- timeout, default_timeout, maximum_timeout):
- """Creates an _interfaces.ExpirationManager appropriate for back-side use.
-
- Args:
- lock: The operation-wide lock.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- ingestion_manager: The _interfaces.IngestionManager for the operation.
- timeout: A length of time in seconds to allow for the operation to run. May
- be None in which case default_timeout will be used.
- default_timeout: The default length of time in seconds to allow for the
- operation to run if the front-side customer has not specified such a value
- (or if the value they specified is not yet known).
- maximum_timeout: The maximum length of time in seconds to allow for the
- operation to run.
-
- Returns:
- An _interfaces.ExpirationManager appropriate for back-side use.
- """
- commencement = time.time()
- expiration_manager = _ExpirationManager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- commencement, default_timeout if timeout is None else timeout,
- maximum_timeout)
- expiration_manager.start()
- return expiration_manager
diff --git a/src/python/grpcio/grpc/framework/base/_ingestion.py b/src/python/grpcio/grpc/framework/base/_ingestion.py
deleted file mode 100644
index c9b10acb77..0000000000
--- a/src/python/grpcio/grpc/framework/base/_ingestion.py
+++ /dev/null
@@ -1,443 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for ingestion during an operation."""
-
-import abc
-import collections
-
-import six
-
-from grpc.framework.base import _constants
-from grpc.framework.base import _interfaces
-from grpc.framework.base import exceptions
-from grpc.framework.base import interfaces
-from grpc.framework.foundation import abandonment
-from grpc.framework.foundation import callable_util
-from grpc.framework.foundation import stream
-
-_CREATE_CONSUMER_EXCEPTION_LOG_MESSAGE = 'Exception initializing ingestion!'
-_CONSUME_EXCEPTION_LOG_MESSAGE = 'Exception during ingestion!'
-
-
-class _ConsumerCreation(collections.namedtuple(
- '_ConsumerCreation', ('consumer', 'remote_error', 'abandoned'))):
- """A sum type for the outcome of ingestion initialization.
-
- Either consumer will be non-None, remote_error will be True, or abandoned will
- be True.
-
- Attributes:
- consumer: A stream.Consumer for ingesting payloads.
- remote_error: A boolean indicating that the consumer could not be created
- due to an error on the remote side of the operation.
- abandoned: A boolean indicating that the consumer creation was abandoned.
- """
-
-
-class _EmptyConsumer(stream.Consumer):
- """A no-operative stream.Consumer that ignores all inputs and calls."""
-
- def consume(self, value):
- """See stream.Consumer.consume for specification."""
-
- def terminate(self):
- """See stream.Consumer.terminate for specification."""
-
- def consume_and_terminate(self, value):
- """See stream.Consumer.consume_and_terminate for specification."""
-
-
-class _ConsumerCreator(six.with_metaclass(abc.ABCMeta)):
- """Common specification of different consumer-creating behavior."""
-
- @abc.abstractmethod
- def create_consumer(self, requirement):
- """Creates the stream.Consumer to which customer payloads will be delivered.
-
- Any exceptions raised by this method should be attributed to and treated as
- defects in the serviced or servicer code called by this method.
-
- Args:
- requirement: A value required by this _ConsumerCreator for consumer
- creation.
-
- Returns:
- A _ConsumerCreation describing the result of consumer creation.
- """
- raise NotImplementedError()
-
-
-class _FrontConsumerCreator(_ConsumerCreator):
- """A _ConsumerCreator appropriate for front-side use."""
-
- def __init__(self, subscription, operation_context):
- """Constructor.
-
- Args:
- subscription: The serviced's interfaces.ServicedSubscription for the
- operation.
- operation_context: The interfaces.OperationContext object for the
- operation.
- """
- self._subscription = subscription
- self._operation_context = operation_context
-
- def create_consumer(self, requirement):
- """See _ConsumerCreator.create_consumer for specification."""
- if self._subscription.kind is interfaces.ServicedSubscription.Kind.FULL:
- try:
- return _ConsumerCreation(
- self._subscription.ingestor.consumer(self._operation_context),
- False, False)
- except abandonment.Abandoned:
- return _ConsumerCreation(None, False, True)
- else:
- return _ConsumerCreation(_EmptyConsumer(), False, False)
-
-
-class _BackConsumerCreator(_ConsumerCreator):
- """A _ConsumerCreator appropriate for back-side use."""
-
- def __init__(self, servicer, operation_context, emission_consumer):
- """Constructor.
-
- Args:
- servicer: The interfaces.Servicer that will service the operation.
- operation_context: The interfaces.OperationContext object for the
- operation.
- emission_consumer: The stream.Consumer object to which payloads emitted
- from the operation will be passed.
- """
- self._servicer = servicer
- self._operation_context = operation_context
- self._emission_consumer = emission_consumer
-
- def create_consumer(self, requirement):
- """See _ConsumerCreator.create_consumer for full specification.
-
- Args:
- requirement: The name of the Servicer method to be called during this
- operation.
-
- Returns:
- A _ConsumerCreation describing the result of consumer creation.
- """
- try:
- return _ConsumerCreation(
- self._servicer.service(
- requirement, self._operation_context, self._emission_consumer),
- False, False)
- except exceptions.NoSuchMethodError:
- return _ConsumerCreation(None, True, False)
- except abandonment.Abandoned:
- return _ConsumerCreation(None, False, True)
-
-
-class _WrappedConsumer(object):
- """Wraps a consumer to catch the exceptions that it is allowed to throw."""
-
- def __init__(self, consumer):
- """Constructor.
-
- Args:
- consumer: A stream.Consumer that may raise abandonment.Abandoned from any
- of its methods.
- """
- self._consumer = consumer
-
- def moar(self, payload, complete):
- """Makes progress with the wrapped consumer.
-
- This method catches all exceptions allowed to be thrown by the wrapped
- consumer. Any exceptions raised by this method should be blamed on the
- customer-supplied consumer.
-
- Args:
- payload: A customer-significant payload object. May be None only if
- complete is True.
- complete: Whether or not the end of the payload sequence has been reached.
- Must be True if payload is None.
-
- Returns:
- True if the wrapped consumer made progress or False if the wrapped
- consumer raised abandonment.Abandoned to indicate its abandonment of
- progress.
- """
- try:
- if payload is None:
- self._consumer.terminate()
- elif complete:
- self._consumer.consume_and_terminate(payload)
- else:
- self._consumer.consume(payload)
- return True
- except abandonment.Abandoned:
- return False
-
-
-class _IngestionManager(_interfaces.IngestionManager):
- """An implementation of _interfaces.IngestionManager."""
-
- def __init__(
- self, lock, pool, consumer_creator, failure_outcome, termination_manager,
- transmission_manager):
- """Constructor.
-
- Args:
- lock: The operation-wide lock.
- pool: A thread pool in which to execute customer code.
- consumer_creator: A _ConsumerCreator wrapping the portion of customer code
- that when called returns the stream.Consumer with which the customer
- code will ingest payload values.
- failure_outcome: Whichever one of
- interfaces.Outcome.SERVICED_FAILURE or
- interfaces.Outcome.SERVICER_FAILURE describes local failure of
- customer code.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- """
- self._lock = lock
- self._pool = pool
- self._consumer_creator = consumer_creator
- self._failure_outcome = failure_outcome
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._expiration_manager = None
-
- self._wrapped_ingestion_consumer = None
- self._pending_ingestion = []
- self._ingestion_complete = False
- self._processing = False
-
- def set_expiration_manager(self, expiration_manager):
- self._expiration_manager = expiration_manager
-
- def _abort_internal_only(self):
- self._wrapped_ingestion_consumer = None
- self._pending_ingestion = None
-
- def _abort_and_notify(self, outcome):
- self._abort_internal_only()
- self._termination_manager.abort(outcome)
- self._transmission_manager.abort(outcome)
- self._expiration_manager.abort()
-
- def _next(self):
- """Computes the next step for ingestion.
-
- Returns:
- A payload, complete, continue triplet indicating what payload (if any) is
- available to feed into customer code, whether or not the sequence of
- payloads has terminated, and whether or not there is anything
- immediately actionable to call customer code to do.
- """
- if self._pending_ingestion is None:
- return None, False, False
- elif self._pending_ingestion:
- payload = self._pending_ingestion.pop(0)
- complete = self._ingestion_complete and not self._pending_ingestion
- return payload, complete, True
- elif self._ingestion_complete:
- return None, True, True
- else:
- return None, False, False
-
- def _process(self, wrapped_ingestion_consumer, payload, complete):
- """A method to call to execute customer code.
-
- This object's lock must *not* be held when calling this method.
-
- Args:
- wrapped_ingestion_consumer: The _WrappedConsumer with which to pass
- payloads to customer code.
- payload: A customer payload. May be None only if complete is True.
- complete: Whether or not the sequence of payloads to pass to the customer
- has concluded.
- """
- while True:
- consumption_outcome = callable_util.call_logging_exceptions(
- wrapped_ingestion_consumer.moar, _CONSUME_EXCEPTION_LOG_MESSAGE,
- payload, complete)
- if consumption_outcome.exception is None:
- if consumption_outcome.return_value:
- with self._lock:
- if complete:
- self._pending_ingestion = None
- self._termination_manager.ingestion_complete()
- return
- else:
- payload, complete, moar = self._next()
- if not moar:
- self._processing = False
- return
- else:
- with self._lock:
- if self._pending_ingestion is not None:
- self._abort_and_notify(self._failure_outcome)
- self._processing = False
- return
- else:
- with self._lock:
- self._abort_and_notify(self._failure_outcome)
- self._processing = False
- return
-
- def start(self, requirement):
- if self._pending_ingestion is not None:
- def initialize():
- consumer_creation_outcome = callable_util.call_logging_exceptions(
- self._consumer_creator.create_consumer,
- _CREATE_CONSUMER_EXCEPTION_LOG_MESSAGE, requirement)
- if consumer_creation_outcome.return_value is None:
- with self._lock:
- self._abort_and_notify(self._failure_outcome)
- self._processing = False
- elif consumer_creation_outcome.return_value.remote_error:
- with self._lock:
- self._abort_and_notify(interfaces.Outcome.RECEPTION_FAILURE)
- self._processing = False
- elif consumer_creation_outcome.return_value.abandoned:
- with self._lock:
- if self._pending_ingestion is not None:
- self._abort_and_notify(self._failure_outcome)
- self._processing = False
- else:
- wrapped_ingestion_consumer = _WrappedConsumer(
- consumer_creation_outcome.return_value.consumer)
- with self._lock:
- self._wrapped_ingestion_consumer = wrapped_ingestion_consumer
- payload, complete, moar = self._next()
- if not moar:
- self._processing = False
- return
-
- self._process(wrapped_ingestion_consumer, payload, complete)
-
- self._pool.submit(
- callable_util.with_exceptions_logged(
- initialize, _constants.INTERNAL_ERROR_LOG_MESSAGE))
- self._processing = True
-
- def consume(self, payload):
- if self._ingestion_complete:
- self._abort_and_notify(self._failure_outcome)
- elif self._pending_ingestion is not None:
- if self._processing:
- self._pending_ingestion.append(payload)
- else:
- self._pool.submit(
- callable_util.with_exceptions_logged(
- self._process, _constants.INTERNAL_ERROR_LOG_MESSAGE),
- self._wrapped_ingestion_consumer, payload, False)
- self._processing = True
-
- def terminate(self):
- if self._ingestion_complete:
- self._abort_and_notify(self._failure_outcome)
- else:
- self._ingestion_complete = True
- if self._pending_ingestion is not None and not self._processing:
- self._pool.submit(
- callable_util.with_exceptions_logged(
- self._process, _constants.INTERNAL_ERROR_LOG_MESSAGE),
- self._wrapped_ingestion_consumer, None, True)
- self._processing = True
-
- def consume_and_terminate(self, payload):
- if self._ingestion_complete:
- self._abort_and_notify(self._failure_outcome)
- else:
- self._ingestion_complete = True
- if self._pending_ingestion is not None:
- if self._processing:
- self._pending_ingestion.append(payload)
- else:
- self._pool.submit(
- callable_util.with_exceptions_logged(
- self._process, _constants.INTERNAL_ERROR_LOG_MESSAGE),
- self._wrapped_ingestion_consumer, payload, True)
- self._processing = True
-
- def abort(self):
- """See _interfaces.IngestionManager.abort for specification."""
- self._abort_internal_only()
-
-
-def front_ingestion_manager(
- lock, pool, subscription, termination_manager, transmission_manager,
- operation_context):
- """Creates an IngestionManager appropriate for front-side use.
-
- Args:
- lock: The operation-wide lock.
- pool: A thread pool in which to execute customer code.
- subscription: A interfaces.ServicedSubscription indicating the
- customer's interest in the results of the operation.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- operation_context: A interfaces.OperationContext for the operation.
-
- Returns:
- An IngestionManager appropriate for front-side use.
- """
- ingestion_manager = _IngestionManager(
- lock, pool, _FrontConsumerCreator(subscription, operation_context),
- interfaces.Outcome.SERVICED_FAILURE, termination_manager,
- transmission_manager)
- ingestion_manager.start(None)
- return ingestion_manager
-
-
-def back_ingestion_manager(
- lock, pool, servicer, termination_manager, transmission_manager,
- operation_context, emission_consumer):
- """Creates an IngestionManager appropriate for back-side use.
-
- Args:
- lock: The operation-wide lock.
- pool: A thread pool in which to execute customer code.
- servicer: A interfaces.Servicer for servicing the operation.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- operation_context: A interfaces.OperationContext for the operation.
- emission_consumer: The _interfaces.EmissionConsumer for the operation.
-
- Returns:
- An IngestionManager appropriate for back-side use.
- """
- ingestion_manager = _IngestionManager(
- lock, pool, _BackConsumerCreator(
- servicer, operation_context, emission_consumer),
- interfaces.Outcome.SERVICER_FAILURE, termination_manager,
- transmission_manager)
- return ingestion_manager
diff --git a/src/python/grpcio/grpc/framework/base/_interfaces.py b/src/python/grpcio/grpc/framework/base/_interfaces.py
deleted file mode 100644
index 6bb9837c4a..0000000000
--- a/src/python/grpcio/grpc/framework/base/_interfaces.py
+++ /dev/null
@@ -1,266 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Package-internal interfaces."""
-
-import abc
-
-import six
-
-# interfaces is referenced from specification in this module.
-from grpc.framework.base import interfaces # pylint: disable=unused-import
-from grpc.framework.foundation import stream
-
-
-class TerminationManager(six.with_metaclass(abc.ABCMeta)):
- """An object responsible for handling the termination of an operation."""
-
- @abc.abstractmethod
- def set_expiration_manager(self, expiration_manager):
- """Sets the ExpirationManager with which this object will cooperate."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def is_active(self):
- """Reports whether or not the operation is active.
-
- Returns:
- True if the operation is active or False if the operation has terminated.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def add_callback(self, callback):
- """Registers a callback to be called on operation termination.
-
- If the operation has already terminated, the callback will be called
- immediately.
-
- Args:
- callback: A callable that will be passed an interfaces.Outcome value.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def emission_complete(self):
- """Indicates that emissions from customer code have completed."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def transmission_complete(self):
- """Indicates that transmissions to the remote end are complete."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def ingestion_complete(self):
- """Indicates that customer code ingestion of received values is complete."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def abort(self, outcome):
- """Indicates that the operation must abort for the indicated reason.
-
- Args:
- outcome: An interfaces.Outcome indicating operation abortion.
- """
- raise NotImplementedError()
-
-
-class TransmissionManager(six.with_metaclass(abc.ABCMeta)):
- """A manager responsible for transmitting to the other end of an operation."""
-
- @abc.abstractmethod
- def inmit(self, emission, complete):
- """Accepts a value for transmission to the other end of the operation.
-
- Args:
- emission: A value of some significance to the customer to be transmitted
- to the other end of the operation. May be None only if complete is True.
- complete: A boolean that if True indicates that customer code has emitted
- all values it intends to emit.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def abort(self, outcome):
- """Indicates that the operation has aborted for the indicated reason.
-
- Args:
- outcome: An interfaces.Outcome indicating operation abortion.
- """
- raise NotImplementedError()
-
-
-class EmissionManager(six.with_metaclass(abc.ABCMeta, stream.Consumer)):
- """A manager of values emitted by customer code."""
-
- @abc.abstractmethod
- def set_ingestion_manager_and_expiration_manager(
- self, ingestion_manager, expiration_manager):
- """Sets two other objects with which this EmissionManager will cooperate.
-
- Args:
- ingestion_manager: The IngestionManager for the operation.
- expiration_manager: The ExpirationManager for the operation.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def consume(self, value):
- """Accepts a value emitted by customer code.
-
- This method should only be called by customer code.
-
- Args:
- value: Any value of significance to the customer.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def terminate(self):
- """Indicates that no more values will be emitted by customer code.
-
- This method should only be called by customer code.
-
- Implementations of this method may be idempotent and forgive customer code
- calling this method more than once.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def consume_and_terminate(self, value):
- """Accepts the last value emitted by customer code.
-
- This method should only be called by customer code.
-
- Args:
- value: Any value of significance to the customer.
- """
- raise NotImplementedError()
-
-
-class IngestionManager(six.with_metaclass(abc.ABCMeta, stream.Consumer)):
- """A manager responsible for executing customer code."""
-
- @abc.abstractmethod
- def set_expiration_manager(self, expiration_manager):
- """Sets the ExpirationManager with which this object will cooperate."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def start(self, requirement):
- """Commences execution of customer code.
-
- Args:
- requirement: Some value unavailable at the time of this object's
- construction that is required to begin executing customer code.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def consume(self, payload):
- """Accepts a customer-significant value to be supplied to customer code.
-
- Args:
- payload: Some customer-significant value.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def terminate(self):
- """Indicates the end of values to be supplied to customer code."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def consume_and_terminate(self, payload):
- """Accepts the last value to be supplied to customer code.
-
- Args:
- payload: Some customer-significant value (and the last such value).
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def abort(self):
- """Indicates to this manager that the operation has aborted."""
- raise NotImplementedError()
-
-
-class ExpirationManager(six.with_metaclass(abc.ABCMeta)):
- """A manager responsible for aborting the operation if it runs out of time."""
-
- @abc.abstractmethod
- def change_timeout(self, timeout):
- """Changes the timeout allotted for the operation.
-
- Operation duration is always measure from the beginning of the operation;
- calling this method changes the operation's allotted time to timeout total
- seconds, not timeout seconds from the time of this method call.
-
- Args:
- timeout: A length of time in seconds to allow for the operation.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def deadline(self):
- """Returns the time until which the operation is allowed to run.
-
- Returns:
- The time (seconds since the epoch) at which the operation will expire.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def abort(self):
- """Indicates to this manager that the operation has aborted."""
- raise NotImplementedError()
-
-
-class ReceptionManager(six.with_metaclass(abc.ABCMeta)):
- """A manager responsible for receiving tickets from the other end."""
-
- @abc.abstractmethod
- def receive_ticket(self, ticket):
- """Handle a ticket from the other side of the operation.
-
- Args:
- ticket: An interfaces.BackToFrontTicket or interfaces.FrontToBackTicket
- appropriate to this end of the operation and this object.
- """
- raise NotImplementedError()
-
-
-class CancellationManager(six.with_metaclass(abc.ABCMeta)):
- """A manager of operation cancellation."""
-
- @abc.abstractmethod
- def cancel(self):
- """Cancels the operation."""
- raise NotImplementedError()
diff --git a/src/python/grpcio/grpc/framework/base/_reception.py b/src/python/grpcio/grpc/framework/base/_reception.py
deleted file mode 100644
index a59c5165f9..0000000000
--- a/src/python/grpcio/grpc/framework/base/_reception.py
+++ /dev/null
@@ -1,400 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for ticket reception."""
-
-import abc
-
-import six
-
-from grpc.framework.base import interfaces
-from grpc.framework.base import _interfaces
-
-_INITIAL_FRONT_TO_BACK_TICKET_KINDS = (
- interfaces.FrontToBackTicket.Kind.COMMENCEMENT,
- interfaces.FrontToBackTicket.Kind.ENTIRE,
-)
-
-
-class _Receiver(six.with_metaclass(abc.ABCMeta)):
- """Common specification of different ticket-handling behavior."""
-
- @abc.abstractmethod
- def abort_if_abortive(self, ticket):
- """Aborts the operation if the ticket is abortive.
-
- Args:
- ticket: A just-arrived ticket.
-
- Returns:
- A boolean indicating whether or not this Receiver aborted the operation
- based on the ticket.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def receive(self, ticket):
- """Handles a just-arrived ticket.
-
- Args:
- ticket: A just-arrived ticket.
-
- Returns:
- A boolean indicating whether or not the ticket was terminal (i.e. whether
- or not non-abortive tickets are legal after this one).
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def reception_failure(self):
- """Aborts the operation with an indication of reception failure."""
- raise NotImplementedError()
-
-
-def _abort(
- outcome, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Indicates abortion with the given outcome to the given managers."""
- termination_manager.abort(outcome)
- transmission_manager.abort(outcome)
- ingestion_manager.abort()
- expiration_manager.abort()
-
-
-def _abort_if_abortive(
- ticket, abortive, termination_manager, transmission_manager,
- ingestion_manager, expiration_manager):
- """Determines a ticket's being abortive and if so aborts the operation.
-
- Args:
- ticket: A just-arrived ticket.
- abortive: A callable that takes a ticket and returns an interfaces.Outcome
- indicating that the operation should be aborted or None indicating that
- the operation should not be aborted.
- termination_manager: The operation's _interfaces.TerminationManager.
- transmission_manager: The operation's _interfaces.TransmissionManager.
- ingestion_manager: The operation's _interfaces.IngestionManager.
- expiration_manager: The operation's _interfaces.ExpirationManager.
-
- Returns:
- True if the operation was aborted; False otherwise.
- """
- abortion_outcome = abortive(ticket)
- if abortion_outcome is None:
- return False
- else:
- _abort(
- abortion_outcome, termination_manager, transmission_manager,
- ingestion_manager, expiration_manager)
- return True
-
-
-def _reception_failure(
- termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Aborts the operation with an indication of reception failure."""
- _abort(
- interfaces.Outcome.RECEPTION_FAILURE, termination_manager,
- transmission_manager, ingestion_manager, expiration_manager)
-
-
-class _BackReceiver(_Receiver):
- """Ticket-handling specific to the back side of an operation."""
-
- def __init__(
- self, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Constructor.
-
- Args:
- termination_manager: The operation's _interfaces.TerminationManager.
- transmission_manager: The operation's _interfaces.TransmissionManager.
- ingestion_manager: The operation's _interfaces.IngestionManager.
- expiration_manager: The operation's _interfaces.ExpirationManager.
- """
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._ingestion_manager = ingestion_manager
- self._expiration_manager = expiration_manager
-
- self._first_ticket_seen = False
- self._last_ticket_seen = False
-
- def _abortive(self, ticket):
- """Determines whether or not (and if so, how) a ticket is abortive.
-
- Args:
- ticket: A just-arrived ticket.
-
- Returns:
- An interfaces.Outcome value describing operation abortion if the
- ticket is abortive or None if the ticket is not abortive.
- """
- if ticket.kind is interfaces.FrontToBackTicket.Kind.CANCELLATION:
- return interfaces.Outcome.CANCELLED
- elif ticket.kind is interfaces.FrontToBackTicket.Kind.EXPIRATION:
- return interfaces.Outcome.EXPIRED
- elif ticket.kind is interfaces.FrontToBackTicket.Kind.SERVICED_FAILURE:
- return interfaces.Outcome.SERVICED_FAILURE
- elif ticket.kind is interfaces.FrontToBackTicket.Kind.RECEPTION_FAILURE:
- return interfaces.Outcome.SERVICED_FAILURE
- elif (ticket.kind in _INITIAL_FRONT_TO_BACK_TICKET_KINDS and
- self._first_ticket_seen):
- return interfaces.Outcome.RECEPTION_FAILURE
- elif self._last_ticket_seen:
- return interfaces.Outcome.RECEPTION_FAILURE
- else:
- return None
-
- def abort_if_abortive(self, ticket):
- """See _Receiver.abort_if_abortive for specification."""
- return _abort_if_abortive(
- ticket, self._abortive, self._termination_manager,
- self._transmission_manager, self._ingestion_manager,
- self._expiration_manager)
-
- def receive(self, ticket):
- """See _Receiver.receive for specification."""
- if ticket.timeout is not None:
- self._expiration_manager.change_timeout(ticket.timeout)
-
- if ticket.kind is interfaces.FrontToBackTicket.Kind.COMMENCEMENT:
- self._first_ticket_seen = True
- self._ingestion_manager.start(ticket.name)
- if ticket.payload is not None:
- self._ingestion_manager.consume(ticket.payload)
- elif ticket.kind is interfaces.FrontToBackTicket.Kind.CONTINUATION:
- self._ingestion_manager.consume(ticket.payload)
- elif ticket.kind is interfaces.FrontToBackTicket.Kind.COMPLETION:
- self._last_ticket_seen = True
- if ticket.payload is None:
- self._ingestion_manager.terminate()
- else:
- self._ingestion_manager.consume_and_terminate(ticket.payload)
- else:
- self._first_ticket_seen = True
- self._last_ticket_seen = True
- self._ingestion_manager.start(ticket.name)
- if ticket.payload is None:
- self._ingestion_manager.terminate()
- else:
- self._ingestion_manager.consume_and_terminate(ticket.payload)
-
- def reception_failure(self):
- """See _Receiver.reception_failure for specification."""
- _reception_failure(
- self._termination_manager, self._transmission_manager,
- self._ingestion_manager, self._expiration_manager)
-
-
-class _FrontReceiver(_Receiver):
- """Ticket-handling specific to the front side of an operation."""
-
- def __init__(
- self, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Constructor.
-
- Args:
- termination_manager: The operation's _interfaces.TerminationManager.
- transmission_manager: The operation's _interfaces.TransmissionManager.
- ingestion_manager: The operation's _interfaces.IngestionManager.
- expiration_manager: The operation's _interfaces.ExpirationManager.
- """
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._ingestion_manager = ingestion_manager
- self._expiration_manager = expiration_manager
-
- self._last_ticket_seen = False
-
- def _abortive(self, ticket):
- """Determines whether or not (and if so, how) a ticket is abortive.
-
- Args:
- ticket: A just-arrived ticket.
-
- Returns:
- An interfaces.Outcome value describing operation abortion if the ticket
- is abortive or None if the ticket is not abortive.
- """
- if ticket.kind is interfaces.BackToFrontTicket.Kind.CANCELLATION:
- return interfaces.Outcome.CANCELLED
- elif ticket.kind is interfaces.BackToFrontTicket.Kind.EXPIRATION:
- return interfaces.Outcome.EXPIRED
- elif ticket.kind is interfaces.BackToFrontTicket.Kind.SERVICER_FAILURE:
- return interfaces.Outcome.SERVICER_FAILURE
- elif ticket.kind is interfaces.BackToFrontTicket.Kind.RECEPTION_FAILURE:
- return interfaces.Outcome.SERVICER_FAILURE
- elif self._last_ticket_seen:
- return interfaces.Outcome.RECEPTION_FAILURE
- else:
- return None
-
- def abort_if_abortive(self, ticket):
- """See _Receiver.abort_if_abortive for specification."""
- return _abort_if_abortive(
- ticket, self._abortive, self._termination_manager,
- self._transmission_manager, self._ingestion_manager,
- self._expiration_manager)
-
- def receive(self, ticket):
- """See _Receiver.receive for specification."""
- if ticket.kind is interfaces.BackToFrontTicket.Kind.CONTINUATION:
- self._ingestion_manager.consume(ticket.payload)
- elif ticket.kind is interfaces.BackToFrontTicket.Kind.COMPLETION:
- self._last_ticket_seen = True
- if ticket.payload is None:
- self._ingestion_manager.terminate()
- else:
- self._ingestion_manager.consume_and_terminate(ticket.payload)
-
- def reception_failure(self):
- """See _Receiver.reception_failure for specification."""
- _reception_failure(
- self._termination_manager, self._transmission_manager,
- self._ingestion_manager, self._expiration_manager)
-
-
-class _ReceptionManager(_interfaces.ReceptionManager):
- """A ReceptionManager based around a _Receiver passed to it."""
-
- def __init__(self, lock, receiver):
- """Constructor.
-
- Args:
- lock: The operation-servicing-wide lock object.
- receiver: A _Receiver responsible for handling received tickets.
- """
- self._lock = lock
- self._receiver = receiver
-
- self._lowest_unseen_sequence_number = 0
- self._out_of_sequence_tickets = {}
- self._completed_sequence_number = None
- self._aborted = False
-
- def _sequence_failure(self, ticket):
- """Determines a just-arrived ticket's sequential legitimacy.
-
- Args:
- ticket: A just-arrived ticket.
-
- Returns:
- True if the ticket is sequentially legitimate; False otherwise.
- """
- if ticket.sequence_number < self._lowest_unseen_sequence_number:
- return True
- elif ticket.sequence_number in self._out_of_sequence_tickets:
- return True
- elif (self._completed_sequence_number is not None and
- self._completed_sequence_number <= ticket.sequence_number):
- return True
- else:
- return False
-
- def _process(self, ticket):
- """Process those tickets ready to be processed.
-
- Args:
- ticket: A just-arrived ticket the sequence number of which matches this
- _ReceptionManager's _lowest_unseen_sequence_number field.
- """
- while True:
- completed = self._receiver.receive(ticket)
- if completed:
- self._out_of_sequence_tickets.clear()
- self._completed_sequence_number = ticket.sequence_number
- self._lowest_unseen_sequence_number = ticket.sequence_number + 1
- return
- else:
- next_ticket = self._out_of_sequence_tickets.pop(
- ticket.sequence_number + 1, None)
- if next_ticket is None:
- self._lowest_unseen_sequence_number = ticket.sequence_number + 1
- return
- else:
- ticket = next_ticket
-
- def receive_ticket(self, ticket):
- """See _interfaces.ReceptionManager.receive_ticket for specification."""
- with self._lock:
- if self._aborted:
- return
- elif self._sequence_failure(ticket):
- self._receiver.reception_failure()
- self._aborted = True
- elif self._receiver.abort_if_abortive(ticket):
- self._aborted = True
- elif ticket.sequence_number == self._lowest_unseen_sequence_number:
- self._process(ticket)
- else:
- self._out_of_sequence_tickets[ticket.sequence_number] = ticket
-
-
-def front_reception_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Creates a _interfaces.ReceptionManager for front-side use.
-
- Args:
- lock: The operation-servicing-wide lock object.
- termination_manager: The operation's _interfaces.TerminationManager.
- transmission_manager: The operation's _interfaces.TransmissionManager.
- ingestion_manager: The operation's _interfaces.IngestionManager.
- expiration_manager: The operation's _interfaces.ExpirationManager.
-
- Returns:
- A _interfaces.ReceptionManager appropriate for front-side use.
- """
- return _ReceptionManager(
- lock, _FrontReceiver(
- termination_manager, transmission_manager, ingestion_manager,
- expiration_manager))
-
-
-def back_reception_manager(
- lock, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Creates a _interfaces.ReceptionManager for back-side use.
-
- Args:
- lock: The operation-servicing-wide lock object.
- termination_manager: The operation's _interfaces.TerminationManager.
- transmission_manager: The operation's _interfaces.TransmissionManager.
- ingestion_manager: The operation's _interfaces.IngestionManager.
- expiration_manager: The operation's _interfaces.ExpirationManager.
-
- Returns:
- A _interfaces.ReceptionManager appropriate for back-side use.
- """
- return _ReceptionManager(
- lock, _BackReceiver(
- termination_manager, transmission_manager, ingestion_manager,
- expiration_manager))
diff --git a/src/python/grpcio/grpc/framework/base/_termination.py b/src/python/grpcio/grpc/framework/base/_termination.py
deleted file mode 100644
index ddcbc60293..0000000000
--- a/src/python/grpcio/grpc/framework/base/_termination.py
+++ /dev/null
@@ -1,204 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for operation termination."""
-
-import enum
-
-from grpc.framework.base import _constants
-from grpc.framework.base import _interfaces
-from grpc.framework.base import interfaces
-from grpc.framework.foundation import callable_util
-
-_CALLBACK_EXCEPTION_LOG_MESSAGE = 'Exception calling termination callback!'
-
-
-@enum.unique
-class _Requirement(enum.Enum):
- """Symbols indicating events required for termination."""
-
- EMISSION = 'emission'
- TRANSMISSION = 'transmission'
- INGESTION = 'ingestion'
-
-_FRONT_NOT_LISTENING_REQUIREMENTS = (_Requirement.TRANSMISSION,)
-_BACK_NOT_LISTENING_REQUIREMENTS = (
- _Requirement.EMISSION, _Requirement.INGESTION,)
-_LISTENING_REQUIREMENTS = (
- _Requirement.TRANSMISSION, _Requirement.INGESTION,)
-
-
-class _TerminationManager(_interfaces.TerminationManager):
- """An implementation of _interfaces.TerminationManager."""
-
- def __init__(
- self, work_pool, utility_pool, action, requirements, local_failure):
- """Constructor.
-
- Args:
- work_pool: A thread pool in which customer work will be done.
- utility_pool: A thread pool in which work utility work will be done.
- action: An action to call on operation termination.
- requirements: A combination of _Requirement values identifying what
- must finish for the operation to be considered completed.
- local_failure: An interfaces.Outcome specifying what constitutes local
- failure of customer work.
- """
- self._work_pool = work_pool
- self._utility_pool = utility_pool
- self._action = action
- self._local_failure = local_failure
- self._has_locally_failed = False
- self._expiration_manager = None
-
- self._outstanding_requirements = set(requirements)
- self._outcome = None
- self._callbacks = []
-
- def set_expiration_manager(self, expiration_manager):
- self._expiration_manager = expiration_manager
-
- def _terminate(self, outcome):
- """Terminates the operation.
-
- Args:
- outcome: An interfaces.Outcome describing the outcome of the operation.
- """
- self._expiration_manager.abort()
- self._outstanding_requirements = None
- callbacks = list(self._callbacks)
- self._callbacks = None
- self._outcome = outcome
-
- act = callable_util.with_exceptions_logged(
- self._action, _constants.INTERNAL_ERROR_LOG_MESSAGE)
-
- if self._has_locally_failed:
- self._utility_pool.submit(act, outcome)
- else:
- def call_callbacks_and_act(callbacks, outcome):
- for callback in callbacks:
- callback_outcome = callable_util.call_logging_exceptions(
- callback, _CALLBACK_EXCEPTION_LOG_MESSAGE, outcome)
- if callback_outcome.exception is not None:
- outcome = self._local_failure
- break
- self._utility_pool.submit(act, outcome)
-
- self._work_pool.submit(callable_util.with_exceptions_logged(
- call_callbacks_and_act,
- _constants.INTERNAL_ERROR_LOG_MESSAGE),
- callbacks, outcome)
-
- def is_active(self):
- """See _interfaces.TerminationManager.is_active for specification."""
- return self._outstanding_requirements is not None
-
- def add_callback(self, callback):
- """See _interfaces.TerminationManager.add_callback for specification."""
- if not self._has_locally_failed:
- if self._outstanding_requirements is None:
- self._work_pool.submit(
- callable_util.with_exceptions_logged(
- callback, _CALLBACK_EXCEPTION_LOG_MESSAGE), self._outcome)
- else:
- self._callbacks.append(callback)
-
- def emission_complete(self):
- """See superclass method for specification."""
- if self._outstanding_requirements is not None:
- self._outstanding_requirements.discard(_Requirement.EMISSION)
- if not self._outstanding_requirements:
- self._terminate(interfaces.Outcome.COMPLETED)
-
- def transmission_complete(self):
- """See superclass method for specification."""
- if self._outstanding_requirements is not None:
- self._outstanding_requirements.discard(_Requirement.TRANSMISSION)
- if not self._outstanding_requirements:
- self._terminate(interfaces.Outcome.COMPLETED)
-
- def ingestion_complete(self):
- """See superclass method for specification."""
- if self._outstanding_requirements is not None:
- self._outstanding_requirements.discard(_Requirement.INGESTION)
- if not self._outstanding_requirements:
- self._terminate(interfaces.Outcome.COMPLETED)
-
- def abort(self, outcome):
- """See _interfaces.TerminationManager.abort for specification."""
- if outcome is self._local_failure:
- self._has_failed_locally = True
- if self._outstanding_requirements is not None:
- self._terminate(outcome)
-
-
-def front_termination_manager(
- work_pool, utility_pool, action, subscription_kind):
- """Creates a TerminationManager appropriate for front-side use.
-
- Args:
- work_pool: A thread pool in which customer work will be done.
- utility_pool: A thread pool in which work utility work will be done.
- action: An action to call on operation termination.
- subscription_kind: An interfaces.ServicedSubscription.Kind value.
-
- Returns:
- A TerminationManager appropriate for front-side use.
- """
- if subscription_kind is interfaces.ServicedSubscription.Kind.NONE:
- requirements = _FRONT_NOT_LISTENING_REQUIREMENTS
- else:
- requirements = _LISTENING_REQUIREMENTS
-
- return _TerminationManager(
- work_pool, utility_pool, action, requirements,
- interfaces.Outcome.SERVICED_FAILURE)
-
-
-def back_termination_manager(work_pool, utility_pool, action, subscription_kind):
- """Creates a TerminationManager appropriate for back-side use.
-
- Args:
- work_pool: A thread pool in which customer work will be done.
- utility_pool: A thread pool in which work utility work will be done.
- action: An action to call on operation termination.
- subscription_kind: An interfaces.ServicedSubscription.Kind value.
-
- Returns:
- A TerminationManager appropriate for back-side use.
- """
- if subscription_kind is interfaces.ServicedSubscription.Kind.NONE:
- requirements = _BACK_NOT_LISTENING_REQUIREMENTS
- else:
- requirements = _LISTENING_REQUIREMENTS
-
- return _TerminationManager(
- work_pool, utility_pool, action, requirements,
- interfaces.Outcome.SERVICER_FAILURE)
diff --git a/src/python/grpcio/grpc/framework/base/_transmission.py b/src/python/grpcio/grpc/framework/base/_transmission.py
deleted file mode 100644
index e2a25626f1..0000000000
--- a/src/python/grpcio/grpc/framework/base/_transmission.py
+++ /dev/null
@@ -1,429 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for ticket transmission during an operation."""
-
-import abc
-
-import six
-
-from grpc.framework.base import _constants
-from grpc.framework.base import _interfaces
-from grpc.framework.base import interfaces
-from grpc.framework.foundation import callable_util
-
-_TRANSMISSION_EXCEPTION_LOG_MESSAGE = 'Exception during transmission!'
-
-_FRONT_TO_BACK_NO_TRANSMISSION_OUTCOMES = (
- interfaces.Outcome.SERVICER_FAILURE,
- )
-_BACK_TO_FRONT_NO_TRANSMISSION_OUTCOMES = (
- interfaces.Outcome.CANCELLED,
- interfaces.Outcome.SERVICED_FAILURE,
- )
-
-_ABORTION_OUTCOME_TO_FRONT_TO_BACK_TICKET_KIND = {
- interfaces.Outcome.CANCELLED:
- interfaces.FrontToBackTicket.Kind.CANCELLATION,
- interfaces.Outcome.EXPIRED:
- interfaces.FrontToBackTicket.Kind.EXPIRATION,
- interfaces.Outcome.RECEPTION_FAILURE:
- interfaces.FrontToBackTicket.Kind.RECEPTION_FAILURE,
- interfaces.Outcome.TRANSMISSION_FAILURE:
- interfaces.FrontToBackTicket.Kind.TRANSMISSION_FAILURE,
- interfaces.Outcome.SERVICED_FAILURE:
- interfaces.FrontToBackTicket.Kind.SERVICED_FAILURE,
- interfaces.Outcome.SERVICER_FAILURE:
- interfaces.FrontToBackTicket.Kind.SERVICER_FAILURE,
-}
-
-_ABORTION_OUTCOME_TO_BACK_TO_FRONT_TICKET_KIND = {
- interfaces.Outcome.CANCELLED:
- interfaces.BackToFrontTicket.Kind.CANCELLATION,
- interfaces.Outcome.EXPIRED:
- interfaces.BackToFrontTicket.Kind.EXPIRATION,
- interfaces.Outcome.RECEPTION_FAILURE:
- interfaces.BackToFrontTicket.Kind.RECEPTION_FAILURE,
- interfaces.Outcome.TRANSMISSION_FAILURE:
- interfaces.BackToFrontTicket.Kind.TRANSMISSION_FAILURE,
- interfaces.Outcome.SERVICED_FAILURE:
- interfaces.BackToFrontTicket.Kind.SERVICED_FAILURE,
- interfaces.Outcome.SERVICER_FAILURE:
- interfaces.BackToFrontTicket.Kind.SERVICER_FAILURE,
-}
-
-
-class _Ticketizer(six.with_metaclass(abc.ABCMeta)):
- """Common specification of different ticket-creating behavior."""
-
- @abc.abstractmethod
- def ticketize(self, operation_id, sequence_number, payload, complete):
- """Creates a ticket indicating ordinary operation progress.
-
- Args:
- operation_id: The operation ID for the current operation.
- sequence_number: A sequence number for the ticket.
- payload: A customer payload object. May be None if sequence_number is
- zero or complete is true.
- complete: A boolean indicating whether or not the ticket should describe
- itself as (but for a later indication of operation abortion) the last
- ticket to be sent.
-
- Returns:
- An object of an appropriate type suitable for transmission to the other
- side of the operation.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def ticketize_abortion(self, operation_id, sequence_number, outcome):
- """Creates a ticket indicating that the operation is aborted.
-
- Args:
- operation_id: The operation ID for the current operation.
- sequence_number: A sequence number for the ticket.
- outcome: An interfaces.Outcome value describing the operation abortion.
-
- Returns:
- An object of an appropriate type suitable for transmission to the other
- side of the operation, or None if transmission is not appropriate for
- the given outcome.
- """
- raise NotImplementedError()
-
-
-class _FrontTicketizer(_Ticketizer):
- """Front-side ticket-creating behavior."""
-
- def __init__(self, name, subscription_kind, trace_id, timeout):
- """Constructor.
-
- Args:
- name: The name of the operation.
- subscription_kind: An interfaces.ServicedSubscription.Kind value
- describing the interest the front has in tickets sent from the back.
- trace_id: A uuid.UUID identifying a set of related operations to which
- this operation belongs.
- timeout: A length of time in seconds to allow for the entire operation.
- """
- self._name = name
- self._subscription_kind = subscription_kind
- self._trace_id = trace_id
- self._timeout = timeout
-
- def ticketize(self, operation_id, sequence_number, payload, complete):
- """See _Ticketizer.ticketize for specification."""
- if sequence_number:
- if complete:
- kind = interfaces.FrontToBackTicket.Kind.COMPLETION
- else:
- kind = interfaces.FrontToBackTicket.Kind.CONTINUATION
- return interfaces.FrontToBackTicket(
- operation_id, sequence_number, kind, self._name,
- self._subscription_kind, self._trace_id, payload, self._timeout)
- else:
- if complete:
- kind = interfaces.FrontToBackTicket.Kind.ENTIRE
- else:
- kind = interfaces.FrontToBackTicket.Kind.COMMENCEMENT
- return interfaces.FrontToBackTicket(
- operation_id, 0, kind, self._name, self._subscription_kind,
- self._trace_id, payload, self._timeout)
-
- def ticketize_abortion(self, operation_id, sequence_number, outcome):
- """See _Ticketizer.ticketize_abortion for specification."""
- if outcome in _FRONT_TO_BACK_NO_TRANSMISSION_OUTCOMES:
- return None
- else:
- kind = _ABORTION_OUTCOME_TO_FRONT_TO_BACK_TICKET_KIND[outcome]
- return interfaces.FrontToBackTicket(
- operation_id, sequence_number, kind, None, None, None, None, None)
-
-
-class _BackTicketizer(_Ticketizer):
- """Back-side ticket-creating behavior."""
-
- def ticketize(self, operation_id, sequence_number, payload, complete):
- """See _Ticketizer.ticketize for specification."""
- if complete:
- kind = interfaces.BackToFrontTicket.Kind.COMPLETION
- else:
- kind = interfaces.BackToFrontTicket.Kind.CONTINUATION
- return interfaces.BackToFrontTicket(
- operation_id, sequence_number, kind, payload)
-
- def ticketize_abortion(self, operation_id, sequence_number, outcome):
- """See _Ticketizer.ticketize_abortion for specification."""
- if outcome in _BACK_TO_FRONT_NO_TRANSMISSION_OUTCOMES:
- return None
- else:
- kind = _ABORTION_OUTCOME_TO_BACK_TO_FRONT_TICKET_KIND[outcome]
- return interfaces.BackToFrontTicket(
- operation_id, sequence_number, kind, None)
-
-
-class TransmissionManager(six.with_metaclass(abc.ABCMeta, _interfaces.TransmissionManager)):
- """A _interfaces.TransmissionManager on which other managers may be set."""
-
- @abc.abstractmethod
- def set_ingestion_and_expiration_managers(
- self, ingestion_manager, expiration_manager):
- """Sets two of the other managers with which this manager may interact.
-
- Args:
- ingestion_manager: The _interfaces.IngestionManager associated with the
- current operation.
- expiration_manager: The _interfaces.ExpirationManager associated with the
- current operation.
- """
- raise NotImplementedError()
-
-
-class _EmptyTransmissionManager(TransmissionManager):
- """A completely no-operative _interfaces.TransmissionManager."""
-
- def set_ingestion_and_expiration_managers(
- self, ingestion_manager, expiration_manager):
- """See overriden method for specification."""
-
- def inmit(self, emission, complete):
- """See _interfaces.TransmissionManager.inmit for specification."""
-
- def abort(self, outcome):
- """See _interfaces.TransmissionManager.abort for specification."""
-
-
-class _TransmittingTransmissionManager(TransmissionManager):
- """A TransmissionManager implementation that sends tickets."""
-
- def __init__(
- self, lock, pool, callback, operation_id, ticketizer,
- termination_manager):
- """Constructor.
-
- Args:
- lock: The operation-servicing-wide lock object.
- pool: A thread pool in which the work of transmitting tickets will be
- performed.
- callback: A callable that accepts tickets and sends them to the other side
- of the operation.
- operation_id: The operation's ID.
- ticketizer: A _Ticketizer for ticket creation.
- termination_manager: The _interfaces.TerminationManager associated with
- this operation.
- """
- self._lock = lock
- self._pool = pool
- self._callback = callback
- self._operation_id = operation_id
- self._ticketizer = ticketizer
- self._termination_manager = termination_manager
- self._ingestion_manager = None
- self._expiration_manager = None
-
- self._emissions = []
- self._emission_complete = False
- self._outcome = None
- self._lowest_unused_sequence_number = 0
- self._transmitting = False
-
- def set_ingestion_and_expiration_managers(
- self, ingestion_manager, expiration_manager):
- """See overridden method for specification."""
- self._ingestion_manager = ingestion_manager
- self._expiration_manager = expiration_manager
-
- def _lead_ticket(self, emission, complete):
- """Creates a ticket suitable for leading off the transmission loop.
-
- Args:
- emission: A customer payload object to be sent to the other side of the
- operation.
- complete: Whether or not the sequence of customer payloads ends with
- the passed object.
-
- Returns:
- A ticket with which to lead off the transmission loop.
- """
- sequence_number = self._lowest_unused_sequence_number
- self._lowest_unused_sequence_number += 1
- return self._ticketizer.ticketize(
- self._operation_id, sequence_number, emission, complete)
-
- def _abortive_response_ticket(self, outcome):
- """Creates a ticket indicating operation abortion.
-
- Args:
- outcome: An interfaces.Outcome value describing operation abortion.
-
- Returns:
- A ticket indicating operation abortion.
- """
- ticket = self._ticketizer.ticketize_abortion(
- self._operation_id, self._lowest_unused_sequence_number, outcome)
- if ticket is None:
- return None
- else:
- self._lowest_unused_sequence_number += 1
- return ticket
-
- def _next_ticket(self):
- """Creates the next ticket to be sent to the other side of the operation.
-
- Returns:
- A (completed, ticket) tuple comprised of a boolean indicating whether or
- not the sequence of tickets has completed normally and a ticket to send
- to the other side if the sequence of tickets hasn't completed. The tuple
- will never have both a True first element and a non-None second element.
- """
- if self._emissions is None:
- return False, None
- elif self._outcome is None:
- if self._emissions:
- payload = self._emissions.pop(0)
- complete = self._emission_complete and not self._emissions
- sequence_number = self._lowest_unused_sequence_number
- self._lowest_unused_sequence_number += 1
- return complete, self._ticketizer.ticketize(
- self._operation_id, sequence_number, payload, complete)
- else:
- return self._emission_complete, None
- else:
- ticket = self._abortive_response_ticket(self._outcome)
- self._emissions = None
- return False, None if ticket is None else ticket
-
- def _transmit(self, ticket):
- """Commences the transmission loop sending tickets.
-
- Args:
- ticket: A ticket to be sent to the other side of the operation.
- """
- def transmit(ticket):
- while True:
- transmission_outcome = callable_util.call_logging_exceptions(
- self._callback, _TRANSMISSION_EXCEPTION_LOG_MESSAGE, ticket)
- if transmission_outcome.exception is None:
- with self._lock:
- complete, ticket = self._next_ticket()
- if ticket is None:
- if complete:
- self._termination_manager.transmission_complete()
- self._transmitting = False
- return
- else:
- with self._lock:
- self._emissions = None
- self._termination_manager.abort(
- interfaces.Outcome.TRANSMISSION_FAILURE)
- self._ingestion_manager.abort()
- self._expiration_manager.abort()
- self._transmitting = False
- return
-
- self._pool.submit(callable_util.with_exceptions_logged(
- transmit, _constants.INTERNAL_ERROR_LOG_MESSAGE), ticket)
- self._transmitting = True
-
- def inmit(self, emission, complete):
- """See _interfaces.TransmissionManager.inmit for specification."""
- if self._emissions is not None and self._outcome is None:
- self._emission_complete = complete
- if self._transmitting:
- self._emissions.append(emission)
- else:
- self._transmit(self._lead_ticket(emission, complete))
-
- def abort(self, outcome):
- """See _interfaces.TransmissionManager.abort for specification."""
- if self._emissions is not None and self._outcome is None:
- self._outcome = outcome
- if not self._transmitting:
- ticket = self._abortive_response_ticket(outcome)
- self._emissions = None
- if ticket is not None:
- self._transmit(ticket)
-
-
-def front_transmission_manager(
- lock, pool, callback, operation_id, name, subscription_kind, trace_id,
- timeout, termination_manager):
- """Creates a TransmissionManager appropriate for front-side use.
-
- Args:
- lock: The operation-servicing-wide lock object.
- pool: A thread pool in which the work of transmitting tickets will be
- performed.
- callback: A callable that accepts tickets and sends them to the other side
- of the operation.
- operation_id: The operation's ID.
- name: The name of the operation.
- subscription_kind: An interfaces.ServicedSubscription.Kind value
- describing the interest the front has in tickets sent from the back.
- trace_id: A uuid.UUID identifying a set of related operations to which
- this operation belongs.
- timeout: A length of time in seconds to allow for the entire operation.
- termination_manager: The _interfaces.TerminationManager associated with
- this operation.
-
- Returns:
- A TransmissionManager appropriate for front-side use.
- """
- return _TransmittingTransmissionManager(
- lock, pool, callback, operation_id, _FrontTicketizer(
- name, subscription_kind, trace_id, timeout),
- termination_manager)
-
-
-def back_transmission_manager(
- lock, pool, callback, operation_id, termination_manager,
- subscription_kind):
- """Creates a TransmissionManager appropriate for back-side use.
-
- Args:
- lock: The operation-servicing-wide lock object.
- pool: A thread pool in which the work of transmitting tickets will be
- performed.
- callback: A callable that accepts tickets and sends them to the other side
- of the operation.
- operation_id: The operation's ID.
- termination_manager: The _interfaces.TerminationManager associated with
- this operation.
- subscription_kind: An interfaces.ServicedSubscription.Kind value
- describing the interest the front has in tickets sent from the back.
-
- Returns:
- A TransmissionManager appropriate for back-side use.
- """
- if subscription_kind is interfaces.ServicedSubscription.Kind.NONE:
- return _EmptyTransmissionManager()
- else:
- return _TransmittingTransmissionManager(
- lock, pool, callback, operation_id, _BackTicketizer(),
- termination_manager)
diff --git a/src/python/grpcio/grpc/framework/base/implementations.py b/src/python/grpcio/grpc/framework/base/implementations.py
deleted file mode 100644
index 5656f9f981..0000000000
--- a/src/python/grpcio/grpc/framework/base/implementations.py
+++ /dev/null
@@ -1,77 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Entry points into the ticket-exchange-based base layer implementation."""
-
-# interfaces is referenced from specification in this module.
-from grpc.framework.base import _ends
-from grpc.framework.base import interfaces # pylint: disable=unused-import
-
-
-def front_link(work_pool, transmission_pool, utility_pool):
- """Factory function for creating interfaces.FrontLinks.
-
- Args:
- work_pool: A thread pool to be used for doing work within the created
- FrontLink object.
- transmission_pool: A thread pool to be used within the created FrontLink
- object for transmitting values to a joined RearLink object.
- utility_pool: A thread pool to be used within the created FrontLink object
- for utility tasks.
-
- Returns:
- An interfaces.FrontLink.
- """
- return _ends.FrontLink(work_pool, transmission_pool, utility_pool)
-
-
-def back_link(
- servicer, work_pool, transmission_pool, utility_pool, default_timeout,
- maximum_timeout):
- """Factory function for creating interfaces.BackLinks.
-
- Args:
- servicer: An interfaces.Servicer for servicing operations.
- work_pool: A thread pool to be used for doing work within the created
- BackLink object.
- transmission_pool: A thread pool to be used within the created BackLink
- object for transmitting values to a joined ForeLink object.
- utility_pool: A thread pool to be used within the created BackLink object
- for utility tasks.
- default_timeout: A length of time in seconds to be used as the default
- time alloted for a single operation.
- maximum_timeout: A length of time in seconds to be used as the maximum
- time alloted for a single operation.
-
- Returns:
- An interfaces.BackLink.
- """
- return _ends.BackLink(
- servicer, work_pool, transmission_pool, utility_pool, default_timeout,
- maximum_timeout)
diff --git a/src/python/grpcio/grpc/framework/base/in_memory.py b/src/python/grpcio/grpc/framework/base/in_memory.py
deleted file mode 100644
index c92d0bc663..0000000000
--- a/src/python/grpcio/grpc/framework/base/in_memory.py
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""In-memory implementations of base layer interfaces."""
-
-import threading
-
-from grpc.framework.base import _constants
-from grpc.framework.base import interfaces
-from grpc.framework.foundation import callable_util
-
-
-class _Serializer(object):
- """A utility for serializing values that may arrive concurrently."""
-
- def __init__(self, pool):
- self._lock = threading.Lock()
- self._pool = pool
- self._sink = None
- self._spinning = False
- self._values = []
-
- def _spin(self, sink, value):
- while True:
- sink(value)
- with self._lock:
- if self._sink is None or not self._values:
- self._spinning = False
- return
- else:
- sink, value = self._sink, self._values.pop(0)
-
- def set_sink(self, sink):
- with self._lock:
- self._sink = sink
- if sink is not None and self._values and not self._spinning:
- self._spinning = True
- self._pool.submit(
- callable_util.with_exceptions_logged(
- self._spin, _constants.INTERNAL_ERROR_LOG_MESSAGE),
- sink, self._values.pop(0))
-
- def add_value(self, value):
- with self._lock:
- if self._sink and not self._spinning:
- self._spinning = True
- self._pool.submit(
- callable_util.with_exceptions_logged(
- self._spin, _constants.INTERNAL_ERROR_LOG_MESSAGE),
- self._sink, value)
- else:
- self._values.append(value)
-
-
-class Link(interfaces.ForeLink, interfaces.RearLink):
- """A trivial implementation of interfaces.ForeLink and interfaces.RearLink."""
-
- def __init__(self, pool):
- """Constructor.
-
- Args:
- pool: A thread pool to be used for serializing ticket exchange in each
- direction.
- """
- self._front_to_back = _Serializer(pool)
- self._back_to_front = _Serializer(pool)
-
- def join_fore_link(self, fore_link):
- """See interfaces.RearLink.join_fore_link for specification."""
- self._back_to_front.set_sink(fore_link.accept_back_to_front_ticket)
-
- def join_rear_link(self, rear_link):
- """See interfaces.ForeLink.join_rear_link for specification."""
- self._front_to_back.set_sink(rear_link.accept_front_to_back_ticket)
-
- def accept_front_to_back_ticket(self, ticket):
- """See interfaces.ForeLink.accept_front_to_back_ticket for specification."""
- self._front_to_back.add_value(ticket)
-
- def accept_back_to_front_ticket(self, ticket):
- """See interfaces.RearLink.accept_back_to_front_ticket for specification."""
- self._back_to_front.add_value(ticket)
diff --git a/src/python/grpcio/grpc/framework/base/interfaces.py b/src/python/grpcio/grpc/framework/base/interfaces.py
deleted file mode 100644
index 995b51cd5b..0000000000
--- a/src/python/grpcio/grpc/framework/base/interfaces.py
+++ /dev/null
@@ -1,353 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Interfaces defined and used by the base layer of RPC Framework."""
-
-import abc
-import collections
-import enum
-
-import six
-
-# stream is referenced from specification in this module.
-from grpc.framework.foundation import stream # pylint: disable=unused-import
-
-
-@enum.unique
-class Outcome(enum.Enum):
- """Operation outcomes."""
-
- COMPLETED = 'completed'
- CANCELLED = 'cancelled'
- EXPIRED = 'expired'
- RECEPTION_FAILURE = 'reception failure'
- TRANSMISSION_FAILURE = 'transmission failure'
- SERVICER_FAILURE = 'servicer failure'
- SERVICED_FAILURE = 'serviced failure'
-
-
-class OperationContext(six.with_metaclass(abc.ABCMeta)):
- """Provides operation-related information and action.
-
- Attributes:
- trace_id: A uuid.UUID identifying a particular set of related operations.
- """
-
- @abc.abstractmethod
- def is_active(self):
- """Describes whether the operation is active or has terminated."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def add_termination_callback(self, callback):
- """Adds a function to be called upon operation termination.
-
- Args:
- callback: A callable that will be passed an Outcome value.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def time_remaining(self):
- """Describes the length of allowed time remaining for the operation.
-
- Returns:
- A nonnegative float indicating the length of allowed time in seconds
- remaining for the operation to complete before it is considered to have
- timed out.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def fail(self, exception):
- """Indicates that the operation has failed.
-
- Args:
- exception: An exception germane to the operation failure. May be None.
- """
- raise NotImplementedError()
-
-
-class Servicer(six.with_metaclass(abc.ABCMeta)):
- """Interface for service implementations."""
-
- @abc.abstractmethod
- def service(self, name, context, output_consumer):
- """Services an operation.
-
- Args:
- name: The name of the operation.
- context: A ServicerContext object affording contextual information and
- actions.
- output_consumer: A stream.Consumer that will accept output values of
- the operation.
-
- Returns:
- A stream.Consumer that will accept input values for the operation.
-
- Raises:
- exceptions.NoSuchMethodError: If this Servicer affords no method with the
- given name.
- abandonment.Abandoned: If the operation has been aborted and there no
- longer is any reason to service the operation.
- """
- raise NotImplementedError()
-
-
-class Operation(six.with_metaclass(abc.ABCMeta)):
- """Representation of an in-progress operation.
-
- Attributes:
- consumer: A stream.Consumer into which payloads constituting the operation's
- input may be passed.
- context: An OperationContext affording information and action about the
- operation.
- """
-
- @abc.abstractmethod
- def cancel(self):
- """Cancels this operation."""
- raise NotImplementedError()
-
-
-class ServicedIngestor(six.with_metaclass(abc.ABCMeta)):
- """Responsible for accepting the result of an operation."""
-
- @abc.abstractmethod
- def consumer(self, operation_context):
- """Affords a consumer to which operation results will be passed.
-
- Args:
- operation_context: An OperationContext object for the current operation.
-
- Returns:
- A stream.Consumer to which the results of the current operation will be
- passed.
-
- Raises:
- abandonment.Abandoned: If the operation has been aborted and there no
- longer is any reason to service the operation.
- """
- raise NotImplementedError()
-
-
-class ServicedSubscription(six.with_metaclass(abc.ABCMeta)):
- """A sum type representing a serviced's interest in an operation.
-
- Attributes:
- kind: A Kind value.
- ingestor: A ServicedIngestor. Must be present if kind is Kind.FULL. Must
- be None if kind is Kind.TERMINATION_ONLY or Kind.NONE.
- """
-
- @enum.unique
- class Kind(enum.Enum):
- """Kinds of subscription."""
-
- FULL = 'full'
- TERMINATION_ONLY = 'termination only'
- NONE = 'none'
-
-
-class End(six.with_metaclass(abc.ABCMeta)):
- """Common type for entry-point objects on both sides of an operation."""
-
- @abc.abstractmethod
- def operation_stats(self):
- """Reports the number of terminated operations broken down by outcome.
-
- Returns:
- A dictionary from Outcome value to an integer identifying the number
- of operations that terminated with that outcome.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def add_idle_action(self, action):
- """Adds an action to be called when this End has no ongoing operations.
-
- Args:
- action: A callable that accepts no arguments.
- """
- raise NotImplementedError()
-
-
-class Front(six.with_metaclass(abc.ABCMeta, End)):
- """Clientish objects that afford the invocation of operations."""
-
- @abc.abstractmethod
- def operate(
- self, name, payload, complete, timeout, subscription, trace_id):
- """Commences an operation.
-
- Args:
- name: The name of the method invoked for the operation.
- payload: An initial payload for the operation. May be None.
- complete: A boolean indicating whether or not additional payloads to be
- sent to the servicer may be supplied after this call.
- timeout: A length of time in seconds to allow for the operation.
- subscription: A ServicedSubscription for the operation.
- trace_id: A uuid.UUID identifying a set of related operations to which
- this operation belongs.
-
- Returns:
- An Operation object affording information and action about the operation
- in progress.
- """
- raise NotImplementedError()
-
-
-class Back(six.with_metaclass(abc.ABCMeta, End)):
- """Serverish objects that perform the work of operations."""
-
-
-class FrontToBackTicket(
- collections.namedtuple(
- 'FrontToBackTicket',
- ['operation_id', 'sequence_number', 'kind', 'name', 'subscription',
- 'trace_id', 'payload', 'timeout'])):
- """A sum type for all values sent from a front to a back.
-
- Attributes:
- operation_id: A unique-with-respect-to-equality hashable object identifying
- a particular operation.
- sequence_number: A zero-indexed integer sequence number identifying the
- ticket's place among all the tickets sent from front to back for this
- particular operation. Must be zero if kind is Kind.COMMENCEMENT or
- Kind.ENTIRE. Must be positive for any other kind.
- kind: A Kind value describing the overall kind of ticket.
- name: The name of an operation. Must be present if kind is Kind.COMMENCEMENT
- or Kind.ENTIRE. Must be None for any other kind.
- subscription: An ServicedSubscription.Kind value describing the interest
- the front has in tickets sent from the back. Must be present if
- kind is Kind.COMMENCEMENT or Kind.ENTIRE. Must be None for any other kind.
- trace_id: A uuid.UUID identifying a set of related operations to which this
- operation belongs. May be None.
- payload: A customer payload object. Must be present if kind is
- Kind.CONTINUATION. Must be None if kind is Kind.CANCELLATION. May be None
- for any other kind.
- timeout: An optional length of time (measured from the beginning of the
- operation) to allow for the entire operation. If None, a default value on
- the back will be used. If present and excessively large, the back may
- limit the operation to a smaller duration of its choice. May be present
- for any ticket kind; setting a value on a later ticket allows fronts
- to request time extensions (or even time reductions!) on in-progress
- operations.
- """
-
- @enum.unique
- class Kind(enum.Enum):
- """Identifies the overall kind of a FrontToBackTicket."""
-
- COMMENCEMENT = 'commencement'
- CONTINUATION = 'continuation'
- COMPLETION = 'completion'
- ENTIRE = 'entire'
- CANCELLATION = 'cancellation'
- EXPIRATION = 'expiration'
- SERVICER_FAILURE = 'servicer failure'
- SERVICED_FAILURE = 'serviced failure'
- RECEPTION_FAILURE = 'reception failure'
- TRANSMISSION_FAILURE = 'transmission failure'
-
-
-class BackToFrontTicket(
- collections.namedtuple(
- 'BackToFrontTicket',
- ['operation_id', 'sequence_number', 'kind', 'payload'])):
- """A sum type for all values sent from a back to a front.
-
- Attributes:
- operation_id: A unique-with-respect-to-equality hashable object identifying
- a particular operation.
- sequence_number: A zero-indexed integer sequence number identifying the
- ticket's place among all the tickets sent from back to front for this
- particular operation.
- kind: A Kind value describing the overall kind of ticket.
- payload: A customer payload object. Must be present if kind is
- Kind.CONTINUATION. May be None if kind is Kind.COMPLETION. Must be None
- otherwise.
- """
-
- @enum.unique
- class Kind(enum.Enum):
- """Identifies the overall kind of a BackToFrontTicket."""
-
- CONTINUATION = 'continuation'
- COMPLETION = 'completion'
- CANCELLATION = 'cancellation'
- EXPIRATION = 'expiration'
- SERVICER_FAILURE = 'servicer failure'
- SERVICED_FAILURE = 'serviced failure'
- RECEPTION_FAILURE = 'reception failure'
- TRANSMISSION_FAILURE = 'transmission failure'
-
-
-class ForeLink(six.with_metaclass(abc.ABCMeta)):
- """Accepts back-to-front tickets and emits front-to-back tickets."""
-
- @abc.abstractmethod
- def accept_back_to_front_ticket(self, ticket):
- """Accept a BackToFrontTicket.
-
- Args:
- ticket: Any BackToFrontTicket.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def join_rear_link(self, rear_link):
- """Mates this object with a peer with which it will exchange tickets."""
- raise NotImplementedError()
-
-
-class RearLink(six.with_metaclass(abc.ABCMeta)):
- """Accepts front-to-back tickets and emits back-to-front tickets."""
-
- @abc.abstractmethod
- def accept_front_to_back_ticket(self, ticket):
- """Accepts a FrontToBackTicket.
-
- Args:
- ticket: Any FrontToBackTicket.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def join_fore_link(self, fore_link):
- """Mates this object with a peer with which it will exchange tickets."""
- raise NotImplementedError()
-
-
-class FrontLink(six.with_metaclass(abc.ABCMeta, Front, ForeLink)):
- """Clientish objects that operate by sending and receiving tickets."""
-
-
-class BackLink(six.with_metaclass(abc.ABCMeta, Back, RearLink)):
- """Serverish objects that operate by sending and receiving tickets."""
diff --git a/src/python/grpcio/grpc/framework/base/util.py b/src/python/grpcio/grpc/framework/base/util.py
deleted file mode 100644
index c832c826cf..0000000000
--- a/src/python/grpcio/grpc/framework/base/util.py
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Utilities helpful for working with the base layer of RPC Framework."""
-
-import collections
-import threading
-
-from grpc.framework.base import interfaces
-
-
-class _ServicedSubscription(
- collections.namedtuple('_ServicedSubscription', ['kind', 'ingestor']),
- interfaces.ServicedSubscription):
- """See interfaces.ServicedSubscription for specification."""
-
-_NONE_SUBSCRIPTION = _ServicedSubscription(
- interfaces.ServicedSubscription.Kind.NONE, None)
-_TERMINATION_ONLY_SUBSCRIPTION = _ServicedSubscription(
- interfaces.ServicedSubscription.Kind.TERMINATION_ONLY, None)
-
-
-def none_serviced_subscription():
- """Creates a "none" interfaces.ServicedSubscription object.
-
- Returns:
- An interfaces.ServicedSubscription indicating no subscription to an
- operation's results (such as would be the case for a fire-and-forget
- operation invocation).
- """
- return _NONE_SUBSCRIPTION
-
-
-def termination_only_serviced_subscription():
- """Creates a "termination only" interfaces.ServicedSubscription object.
-
- Returns:
- An interfaces.ServicedSubscription indicating that the front-side customer
- is interested only in the overall termination outcome of the operation
- (such as completion or expiration) and would ignore the actual results of
- the operation.
- """
- return _TERMINATION_ONLY_SUBSCRIPTION
-
-
-def full_serviced_subscription(ingestor):
- """Creates a "full" interfaces.ServicedSubscription object.
-
- Args:
- ingestor: An interfaces.ServicedIngestor.
-
- Returns:
- An interfaces.ServicedSubscription object indicating a full
- subscription.
- """
- return _ServicedSubscription(
- interfaces.ServicedSubscription.Kind.FULL, ingestor)
-
-
-def wait_for_idle(end):
- """Waits for an interfaces.End to complete all operations.
-
- Args:
- end: Any interfaces.End.
- """
- event = threading.Event()
- end.add_idle_action(event.set)
- event.wait()
diff --git a/src/python/grpcio/grpc/framework/face/__init__.py b/src/python/grpcio/grpc/framework/face/__init__.py
deleted file mode 100644
index bff74be2c7..0000000000
--- a/src/python/grpcio/grpc/framework/face/__init__.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-import warnings
-
-warnings.simplefilter('always', DeprecationWarning)
-warnings.warn('the alpha API (includes this package) is deprecated, '
- 'unmaintained, and no longer tested. Please migrate to the beta '
- 'API.', DeprecationWarning, stacklevel=2)
diff --git a/src/python/grpcio/grpc/framework/face/_calls.py b/src/python/grpcio/grpc/framework/face/_calls.py
deleted file mode 100644
index 87edeb0f0e..0000000000
--- a/src/python/grpcio/grpc/framework/face/_calls.py
+++ /dev/null
@@ -1,422 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Utility functions for invoking RPCs."""
-
-import sys
-import threading
-
-from grpc.framework.base import interfaces as base_interfaces
-from grpc.framework.base import util as base_util
-from grpc.framework.face import _control
-from grpc.framework.face import interfaces
-from grpc.framework.foundation import callable_util
-from grpc.framework.foundation import future
-
-_ITERATOR_EXCEPTION_LOG_MESSAGE = 'Exception iterating over requests!'
-_DONE_CALLBACK_LOG_MESSAGE = 'Exception calling Future "done" callback!'
-
-
-class _RendezvousServicedIngestor(base_interfaces.ServicedIngestor):
-
- def __init__(self, rendezvous):
- self._rendezvous = rendezvous
-
- def consumer(self, operation_context):
- return self._rendezvous
-
-
-class _EventServicedIngestor(base_interfaces.ServicedIngestor):
-
- def __init__(self, result_consumer, abortion_callback):
- self._result_consumer = result_consumer
- self._abortion_callback = abortion_callback
-
- def consumer(self, operation_context):
- operation_context.add_termination_callback(
- _control.as_operation_termination_callback(self._abortion_callback))
- return self._result_consumer
-
-
-def _rendezvous_subscription(rendezvous):
- return base_util.full_serviced_subscription(
- _RendezvousServicedIngestor(rendezvous))
-
-
-def _unary_event_subscription(completion_callback, abortion_callback):
- return base_util.full_serviced_subscription(
- _EventServicedIngestor(
- _control.UnaryConsumer(completion_callback), abortion_callback))
-
-
-def _stream_event_subscription(result_consumer, abortion_callback):
- return base_util.full_serviced_subscription(
- _EventServicedIngestor(result_consumer, abortion_callback))
-
-
-# NOTE(nathaniel): This class has some extremely special semantics around
-# cancellation that allow it to be used by both "blocking" APIs and "futures"
-# APIs.
-#
-# Since futures.Future defines its own exception for cancellation, we want these
-# objects, when returned by methods of a returning-Futures-from-other-methods
-# object, to raise the same exception for cancellation. But that's weird in a
-# blocking API - why should this object, also returned by methods of blocking
-# APIs, raise exceptions from the "future" module? Should we do something like
-# have this class be parameterized by the type of exception that it raises in
-# cancellation circumstances?
-#
-# We don't have to take such a dramatic step: since blocking APIs define no
-# cancellation semantics whatsoever, there is no supported way for
-# blocking-API-users of these objects to cancel RPCs, and thus no supported way
-# for them to see an exception the type of which would be weird to them.
-#
-# Bonus: in both blocking and futures APIs, this object still properly raises
-# exceptions.CancellationError for any *server-side cancellation* of an RPC.
-class _OperationCancellableIterator(interfaces.CancellableIterator):
- """An interfaces.CancellableIterator for response-streaming operations."""
-
- def __init__(self, rendezvous, operation):
- self._lock = threading.Lock()
- self._rendezvous = rendezvous
- self._operation = operation
- self._cancelled = False
-
- def __iter__(self):
- return self
-
- def next(self):
- with self._lock:
- if self._cancelled:
- raise future.CancelledError()
- return next(self._rendezvous)
-
- def cancel(self):
- with self._lock:
- self._cancelled = True
- self._operation.cancel()
- self._rendezvous.set_outcome(base_interfaces.Outcome.CANCELLED)
-
-
-class _OperationFuture(future.Future):
- """A future.Future interface to an operation."""
-
- def __init__(self, rendezvous, operation):
- self._condition = threading.Condition()
- self._rendezvous = rendezvous
- self._operation = operation
-
- self._cancelled = False
- self._computed = False
- self._payload = None
- self._exception = None
- self._traceback = None
- self._callbacks = []
-
- def cancel(self):
- """See future.Future.cancel for specification."""
- with self._condition:
- if not self._cancelled and not self._computed:
- self._operation.cancel()
- self._cancelled = True
- self._condition.notify_all()
- return False
-
- def cancelled(self):
- """See future.Future.cancelled for specification."""
- with self._condition:
- return self._cancelled
-
- def running(self):
- """See future.Future.running for specification."""
- with self._condition:
- return not self._cancelled and not self._computed
-
- def done(self):
- """See future.Future.done for specification."""
- with self._condition:
- return self._cancelled or self._computed
-
- def result(self, timeout=None):
- """See future.Future.result for specification."""
- with self._condition:
- if self._cancelled:
- raise future.CancelledError()
- if self._computed:
- if self._payload is None:
- raise self._exception # pylint: disable=raising-bad-type
- else:
- return self._payload
-
- condition = threading.Condition()
- def notify_condition(unused_future):
- with condition:
- condition.notify()
- self._callbacks.append(notify_condition)
-
- with condition:
- condition.wait(timeout=timeout)
-
- with self._condition:
- if self._cancelled:
- raise future.CancelledError()
- elif self._computed:
- if self._payload is None:
- raise self._exception # pylint: disable=raising-bad-type
- else:
- return self._payload
- else:
- raise future.TimeoutError()
-
- def exception(self, timeout=None):
- """See future.Future.exception for specification."""
- with self._condition:
- if self._cancelled:
- raise future.CancelledError()
- if self._computed:
- return self._exception
-
- condition = threading.Condition()
- def notify_condition(unused_future):
- with condition:
- condition.notify()
- self._callbacks.append(notify_condition)
-
- with condition:
- condition.wait(timeout=timeout)
-
- with self._condition:
- if self._cancelled:
- raise future.CancelledError()
- elif self._computed:
- return self._exception
- else:
- raise future.TimeoutError()
-
- def traceback(self, timeout=None):
- """See future.Future.traceback for specification."""
- with self._condition:
- if self._cancelled:
- raise future.CancelledError()
- if self._computed:
- return self._traceback
-
- condition = threading.Condition()
- def notify_condition(unused_future):
- with condition:
- condition.notify()
- self._callbacks.append(notify_condition)
-
- with condition:
- condition.wait(timeout=timeout)
-
- with self._condition:
- if self._cancelled:
- raise future.CancelledError()
- elif self._computed:
- return self._traceback
- else:
- raise future.TimeoutError()
-
- def add_done_callback(self, fn):
- """See future.Future.add_done_callback for specification."""
- with self._condition:
- if self._callbacks is not None:
- self._callbacks.append(fn)
- return
-
- callable_util.call_logging_exceptions(fn, _DONE_CALLBACK_LOG_MESSAGE, self)
-
- def on_operation_termination(self, operation_outcome):
- """Indicates to this object that the operation has terminated.
-
- Args:
- operation_outcome: A base_interfaces.Outcome value indicating the
- outcome of the operation.
- """
- with self._condition:
- cancelled = self._cancelled
- if cancelled:
- callbacks = list(self._callbacks)
- self._callbacks = None
- else:
- rendezvous = self._rendezvous
-
- if not cancelled:
- payload = None
- exception = None
- traceback = None
- if operation_outcome == base_interfaces.Outcome.COMPLETED:
- try:
- payload = next(rendezvous)
- except Exception as e: # pylint: disable=broad-except
- exception = e
- traceback = sys.exc_info()[2]
- else:
- try:
- # We raise and then immediately catch in order to create a traceback.
- raise _control.abortion_outcome_to_exception(operation_outcome)
- except Exception as e: # pylint: disable=broad-except
- exception = e
- traceback = sys.exc_info()[2]
- with self._condition:
- if not self._cancelled:
- self._computed = True
- self._payload = payload
- self._exception = exception
- self._traceback = traceback
- callbacks = list(self._callbacks)
- self._callbacks = None
-
- for callback in callbacks:
- callable_util.call_logging_exceptions(
- callback, _DONE_CALLBACK_LOG_MESSAGE, self)
-
-
-class _Call(interfaces.Call):
-
- def __init__(self, operation):
- self._operation = operation
- self.context = _control.RpcContext(operation.context)
-
- def cancel(self):
- self._operation.cancel()
-
-
-def blocking_value_in_value_out(front, name, payload, timeout, trace_id):
- """Services in a blocking fashion a value-in value-out servicer method."""
- rendezvous = _control.Rendezvous()
- subscription = _rendezvous_subscription(rendezvous)
- operation = front.operate(
- name, payload, True, timeout, subscription, trace_id)
- operation.context.add_termination_callback(rendezvous.set_outcome)
- return next(rendezvous)
-
-
-def future_value_in_value_out(front, name, payload, timeout, trace_id):
- """Services a value-in value-out servicer method by returning a Future."""
- rendezvous = _control.Rendezvous()
- subscription = _rendezvous_subscription(rendezvous)
- operation = front.operate(
- name, payload, True, timeout, subscription, trace_id)
- operation.context.add_termination_callback(rendezvous.set_outcome)
- operation_future = _OperationFuture(rendezvous, operation)
- operation.context.add_termination_callback(
- operation_future.on_operation_termination)
- return operation_future
-
-
-def inline_value_in_stream_out(front, name, payload, timeout, trace_id):
- """Services a value-in stream-out servicer method."""
- rendezvous = _control.Rendezvous()
- subscription = _rendezvous_subscription(rendezvous)
- operation = front.operate(
- name, payload, True, timeout, subscription, trace_id)
- operation.context.add_termination_callback(rendezvous.set_outcome)
- return _OperationCancellableIterator(rendezvous, operation)
-
-
-def blocking_stream_in_value_out(
- front, name, payload_iterator, timeout, trace_id):
- """Services in a blocking fashion a stream-in value-out servicer method."""
- rendezvous = _control.Rendezvous()
- subscription = _rendezvous_subscription(rendezvous)
- operation = front.operate(name, None, False, timeout, subscription, trace_id)
- operation.context.add_termination_callback(rendezvous.set_outcome)
- for payload in payload_iterator:
- operation.consumer.consume(payload)
- operation.consumer.terminate()
- return next(rendezvous)
-
-
-def future_stream_in_value_out(
- front, name, payload_iterator, timeout, trace_id, pool):
- """Services a stream-in value-out servicer method by returning a Future."""
- rendezvous = _control.Rendezvous()
- subscription = _rendezvous_subscription(rendezvous)
- operation = front.operate(name, None, False, timeout, subscription, trace_id)
- operation.context.add_termination_callback(rendezvous.set_outcome)
- pool.submit(
- callable_util.with_exceptions_logged(
- _control.pipe_iterator_to_consumer, _ITERATOR_EXCEPTION_LOG_MESSAGE),
- payload_iterator, operation.consumer, lambda: True, True)
- operation_future = _OperationFuture(rendezvous, operation)
- operation.context.add_termination_callback(
- operation_future.on_operation_termination)
- return operation_future
-
-
-def inline_stream_in_stream_out(
- front, name, payload_iterator, timeout, trace_id, pool):
- """Services a stream-in stream-out servicer method."""
- rendezvous = _control.Rendezvous()
- subscription = _rendezvous_subscription(rendezvous)
- operation = front.operate(name, None, False, timeout, subscription, trace_id)
- operation.context.add_termination_callback(rendezvous.set_outcome)
- pool.submit(
- callable_util.with_exceptions_logged(
- _control.pipe_iterator_to_consumer, _ITERATOR_EXCEPTION_LOG_MESSAGE),
- payload_iterator, operation.consumer, lambda: True, True)
- return _OperationCancellableIterator(rendezvous, operation)
-
-
-def event_value_in_value_out(
- front, name, payload, completion_callback, abortion_callback, timeout,
- trace_id):
- subscription = _unary_event_subscription(
- completion_callback, abortion_callback)
- operation = front.operate(
- name, payload, True, timeout, subscription, trace_id)
- return _Call(operation)
-
-
-def event_value_in_stream_out(
- front, name, payload, result_payload_consumer, abortion_callback, timeout,
- trace_id):
- subscription = _stream_event_subscription(
- result_payload_consumer, abortion_callback)
- operation = front.operate(
- name, payload, True, timeout, subscription, trace_id)
- return _Call(operation)
-
-
-def event_stream_in_value_out(
- front, name, completion_callback, abortion_callback, timeout, trace_id):
- subscription = _unary_event_subscription(
- completion_callback, abortion_callback)
- operation = front.operate(name, None, False, timeout, subscription, trace_id)
- return _Call(operation), operation.consumer
-
-
-def event_stream_in_stream_out(
- front, name, result_payload_consumer, abortion_callback, timeout, trace_id):
- subscription = _stream_event_subscription(
- result_payload_consumer, abortion_callback)
- operation = front.operate(name, None, False, timeout, subscription, trace_id)
- return _Call(operation), operation.consumer
diff --git a/src/python/grpcio/grpc/framework/face/_control.py b/src/python/grpcio/grpc/framework/face/_control.py
deleted file mode 100644
index 539615efa1..0000000000
--- a/src/python/grpcio/grpc/framework/face/_control.py
+++ /dev/null
@@ -1,201 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""State and behavior for translating between sync and async control flow."""
-
-import threading
-
-from grpc.framework.base import interfaces as base_interfaces
-from grpc.framework.face import exceptions
-from grpc.framework.face import interfaces
-from grpc.framework.foundation import abandonment
-from grpc.framework.foundation import stream
-
-INTERNAL_ERROR_LOG_MESSAGE = ':-( RPC Framework (Face) Internal Error! :-('
-
-_OPERATION_OUTCOME_TO_RPC_ABORTION = {
- base_interfaces.Outcome.CANCELLED: interfaces.Abortion.CANCELLED,
- base_interfaces.Outcome.EXPIRED: interfaces.Abortion.EXPIRED,
- base_interfaces.Outcome.RECEPTION_FAILURE:
- interfaces.Abortion.NETWORK_FAILURE,
- base_interfaces.Outcome.TRANSMISSION_FAILURE:
- interfaces.Abortion.NETWORK_FAILURE,
- base_interfaces.Outcome.SERVICED_FAILURE:
- interfaces.Abortion.SERVICED_FAILURE,
- base_interfaces.Outcome.SERVICER_FAILURE:
- interfaces.Abortion.SERVICER_FAILURE,
-}
-
-
-def _as_operation_termination_callback(rpc_abortion_callback):
- def operation_termination_callback(operation_outcome):
- rpc_abortion = _OPERATION_OUTCOME_TO_RPC_ABORTION.get(
- operation_outcome, None)
- if rpc_abortion is not None:
- rpc_abortion_callback(rpc_abortion)
- return operation_termination_callback
-
-
-def _abortion_outcome_to_exception(abortion_outcome):
- if abortion_outcome == base_interfaces.Outcome.CANCELLED:
- return exceptions.CancellationError()
- elif abortion_outcome == base_interfaces.Outcome.EXPIRED:
- return exceptions.ExpirationError()
- elif abortion_outcome == base_interfaces.Outcome.SERVICER_FAILURE:
- return exceptions.ServicerError()
- elif abortion_outcome == base_interfaces.Outcome.SERVICED_FAILURE:
- return exceptions.ServicedError()
- else:
- return exceptions.NetworkError()
-
-
-class UnaryConsumer(stream.Consumer):
- """A stream.Consumer that should only ever be passed one value."""
-
- def __init__(self, on_termination):
- self._on_termination = on_termination
- self._value = None
-
- def consume(self, value):
- self._value = value
-
- def terminate(self):
- self._on_termination(self._value)
-
- def consume_and_terminate(self, value):
- self._on_termination(value)
-
-
-class Rendezvous(stream.Consumer):
- """A rendez-vous with stream.Consumer and iterator interfaces."""
-
- def __init__(self):
- self._condition = threading.Condition()
- self._values = []
- self._values_completed = False
- self._abortion = None
-
- def consume(self, value):
- with self._condition:
- self._values.append(value)
- self._condition.notify()
-
- def terminate(self):
- with self._condition:
- self._values_completed = True
- self._condition.notify()
-
- def consume_and_terminate(self, value):
- with self._condition:
- self._values.append(value)
- self._values_completed = True
- self._condition.notify()
-
- def __iter__(self):
- return self
-
- def __next__(self):
- return self.next()
-
- def next(self):
- with self._condition:
- while ((self._abortion is None) and
- (not self._values) and
- (not self._values_completed)):
- self._condition.wait()
- if self._abortion is not None:
- raise _abortion_outcome_to_exception(self._abortion)
- elif self._values:
- return self._values.pop(0)
- elif self._values_completed:
- raise StopIteration()
- else:
- raise AssertionError('Unreachable code reached!')
-
- def set_outcome(self, outcome):
- with self._condition:
- if outcome is not base_interfaces.Outcome.COMPLETED:
- self._abortion = outcome
- self._condition.notify()
-
-
-class RpcContext(interfaces.RpcContext):
- """A wrapped base_interfaces.OperationContext."""
-
- def __init__(self, operation_context):
- self._operation_context = operation_context
-
- def is_active(self):
- return self._operation_context.is_active()
-
- def time_remaining(self):
- return self._operation_context.time_remaining()
-
- def add_abortion_callback(self, abortion_callback):
- self._operation_context.add_termination_callback(
- _as_operation_termination_callback(abortion_callback))
-
-
-def pipe_iterator_to_consumer(iterator, consumer, active, terminate):
- """Pipes values emitted from an iterator to a stream.Consumer.
-
- Args:
- iterator: An iterator from which values will be emitted.
- consumer: A stream.Consumer to which values will be passed.
- active: A no-argument callable that returns True if the work being done by
- this function is still valid and should not be abandoned and False if the
- work being done by this function should be abandoned.
- terminate: A boolean indicating whether or not this function should
- terminate the given consumer after passing to it all values emitted by the
- given iterator.
-
- Raises:
- abandonment.Abandoned: If this function quits early after seeing False
- returned by the active function passed to it.
- Exception: This function raises whatever exceptions are raised by iterating
- over the given iterator.
- """
- for element in iterator:
- if not active():
- raise abandonment.Abandoned()
-
- consumer.consume(element)
-
- if not active():
- raise abandonment.Abandoned()
- if terminate:
- consumer.terminate()
-
-
-def abortion_outcome_to_exception(abortion_outcome):
- return _abortion_outcome_to_exception(abortion_outcome)
-
-
-def as_operation_termination_callback(rpc_abortion_callback):
- return _as_operation_termination_callback(rpc_abortion_callback)
diff --git a/src/python/grpcio/grpc/framework/face/_service.py b/src/python/grpcio/grpc/framework/face/_service.py
deleted file mode 100644
index cdf413356a..0000000000
--- a/src/python/grpcio/grpc/framework/face/_service.py
+++ /dev/null
@@ -1,187 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Behaviors for servicing RPCs."""
-
-# base_interfaces and interfaces are referenced from specification in this
-# module.
-from grpc.framework.base import interfaces as base_interfaces # pylint: disable=unused-import
-from grpc.framework.face import _control
-from grpc.framework.face import exceptions
-from grpc.framework.face import interfaces # pylint: disable=unused-import
-from grpc.framework.foundation import abandonment
-from grpc.framework.foundation import callable_util
-from grpc.framework.foundation import stream
-from grpc.framework.foundation import stream_util
-
-
-class _ValueInStreamOutConsumer(stream.Consumer):
- """A stream.Consumer that maps inputs one-to-many onto outputs."""
-
- def __init__(self, behavior, context, downstream):
- """Constructor.
-
- Args:
- behavior: A callable that takes a single value and an
- interfaces.RpcContext and returns a generator of arbitrarily many
- values.
- context: An interfaces.RpcContext.
- downstream: A stream.Consumer to which to pass the values generated by the
- given behavior.
- """
- self._behavior = behavior
- self._context = context
- self._downstream = downstream
-
- def consume(self, value):
- _control.pipe_iterator_to_consumer(
- self._behavior(value, self._context), self._downstream,
- self._context.is_active, False)
-
- def terminate(self):
- self._downstream.terminate()
-
- def consume_and_terminate(self, value):
- _control.pipe_iterator_to_consumer(
- self._behavior(value, self._context), self._downstream,
- self._context.is_active, True)
-
-
-def _pool_wrap(behavior, operation_context):
- """Wraps an operation-related behavior so that it may be called in a pool.
-
- Args:
- behavior: A callable related to carrying out an operation.
- operation_context: A base_interfaces.OperationContext for the operation.
-
- Returns:
- A callable that when called carries out the behavior of the given callable
- and handles whatever exceptions it raises appropriately.
- """
- def translation(*args):
- try:
- behavior(*args)
- except (
- abandonment.Abandoned,
- exceptions.ExpirationError,
- exceptions.CancellationError,
- exceptions.ServicedError,
- exceptions.NetworkError) as e:
- if operation_context.is_active():
- operation_context.fail(e)
- except Exception as e:
- operation_context.fail(e)
- return callable_util.with_exceptions_logged(
- translation, _control.INTERNAL_ERROR_LOG_MESSAGE)
-
-
-def adapt_inline_value_in_value_out(method):
- def adaptation(response_consumer, operation_context):
- rpc_context = _control.RpcContext(operation_context)
- return stream_util.TransformingConsumer(
- lambda request: method(request, rpc_context), response_consumer)
- return adaptation
-
-
-def adapt_inline_value_in_stream_out(method):
- def adaptation(response_consumer, operation_context):
- rpc_context = _control.RpcContext(operation_context)
- return _ValueInStreamOutConsumer(method, rpc_context, response_consumer)
- return adaptation
-
-
-def adapt_inline_stream_in_value_out(method, pool):
- def adaptation(response_consumer, operation_context):
- rendezvous = _control.Rendezvous()
- operation_context.add_termination_callback(rendezvous.set_outcome)
- def in_pool_thread():
- response_consumer.consume_and_terminate(
- method(rendezvous, _control.RpcContext(operation_context)))
- pool.submit(_pool_wrap(in_pool_thread, operation_context))
- return rendezvous
- return adaptation
-
-
-def adapt_inline_stream_in_stream_out(method, pool):
- """Adapts an interfaces.InlineStreamInStreamOutMethod for use with Consumers.
-
- RPCs may be serviced by calling the return value of this function, passing
- request values to the stream.Consumer returned from that call, and receiving
- response values from the stream.Consumer passed to that call.
-
- Args:
- method: An interfaces.InlineStreamInStreamOutMethod.
- pool: A thread pool.
-
- Returns:
- A callable that takes a stream.Consumer and a
- base_interfaces.OperationContext and returns a stream.Consumer.
- """
- def adaptation(response_consumer, operation_context):
- rendezvous = _control.Rendezvous()
- operation_context.add_termination_callback(rendezvous.set_outcome)
- def in_pool_thread():
- _control.pipe_iterator_to_consumer(
- method(rendezvous, _control.RpcContext(operation_context)),
- response_consumer, operation_context.is_active, True)
- pool.submit(_pool_wrap(in_pool_thread, operation_context))
- return rendezvous
- return adaptation
-
-
-def adapt_event_value_in_value_out(method):
- def adaptation(response_consumer, operation_context):
- def on_payload(payload):
- method(
- payload, response_consumer.consume_and_terminate,
- _control.RpcContext(operation_context))
- return _control.UnaryConsumer(on_payload)
- return adaptation
-
-
-def adapt_event_value_in_stream_out(method):
- def adaptation(response_consumer, operation_context):
- def on_payload(payload):
- method(
- payload, response_consumer, _control.RpcContext(operation_context))
- return _control.UnaryConsumer(on_payload)
- return adaptation
-
-
-def adapt_event_stream_in_value_out(method):
- def adaptation(response_consumer, operation_context):
- rpc_context = _control.RpcContext(operation_context)
- return method(response_consumer.consume_and_terminate, rpc_context)
- return adaptation
-
-
-def adapt_event_stream_in_stream_out(method):
- def adaptation(response_consumer, operation_context):
- return method(response_consumer, _control.RpcContext(operation_context))
- return adaptation
diff --git a/src/python/grpcio/grpc/framework/face/demonstration.py b/src/python/grpcio/grpc/framework/face/demonstration.py
deleted file mode 100644
index f6b4b609ff..0000000000
--- a/src/python/grpcio/grpc/framework/face/demonstration.py
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Demonstration-suitable implementation of the face layer of RPC Framework."""
-
-from grpc.framework.base import util as _base_util
-from grpc.framework.base import implementations as _base_implementations
-from grpc.framework.face import implementations
-from grpc.framework.foundation import logging_pool
-
-_POOL_SIZE_LIMIT = 5
-
-_MAXIMUM_TIMEOUT = 90
-
-
-class LinkedPair(object):
- """A Server and Stub that are linked to one another.
-
- Attributes:
- server: A Server.
- stub: A Stub.
- """
-
- def shut_down(self):
- """Shuts down this object and releases its resources."""
- raise NotImplementedError()
-
-
-class _LinkedPair(LinkedPair):
-
- def __init__(self, server, stub, front, back, pools):
- self.server = server
- self.stub = stub
- self._front = front
- self._back = back
- self._pools = pools
-
- def shut_down(self):
- _base_util.wait_for_idle(self._front)
- _base_util.wait_for_idle(self._back)
-
- for pool in self._pools:
- pool.shutdown(wait=True)
-
-
-def server_and_stub(
- default_timeout,
- inline_value_in_value_out_methods=None,
- inline_value_in_stream_out_methods=None,
- inline_stream_in_value_out_methods=None,
- inline_stream_in_stream_out_methods=None,
- event_value_in_value_out_methods=None,
- event_value_in_stream_out_methods=None,
- event_stream_in_value_out_methods=None,
- event_stream_in_stream_out_methods=None,
- multi_method=None):
- """Creates a Server and Stub linked together for use."""
- front_work_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- front_transmission_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- front_utility_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- back_work_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- back_transmission_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- back_utility_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- stub_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- pools = (
- front_work_pool, front_transmission_pool, front_utility_pool,
- back_work_pool, back_transmission_pool, back_utility_pool,
- stub_pool)
-
- servicer = implementations.servicer(
- back_work_pool,
- inline_value_in_value_out_methods=inline_value_in_value_out_methods,
- inline_value_in_stream_out_methods=inline_value_in_stream_out_methods,
- inline_stream_in_value_out_methods=inline_stream_in_value_out_methods,
- inline_stream_in_stream_out_methods=inline_stream_in_stream_out_methods,
- event_value_in_value_out_methods=event_value_in_value_out_methods,
- event_value_in_stream_out_methods=event_value_in_stream_out_methods,
- event_stream_in_value_out_methods=event_stream_in_value_out_methods,
- event_stream_in_stream_out_methods=event_stream_in_stream_out_methods,
- multi_method=multi_method)
-
- front = _base_implementations.front_link(
- front_work_pool, front_transmission_pool, front_utility_pool)
- back = _base_implementations.back_link(
- servicer, back_work_pool, back_transmission_pool, back_utility_pool,
- default_timeout, _MAXIMUM_TIMEOUT)
- front.join_rear_link(back)
- back.join_fore_link(front)
-
- stub = implementations.stub(front, stub_pool)
-
- return _LinkedPair(implementations.server(), stub, front, back, pools)
diff --git a/src/python/grpcio/grpc/framework/face/implementations.py b/src/python/grpcio/grpc/framework/face/implementations.py
deleted file mode 100644
index 96055b4130..0000000000
--- a/src/python/grpcio/grpc/framework/face/implementations.py
+++ /dev/null
@@ -1,320 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Entry points into the Face layer of RPC Framework."""
-
-import six
-
-from grpc.framework.common import cardinality
-from grpc.framework.common import style
-from grpc.framework.base import exceptions as _base_exceptions
-from grpc.framework.base import interfaces as base_interfaces
-from grpc.framework.face import _calls
-from grpc.framework.face import _service
-from grpc.framework.face import exceptions
-from grpc.framework.face import interfaces
-
-
-class _BaseServicer(base_interfaces.Servicer):
-
- def __init__(self, methods, multi_method):
- self._methods = methods
- self._multi_method = multi_method
-
- def service(self, name, context, output_consumer):
- method = self._methods.get(name, None)
- if method is not None:
- return method(output_consumer, context)
- elif self._multi_method is not None:
- try:
- return self._multi_method.service(name, output_consumer, context)
- except exceptions.NoSuchMethodError:
- raise _base_exceptions.NoSuchMethodError()
- else:
- raise _base_exceptions.NoSuchMethodError()
-
-
-class _UnaryUnaryMultiCallable(interfaces.UnaryUnaryMultiCallable):
-
- def __init__(self, front, name):
- self._front = front
- self._name = name
-
- def __call__(self, request, timeout):
- return _calls.blocking_value_in_value_out(
- self._front, self._name, request, timeout, 'unused trace ID')
-
- def future(self, request, timeout):
- return _calls.future_value_in_value_out(
- self._front, self._name, request, timeout, 'unused trace ID')
-
- def event(self, request, response_callback, abortion_callback, timeout):
- return _calls.event_value_in_value_out(
- self._front, self._name, request, response_callback, abortion_callback,
- timeout, 'unused trace ID')
-
-
-class _UnaryStreamMultiCallable(interfaces.UnaryStreamMultiCallable):
-
- def __init__(self, front, name):
- self._front = front
- self._name = name
-
- def __call__(self, request, timeout):
- return _calls.inline_value_in_stream_out(
- self._front, self._name, request, timeout, 'unused trace ID')
-
- def event(self, request, response_consumer, abortion_callback, timeout):
- return _calls.event_value_in_stream_out(
- self._front, self._name, request, response_consumer, abortion_callback,
- timeout, 'unused trace ID')
-
-
-class _StreamUnaryMultiCallable(interfaces.StreamUnaryMultiCallable):
-
- def __init__(self, front, name, pool):
- self._front = front
- self._name = name
- self._pool = pool
-
- def __call__(self, request_iterator, timeout):
- return _calls.blocking_stream_in_value_out(
- self._front, self._name, request_iterator, timeout, 'unused trace ID')
-
- def future(self, request_iterator, timeout):
- return _calls.future_stream_in_value_out(
- self._front, self._name, request_iterator, timeout, 'unused trace ID',
- self._pool)
-
- def event(self, response_callback, abortion_callback, timeout):
- return _calls.event_stream_in_value_out(
- self._front, self._name, response_callback, abortion_callback, timeout,
- 'unused trace ID')
-
-
-class _StreamStreamMultiCallable(interfaces.StreamStreamMultiCallable):
-
- def __init__(self, front, name, pool):
- self._front = front
- self._name = name
- self._pool = pool
-
- def __call__(self, request_iterator, timeout):
- return _calls.inline_stream_in_stream_out(
- self._front, self._name, request_iterator, timeout, 'unused trace ID',
- self._pool)
-
- def event(self, response_consumer, abortion_callback, timeout):
- return _calls.event_stream_in_stream_out(
- self._front, self._name, response_consumer, abortion_callback, timeout,
- 'unused trace ID')
-
-
-class _GenericStub(interfaces.GenericStub):
- """An interfaces.GenericStub implementation."""
-
- def __init__(self, front, pool):
- self._front = front
- self._pool = pool
-
- def blocking_value_in_value_out(self, name, request, timeout):
- return _calls.blocking_value_in_value_out(
- self._front, name, request, timeout, 'unused trace ID')
-
- def future_value_in_value_out(self, name, request, timeout):
- return _calls.future_value_in_value_out(
- self._front, name, request, timeout, 'unused trace ID')
-
- def inline_value_in_stream_out(self, name, request, timeout):
- return _calls.inline_value_in_stream_out(
- self._front, name, request, timeout, 'unused trace ID')
-
- def blocking_stream_in_value_out(self, name, request_iterator, timeout):
- return _calls.blocking_stream_in_value_out(
- self._front, name, request_iterator, timeout, 'unused trace ID')
-
- def future_stream_in_value_out(self, name, request_iterator, timeout):
- return _calls.future_stream_in_value_out(
- self._front, name, request_iterator, timeout, 'unused trace ID',
- self._pool)
-
- def inline_stream_in_stream_out(self, name, request_iterator, timeout):
- return _calls.inline_stream_in_stream_out(
- self._front, name, request_iterator, timeout, 'unused trace ID',
- self._pool)
-
- def event_value_in_value_out(
- self, name, request, response_callback, abortion_callback, timeout):
- return _calls.event_value_in_value_out(
- self._front, name, request, response_callback, abortion_callback,
- timeout, 'unused trace ID')
-
- def event_value_in_stream_out(
- self, name, request, response_consumer, abortion_callback, timeout):
- return _calls.event_value_in_stream_out(
- self._front, name, request, response_consumer, abortion_callback,
- timeout, 'unused trace ID')
-
- def event_stream_in_value_out(
- self, name, response_callback, abortion_callback, timeout):
- return _calls.event_stream_in_value_out(
- self._front, name, response_callback, abortion_callback, timeout,
- 'unused trace ID')
-
- def event_stream_in_stream_out(
- self, name, response_consumer, abortion_callback, timeout):
- return _calls.event_stream_in_stream_out(
- self._front, name, response_consumer, abortion_callback, timeout,
- 'unused trace ID')
-
- def unary_unary_multi_callable(self, name):
- return _UnaryUnaryMultiCallable(self._front, name)
-
- def unary_stream_multi_callable(self, name):
- return _UnaryStreamMultiCallable(self._front, name)
-
- def stream_unary_multi_callable(self, name):
- return _StreamUnaryMultiCallable(self._front, name, self._pool)
-
- def stream_stream_multi_callable(self, name):
- return _StreamStreamMultiCallable(self._front, name, self._pool)
-
-
-class _DynamicStub(interfaces.DynamicStub):
- """An interfaces.DynamicStub implementation."""
-
- def __init__(self, cardinalities, front, pool):
- self._cardinalities = cardinalities
- self._front = front
- self._pool = pool
-
- def __getattr__(self, attr):
- method_cardinality = self._cardinalities.get(attr)
- if method_cardinality is cardinality.Cardinality.UNARY_UNARY:
- return _UnaryUnaryMultiCallable(self._front, attr)
- elif method_cardinality is cardinality.Cardinality.UNARY_STREAM:
- return _UnaryStreamMultiCallable(self._front, attr)
- elif method_cardinality is cardinality.Cardinality.STREAM_UNARY:
- return _StreamUnaryMultiCallable(self._front, attr, self._pool)
- elif method_cardinality is cardinality.Cardinality.STREAM_STREAM:
- return _StreamStreamMultiCallable(self._front, attr, self._pool)
- else:
- raise AttributeError('_DynamicStub object has no attribute "%s"!' % attr)
-
-
-def _adapt_method_implementations(method_implementations, pool):
- adapted_implementations = {}
- for name, method_implementation in six.iteritems(method_implementations):
- if method_implementation.style is style.Service.INLINE:
- if method_implementation.cardinality is cardinality.Cardinality.UNARY_UNARY:
- adapted_implementations[name] = _service.adapt_inline_value_in_value_out(
- method_implementation.unary_unary_inline)
- elif method_implementation.cardinality is cardinality.Cardinality.UNARY_STREAM:
- adapted_implementations[name] = _service.adapt_inline_value_in_stream_out(
- method_implementation.unary_stream_inline)
- elif method_implementation.cardinality is cardinality.Cardinality.STREAM_UNARY:
- adapted_implementations[name] = _service.adapt_inline_stream_in_value_out(
- method_implementation.stream_unary_inline, pool)
- elif method_implementation.cardinality is cardinality.Cardinality.STREAM_STREAM:
- adapted_implementations[name] = _service.adapt_inline_stream_in_stream_out(
- method_implementation.stream_stream_inline, pool)
- elif method_implementation.style is style.Service.EVENT:
- if method_implementation.cardinality is cardinality.Cardinality.UNARY_UNARY:
- adapted_implementations[name] = _service.adapt_event_value_in_value_out(
- method_implementation.unary_unary_event)
- elif method_implementation.cardinality is cardinality.Cardinality.UNARY_STREAM:
- adapted_implementations[name] = _service.adapt_event_value_in_stream_out(
- method_implementation.unary_stream_event)
- elif method_implementation.cardinality is cardinality.Cardinality.STREAM_UNARY:
- adapted_implementations[name] = _service.adapt_event_stream_in_value_out(
- method_implementation.stream_unary_event)
- elif method_implementation.cardinality is cardinality.Cardinality.STREAM_STREAM:
- adapted_implementations[name] = _service.adapt_event_stream_in_stream_out(
- method_implementation.stream_stream_event)
- return adapted_implementations
-
-
-def servicer(pool, method_implementations, multi_method_implementation):
- """Creates a base_interfaces.Servicer.
-
- It is guaranteed that any passed interfaces.MultiMethodImplementation will
- only be called to service an RPC if there is no
- interfaces.MethodImplementation for the RPC method in the passed
- method_implementations dictionary.
-
- Args:
- pool: A thread pool.
- method_implementations: A dictionary from RPC method name to
- interfaces.MethodImplementation object to be used to service the named
- RPC method.
- multi_method_implementation: An interfaces.MultiMethodImplementation to be
- used to service any RPCs not serviced by the
- interfaces.MethodImplementations given in the method_implementations
- dictionary, or None.
-
- Returns:
- A base_interfaces.Servicer that services RPCs via the given implementations.
- """
- adapted_implementations = _adapt_method_implementations(
- method_implementations, pool)
- return _BaseServicer(adapted_implementations, multi_method_implementation)
-
-
-def generic_stub(front, pool):
- """Creates an interfaces.GenericStub.
-
- Args:
- front: A base_interfaces.Front.
- pool: A futures.ThreadPoolExecutor.
-
- Returns:
- An interfaces.GenericStub that performs RPCs via the given
- base_interfaces.Front.
- """
- return _GenericStub(front, pool)
-
-
-def dynamic_stub(cardinalities, front, pool, prefix):
- """Creates an interfaces.DynamicStub.
-
- Args:
- cardinalities: A dict from RPC method name to cardinality.Cardinality
- value identifying the cardinality of every RPC method to be supported by
- the created interfaces.DynamicStub.
- front: A base_interfaces.Front.
- pool: A futures.ThreadPoolExecutor.
- prefix: A string to prepend when mapping requested attribute name to RPC
- method name during attribute access on the created
- interfaces.DynamicStub.
-
- Returns:
- An interfaces.DynamicStub that performs RPCs via the given
- base_interfaces.Front.
- """
- return _DynamicStub(cardinalities, front, pool)
diff --git a/src/python/grpcio/grpc/framework/face/interfaces.py b/src/python/grpcio/grpc/framework/face/interfaces.py
deleted file mode 100644
index e9a25c17e1..0000000000
--- a/src/python/grpcio/grpc/framework/face/interfaces.py
+++ /dev/null
@@ -1,634 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Interfaces for the face layer of RPC Framework."""
-
-import abc
-import enum
-
-import six
-
-# cardinality, style, exceptions, abandonment, future, and stream are
-# referenced from specification in this module.
-from grpc.framework.common import cardinality # pylint: disable=unused-import
-from grpc.framework.common import style # pylint: disable=unused-import
-from grpc.framework.face import exceptions # pylint: disable=unused-import
-from grpc.framework.foundation import abandonment # pylint: disable=unused-import
-from grpc.framework.foundation import future # pylint: disable=unused-import
-from grpc.framework.foundation import stream # pylint: disable=unused-import
-
-
-@enum.unique
-class Abortion(enum.Enum):
- """Categories of RPC abortion."""
- CANCELLED = 'cancelled'
- EXPIRED = 'expired'
- NETWORK_FAILURE = 'network failure'
- SERVICED_FAILURE = 'serviced failure'
- SERVICER_FAILURE = 'servicer failure'
-
-
-class CancellableIterator(six.with_metaclass(abc.ABCMeta)):
- """Implements the Iterator protocol and affords a cancel method."""
-
- @abc.abstractmethod
- def __iter__(self):
- """Returns the self object in accordance with the Iterator protocol."""
- raise NotImplementedError()
-
- def __next__(self):
- return self.next()
-
- @abc.abstractmethod
- def next(self):
- """Returns a value or raises StopIteration per the Iterator protocol."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def cancel(self):
- """Requests cancellation of whatever computation underlies this iterator."""
- raise NotImplementedError()
-
-
-class RpcContext(six.with_metaclass(abc.ABCMeta)):
- """Provides RPC-related information and action."""
-
- @abc.abstractmethod
- def is_active(self):
- """Describes whether the RPC is active or has terminated."""
- raise NotImplementedError()
-
- @abc.abstractmethod
- def time_remaining(self):
- """Describes the length of allowed time remaining for the RPC.
-
- Returns:
- A nonnegative float indicating the length of allowed time in seconds
- remaining for the RPC to complete before it is considered to have timed
- out.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def add_abortion_callback(self, abortion_callback):
- """Registers a callback to be called if the RPC is aborted.
-
- Args:
- abortion_callback: A callable to be called and passed an Abortion value
- in the event of RPC abortion.
- """
- raise NotImplementedError()
-
-
-class Call(six.with_metaclass(abc.ABCMeta)):
- """Invocation-side representation of an RPC.
-
- Attributes:
- context: An RpcContext affording information about the RPC.
- """
-
- @abc.abstractmethod
- def cancel(self):
- """Requests cancellation of the RPC."""
- raise NotImplementedError()
-
-
-class UnaryUnaryMultiCallable(six.with_metaclass(abc.ABCMeta)):
- """Affords invoking a unary-unary RPC in any call style."""
-
- @abc.abstractmethod
- def __call__(self, request, timeout):
- """Synchronously invokes the underlying RPC.
-
- Args:
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- The response value for the RPC.
-
- Raises:
- exceptions.RpcError: Indicating that the RPC was aborted.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def future(self, request, timeout):
- """Asynchronously invokes the underlying RPC.
-
- Args:
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A future.Future representing the RPC. In the event of RPC completion, the
- returned Future's result value will be the response value of the RPC.
- In the event of RPC abortion, the returned Future's exception value
- will be an exceptions.RpcError.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event(self, request, response_callback, abortion_callback, timeout):
- """Asynchronously invokes the underlying RPC.
-
- Args:
- request: The request value for the RPC.
- response_callback: A callback to be called to accept the restponse value
- of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A Call object for the RPC.
- """
- raise NotImplementedError()
-
-
-class UnaryStreamMultiCallable(six.with_metaclass(abc.ABCMeta)):
- """Affords invoking a unary-stream RPC in any call style."""
-
- @abc.abstractmethod
- def __call__(self, request, timeout):
- """Synchronously invokes the underlying RPC.
-
- Args:
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A CancellableIterator that yields the response values of the RPC and
- affords RPC cancellation. Drawing response values from the returned
- CancellableIterator may raise exceptions.RpcError indicating abortion
- of the RPC.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event(self, request, response_consumer, abortion_callback, timeout):
- """Asynchronously invokes the underlying RPC.
-
- Args:
- request: The request value for the RPC.
- response_consumer: A stream.Consumer to be called to accept the restponse
- values of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A Call object for the RPC.
- """
- raise NotImplementedError()
-
-
-class StreamUnaryMultiCallable(six.with_metaclass(abc.ABCMeta)):
- """Affords invoking a stream-unary RPC in any call style."""
-
- @abc.abstractmethod
- def __call__(self, request_iterator, timeout):
- """Synchronously invokes the underlying RPC.
-
- Args:
- request_iterator: An iterator that yields request values for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- The response value for the RPC.
-
- Raises:
- exceptions.RpcError: Indicating that the RPC was aborted.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def future(self, request_iterator, timeout):
- """Asynchronously invokes the underlying RPC.
-
- Args:
- request_iterator: An iterator that yields request values for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A future.Future representing the RPC. In the event of RPC completion, the
- returned Future's result value will be the response value of the RPC.
- In the event of RPC abortion, the returned Future's exception value
- will be an exceptions.RpcError.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event(self, response_callback, abortion_callback, timeout):
- """Asynchronously invokes the underlying RPC.
-
- Args:
- request: The request value for the RPC.
- response_callback: A callback to be called to accept the restponse value
- of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A pair of a Call object for the RPC and a stream.Consumer to which the
- request values of the RPC should be passed.
- """
- raise NotImplementedError()
-
-
-class StreamStreamMultiCallable(six.with_metaclass(abc.ABCMeta)):
- """Affords invoking a stream-stream RPC in any call style."""
-
- @abc.abstractmethod
- def __call__(self, request_iterator, timeout):
- """Synchronously invokes the underlying RPC.
-
- Args:
- request_iterator: An iterator that yields request values for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A CancellableIterator that yields the response values of the RPC and
- affords RPC cancellation. Drawing response values from the returned
- CancellableIterator may raise exceptions.RpcError indicating abortion
- of the RPC.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event(self, response_consumer, abortion_callback, timeout):
- """Asynchronously invokes the underlying RPC.
-
-l Args:
- response_consumer: A stream.Consumer to be called to accept the restponse
- values of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A pair of a Call object for the RPC and a stream.Consumer to which the
- request values of the RPC should be passed.
- """
- raise NotImplementedError()
-
-
-class MethodImplementation(six.with_metaclass(abc.ABCMeta)):
- """A sum type that describes an RPC method implementation.
-
- Attributes:
- cardinality: A cardinality.Cardinality value.
- style: A style.Service value.
- unary_unary_inline: The implementation of the RPC method as a callable
- value that takes a request value and an RpcContext object and returns a
- response value. Only non-None if cardinality is
- cardinality.Cardinality.UNARY_UNARY and style is style.Service.INLINE.
- unary_stream_inline: The implementation of the RPC method as a callable
- value that takes a request value and an RpcContext object and returns an
- iterator of response values. Only non-None if cardinality is
- cardinality.Cardinality.UNARY_STREAM and style is style.Service.INLINE.
- stream_unary_inline: The implementation of the RPC method as a callable
- value that takes an iterator of request values and an RpcContext object
- and returns a response value. Only non-None if cardinality is
- cardinality.Cardinality.STREAM_UNARY and style is style.Service.INLINE.
- stream_stream_inline: The implementation of the RPC method as a callable
- value that takes an iterator of request values and an RpcContext object
- and returns an iterator of response values. Only non-None if cardinality
- is cardinality.Cardinality.STREAM_STREAM and style is
- style.Service.INLINE.
- unary_unary_event: The implementation of the RPC method as a callable value
- that takes a request value, a response callback to which to pass the
- response value of the RPC, and an RpcContext. Only non-None if
- cardinality is cardinality.Cardinality.UNARY_UNARY and style is
- style.Service.EVENT.
- unary_stream_event: The implementation of the RPC method as a callable
- value that takes a request value, a stream.Consumer to which to pass the
- the response values of the RPC, and an RpcContext. Only non-None if
- cardinality is cardinality.Cardinality.UNARY_STREAM and style is
- style.Service.EVENT.
- stream_unary_event: The implementation of the RPC method as a callable
- value that takes a response callback to which to pass the response value
- of the RPC and an RpcContext and returns a stream.Consumer to which the
- request values of the RPC should be passed. Only non-None if cardinality
- is cardinality.Cardinality.STREAM_UNARY and style is style.Service.EVENT.
- stream_stream_event: The implementation of the RPC method as a callable
- value that takes a stream.Consumer to which to pass the response values
- of the RPC and an RpcContext and returns a stream.Consumer to which the
- request values of the RPC should be passed. Only non-None if cardinality
- is cardinality.Cardinality.STREAM_STREAM and style is
- style.Service.EVENT.
- """
-
-
-class MultiMethodImplementation(six.with_metaclass(abc.ABCMeta)):
- """A general type able to service many RPC methods."""
-
- @abc.abstractmethod
- def service(self, name, response_consumer, context):
- """Services an RPC.
-
- Args:
- name: The RPC method name.
- response_consumer: A stream.Consumer to be called to accept the response
- values of the RPC.
- context: An RpcContext object.
-
- Returns:
- A stream.Consumer with which to accept the request values of the RPC. The
- consumer returned from this method may or may not be invoked to
- completion: in the case of RPC abortion, RPC Framework will simply stop
- passing values to this object. Implementations must not assume that this
- object will be called to completion of the request stream or even called
- at all.
-
- Raises:
- abandonment.Abandoned: May or may not be raised when the RPC has been
- aborted.
- exceptions.NoSuchMethodError: If this MultiMethod does not recognize the
- given RPC method name and is not able to service the RPC.
- """
- raise NotImplementedError()
-
-
-class GenericStub(six.with_metaclass(abc.ABCMeta)):
- """Affords RPC methods to callers."""
-
- @abc.abstractmethod
- def blocking_value_in_value_out(self, name, request, timeout):
- """Invokes a unary-request-unary-response RPC method.
-
- This method blocks until either returning the response value of the RPC
- (in the event of RPC completion) or raising an exception (in the event of
- RPC abortion).
-
- Args:
- name: The RPC method name.
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- The response value for the RPC.
-
- Raises:
- exceptions.RpcError: Indicating that the RPC was aborted.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def future_value_in_value_out(self, name, request, timeout):
- """Invokes a unary-request-unary-response RPC method.
-
- Args:
- name: The RPC method name.
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A future.Future representing the RPC. In the event of RPC completion, the
- returned Future will return an outcome indicating that the RPC returned
- the response value of the RPC. In the event of RPC abortion, the
- returned Future will return an outcome indicating that the RPC raised
- an exceptions.RpcError.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def inline_value_in_stream_out(self, name, request, timeout):
- """Invokes a unary-request-stream-response RPC method.
-
- Args:
- name: The RPC method name.
- request: The request value for the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A CancellableIterator that yields the response values of the RPC and
- affords RPC cancellation. Drawing response values from the returned
- CancellableIterator may raise exceptions.RpcError indicating abortion of
- the RPC.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def blocking_stream_in_value_out(self, name, request_iterator, timeout):
- """Invokes a stream-request-unary-response RPC method.
-
- This method blocks until either returning the response value of the RPC
- (in the event of RPC completion) or raising an exception (in the event of
- RPC abortion).
-
- Args:
- name: The RPC method name.
- request_iterator: An iterator that yields the request values of the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- The response value for the RPC.
-
- Raises:
- exceptions.RpcError: Indicating that the RPC was aborted.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def future_stream_in_value_out(self, name, request_iterator, timeout):
- """Invokes a stream-request-unary-response RPC method.
-
- Args:
- name: The RPC method name.
- request_iterator: An iterator that yields the request values of the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A future.Future representing the RPC. In the event of RPC completion, the
- returned Future will return an outcome indicating that the RPC returned
- the response value of the RPC. In the event of RPC abortion, the
- returned Future will return an outcome indicating that the RPC raised
- an exceptions.RpcError.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def inline_stream_in_stream_out(self, name, request_iterator, timeout):
- """Invokes a stream-request-stream-response RPC method.
-
- Args:
- name: The RPC method name.
- request_iterator: An iterator that yields the request values of the RPC.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A CancellableIterator that yields the response values of the RPC and
- affords RPC cancellation. Drawing response values from the returned
- CancellableIterator may raise exceptions.RpcError indicating abortion of
- the RPC.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event_value_in_value_out(
- self, name, request, response_callback, abortion_callback, timeout):
- """Event-driven invocation of a unary-request-unary-response RPC method.
-
- Args:
- name: The RPC method name.
- request: The request value for the RPC.
- response_callback: A callback to be called to accept the response value
- of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A Call object for the RPC.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event_value_in_stream_out(
- self, name, request, response_consumer, abortion_callback, timeout):
- """Event-driven invocation of a unary-request-stream-response RPC method.
-
- Args:
- name: The RPC method name.
- request: The request value for the RPC.
- response_consumer: A stream.Consumer to be called to accept the response
- values of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A Call object for the RPC.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event_stream_in_value_out(
- self, name, response_callback, abortion_callback, timeout):
- """Event-driven invocation of a unary-request-unary-response RPC method.
-
- Args:
- name: The RPC method name.
- response_callback: A callback to be called to accept the response value
- of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A pair of a Call object for the RPC and a stream.Consumer to which the
- request values of the RPC should be passed.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def event_stream_in_stream_out(
- self, name, response_consumer, abortion_callback, timeout):
- """Event-driven invocation of a unary-request-stream-response RPC method.
-
- Args:
- name: The RPC method name.
- response_consumer: A stream.Consumer to be called to accept the response
- values of the RPC.
- abortion_callback: A callback to be called and passed an Abortion value
- in the event of RPC abortion.
- timeout: A duration of time in seconds to allow for the RPC.
-
- Returns:
- A pair of a Call object for the RPC and a stream.Consumer to which the
- request values of the RPC should be passed.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def unary_unary_multi_callable(self, name):
- """Creates a UnaryUnaryMultiCallable for a unary-unary RPC method.
-
- Args:
- name: The RPC method name.
-
- Returns:
- A UnaryUnaryMultiCallable value for the named unary-unary RPC method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def unary_stream_multi_callable(self, name):
- """Creates a UnaryStreamMultiCallable for a unary-stream RPC method.
-
- Args:
- name: The RPC method name.
-
- Returns:
- A UnaryStreamMultiCallable value for the name unary-stream RPC method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def stream_unary_multi_callable(self, name):
- """Creates a StreamUnaryMultiCallable for a stream-unary RPC method.
-
- Args:
- name: The RPC method name.
-
- Returns:
- A StreamUnaryMultiCallable value for the named stream-unary RPC method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def stream_stream_multi_callable(self, name):
- """Creates a StreamStreamMultiCallable for a stream-stream RPC method.
-
- Args:
- name: The RPC method name.
-
- Returns:
- A StreamStreamMultiCallable value for the named stream-stream RPC method.
- """
- raise NotImplementedError()
-
-
-class DynamicStub(six.with_metaclass(abc.ABCMeta)):
- """A stub with RPC-method-bound multi-callable attributes.
-
- Instances of this type responsd to attribute access as follows: if the
- requested attribute is the name of a unary-unary RPC method, the value of the
- attribute will be a UnaryUnaryMultiCallable with which to invoke the RPC
- method; if the requested attribute is the name of a unary-stream RPC method,
- the value of the attribute will be a UnaryStreamMultiCallable with which to
- invoke the RPC method; if the requested attribute is the name of a
- stream-unary RPC method, the value of the attribute will be a
- StreamUnaryMultiCallable with which to invoke the RPC method; and if the
- requested attribute is the name of a stream-stream RPC method, the value of
- the attribute will be a StreamStreamMultiCallable with which to invoke the
- RPC method.
- """
diff --git a/src/python/grpcio/grpc/framework/face/utilities.py b/src/python/grpcio/grpc/framework/face/utilities.py
deleted file mode 100644
index a63fe8c60d..0000000000
--- a/src/python/grpcio/grpc/framework/face/utilities.py
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Utilities for RPC framework's face layer."""
-
-import collections
-
-from grpc.framework.common import cardinality
-from grpc.framework.common import style
-from grpc.framework.face import interfaces
-from grpc.framework.foundation import stream
-
-
-class _MethodImplementation(
- interfaces.MethodImplementation,
- collections.namedtuple(
- '_MethodImplementation',
- ['cardinality', 'style', 'unary_unary_inline', 'unary_stream_inline',
- 'stream_unary_inline', 'stream_stream_inline', 'unary_unary_event',
- 'unary_stream_event', 'stream_unary_event', 'stream_stream_event',])):
- pass
-
-
-def unary_unary_inline(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a unary-unary RPC method as a callable value
- that takes a request value and an interfaces.RpcContext object and
- returns a response value.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.UNARY_UNARY, style.Service.INLINE, behavior,
- None, None, None, None, None, None, None)
-
-
-def unary_stream_inline(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a unary-stream RPC method as a callable
- value that takes a request value and an interfaces.RpcContext object and
- returns an iterator of response values.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.UNARY_STREAM, style.Service.INLINE, None,
- behavior, None, None, None, None, None, None)
-
-
-def stream_unary_inline(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a stream-unary RPC method as a callable
- value that takes an iterator of request values and an
- interfaces.RpcContext object and returns a response value.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.STREAM_UNARY, style.Service.INLINE, None, None,
- behavior, None, None, None, None, None)
-
-
-def stream_stream_inline(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a stream-stream RPC method as a callable
- value that takes an iterator of request values and an
- interfaces.RpcContext object and returns an iterator of response values.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.STREAM_STREAM, style.Service.INLINE, None, None,
- None, behavior, None, None, None, None)
-
-
-def unary_unary_event(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a unary-unary RPC method as a callable
- value that takes a request value, a response callback to which to pass
- the response value of the RPC, and an interfaces.RpcContext.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.UNARY_UNARY, style.Service.EVENT, None, None,
- None, None, behavior, None, None, None)
-
-
-def unary_stream_event(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a unary-stream RPC method as a callable
- value that takes a request value, a stream.Consumer to which to pass the
- the response values of the RPC, and an interfaces.RpcContext.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.UNARY_STREAM, style.Service.EVENT, None, None,
- None, None, None, behavior, None, None)
-
-
-def stream_unary_event(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a stream-unary RPC method as a callable
- value that takes a response callback to which to pass the response value
- of the RPC and an interfaces.RpcContext and returns a stream.Consumer to
- which the request values of the RPC should be passed.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.STREAM_UNARY, style.Service.EVENT, None, None,
- None, None, None, None, behavior, None)
-
-
-def stream_stream_event(behavior):
- """Creates an interfaces.MethodImplementation for the given behavior.
-
- Args:
- behavior: The implementation of a stream-stream RPC method as a callable
- value that takes a stream.Consumer to which to pass the response values
- of the RPC and an interfaces.RpcContext and returns a stream.Consumer to
- which the request values of the RPC should be passed.
-
- Returns:
- An interfaces.MethodImplementation derived from the given behavior.
- """
- return _MethodImplementation(
- cardinality.Cardinality.STREAM_STREAM, style.Service.EVENT, None, None,
- None, None, None, None, None, behavior)
diff --git a/src/python/grpcio/grpc_core_dependencies.py b/src/python/grpcio/grpc_core_dependencies.py
index dc1ff10c85..4f1a6e6740 100644
--- a/src/python/grpcio/grpc_core_dependencies.py
+++ b/src/python/grpcio/grpc_core_dependencies.py
@@ -57,6 +57,7 @@ CORE_SOURCE_FILES = [
'src/core/lib/support/stack_lockfree.c',
'src/core/lib/support/string.c',
'src/core/lib/support/string_posix.c',
+ 'src/core/lib/support/string_util_win32.c',
'src/core/lib/support/string_win32.c',
'src/core/lib/support/subprocess_posix.c',
'src/core/lib/support/subprocess_windows.c',
@@ -71,6 +72,7 @@ CORE_SOURCE_FILES = [
'src/core/lib/support/time_precise.c',
'src/core/lib/support/time_win32.c',
'src/core/lib/support/tls_pthread.c',
+ 'src/core/lib/support/tmpfile_msys.c',
'src/core/lib/support/tmpfile_posix.c',
'src/core/lib/support/tmpfile_win32.c',
'src/core/lib/support/wrap_memcpy.c',
diff --git a/src/python/grpcio/tests/interop/_insecure_interop_test.py b/src/python/grpcio/tests/interop/_insecure_interop_test.py
index 00b49aba37..91519b6fba 100644
--- a/src/python/grpcio/tests/interop/_insecure_interop_test.py
+++ b/src/python/grpcio/tests/interop/_insecure_interop_test.py
@@ -32,11 +32,11 @@
import unittest
from grpc.beta import implementations
+from src.proto.grpc.testing import test_pb2
from tests.interop import _interop_test_case
from tests.interop import methods
from tests.interop import server
-from tests.interop import test_pb2
class InsecureInteropTest(
diff --git a/src/python/grpcio/tests/interop/_secure_interop_test.py b/src/python/grpcio/tests/interop/_secure_interop_test.py
index 86d7e43351..c61547b977 100644
--- a/src/python/grpcio/tests/interop/_secure_interop_test.py
+++ b/src/python/grpcio/tests/interop/_secure_interop_test.py
@@ -32,11 +32,11 @@
import unittest
from grpc.beta import implementations
+from src.proto.grpc.testing import test_pb2
from tests.interop import _interop_test_case
from tests.interop import methods
from tests.interop import resources
-from tests.interop import test_pb2
from tests.unit.beta import test_utilities
diff --git a/src/python/grpcio/tests/interop/client.py b/src/python/grpcio/tests/interop/client.py
index 1d10d7e45d..db29eb4aa7 100644
--- a/src/python/grpcio/tests/interop/client.py
+++ b/src/python/grpcio/tests/interop/client.py
@@ -33,10 +33,10 @@ import argparse
from oauth2client import client as oauth2client_client
from grpc.beta import implementations
+from src.proto.grpc.testing import test_pb2
from tests.interop import methods
from tests.interop import resources
-from tests.interop import test_pb2
from tests.unit.beta import test_utilities
_ONE_DAY_IN_SECONDS = 60 * 60 * 24
diff --git a/src/python/grpcio/tests/interop/messages.proto b/src/python/grpcio/tests/interop/messages.proto
deleted file mode 100644
index 193b6c4171..0000000000
--- a/src/python/grpcio/tests/interop/messages.proto
+++ /dev/null
@@ -1,167 +0,0 @@
-
-// Copyright 2015, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Message definitions to be used by integration test service definitions.
-
-syntax = "proto3";
-
-package grpc.testing;
-
-// The type of payload that should be returned.
-enum PayloadType {
- // Compressable text format.
- COMPRESSABLE = 0;
-
- // Uncompressable binary format.
- UNCOMPRESSABLE = 1;
-
- // Randomly chosen from all other formats defined in this enum.
- RANDOM = 2;
-}
-
-// Compression algorithms
-enum CompressionType {
- // No compression
- NONE = 0;
- GZIP = 1;
- DEFLATE = 2;
-}
-
-// A block of data, to simply increase gRPC message size.
-message Payload {
- // The type of data in body.
- PayloadType type = 1;
- // Primary contents of payload.
- bytes body = 2;
-}
-
-// A protobuf representation for grpc status. This is used by test
-// clients to specify a status that the server should attempt to return.
-message EchoStatus {
- int32 code = 1;
- string message = 2;
-}
-
-// Unary request.
-message SimpleRequest {
- // Desired payload type in the response from the server.
- // If response_type is RANDOM, server randomly chooses one from other formats.
- PayloadType response_type = 1;
-
- // Desired payload size in the response from the server.
- // If response_type is COMPRESSABLE, this denotes the size before compression.
- int32 response_size = 2;
-
- // Optional input payload sent along with the request.
- Payload payload = 3;
-
- // Whether SimpleResponse should include username.
- bool fill_username = 4;
-
- // Whether SimpleResponse should include OAuth scope.
- bool fill_oauth_scope = 5;
-
- // Compression algorithm to be used by the server for the response (stream)
- CompressionType response_compression = 6;
-
- // Whether server should return a given status
- EchoStatus response_status = 7;
-}
-
-// Unary response, as configured by the request.
-message SimpleResponse {
- // Payload to increase message size.
- Payload payload = 1;
- // The user the request came from, for verifying authentication was
- // successful when the client expected it.
- string username = 2;
- // OAuth scope.
- string oauth_scope = 3;
-}
-
-// Client-streaming request.
-message StreamingInputCallRequest {
- // Optional input payload sent along with the request.
- Payload payload = 1;
-
- // Not expecting any payload from the response.
-}
-
-// Client-streaming response.
-message StreamingInputCallResponse {
- // Aggregated size of payloads received from the client.
- int32 aggregated_payload_size = 1;
-}
-
-// Configuration for a particular response.
-message ResponseParameters {
- // Desired payload sizes in responses from the server.
- // If response_type is COMPRESSABLE, this denotes the size before compression.
- int32 size = 1;
-
- // Desired interval between consecutive responses in the response stream in
- // microseconds.
- int32 interval_us = 2;
-}
-
-// Server-streaming request.
-message StreamingOutputCallRequest {
- // Desired payload type in the response from the server.
- // If response_type is RANDOM, the payload from each response in the stream
- // might be of different types. This is to simulate a mixed type of payload
- // stream.
- PayloadType response_type = 1;
-
- // Configuration for each expected response message.
- repeated ResponseParameters response_parameters = 2;
-
- // Optional input payload sent along with the request.
- Payload payload = 3;
-
- // Compression algorithm to be used by the server for the response (stream)
- CompressionType response_compression = 6;
-
- // Whether server should return a given status
- EchoStatus response_status = 7;
-}
-
-// Server-streaming response, as configured by the request and parameters.
-message StreamingOutputCallResponse {
- // Payload to increase response size.
- Payload payload = 1;
-}
-
-// For reconnect interop test only.
-// Server tells client whether its reconnects are following the spec and the
-// reconnect backoffs it saw.
-message ReconnectInfo {
- bool passed = 1;
- repeated int32 backoff_ms = 2;
-}
diff --git a/src/python/grpcio/tests/interop/methods.py b/src/python/grpcio/tests/interop/methods.py
index 03810338ed..67862ed7d3 100644
--- a/src/python/grpcio/tests/interop/methods.py
+++ b/src/python/grpcio/tests/interop/methods.py
@@ -42,9 +42,9 @@ from oauth2client import client as oauth2client_client
from grpc.framework.common import cardinality
from grpc.framework.interfaces.face import face
-from tests.interop import empty_pb2
-from tests.interop import messages_pb2
-from tests.interop import test_pb2
+from src.proto.grpc.testing import empty_pb2
+from src.proto.grpc.testing import messages_pb2
+from src.proto.grpc.testing import test_pb2
_TIMEOUT = 7
diff --git a/src/python/grpcio/tests/interop/server.py b/src/python/grpcio/tests/interop/server.py
index 6dd55f008c..ab2c3c708f 100644
--- a/src/python/grpcio/tests/interop/server.py
+++ b/src/python/grpcio/tests/interop/server.py
@@ -34,10 +34,10 @@ import logging
import time
from grpc.beta import implementations
+from src.proto.grpc.testing import test_pb2
from tests.interop import methods
from tests.interop import resources
-from tests.interop import test_pb2
_ONE_DAY_IN_SECONDS = 60 * 60 * 24
diff --git a/src/python/grpcio/tests/interop/test.proto b/src/python/grpcio/tests/interop/test.proto
deleted file mode 100644
index 9feecc0278..0000000000
--- a/src/python/grpcio/tests/interop/test.proto
+++ /dev/null
@@ -1,86 +0,0 @@
-
-// Copyright 2015, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// An integration test service that covers all the method signature permutations
-// of unary/streaming requests/responses.
-
-syntax = "proto3";
-
-import "tests/interop/empty.proto";
-import "tests/interop/messages.proto";
-
-package grpc.testing;
-
-// A simple service to test the various types of RPCs and experiment with
-// performance with various types of payload.
-service TestService {
- // One empty request followed by one empty response.
- rpc EmptyCall(grpc.testing.Empty) returns (grpc.testing.Empty);
-
- // One request followed by one response.
- rpc UnaryCall(SimpleRequest) returns (SimpleResponse);
-
- // One request followed by a sequence of responses (streamed download).
- // The server returns the payload with client desired type and sizes.
- rpc StreamingOutputCall(StreamingOutputCallRequest)
- returns (stream StreamingOutputCallResponse);
-
- // A sequence of requests followed by one response (streamed upload).
- // The server returns the aggregated size of client payload as the result.
- rpc StreamingInputCall(stream StreamingInputCallRequest)
- returns (StreamingInputCallResponse);
-
- // A sequence of requests with each request served by the server immediately.
- // As one request could lead to multiple responses, this interface
- // demonstrates the idea of full duplexing.
- rpc FullDuplexCall(stream StreamingOutputCallRequest)
- returns (stream StreamingOutputCallResponse);
-
- // A sequence of requests followed by a sequence of responses.
- // The server buffers all the client requests and then serves them in order. A
- // stream of responses are returned to the client when the server starts with
- // first request.
- rpc HalfDuplexCall(stream StreamingOutputCallRequest)
- returns (stream StreamingOutputCallResponse);
-}
-
-
-// A simple service NOT implemented at servers so clients can test for
-// that case.
-service UnimplementedService {
- // A call that no server should implement
- rpc UnimplementedCall(grpc.testing.Empty) returns(grpc.testing.Empty);
-}
-
-// A service used to control reconnect server.
-service ReconnectService {
- rpc Start(grpc.testing.Empty) returns (grpc.testing.Empty);
- rpc Stop(grpc.testing.Empty) returns (grpc.testing.ReconnectInfo);
-}
diff --git a/src/python/grpcio/tests/protoc_plugin/beta_python_plugin_test.py b/src/python/grpcio/tests/protoc_plugin/beta_python_plugin_test.py
index 6fba3d4271..3dc3042e38 100644
--- a/src/python/grpcio/tests/protoc_plugin/beta_python_plugin_test.py
+++ b/src/python/grpcio/tests/protoc_plugin/beta_python_plugin_test.py
@@ -45,6 +45,7 @@ import unittest
from six import moves
from grpc.beta import implementations
+from grpc.beta import interfaces
from grpc.framework.foundation import future
from grpc.framework.interfaces.face import face
from tests.unit.framework.common import test_constants
@@ -178,6 +179,36 @@ def _CreateService(test_pb2):
server.stop(0)
+@contextlib.contextmanager
+def _CreateIncompleteService(test_pb2):
+ """Provides a servicer backend that fails to implement methods and its stub.
+
+ The servicer is just the implementation of the actual servicer passed to the
+ face player of the python RPC implementation; the two are detached.
+
+ Args:
+ test_pb2: The test_pb2 module generated by this test.
+
+ Yields:
+ A (servicer_methods, stub) pair where servicer_methods is the back-end of
+ the service bound to the stub and and stub is the stub on which to invoke
+ RPCs.
+ """
+ servicer_methods = _ServicerMethods(test_pb2)
+
+ class Servicer(getattr(test_pb2, SERVICER_IDENTIFIER)):
+ pass
+
+ servicer = Servicer()
+ server = getattr(test_pb2, SERVER_FACTORY_IDENTIFIER)(servicer)
+ port = server.add_insecure_port('[::]:0')
+ server.start()
+ channel = implementations.insecure_channel('localhost', port)
+ stub = getattr(test_pb2, STUB_FACTORY_IDENTIFIER)(channel)
+ yield servicer_methods, stub
+ server.stop(0)
+
+
def _streaming_input_request_iterator(test_pb2):
for _ in range(3):
request = test_pb2.StreamingInputCallRequest()
@@ -264,6 +295,16 @@ class PythonPluginTest(unittest.TestCase):
with _CreateService(test_pb2) as (servicer, stub):
request = test_pb2.SimpleRequest(response_size=13)
+ def testIncompleteServicer(self):
+ import protoc_plugin_test_pb2 as test_pb2
+ moves.reload_module(test_pb2)
+ with _CreateIncompleteService(test_pb2) as (servicer, stub):
+ request = test_pb2.SimpleRequest(response_size=13)
+ try:
+ response = stub.UnaryCall(request, test_constants.LONG_TIMEOUT)
+ except face.AbortionError as error:
+ self.assertEqual(interfaces.StatusCode.UNIMPLEMENTED, error.code)
+
def testUnaryCall(self):
import protoc_plugin_test_pb2 as test_pb2 # pylint: disable=g-import-not-at-top
moves.reload_module(test_pb2)
diff --git a/src/python/grpcio/tests/unit/framework/face/__init__.py b/src/python/grpcio/tests/qps/__init__.py
index 7086519106..100a624dc9 100644
--- a/src/python/grpcio/tests/unit/framework/face/__init__.py
+++ b/src/python/grpcio/tests/qps/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2015, Google Inc.
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -26,5 +26,3 @@
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
diff --git a/src/python/grpcio/tests/qps/benchmark_client.py b/src/python/grpcio/tests/qps/benchmark_client.py
new file mode 100644
index 0000000000..eed0b0c6da
--- /dev/null
+++ b/src/python/grpcio/tests/qps/benchmark_client.py
@@ -0,0 +1,186 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+"""Defines test client behaviors (UNARY/STREAMING) (SYNC/ASYNC)."""
+
+import abc
+import time
+try:
+ import Queue as queue # Python 2.x
+except ImportError:
+ import queue # Python 3
+
+from concurrent import futures
+
+from grpc.beta import implementations
+from src.proto.grpc.testing import messages_pb2
+from src.proto.grpc.testing import services_pb2
+from tests.unit import resources
+from tests.unit.beta import test_utilities
+
+_TIMEOUT = 60 * 60 * 24
+
+
+class BenchmarkClient:
+ """Benchmark client interface that exposes a non-blocking send_request()."""
+
+ __metaclass__ = abc.ABCMeta
+
+ def __init__(self, server, config, hist):
+ # Create the stub
+ host, port = server.split(':')
+ port = int(port)
+ if config.HasField('security_params'):
+ creds = implementations.ssl_channel_credentials(
+ resources.test_root_certificates())
+ channel = test_utilities.not_really_secure_channel(
+ host, port, creds, config.security_params.server_host_override)
+ else:
+ channel = implementations.insecure_channel(host, port)
+
+ if config.payload_config.WhichOneof('payload') == 'simple_params':
+ self._generic = False
+ self._stub = services_pb2.beta_create_BenchmarkService_stub(channel)
+ payload = messages_pb2.Payload(
+ body='\0' * config.payload_config.simple_params.req_size)
+ self._request = messages_pb2.SimpleRequest(
+ payload=payload,
+ response_size=config.payload_config.simple_params.resp_size)
+ else:
+ self._generic = True
+ self._stub = implementations.generic_stub(channel)
+ self._request = '\0' * config.payload_config.bytebuf_params.req_size
+
+ self._hist = hist
+ self._response_callbacks = []
+
+ def add_response_callback(self, callback):
+ self._response_callbacks.append(callback)
+
+ @abc.abstractmethod
+ def send_request(self):
+ """Non-blocking wrapper for a client's request operation."""
+ raise NotImplementedError()
+
+ def start(self):
+ pass
+
+ def stop(self):
+ pass
+
+ def _handle_response(self, query_time):
+ self._hist.add(query_time * 1e9) # Report times in nanoseconds
+ for callback in self._response_callbacks:
+ callback(query_time)
+
+
+class UnarySyncBenchmarkClient(BenchmarkClient):
+
+ def __init__(self, server, config, hist):
+ super(UnarySyncBenchmarkClient, self).__init__(server, config, hist)
+ self._pool = futures.ThreadPoolExecutor(
+ max_workers=config.outstanding_rpcs_per_channel)
+
+ def send_request(self):
+ # Send requests in seperate threads to support multiple outstanding rpcs
+ # (See src/proto/grpc/testing/control.proto)
+ self._pool.submit(self._dispatch_request)
+
+ def stop(self):
+ self._pool.shutdown(wait=True)
+ self._stub = None
+
+ def _dispatch_request(self):
+ start_time = time.time()
+ self._stub.UnaryCall(self._request, _TIMEOUT)
+ end_time = time.time()
+ self._handle_response(end_time - start_time)
+
+
+class UnaryAsyncBenchmarkClient(BenchmarkClient):
+
+ def send_request(self):
+ # Use the Future callback api to support multiple outstanding rpcs
+ start_time = time.time()
+ response_future = self._stub.UnaryCall.future(self._request, _TIMEOUT)
+ response_future.add_done_callback(
+ lambda resp: self._response_received(start_time, resp))
+
+ def _response_received(self, start_time, resp):
+ resp.result()
+ end_time = time.time()
+ self._handle_response(end_time - start_time)
+
+ def stop(self):
+ self._stub = None
+
+
+class StreamingAsyncBenchmarkClient(BenchmarkClient):
+
+ def __init__(self, server, config, hist):
+ super(StreamingAsyncBenchmarkClient, self).__init__(server, config, hist)
+ self._is_streaming = False
+ self._pool = futures.ThreadPoolExecutor(max_workers=1)
+ # Use a thread-safe queue to put requests on the stream
+ self._request_queue = queue.Queue()
+ self._send_time_queue = queue.Queue()
+
+ def send_request(self):
+ self._send_time_queue.put(time.time())
+ self._request_queue.put(self._request)
+
+ def start(self):
+ self._is_streaming = True
+ self._pool.submit(self._request_stream)
+
+ def stop(self):
+ self._is_streaming = False
+ self._pool.shutdown(wait=True)
+ self._stub = None
+
+ def _request_stream(self):
+ self._is_streaming = True
+ if self._generic:
+ response_stream = self._stub.inline_stream_stream(
+ 'grpc.testing.BenchmarkService', 'StreamingCall',
+ self._request_generator(), _TIMEOUT)
+ else:
+ response_stream = self._stub.StreamingCall(self._request_generator(),
+ _TIMEOUT)
+ for _ in response_stream:
+ end_time = time.time()
+ self._handle_response(end_time - self._send_time_queue.get_nowait())
+
+ def _request_generator(self):
+ while self._is_streaming:
+ try:
+ request = self._request_queue.get(block=True, timeout=1.0)
+ yield request
+ except queue.Empty:
+ pass
diff --git a/src/python/grpcio/tests/qps/benchmark_server.py b/src/python/grpcio/tests/qps/benchmark_server.py
new file mode 100644
index 0000000000..8cbf480d58
--- /dev/null
+++ b/src/python/grpcio/tests/qps/benchmark_server.py
@@ -0,0 +1,58 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+from src.proto.grpc.testing import messages_pb2
+from src.proto.grpc.testing import services_pb2
+
+
+class BenchmarkServer(services_pb2.BetaBenchmarkServiceServicer):
+ """Synchronous Server implementation for the Benchmark service."""
+
+ def UnaryCall(self, request, context):
+ payload = messages_pb2.Payload(body='\0' * request.response_size)
+ return messages_pb2.SimpleResponse(payload=payload)
+
+ def StreamingCall(self, request_iterator, context):
+ for request in request_iterator:
+ payload = messages_pb2.Payload(body='\0' * request.response_size)
+ yield messages_pb2.SimpleResponse(payload=payload)
+
+
+class GenericBenchmarkServer(services_pb2.BetaBenchmarkServiceServicer):
+ """Generic Server implementation for the Benchmark service."""
+
+ def __init__(self, resp_size):
+ self._response = '\0' * resp_size
+
+ def UnaryCall(self, request, context):
+ return self._response
+
+ def StreamingCall(self, request_iterator, context):
+ for request in request_iterator:
+ yield self._response
diff --git a/src/python/grpcio/tests/qps/client_runner.py b/src/python/grpcio/tests/qps/client_runner.py
new file mode 100644
index 0000000000..a36c30ccc0
--- /dev/null
+++ b/src/python/grpcio/tests/qps/client_runner.py
@@ -0,0 +1,104 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+"""Defines behavior for WHEN clients send requests.
+
+Each client exposes a non-blocking send_request() method that the
+ClientRunner invokes either periodically or in response to some event.
+"""
+
+import abc
+import thread
+import time
+
+
+class ClientRunner:
+ """Abstract interface for sending requests from clients."""
+
+ __metaclass__ = abc.ABCMeta
+
+ def __init__(self, client):
+ self._client = client
+
+ @abc.abstractmethod
+ def start(self):
+ raise NotImplementedError()
+
+ @abc.abstractmethod
+ def stop(self):
+ raise NotImplementedError()
+
+
+class OpenLoopClientRunner(ClientRunner):
+
+ def __init__(self, client, interval_generator):
+ super(OpenLoopClientRunner, self).__init__(client)
+ self._is_running = False
+ self._interval_generator = interval_generator
+
+ def start(self):
+ self._is_running = True
+ self._client.start()
+ thread.start_new_thread(self._dispatch_requests, ())
+
+ def stop(self):
+ self._is_running = False
+ self._client.stop()
+ self._client = None
+
+ def _dispatch_requests(self):
+ while self._is_running:
+ self._client.send_request()
+ time.sleep(next(self._interval_generator))
+
+
+class ClosedLoopClientRunner(ClientRunner):
+
+ def __init__(self, client, request_count):
+ super(ClosedLoopClientRunner, self).__init__(client)
+ self._is_running = False
+ self._request_count = request_count
+ # Send a new request on each response for closed loop
+ self._client.add_response_callback(self._send_request)
+
+ def start(self):
+ self._is_running = True
+ for _ in xrange(self._request_count):
+ self._client.send_request()
+ self._client.start()
+
+ def stop(self):
+ self._is_running = False
+ self._client.stop()
+ self._client = None
+
+ def _send_request(self, response_time):
+ if self._is_running:
+ self._client.send_request()
+
diff --git a/src/python/grpcio/grpc/framework/base/_cancellation.py b/src/python/grpcio/tests/qps/histogram.py
index ffbc90668f..9a7b5eb2ba 100644
--- a/src/python/grpcio/grpc/framework/base/_cancellation.py
+++ b/src/python/grpcio/tests/qps/histogram.py
@@ -1,4 +1,4 @@
-# Copyright 2015, Google Inc.
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -27,38 +27,59 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""State and behavior for operation cancellation."""
+import math
+import threading
-from grpc.framework.base import _interfaces
-from grpc.framework.base import interfaces
+from src.proto.grpc.testing import stats_pb2
-class CancellationManager(_interfaces.CancellationManager):
- """An implementation of _interfaces.CancellationManager."""
+class Histogram(object):
+ """Histogram class used for recording performance testing data.
- def __init__(
- self, lock, termination_manager, transmission_manager, ingestion_manager,
- expiration_manager):
- """Constructor.
+ This class is thread safe.
+ """
- Args:
- lock: The operation-wide lock.
- termination_manager: The _interfaces.TerminationManager for the operation.
- transmission_manager: The _interfaces.TransmissionManager for the
- operation.
- ingestion_manager: The _interfaces.IngestionManager for the operation.
- expiration_manager: The _interfaces.ExpirationManager for the operation.
- """
- self._lock = lock
- self._termination_manager = termination_manager
- self._transmission_manager = transmission_manager
- self._ingestion_manager = ingestion_manager
- self._expiration_manager = expiration_manager
+ def __init__(self, resolution, max_possible):
+ self._lock = threading.Lock()
+ self._resolution = resolution
+ self._max_possible = max_possible
+ self._sum = 0
+ self._sum_of_squares = 0
+ self.multiplier = 1.0 + self._resolution
+ self._count = 0
+ self._min = self._max_possible
+ self._max = 0
+ self._buckets = [0] * (self._bucket_for(self._max_possible) + 1)
- def cancel(self):
- """See _interfaces.CancellationManager.cancel for specification."""
+ def reset(self):
with self._lock:
- self._termination_manager.abort(interfaces.Outcome.CANCELLED)
- self._transmission_manager.abort(interfaces.Outcome.CANCELLED)
- self._ingestion_manager.abort()
- self._expiration_manager.abort()
+ self._sum = 0
+ self._sum_of_squares = 0
+ self._count = 0
+ self._min = self._max_possible
+ self._max = 0
+ self._buckets = [0] * (self._bucket_for(self._max_possible) + 1)
+
+ def add(self, val):
+ with self._lock:
+ self._sum += val
+ self._sum_of_squares += val * val
+ self._count += 1
+ self._min = min(self._min, val)
+ self._max = max(self._max, val)
+ self._buckets[self._bucket_for(val)] += 1
+
+ def get_data(self):
+ with self._lock:
+ data = stats_pb2.HistogramData()
+ data.bucket.extend(self._buckets)
+ data.min_seen = self._min
+ data.max_seen = self._max
+ data.sum = self._sum
+ data.sum_of_squares = self._sum_of_squares
+ data.count = self._count
+ return data
+
+ def _bucket_for(self, val):
+ val = min(val, self._max_possible)
+ return int(math.log(val, self.multiplier))
diff --git a/src/python/grpcio/tests/qps/qps_worker.py b/src/python/grpcio/tests/qps/qps_worker.py
new file mode 100644
index 0000000000..3dda718638
--- /dev/null
+++ b/src/python/grpcio/tests/qps/qps_worker.py
@@ -0,0 +1,60 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+"""The entry point for the qps worker."""
+
+import argparse
+import time
+
+from src.proto.grpc.testing import services_pb2
+
+from tests.qps import worker_server
+
+
+def run_worker_server(port):
+ servicer = worker_server.WorkerServer()
+ server = services_pb2.beta_create_WorkerService_server(servicer)
+ server.add_insecure_port('[::]:{}'.format(port))
+ server.start()
+ servicer.wait_for_quit()
+ # Drain outstanding requests for clean exit
+ time.sleep(2)
+ server.stop(0)
+
+
+if __name__ == '__main__':
+ parser = argparse.ArgumentParser(
+ description='gRPC Python performance testing worker')
+ parser.add_argument('--driver_port',
+ type=int,
+ dest='port',
+ help='The port the worker should listen on')
+ args = parser.parse_args()
+
+ run_worker_server(args.port)
diff --git a/src/python/grpcio/tests/qps/worker_server.py b/src/python/grpcio/tests/qps/worker_server.py
new file mode 100644
index 0000000000..0b3acc14e7
--- /dev/null
+++ b/src/python/grpcio/tests/qps/worker_server.py
@@ -0,0 +1,184 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import multiprocessing
+import random
+import threading
+import time
+
+from grpc.beta import implementations
+from grpc.framework.interfaces.face import utilities
+from src.proto.grpc.testing import control_pb2
+from src.proto.grpc.testing import services_pb2
+from src.proto.grpc.testing import stats_pb2
+
+from tests.qps import benchmark_client
+from tests.qps import benchmark_server
+from tests.qps import client_runner
+from tests.qps import histogram
+from tests.unit import resources
+
+
+class WorkerServer(services_pb2.BetaWorkerServiceServicer):
+ """Python Worker Server implementation."""
+
+ def __init__(self):
+ self._quit_event = threading.Event()
+
+ def RunServer(self, request_iterator, context):
+ config = next(request_iterator).setup
+ server, port = self._create_server(config)
+ cores = multiprocessing.cpu_count()
+ server.start()
+ start_time = time.time()
+ yield self._get_server_status(start_time, start_time, port, cores)
+
+ for request in request_iterator:
+ end_time = time.time()
+ status = self._get_server_status(start_time, end_time, port, cores)
+ if request.mark.reset:
+ start_time = end_time
+ yield status
+ server.stop(0)
+
+ def _get_server_status(self, start_time, end_time, port, cores):
+ end_time = time.time()
+ elapsed_time = end_time - start_time
+ stats = stats_pb2.ServerStats(time_elapsed=elapsed_time,
+ time_user=elapsed_time,
+ time_system=elapsed_time)
+ return control_pb2.ServerStatus(stats=stats, port=port, cores=cores)
+
+ def _create_server(self, config):
+ if config.server_type == control_pb2.SYNC_SERVER:
+ servicer = benchmark_server.BenchmarkServer()
+ server = services_pb2.beta_create_BenchmarkService_server(servicer)
+ elif config.server_type == control_pb2.ASYNC_GENERIC_SERVER:
+ resp_size = config.payload_config.bytebuf_params.resp_size
+ servicer = benchmark_server.GenericBenchmarkServer(resp_size)
+ method_implementations = {
+ ('grpc.testing.BenchmarkService', 'StreamingCall'):
+ utilities.stream_stream_inline(servicer.StreamingCall),
+ ('grpc.testing.BenchmarkService', 'UnaryCall'):
+ utilities.unary_unary_inline(servicer.UnaryCall),
+ }
+ server = implementations.server(method_implementations)
+ else:
+ raise Exception('Unsupported server type {}'.format(config.server_type))
+
+ if config.HasField('security_params'): # Use SSL
+ server_creds = implementations.ssl_server_credentials([(
+ resources.private_key(), resources.certificate_chain())])
+ port = server.add_secure_port('[::]:{}'.format(config.port), server_creds)
+ else:
+ port = server.add_insecure_port('[::]:{}'.format(config.port))
+
+ return (server, port)
+
+ def RunClient(self, request_iterator, context):
+ config = next(request_iterator).setup
+ client_runners = []
+ qps_data = histogram.Histogram(config.histogram_params.resolution,
+ config.histogram_params.max_possible)
+ start_time = time.time()
+
+ # Create a client for each channel
+ for i in xrange(config.client_channels):
+ server = config.server_targets[i % len(config.server_targets)]
+ runner = self._create_client_runner(server, config, qps_data)
+ client_runners.append(runner)
+ runner.start()
+
+ end_time = time.time()
+ yield self._get_client_status(start_time, end_time, qps_data)
+
+ # Respond to stat requests
+ for request in request_iterator:
+ end_time = time.time()
+ status = self._get_client_status(start_time, end_time, qps_data)
+ if request.mark.reset:
+ qps_data.reset()
+ start_time = time.time()
+ yield status
+
+ # Cleanup the clients
+ for runner in client_runners:
+ runner.stop()
+
+ def _get_client_status(self, start_time, end_time, qps_data):
+ latencies = qps_data.get_data()
+ end_time = time.time()
+ elapsed_time = end_time - start_time
+ stats = stats_pb2.ClientStats(latencies=latencies,
+ time_elapsed=elapsed_time,
+ time_user=elapsed_time,
+ time_system=elapsed_time)
+ return control_pb2.ClientStatus(stats=stats)
+
+ def _create_client_runner(self, server, config, qps_data):
+ if config.client_type == control_pb2.SYNC_CLIENT:
+ if config.rpc_type == control_pb2.UNARY:
+ client = benchmark_client.UnarySyncBenchmarkClient(
+ server, config, qps_data)
+ else:
+ raise Exception('STREAMING SYNC client not supported')
+ elif config.client_type == control_pb2.ASYNC_CLIENT:
+ if config.rpc_type == control_pb2.UNARY:
+ client = benchmark_client.UnaryAsyncBenchmarkClient(
+ server, config, qps_data)
+ elif config.rpc_type == control_pb2.STREAMING:
+ client = benchmark_client.StreamingAsyncBenchmarkClient(
+ server, config, qps_data)
+ else:
+ raise Exception('Unsupported client type {}'.format(config.client_type))
+
+ # In multi-channel tests, we split the load across all channels
+ load_factor = float(config.client_channels)
+ if config.load_params.WhichOneof('load') == 'closed_loop':
+ runner = client_runner.ClosedLoopClientRunner(
+ client, config.outstanding_rpcs_per_channel)
+ else: # Open loop Poisson
+ alpha = config.load_params.poisson.offered_load / load_factor
+ def poisson():
+ while True:
+ yield random.expovariate(alpha)
+
+ runner = client_runner.OpenLoopClientRunner(client, poisson())
+
+ return runner
+
+ def CoreCount(self, request, context):
+ return control_pb2.CoreResponse(cores=multiprocessing.cpu_count())
+
+ def QuitWorker(self, request, context):
+ self._quit_event.set()
+ return control_pb2.Void()
+
+ def wait_for_quit(self):
+ self._quit_event.wait()
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/__init__.py b/src/python/grpcio/tests/stress/__init__.py
index 7086519106..100a624dc9 100644
--- a/src/python/grpcio/tests/unit/framework/face/testing/__init__.py
+++ b/src/python/grpcio/tests/stress/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2015, Google Inc.
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -26,5 +26,3 @@
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
diff --git a/src/python/grpcio/tests/stress/client.py b/src/python/grpcio/tests/stress/client.py
new file mode 100644
index 0000000000..a733741b73
--- /dev/null
+++ b/src/python/grpcio/tests/stress/client.py
@@ -0,0 +1,132 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+"""Entry point for running stress tests."""
+
+import argparse
+import Queue
+import threading
+
+from grpc.beta import implementations
+from src.proto.grpc.testing import metrics_pb2
+from src.proto.grpc.testing import test_pb2
+
+from tests.interop import methods
+from tests.qps import histogram
+from tests.stress import metrics_server
+from tests.stress import test_runner
+
+
+def _args():
+ parser = argparse.ArgumentParser(description='gRPC Python stress test client')
+ parser.add_argument(
+ '--server_addresses',
+ help='comma seperated list of hostname:port to run servers on',
+ default='localhost:8080', type=str)
+ parser.add_argument(
+ '--test_cases',
+ help='comma seperated list of testcase:weighting of tests to run',
+ default='large_unary:100',
+ type=str)
+ parser.add_argument(
+ '--test_duration_secs',
+ help='number of seconds to run the stress test',
+ default=-1, type=int)
+ parser.add_argument(
+ '--num_channels_per_server',
+ help='number of channels per server',
+ default=1, type=int)
+ parser.add_argument(
+ '--num_stubs_per_channel',
+ help='number of stubs to create per channel',
+ default=1, type=int)
+ parser.add_argument(
+ '--metrics_port',
+ help='the port to listen for metrics requests on',
+ default=8081, type=int)
+ return parser.parse_args()
+
+
+def _test_case_from_arg(test_case_arg):
+ for test_case in methods.TestCase:
+ if test_case_arg == test_case.value:
+ return test_case
+ else:
+ raise ValueError('No test case {}!'.format(test_case_arg))
+
+
+def _parse_weighted_test_cases(test_case_args):
+ weighted_test_cases = {}
+ for test_case_arg in test_case_args.split(','):
+ name, weight = test_case_arg.split(':', 1)
+ test_case = _test_case_from_arg(name)
+ weighted_test_cases[test_case] = int(weight)
+ return weighted_test_cases
+
+
+def run_test(args):
+ test_cases = _parse_weighted_test_cases(args.test_cases)
+ test_servers = args.server_addresses.split(',')
+ # Propagate any client exceptions with a queue
+ exception_queue = Queue.Queue()
+ stop_event = threading.Event()
+ hist = histogram.Histogram(1, 1)
+ runners = []
+
+ server = metrics_pb2.beta_create_MetricsService_server(
+ metrics_server.MetricsServer(hist))
+ server.add_insecure_port('[::]:{}'.format(args.metrics_port))
+ server.start()
+
+ for test_server in test_servers:
+ host, port = test_server.split(':', 1)
+ for _ in xrange(args.num_channels_per_server):
+ channel = implementations.insecure_channel(host, int(port))
+ for _ in xrange(args.num_stubs_per_channel):
+ stub = test_pb2.beta_create_TestService_stub(channel)
+ runner = test_runner.TestRunner(stub, test_cases, hist,
+ exception_queue, stop_event)
+ runners.append(runner)
+
+ for runner in runners:
+ runner.start()
+ try:
+ raise exception_queue.get(block=True, timeout=args.test_duration_secs)
+ except Queue.Empty:
+ # No exceptions thrown, success
+ pass
+ finally:
+ stop_event.set()
+ for runner in runners:
+ runner.join()
+ runner = None
+ server.stop(0)
+
+if __name__ == '__main__':
+ run_test(_args())
diff --git a/src/ruby/bin/interop/interop_client.rb b/src/python/grpcio/tests/stress/metrics_server.py
index 239083f37f..b994e4643e 100755..100644
--- a/src/ruby/bin/interop/interop_client.rb
+++ b/src/python/grpcio/tests/stress/metrics_server.py
@@ -1,6 +1,4 @@
-#!/usr/bin/env ruby
-
-# Copyright 2015, Google Inc.
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -29,23 +27,34 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# #######################################################################
-# DEPRECATED: The behaviour in this file has been moved to pb/test/client.rb
-#
-# This file remains to support existing tools and scripts that use it.
-# ######################################################################
-#
-# interop_client is a testing tool that accesses a gRPC interop testing
-# server and runs a test on it.
-#
-# Helps validate interoperation b/w different gRPC implementations.
-#
-# Usage: $ path/to/interop_client.rb --server_host=<hostname> \
-# --server_port=<port> \
-# --test_case=<testcase_name>
+"""MetricsService for publishing stress test qps data."""
+
+import time
+
+from src.proto.grpc.testing import metrics_pb2
+
+GAUGE_NAME = 'python_overall_qps'
+
+
+class MetricsServer(metrics_pb2.BetaMetricsServiceServicer):
+
+ def __init__(self, histogram):
+ self._start_time = time.time()
+ self._histogram = histogram
+
+ def _get_qps(self):
+ count = self._histogram.get_data().count
+ delta = time.time() - self._start_time
+ self._histogram.reset()
+ self._start_time = time.time()
+ return int(count/delta)
-this_dir = File.expand_path(File.dirname(__FILE__))
-pb_dir = File.join(File.dirname(File.dirname(this_dir)), 'pb')
-$LOAD_PATH.unshift(pb_dir) unless $LOAD_PATH.include?(pb_dir)
+ def GetAllGauges(self, request, context):
+ qps = self._get_qps()
+ return [metrics_pb2.GaugeResponse(name=GAUGE_NAME, long_value=qps)]
-require 'test/client'
+ def GetGauge(self, request, context):
+ if request.name != GAUGE_NAME:
+ raise Exception('Gauge {} does not exist'.format(request.name))
+ qps = self._get_qps()
+ return metrics_pb2.GaugeResponse(name=GAUGE_NAME, long_value=qps)
diff --git a/src/python/grpcio/grpc/framework/face/exceptions.py b/src/python/grpcio/tests/stress/test_runner.py
index f95455604d..88f13727e3 100644
--- a/src/python/grpcio/grpc/framework/face/exceptions.py
+++ b/src/python/grpcio/tests/stress/test_runner.py
@@ -1,4 +1,4 @@
-# Copyright 2015, Google Inc.
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -27,52 +27,47 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""Exceptions used in the Face layer of RPC Framework."""
-
-import abc
-
-import six
-
-
-class NoSuchMethodError(Exception):
- """Raised by customer code to indicate an unrecognized RPC method name.
-
- Attributes:
- name: The unrecognized name.
- """
-
- def __init__(self, name):
- """Constructor.
-
- Args:
- name: The unrecognized RPC method name.
- """
- super(NoSuchMethodError, self).__init__()
- self.name = name
-
-
-class RpcError(six.with_metaclass(abc.ABCMeta, Exception)):
- """Common super type for all exceptions raised by the Face layer.
-
- Only RPC Framework should instantiate and raise these exceptions.
- """
-
-
-class CancellationError(RpcError):
- """Indicates that an RPC has been cancelled."""
-
-
-class ExpirationError(RpcError):
- """Indicates that an RPC has expired ("timed out")."""
-
-
-class NetworkError(RpcError):
- """Indicates that some error occurred on the network."""
-
-
-class ServicedError(RpcError):
- """Indicates that the Serviced failed in the course of an RPC."""
-
-
-class ServicerError(RpcError):
- """Indicates that the Servicer failed in the course of servicing an RPC."""
+"""Thread that sends random weighted requests on a TestService stub."""
+
+import random
+import threading
+import time
+import traceback
+
+
+def _weighted_test_case_generator(weighted_cases):
+ weight_sum = sum(weighted_cases.itervalues())
+
+ while True:
+ val = random.uniform(0, weight_sum)
+ partial_sum = 0
+ for case in weighted_cases:
+ partial_sum += weighted_cases[case]
+ if val <= partial_sum:
+ yield case
+ break
+
+
+class TestRunner(threading.Thread):
+
+ def __init__(self, stub, test_cases, hist, exception_queue, stop_event):
+ super(TestRunner, self).__init__()
+ self._exception_queue = exception_queue
+ self._stop_event = stop_event
+ self._stub = stub
+ self._test_cases = _weighted_test_case_generator(test_cases)
+ self._histogram = hist
+
+ def run(self):
+ while not self._stop_event.is_set():
+ try:
+ test_case = next(self._test_cases)
+ start_time = time.time()
+ test_case.test_interoperability(self._stub, None)
+ end_time = time.time()
+ self._histogram.add((end_time - start_time)*1e9)
+ except Exception as e:
+ traceback.print_exc()
+ self._exception_queue.put(
+ Exception("An exception occured during test {}"
+ .format(test_case), e))
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/base_util.py b/src/python/grpcio/tests/unit/framework/face/testing/base_util.py
deleted file mode 100644
index 59652b3e90..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/base_util.py
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Utilities for creating Base-layer objects for use in Face-layer tests."""
-
-import abc
-
-import six
-
-# interfaces is referenced from specification in this module.
-from grpc.framework.base import util as _base_util
-from grpc.framework.base import implementations
-from grpc.framework.base import in_memory
-from grpc.framework.base import interfaces # pylint: disable=unused-import
-from grpc.framework.foundation import logging_pool
-
-_POOL_SIZE_LIMIT = 5
-
-_MAXIMUM_TIMEOUT = 90
-
-
-class LinkedPair(six.with_metaclass(abc.ABCMeta)):
- """A Front and Back that are linked to one another.
-
- Attributes:
- front: An interfaces.Front.
- back: An interfaces.Back.
- """
-
- @abc.abstractmethod
- def shut_down(self):
- """Shuts down this object and releases its resources."""
- raise NotImplementedError()
-
-
-class _LinkedPair(LinkedPair):
-
- def __init__(self, front, back, pools):
- self.front = front
- self.back = back
- self._pools = pools
-
- def shut_down(self):
- _base_util.wait_for_idle(self.front)
- _base_util.wait_for_idle(self.back)
-
- for pool in self._pools:
- pool.shutdown(wait=True)
-
-
-def linked_pair(servicer, default_timeout):
- """Creates a Server and Stub linked together for use."""
- link_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- front_work_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- front_transmission_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- front_utility_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- back_work_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- back_transmission_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- back_utility_pool = logging_pool.pool(_POOL_SIZE_LIMIT)
- pools = (
- link_pool,
- front_work_pool, front_transmission_pool, front_utility_pool,
- back_work_pool, back_transmission_pool, back_utility_pool)
-
- link = in_memory.Link(link_pool)
- front = implementations.front_link(
- front_work_pool, front_transmission_pool, front_utility_pool)
- back = implementations.back_link(
- servicer, back_work_pool, back_transmission_pool, back_utility_pool,
- default_timeout, _MAXIMUM_TIMEOUT)
- front.join_rear_link(link)
- link.join_fore_link(front)
- back.join_fore_link(link)
- link.join_rear_link(back)
-
- return _LinkedPair(front, back, pools)
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/blocking_invocation_inline_service_test_case.py b/src/python/grpcio/tests/unit/framework/face/testing/blocking_invocation_inline_service_test_case.py
deleted file mode 100644
index 2ebe1a32a4..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/blocking_invocation_inline_service_test_case.py
+++ /dev/null
@@ -1,224 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""A test to verify an implementation of the Face layer of RPC Framework."""
-
-# unittest is referenced from specification in this module.
-import abc
-import unittest # pylint: disable=unused-import
-
-import six
-
-from grpc.framework.face import exceptions
-from tests.unit.framework.common import test_constants
-from tests.unit.framework.face.testing import control
-from tests.unit.framework.face.testing import coverage
-from tests.unit.framework.face.testing import digest
-from tests.unit.framework.face.testing import stock_service
-from tests.unit.framework.face.testing import test_case
-
-
-class BlockingInvocationInlineServiceTestCase(
- six.with_metaclass(abc.ABCMeta,
- test_case.FaceTestCase, coverage.BlockingCoverage)):
- """A test of the Face layer of RPC Framework.
-
- Concrete subclasses must also extend unittest.TestCase.
- """
-
- def setUp(self):
- """See unittest.TestCase.setUp for full specification.
-
- Overriding implementations must call this implementation.
- """
- self.control = control.PauseFailControl()
- self.digest = digest.digest(
- stock_service.STOCK_TEST_SERVICE, self.control, None)
-
- self.stub, self.memo = self.set_up_implementation(
- self.digest.name, self.digest.methods,
- self.digest.inline_method_implementations, None)
-
- def tearDown(self):
- """See unittest.TestCase.tearDown for full specification.
-
- Overriding implementations must call this implementation.
- """
- self.tear_down_implementation(self.memo)
-
- def testSuccessfulUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- response = self.stub.blocking_value_in_value_out(
- name, request, test_constants.LONG_TIMEOUT)
-
- test_messages.verify(request, response, self)
-
- def testSuccessfulUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.LONG_TIMEOUT)
- responses = list(response_iterator)
-
- test_messages.verify(request, responses, self)
-
- def testSuccessfulStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- response = self.stub.blocking_stream_in_value_out(
- name, iter(requests), test_constants.LONG_TIMEOUT)
-
- test_messages.verify(requests, response, self)
-
- def testSuccessfulStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, iter(requests), test_constants.LONG_TIMEOUT)
- responses = list(response_iterator)
-
- test_messages.verify(requests, responses, self)
-
- def testSequentialInvocations(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- first_request = test_messages.request()
- second_request = test_messages.request()
-
- first_response = self.stub.blocking_value_in_value_out(
- name, first_request, test_constants.SHORT_TIMEOUT)
-
- test_messages.verify(first_request, first_response, self)
-
- second_response = self.stub.blocking_value_in_value_out(
- name, second_request, test_constants.SHORT_TIMEOUT)
-
- test_messages.verify(second_request, second_response, self)
-
- def testExpiredUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.pause(), self.assertRaises(
- exceptions.ExpirationError):
- multi_callable = self.stub.unary_unary_multi_callable(name)
- multi_callable(request, test_constants.SHORT_TIMEOUT)
-
- def testExpiredUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.pause(), self.assertRaises(
- exceptions.ExpirationError):
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.SHORT_TIMEOUT)
- list(response_iterator)
-
- def testExpiredStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.pause(), self.assertRaises(
- exceptions.ExpirationError):
- multi_callable = self.stub.stream_unary_multi_callable(name)
- multi_callable(iter(requests), test_constants.SHORT_TIMEOUT)
-
- def testExpiredStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.pause(), self.assertRaises(
- exceptions.ExpirationError):
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
- list(response_iterator)
-
- def testFailedUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.fail(), self.assertRaises(exceptions.ServicerError):
- self.stub.blocking_value_in_value_out(name, request,
- test_constants.SHORT_TIMEOUT)
-
- def testFailedUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.fail(), self.assertRaises(exceptions.ServicerError):
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.SHORT_TIMEOUT)
- list(response_iterator)
-
- def testFailedStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.fail(), self.assertRaises(exceptions.ServicerError):
- self.stub.blocking_stream_in_value_out(name, iter(requests),
- test_constants.SHORT_TIMEOUT)
-
- def testFailedStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.fail(), self.assertRaises(exceptions.ServicerError):
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
- list(response_iterator)
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/callback.py b/src/python/grpcio/tests/unit/framework/face/testing/callback.py
deleted file mode 100644
index d0e63c8c56..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/callback.py
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""A utility useful in tests of asynchronous, event-driven interfaces."""
-
-import threading
-
-from grpc.framework.foundation import stream
-
-
-class Callback(stream.Consumer):
- """A utility object useful in tests of asynchronous code."""
-
- def __init__(self):
- self._condition = threading.Condition()
- self._unary_response = None
- self._streamed_responses = []
- self._completed = False
- self._abortion = None
-
- def abort(self, abortion):
- with self._condition:
- self._abortion = abortion
- self._condition.notify_all()
-
- def complete(self, unary_response):
- with self._condition:
- self._unary_response = unary_response
- self._completed = True
- self._condition.notify_all()
-
- def consume(self, streamed_response):
- with self._condition:
- self._streamed_responses.append(streamed_response)
-
- def terminate(self):
- with self._condition:
- self._completed = True
- self._condition.notify_all()
-
- def consume_and_terminate(self, streamed_response):
- with self._condition:
- self._streamed_responses.append(streamed_response)
- self._completed = True
- self._condition.notify_all()
-
- def block_until_terminated(self):
- with self._condition:
- while self._abortion is None and not self._completed:
- self._condition.wait()
-
- def response(self):
- with self._condition:
- if self._abortion is None:
- return self._unary_response
- else:
- raise AssertionError('Aborted with abortion "%s"!' % self._abortion)
-
- def responses(self):
- with self._condition:
- if self._abortion is None:
- return list(self._streamed_responses)
- else:
- raise AssertionError('Aborted with abortion "%s"!' % self._abortion)
-
- def abortion(self):
- with self._condition:
- return self._abortion
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/control.py b/src/python/grpcio/tests/unit/framework/face/testing/control.py
deleted file mode 100644
index 8425affcc9..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/control.py
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Code for instructing systems under test to block or fail."""
-
-import abc
-import contextlib
-import threading
-
-import six
-
-
-class Control(six.with_metaclass(abc.ABCMeta)):
- """An object that accepts program control from a system under test.
-
- Systems under test passed a Control should call its control() method
- frequently during execution. The control() method may block, raise an
- exception, or do nothing, all according to the enclosing test's desire for
- the system under test to simulate hanging, failing, or functioning.
- """
-
- @abc.abstractmethod
- def control(self):
- """Potentially does anything."""
- raise NotImplementedError()
-
-
-class PauseFailControl(Control):
- """A Control that can be used to pause or fail code under control."""
-
- def __init__(self):
- self._condition = threading.Condition()
- self._paused = False
- self._fail = False
-
- def control(self):
- with self._condition:
- if self._fail:
- raise ValueError()
-
- while self._paused:
- self._condition.wait()
-
- @contextlib.contextmanager
- def pause(self):
- """Pauses code under control while controlling code is in context."""
- with self._condition:
- self._paused = True
- yield
- with self._condition:
- self._paused = False
- self._condition.notify_all()
-
- @contextlib.contextmanager
- def fail(self):
- """Fails code under control while controlling code is in context."""
- with self._condition:
- self._fail = True
- yield
- with self._condition:
- self._fail = False
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/coverage.py b/src/python/grpcio/tests/unit/framework/face/testing/coverage.py
deleted file mode 100644
index 3c88b7841a..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/coverage.py
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Governs coverage for the tests of the Face layer of RPC Framework."""
-
-import abc
-
-import six
-
-# These classes are only valid when inherited by unittest.TestCases.
-# pylint: disable=invalid-name
-
-
-class BlockingCoverage(six.with_metaclass(abc.ABCMeta)):
- """Specification of test coverage for blocking behaviors."""
-
- @abc.abstractmethod
- def testSuccessfulUnaryRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testSuccessfulUnaryRequestStreamResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testSuccessfulStreamRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testSuccessfulStreamRequestStreamResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testSequentialInvocations(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testExpiredUnaryRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testExpiredUnaryRequestStreamResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testExpiredStreamRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testExpiredStreamRequestStreamResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testFailedUnaryRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testFailedUnaryRequestStreamResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testFailedStreamRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testFailedStreamRequestStreamResponse(self):
- raise NotImplementedError()
-
-
-class FullCoverage(six.with_metaclass(abc.ABCMeta, BlockingCoverage)):
- """Specification of test coverage for non-blocking behaviors."""
-
- @abc.abstractmethod
- def testParallelInvocations(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testWaitingForSomeButNotAllParallelInvocations(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testCancelledUnaryRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testCancelledUnaryRequestStreamResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testCancelledStreamRequestUnaryResponse(self):
- raise NotImplementedError()
-
- @abc.abstractmethod
- def testCancelledStreamRequestStreamResponse(self):
- raise NotImplementedError()
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/digest.py b/src/python/grpcio/tests/unit/framework/face/testing/digest.py
deleted file mode 100644
index 2b45aded20..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/digest.py
+++ /dev/null
@@ -1,452 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Code for making a service.TestService more amenable to use in tests."""
-
-import collections
-import threading
-
-import six
-
-# testing_control, interfaces, and testing_service are referenced from
-# specification in this module.
-from grpc.framework.common import cardinality
-from grpc.framework.common import style
-from grpc.framework.face import exceptions
-from grpc.framework.face import interfaces as face_interfaces
-from grpc.framework.foundation import stream
-from grpc.framework.foundation import stream_util
-from tests.unit.framework.face.testing import control as testing_control # pylint: disable=unused-import
-from tests.unit.framework.face.testing import interfaces # pylint: disable=unused-import
-from tests.unit.framework.face.testing import service as testing_service # pylint: disable=unused-import
-
-_IDENTITY = lambda x: x
-
-
-class TestServiceDigest(
- collections.namedtuple(
- 'TestServiceDigest',
- ['name',
- 'methods',
- 'inline_method_implementations',
- 'event_method_implementations',
- 'multi_method_implementation',
- 'unary_unary_messages_sequences',
- 'unary_stream_messages_sequences',
- 'stream_unary_messages_sequences',
- 'stream_stream_messages_sequences'])):
- """A transformation of a service.TestService.
-
- Attributes:
- name: The RPC service name to be used in the test.
- methods: A sequence of interfaces.Method objects describing the RPC
- methods that will be called during the test.
- inline_method_implementations: A dict from RPC method name to
- face_interfaces.MethodImplementation object to be used in tests of
- in-line calls to behaviors under test.
- event_method_implementations: A dict from RPC method name to
- face_interfaces.MethodImplementation object to be used in tests of
- event-driven calls to behaviors under test.
- multi_method_implementation: A face_interfaces.MultiMethodImplementation to
- be used in tests of generic calls to behaviors under test.
- unary_unary_messages_sequences: A dict from method name to sequence of
- service.UnaryUnaryTestMessages objects to be used to test the method
- with the given name.
- unary_stream_messages_sequences: A dict from method name to sequence of
- service.UnaryStreamTestMessages objects to be used to test the method
- with the given name.
- stream_unary_messages_sequences: A dict from method name to sequence of
- service.StreamUnaryTestMessages objects to be used to test the method
- with the given name.
- stream_stream_messages_sequences: A dict from method name to sequence of
- service.StreamStreamTestMessages objects to be used to test the
- method with the given name.
- serialization: A serial.Serialization object describing serialization
- behaviors for all the RPC methods.
- """
-
-
-class _BufferingConsumer(stream.Consumer):
- """A trivial Consumer that dumps what it consumes in a user-mutable buffer."""
-
- def __init__(self):
- self.consumed = []
- self.terminated = False
-
- def consume(self, value):
- self.consumed.append(value)
-
- def terminate(self):
- self.terminated = True
-
- def consume_and_terminate(self, value):
- self.consumed.append(value)
- self.terminated = True
-
-
-class _InlineUnaryUnaryMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, unary_unary_test_method, control):
- self._test_method = unary_unary_test_method
- self._control = control
-
- self.cardinality = cardinality.Cardinality.UNARY_UNARY
- self.style = style.Service.INLINE
-
- def unary_unary_inline(self, request, context):
- response_list = []
- self._test_method.service(
- request, response_list.append, context, self._control)
- return response_list.pop(0)
-
-
-class _EventUnaryUnaryMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, unary_unary_test_method, control, pool):
- self._test_method = unary_unary_test_method
- self._control = control
- self._pool = pool
-
- self.cardinality = cardinality.Cardinality.UNARY_UNARY
- self.style = style.Service.EVENT
-
- def unary_unary_event(self, request, response_callback, context):
- if self._pool is None:
- self._test_method.service(
- request, response_callback, context, self._control)
- else:
- self._pool.submit(
- self._test_method.service, request, response_callback, context,
- self._control)
-
-
-class _InlineUnaryStreamMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, unary_stream_test_method, control):
- self._test_method = unary_stream_test_method
- self._control = control
-
- self.cardinality = cardinality.Cardinality.UNARY_STREAM
- self.style = style.Service.INLINE
-
- def unary_stream_inline(self, request, context):
- response_consumer = _BufferingConsumer()
- self._test_method.service(
- request, response_consumer, context, self._control)
- for response in response_consumer.consumed:
- yield response
-
-
-class _EventUnaryStreamMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, unary_stream_test_method, control, pool):
- self._test_method = unary_stream_test_method
- self._control = control
- self._pool = pool
-
- self.cardinality = cardinality.Cardinality.UNARY_STREAM
- self.style = style.Service.EVENT
-
- def unary_stream_event(self, request, response_consumer, context):
- if self._pool is None:
- self._test_method.service(
- request, response_consumer, context, self._control)
- else:
- self._pool.submit(
- self._test_method.service, request, response_consumer, context,
- self._control)
-
-
-class _InlineStreamUnaryMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, stream_unary_test_method, control):
- self._test_method = stream_unary_test_method
- self._control = control
-
- self.cardinality = cardinality.Cardinality.STREAM_UNARY
- self.style = style.Service.INLINE
-
- def stream_unary_inline(self, request_iterator, context):
- response_list = []
- request_consumer = self._test_method.service(
- response_list.append, context, self._control)
- for request in request_iterator:
- request_consumer.consume(request)
- request_consumer.terminate()
- return response_list.pop(0)
-
-
-class _EventStreamUnaryMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, stream_unary_test_method, control, pool):
- self._test_method = stream_unary_test_method
- self._control = control
- self._pool = pool
-
- self.cardinality = cardinality.Cardinality.STREAM_UNARY
- self.style = style.Service.EVENT
-
- def stream_unary_event(self, response_callback, context):
- request_consumer = self._test_method.service(
- response_callback, context, self._control)
- if self._pool is None:
- return request_consumer
- else:
- return stream_util.ThreadSwitchingConsumer(request_consumer, self._pool)
-
-
-class _InlineStreamStreamMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, stream_stream_test_method, control):
- self._test_method = stream_stream_test_method
- self._control = control
-
- self.cardinality = cardinality.Cardinality.STREAM_STREAM
- self.style = style.Service.INLINE
-
- def stream_stream_inline(self, request_iterator, context):
- response_consumer = _BufferingConsumer()
- request_consumer = self._test_method.service(
- response_consumer, context, self._control)
-
- for request in request_iterator:
- request_consumer.consume(request)
- while response_consumer.consumed:
- yield response_consumer.consumed.pop(0)
- response_consumer.terminate()
-
-
-class _EventStreamStreamMethod(face_interfaces.MethodImplementation):
-
- def __init__(self, stream_stream_test_method, control, pool):
- self._test_method = stream_stream_test_method
- self._control = control
- self._pool = pool
-
- self.cardinality = cardinality.Cardinality.STREAM_STREAM
- self.style = style.Service.EVENT
-
- def stream_stream_event(self, response_consumer, context):
- request_consumer = self._test_method.service(
- response_consumer, context, self._control)
- if self._pool is None:
- return request_consumer
- else:
- return stream_util.ThreadSwitchingConsumer(request_consumer, self._pool)
-
-
-class _UnaryConsumer(stream.Consumer):
- """A Consumer that only allows consumption of exactly one value."""
-
- def __init__(self, action):
- self._lock = threading.Lock()
- self._action = action
- self._consumed = False
- self._terminated = False
-
- def consume(self, value):
- with self._lock:
- if self._consumed:
- raise ValueError('Unary consumer already consumed!')
- elif self._terminated:
- raise ValueError('Unary consumer already terminated!')
- else:
- self._consumed = True
-
- self._action(value)
-
- def terminate(self):
- with self._lock:
- if not self._consumed:
- raise ValueError('Unary consumer hasn\'t yet consumed!')
- elif self._terminated:
- raise ValueError('Unary consumer already terminated!')
- else:
- self._terminated = True
-
- def consume_and_terminate(self, value):
- with self._lock:
- if self._consumed:
- raise ValueError('Unary consumer already consumed!')
- elif self._terminated:
- raise ValueError('Unary consumer already terminated!')
- else:
- self._consumed = True
- self._terminated = True
-
- self._action(value)
-
-
-class _UnaryUnaryAdaptation(object):
-
- def __init__(self, unary_unary_test_method):
- self._method = unary_unary_test_method
-
- def service(self, response_consumer, context, control):
- def action(request):
- self._method.service(
- request, response_consumer.consume_and_terminate, context, control)
- return _UnaryConsumer(action)
-
-
-class _UnaryStreamAdaptation(object):
-
- def __init__(self, unary_stream_test_method):
- self._method = unary_stream_test_method
-
- def service(self, response_consumer, context, control):
- def action(request):
- self._method.service(request, response_consumer, context, control)
- return _UnaryConsumer(action)
-
-
-class _StreamUnaryAdaptation(object):
-
- def __init__(self, stream_unary_test_method):
- self._method = stream_unary_test_method
-
- def service(self, response_consumer, context, control):
- return self._method.service(
- response_consumer.consume_and_terminate, context, control)
-
-
-class _MultiMethodImplementation(face_interfaces.MultiMethodImplementation):
-
- def __init__(self, methods, control, pool):
- self._methods = methods
- self._control = control
- self._pool = pool
-
- def service(self, name, response_consumer, context):
- method = self._methods.get(name, None)
- if method is None:
- raise exceptions.NoSuchMethodError(name)
- elif self._pool is None:
- return method(response_consumer, context, self._control)
- else:
- request_consumer = method(response_consumer, context, self._control)
- return stream_util.ThreadSwitchingConsumer(request_consumer, self._pool)
-
-
-class _Assembly(
- collections.namedtuple(
- '_Assembly',
- ['methods', 'inlines', 'events', 'adaptations', 'messages'])):
- """An intermediate structure created when creating a TestServiceDigest."""
-
-
-def _assemble(
- scenarios, names, inline_method_constructor, event_method_constructor,
- adapter, control, pool):
- """Creates an _Assembly from the given scenarios."""
- methods = []
- inlines = {}
- events = {}
- adaptations = {}
- messages = {}
- for name, scenario in six.iteritems(scenarios):
- if name in names:
- raise ValueError('Repeated name "%s"!' % name)
-
- test_method = scenario[0]
- inline_method = inline_method_constructor(test_method, control)
- event_method = event_method_constructor(test_method, control, pool)
- adaptation = adapter(test_method)
-
- methods.append(test_method)
- inlines[name] = inline_method
- events[name] = event_method
- adaptations[name] = adaptation
- messages[name] = scenario[1]
-
- return _Assembly(methods, inlines, events, adaptations, messages)
-
-
-def digest(service, control, pool):
- """Creates a TestServiceDigest from a TestService.
-
- Args:
- service: A testing_service.TestService.
- control: A testing_control.Control.
- pool: If RPC methods should be serviced in a separate thread, a thread pool.
- None if RPC methods should be serviced in the thread belonging to the
- run-time that calls for their service.
-
- Returns:
- A TestServiceDigest synthesized from the given service.TestService.
- """
- names = set()
-
- unary_unary = _assemble(
- service.unary_unary_scenarios(), names, _InlineUnaryUnaryMethod,
- _EventUnaryUnaryMethod, _UnaryUnaryAdaptation, control, pool)
- names.update(set(unary_unary.inlines))
-
- unary_stream = _assemble(
- service.unary_stream_scenarios(), names, _InlineUnaryStreamMethod,
- _EventUnaryStreamMethod, _UnaryStreamAdaptation, control, pool)
- names.update(set(unary_stream.inlines))
-
- stream_unary = _assemble(
- service.stream_unary_scenarios(), names, _InlineStreamUnaryMethod,
- _EventStreamUnaryMethod, _StreamUnaryAdaptation, control, pool)
- names.update(set(stream_unary.inlines))
-
- stream_stream = _assemble(
- service.stream_stream_scenarios(), names, _InlineStreamStreamMethod,
- _EventStreamStreamMethod, _IDENTITY, control, pool)
- names.update(set(stream_stream.inlines))
-
- methods = list(unary_unary.methods)
- methods.extend(unary_stream.methods)
- methods.extend(stream_unary.methods)
- methods.extend(stream_stream.methods)
- adaptations = dict(unary_unary.adaptations)
- adaptations.update(unary_stream.adaptations)
- adaptations.update(stream_unary.adaptations)
- adaptations.update(stream_stream.adaptations)
- inlines = dict(unary_unary.inlines)
- inlines.update(unary_stream.inlines)
- inlines.update(stream_unary.inlines)
- inlines.update(stream_stream.inlines)
- events = dict(unary_unary.events)
- events.update(unary_stream.events)
- events.update(stream_unary.events)
- events.update(stream_stream.events)
-
- return TestServiceDigest(
- service.name(),
- methods,
- inlines,
- events,
- _MultiMethodImplementation(adaptations, control, pool),
- unary_unary.messages,
- unary_stream.messages,
- stream_unary.messages,
- stream_stream.messages)
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/event_invocation_synchronous_event_service_test_case.py b/src/python/grpcio/tests/unit/framework/face/testing/event_invocation_synchronous_event_service_test_case.py
deleted file mode 100644
index 98b61e492c..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/event_invocation_synchronous_event_service_test_case.py
+++ /dev/null
@@ -1,378 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""A test to verify an implementation of the Face layer of RPC Framework."""
-
-import abc
-import unittest
-
-import six
-
-from grpc.framework.face import interfaces
-from tests.unit.framework.common import test_constants
-from tests.unit.framework.face.testing import callback as testing_callback
-from tests.unit.framework.face.testing import control
-from tests.unit.framework.face.testing import coverage
-from tests.unit.framework.face.testing import digest
-from tests.unit.framework.face.testing import stock_service
-from tests.unit.framework.face.testing import test_case
-
-
-class EventInvocationSynchronousEventServiceTestCase(
- six.with_metaclass(abc.ABCMeta,
- test_case.FaceTestCase, coverage.FullCoverage)):
- """A test of the Face layer of RPC Framework.
-
- Concrete subclasses must also extend unittest.TestCase.
- """
-
- def setUp(self):
- """See unittest.TestCase.setUp for full specification.
-
- Overriding implementations must call this implementation.
- """
- self.control = control.PauseFailControl()
- self.digest = digest.digest(
- stock_service.STOCK_TEST_SERVICE, self.control, None)
-
- self.stub, self.memo = self.set_up_implementation(
- self.digest.name, self.digest.methods,
- self.digest.event_method_implementations, None)
-
- def tearDown(self):
- """See unittest.TestCase.tearDown for full specification.
-
- Overriding implementations must call this implementation.
- """
- self.tear_down_implementation(self.memo)
-
- def testSuccessfulUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- self.stub.event_value_in_value_out(
- name, request, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
- response = callback.response()
-
- test_messages.verify(request, response, self)
-
- def testSuccessfulUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- self.stub.event_value_in_stream_out(
- name, request, callback, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
- responses = callback.responses()
-
- test_messages.verify(request, responses, self)
-
- def testSuccessfulStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- callback = testing_callback.Callback()
-
- unused_call, request_consumer = self.stub.event_stream_in_value_out(
- name, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- for request in requests:
- request_consumer.consume(request)
- request_consumer.terminate()
- callback.block_until_terminated()
- response = callback.response()
-
- test_messages.verify(requests, response, self)
-
- def testSuccessfulStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- callback = testing_callback.Callback()
-
- unused_call, request_consumer = self.stub.event_stream_in_stream_out(
- name, callback, callback.abort, test_constants.SHORT_TIMEOUT)
- for request in requests:
- request_consumer.consume(request)
- request_consumer.terminate()
- callback.block_until_terminated()
- responses = callback.responses()
-
- test_messages.verify(requests, responses, self)
-
- def testSequentialInvocations(self):
- # pylint: disable=cell-var-from-loop
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- first_request = test_messages.request()
- second_request = test_messages.request()
- first_callback = testing_callback.Callback()
- second_callback = testing_callback.Callback()
-
- def make_second_invocation(first_response):
- first_callback.complete(first_response)
- self.stub.event_value_in_value_out(
- name, second_request, second_callback.complete,
- second_callback.abort, test_constants.SHORT_TIMEOUT)
-
- self.stub.event_value_in_value_out(
- name, first_request, make_second_invocation, first_callback.abort,
- test_constants.SHORT_TIMEOUT)
- second_callback.block_until_terminated()
-
- first_response = first_callback.response()
- second_response = second_callback.response()
- test_messages.verify(first_request, first_response, self)
- test_messages.verify(second_request, second_response, self)
-
- def testExpiredUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- with self.control.pause():
- self.stub.event_value_in_value_out(
- name, request, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.EXPIRED, callback.abortion())
-
- def testExpiredUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- with self.control.pause():
- self.stub.event_value_in_stream_out(
- name, request, callback, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.EXPIRED, callback.abortion())
-
- def testExpiredStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for unused_test_messages in test_messages_sequence:
- callback = testing_callback.Callback()
-
- self.stub.event_stream_in_value_out(
- name, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.EXPIRED, callback.abortion())
-
- def testExpiredStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- callback = testing_callback.Callback()
-
- unused_call, request_consumer = self.stub.event_stream_in_stream_out(
- name, callback, callback.abort, test_constants.SHORT_TIMEOUT)
- for request in requests:
- request_consumer.consume(request)
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.EXPIRED, callback.abortion())
-
- def testFailedUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- with self.control.fail():
- self.stub.event_value_in_value_out(
- name, request, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.SERVICER_FAILURE,
- callback.abortion())
-
- def testFailedUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- with self.control.fail():
- self.stub.event_value_in_stream_out(
- name, request, callback, callback.abort,
- test_constants.SHORT_TIMEOUT)
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.SERVICER_FAILURE,
- callback.abortion())
-
- def testFailedStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- callback = testing_callback.Callback()
-
- with self.control.fail():
- unused_call, request_consumer = self.stub.event_stream_in_value_out(
- name, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- for request in requests:
- request_consumer.consume(request)
- request_consumer.terminate()
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.SERVICER_FAILURE,
- callback.abortion())
-
- def testFailedStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- callback = testing_callback.Callback()
-
- with self.control.fail():
- unused_call, request_consumer = self.stub.event_stream_in_stream_out(
- name, callback, callback.abort, test_constants.SHORT_TIMEOUT)
- for request in requests:
- request_consumer.consume(request)
- request_consumer.terminate()
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.SERVICER_FAILURE, callback.abortion())
-
- def testParallelInvocations(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- first_request = test_messages.request()
- first_callback = testing_callback.Callback()
- second_request = test_messages.request()
- second_callback = testing_callback.Callback()
-
- self.stub.event_value_in_value_out(
- name, first_request, first_callback.complete, first_callback.abort,
- test_constants.SHORT_TIMEOUT)
- self.stub.event_value_in_value_out(
- name, second_request, second_callback.complete,
- second_callback.abort, test_constants.SHORT_TIMEOUT)
- first_callback.block_until_terminated()
- second_callback.block_until_terminated()
-
- first_response = first_callback.response()
- second_response = second_callback.response()
- test_messages.verify(first_request, first_response, self)
- test_messages.verify(second_request, second_response, self)
-
- @unittest.skip('TODO(nathaniel): implement.')
- def testWaitingForSomeButNotAllParallelInvocations(self):
- raise NotImplementedError()
-
- def testCancelledUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- with self.control.pause():
- call = self.stub.event_value_in_value_out(
- name, request, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- call.cancel()
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.CANCELLED, callback.abortion())
-
- def testCancelledUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
- callback = testing_callback.Callback()
-
- call = self.stub.event_value_in_stream_out(
- name, request, callback, callback.abort,
- test_constants.SHORT_TIMEOUT)
- call.cancel()
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.CANCELLED, callback.abortion())
-
- def testCancelledStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- callback = testing_callback.Callback()
-
- call, request_consumer = self.stub.event_stream_in_value_out(
- name, callback.complete, callback.abort,
- test_constants.SHORT_TIMEOUT)
- for request in requests:
- request_consumer.consume(request)
- call.cancel()
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.CANCELLED, callback.abortion())
-
- def testCancelledStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for unused_test_messages in test_messages_sequence:
- callback = testing_callback.Callback()
-
- call, unused_request_consumer = self.stub.event_stream_in_stream_out(
- name, callback, callback.abort, test_constants.SHORT_TIMEOUT)
- call.cancel()
- callback.block_until_terminated()
-
- self.assertEqual(interfaces.Abortion.CANCELLED, callback.abortion())
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/future_invocation_asynchronous_event_service_test_case.py b/src/python/grpcio/tests/unit/framework/face/testing/future_invocation_asynchronous_event_service_test_case.py
deleted file mode 100644
index cae791af97..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/future_invocation_asynchronous_event_service_test_case.py
+++ /dev/null
@@ -1,384 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""A test to verify an implementation of the Face layer of RPC Framework."""
-
-import abc
-import contextlib
-import threading
-import unittest
-
-import six
-
-from grpc.framework.face import exceptions
-from grpc.framework.foundation import future
-from grpc.framework.foundation import logging_pool
-from tests.unit.framework.common import test_constants
-from tests.unit.framework.face.testing import control
-from tests.unit.framework.face.testing import coverage
-from tests.unit.framework.face.testing import digest
-from tests.unit.framework.face.testing import stock_service
-from tests.unit.framework.face.testing import test_case
-
-_MAXIMUM_POOL_SIZE = 10
-
-
-class _PauseableIterator(object):
-
- def __init__(self, upstream):
- self._upstream = upstream
- self._condition = threading.Condition()
- self._paused = False
-
- @contextlib.contextmanager
- def pause(self):
- with self._condition:
- self._paused = True
- yield
- with self._condition:
- self._paused = False
- self._condition.notify_all()
-
- def __iter__(self):
- return self
-
- def __next__(self):
- return self.next()
-
- def next(self):
- with self._condition:
- while self._paused:
- self._condition.wait()
- return next(self._upstream)
-
-
-class FutureInvocationAsynchronousEventServiceTestCase(
- six.with_metaclass(abc.ABCMeta,
- test_case.FaceTestCase, coverage.FullCoverage)):
- """A test of the Face layer of RPC Framework.
-
- Concrete subclasses must also extend unittest.TestCase.
- """
-
- def setUp(self):
- """See unittest.TestCase.setUp for full specification.
-
- Overriding implementations must call this implementation.
- """
- self.control = control.PauseFailControl()
- self.digest_pool = logging_pool.pool(_MAXIMUM_POOL_SIZE)
- self.digest = digest.digest(
- stock_service.STOCK_TEST_SERVICE, self.control, self.digest_pool)
-
- self.stub, self.memo = self.set_up_implementation(
- self.digest.name, self.digest.methods,
- self.digest.event_method_implementations, None)
-
- def tearDown(self):
- """See unittest.TestCase.tearDown for full specification.
-
- Overriding implementations must call this implementation.
- """
- self.tear_down_implementation(self.memo)
- self.digest_pool.shutdown(wait=True)
-
- def testSuccessfulUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- response_future = self.stub.future_value_in_value_out(
- name, request, test_constants.SHORT_TIMEOUT)
- response = response_future.result()
-
- test_messages.verify(request, response, self)
-
- def testSuccessfulUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.SHORT_TIMEOUT)
- responses = list(response_iterator)
-
- test_messages.verify(request, responses, self)
-
- def testSuccessfulStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- request_iterator = _PauseableIterator(iter(requests))
-
- # Use of a paused iterator of requests allows us to test that control is
- # returned to calling code before the iterator yields any requests.
- with request_iterator.pause():
- response_future = self.stub.future_stream_in_value_out(
- name, request_iterator, test_constants.SHORT_TIMEOUT)
- response = response_future.result()
-
- test_messages.verify(requests, response, self)
-
- def testSuccessfulStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
- request_iterator = _PauseableIterator(iter(requests))
-
- # Use of a paused iterator of requests allows us to test that control is
- # returned to calling code before the iterator yields any requests.
- with request_iterator.pause():
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, request_iterator, test_constants.SHORT_TIMEOUT)
- responses = list(response_iterator)
-
- test_messages.verify(requests, responses, self)
-
- def testSequentialInvocations(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- first_request = test_messages.request()
- second_request = test_messages.request()
-
- first_response_future = self.stub.future_value_in_value_out(
- name, first_request, test_constants.SHORT_TIMEOUT)
- first_response = first_response_future.result()
-
- test_messages.verify(first_request, first_response, self)
-
- second_response_future = self.stub.future_value_in_value_out(
- name, second_request, test_constants.SHORT_TIMEOUT)
- second_response = second_response_future.result()
-
- test_messages.verify(second_request, second_response, self)
-
- def testExpiredUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.pause():
- multi_callable = self.stub.unary_unary_multi_callable(name)
- response_future = multi_callable.future(request,
- test_constants.SHORT_TIMEOUT)
- self.assertIsInstance(
- response_future.exception(), exceptions.ExpirationError)
- with self.assertRaises(exceptions.ExpirationError):
- response_future.result()
-
- def testExpiredUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.pause():
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.SHORT_TIMEOUT)
- with self.assertRaises(exceptions.ExpirationError):
- list(response_iterator)
-
- def testExpiredStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.pause():
- multi_callable = self.stub.stream_unary_multi_callable(name)
- response_future = multi_callable.future(iter(requests),
- test_constants.SHORT_TIMEOUT)
- self.assertIsInstance(
- response_future.exception(), exceptions.ExpirationError)
- with self.assertRaises(exceptions.ExpirationError):
- response_future.result()
-
- def testExpiredStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.pause():
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
- with self.assertRaises(exceptions.ExpirationError):
- list(response_iterator)
-
- def testFailedUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.fail():
- response_future = self.stub.future_value_in_value_out(
- name, request, test_constants.SHORT_TIMEOUT)
-
- # Because the servicer fails outside of the thread from which the
- # servicer-side runtime called into it its failure is
- # indistinguishable from simply not having called its
- # response_callback before the expiration of the RPC.
- self.assertIsInstance(
- response_future.exception(), exceptions.ExpirationError)
- with self.assertRaises(exceptions.ExpirationError):
- response_future.result()
-
- def testFailedUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- # Because the servicer fails outside of the thread from which the
- # servicer-side runtime called into it its failure is indistinguishable
- # from simply not having called its response_consumer before the
- # expiration of the RPC.
- with self.control.fail(), self.assertRaises(exceptions.ExpirationError):
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.SHORT_TIMEOUT)
- list(response_iterator)
-
- def testFailedStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.fail():
- response_future = self.stub.future_stream_in_value_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
-
- # Because the servicer fails outside of the thread from which the
- # servicer-side runtime called into it its failure is
- # indistinguishable from simply not having called its
- # response_callback before the expiration of the RPC.
- self.assertIsInstance(
- response_future.exception(), exceptions.ExpirationError)
- with self.assertRaises(exceptions.ExpirationError):
- response_future.result()
-
- def testFailedStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- # Because the servicer fails outside of the thread from which the
- # servicer-side runtime called into it its failure is indistinguishable
- # from simply not having called its response_consumer before the
- # expiration of the RPC.
- with self.control.fail(), self.assertRaises(exceptions.ExpirationError):
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
- list(response_iterator)
-
- def testParallelInvocations(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- first_request = test_messages.request()
- second_request = test_messages.request()
-
- # TODO(bug 2039): use LONG_TIMEOUT instead
- first_response_future = self.stub.future_value_in_value_out(
- name, first_request, test_constants.SHORT_TIMEOUT)
- second_response_future = self.stub.future_value_in_value_out(
- name, second_request, test_constants.SHORT_TIMEOUT)
- first_response = first_response_future.result()
- second_response = second_response_future.result()
-
- test_messages.verify(first_request, first_response, self)
- test_messages.verify(second_request, second_response, self)
-
- @unittest.skip('TODO(nathaniel): implement.')
- def testWaitingForSomeButNotAllParallelInvocations(self):
- raise NotImplementedError()
-
- def testCancelledUnaryRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.pause():
- response_future = self.stub.future_value_in_value_out(
- name, request, test_constants.SHORT_TIMEOUT)
- cancel_method_return_value = response_future.cancel()
-
- self.assertFalse(cancel_method_return_value)
- self.assertTrue(response_future.cancelled())
-
- def testCancelledUnaryRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.unary_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- request = test_messages.request()
-
- with self.control.pause():
- response_iterator = self.stub.inline_value_in_stream_out(
- name, request, test_constants.SHORT_TIMEOUT)
- response_iterator.cancel()
-
- with self.assertRaises(future.CancelledError):
- next(response_iterator)
-
- def testCancelledStreamRequestUnaryResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_unary_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.pause():
- response_future = self.stub.future_stream_in_value_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
- cancel_method_return_value = response_future.cancel()
-
- self.assertFalse(cancel_method_return_value)
- self.assertTrue(response_future.cancelled())
-
- def testCancelledStreamRequestStreamResponse(self):
- for name, test_messages_sequence in (
- six.iteritems(self.digest.stream_stream_messages_sequences)):
- for test_messages in test_messages_sequence:
- requests = test_messages.requests()
-
- with self.control.pause():
- response_iterator = self.stub.inline_stream_in_stream_out(
- name, iter(requests), test_constants.SHORT_TIMEOUT)
- response_iterator.cancel()
-
- with self.assertRaises(future.CancelledError):
- next(response_iterator)
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/interfaces.py b/src/python/grpcio/tests/unit/framework/face/testing/interfaces.py
deleted file mode 100644
index 8a25f89c88..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/interfaces.py
+++ /dev/null
@@ -1,118 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Interfaces implemented by data sets used in Face-layer tests."""
-
-import abc
-
-import six
-
-# cardinality is referenced from specification in this module.
-from grpc.framework.common import cardinality # pylint: disable=unused-import
-
-
-class Method(six.with_metaclass(abc.ABCMeta)):
- """An RPC method to be used in tests of RPC implementations."""
-
- @abc.abstractmethod
- def name(self):
- """Identify the name of the method.
-
- Returns:
- The name of the method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def cardinality(self):
- """Identify the cardinality of the method.
-
- Returns:
- A cardinality.Cardinality value describing the streaming semantics of the
- method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def request_class(self):
- """Identify the class used for the method's request objects.
-
- Returns:
- The class object of the class to which the method's request objects
- belong.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def response_class(self):
- """Identify the class used for the method's response objects.
-
- Returns:
- The class object of the class to which the method's response objects
- belong.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def serialize_request(self, request):
- """Serialize the given request object.
-
- Args:
- request: A request object appropriate for this method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def deserialize_request(self, serialized_request):
- """Synthesize a request object from a given bytestring.
-
- Args:
- serialized_request: A bytestring deserializable into a request object
- appropriate for this method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def serialize_response(self, response):
- """Serialize the given response object.
-
- Args:
- response: A response object appropriate for this method.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def deserialize_response(self, serialized_response):
- """Synthesize a response object from a given bytestring.
-
- Args:
- serialized_response: A bytestring deserializable into a response object
- appropriate for this method.
- """
- raise NotImplementedError()
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/service.py b/src/python/grpcio/tests/unit/framework/face/testing/service.py
deleted file mode 100644
index 3e4228cc07..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/service.py
+++ /dev/null
@@ -1,321 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Private interfaces implemented by data sets used in Face-layer tests."""
-
-import abc
-
-import six
-
-# interfaces is referenced from specification in this module.
-from grpc.framework.face import interfaces as face_interfaces # pylint: disable=unused-import
-from tests.unit.framework.face.testing import interfaces
-
-
-class UnaryUnaryTestMethodImplementation(six.with_metaclass(abc.ABCMeta, interfaces.Method)):
- """A controllable implementation of a unary-unary RPC method."""
-
- @abc.abstractmethod
- def service(self, request, response_callback, context, control):
- """Services an RPC that accepts one message and produces one message.
-
- Args:
- request: The single request message for the RPC.
- response_callback: A callback to be called to accept the response message
- of the RPC.
- context: An face_interfaces.RpcContext object.
- control: A test_control.Control to control execution of this method.
-
- Raises:
- abandonment.Abandoned: May or may not be raised when the RPC has been
- aborted.
- """
- raise NotImplementedError()
-
-
-class UnaryUnaryTestMessages(six.with_metaclass(abc.ABCMeta)):
- """A type for unary-request-unary-response message pairings."""
-
- @abc.abstractmethod
- def request(self):
- """Affords a request message.
-
- Implementations of this method should return a different message with each
- call so that multiple test executions of the test method may be made with
- different inputs.
-
- Returns:
- A request message.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def verify(self, request, response, test_case):
- """Verifies that the computed response matches the given request.
-
- Args:
- request: A request message.
- response: A response message.
- test_case: A unittest.TestCase object affording useful assertion methods.
-
- Raises:
- AssertionError: If the request and response do not match, indicating that
- there was some problem executing the RPC under test.
- """
- raise NotImplementedError()
-
-
-class UnaryStreamTestMethodImplementation(six.with_metaclass(abc.ABCMeta, interfaces.Method)):
- """A controllable implementation of a unary-stream RPC method."""
-
- @abc.abstractmethod
- def service(self, request, response_consumer, context, control):
- """Services an RPC that takes one message and produces a stream of messages.
-
- Args:
- request: The single request message for the RPC.
- response_consumer: A stream.Consumer to be called to accept the response
- messages of the RPC.
- context: A face_interfaces.RpcContext object.
- control: A test_control.Control to control execution of this method.
-
- Raises:
- abandonment.Abandoned: May or may not be raised when the RPC has been
- aborted.
- """
- raise NotImplementedError()
-
-
-class UnaryStreamTestMessages(six.with_metaclass(abc.ABCMeta)):
- """A type for unary-request-stream-response message pairings."""
-
- @abc.abstractmethod
- def request(self):
- """Affords a request message.
-
- Implementations of this method should return a different message with each
- call so that multiple test executions of the test method may be made with
- different inputs.
-
- Returns:
- A request message.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def verify(self, request, responses, test_case):
- """Verifies that the computed responses match the given request.
-
- Args:
- request: A request message.
- responses: A sequence of response messages.
- test_case: A unittest.TestCase object affording useful assertion methods.
-
- Raises:
- AssertionError: If the request and responses do not match, indicating that
- there was some problem executing the RPC under test.
- """
- raise NotImplementedError()
-
-
-class StreamUnaryTestMethodImplementation(six.with_metaclass(abc.ABCMeta, interfaces.Method)):
- """A controllable implementation of a stream-unary RPC method."""
-
- @abc.abstractmethod
- def service(self, response_callback, context, control):
- """Services an RPC that takes a stream of messages and produces one message.
-
- Args:
- response_callback: A callback to be called to accept the response message
- of the RPC.
- context: A face_interfaces.RpcContext object.
- control: A test_control.Control to control execution of this method.
-
- Returns:
- A stream.Consumer with which to accept the request messages of the RPC.
- The consumer returned from this method may or may not be invoked to
- completion: in the case of RPC abortion, RPC Framework will simply stop
- passing messages to this object. Implementations must not assume that
- this object will be called to completion of the request stream or even
- called at all.
-
- Raises:
- abandonment.Abandoned: May or may not be raised when the RPC has been
- aborted.
- """
- raise NotImplementedError()
-
-
-class StreamUnaryTestMessages(six.with_metaclass(abc.ABCMeta)):
- """A type for stream-request-unary-response message pairings."""
-
- @abc.abstractmethod
- def requests(self):
- """Affords a sequence of request messages.
-
- Implementations of this method should return a different sequences with each
- call so that multiple test executions of the test method may be made with
- different inputs.
-
- Returns:
- A sequence of request messages.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def verify(self, requests, response, test_case):
- """Verifies that the computed response matches the given requests.
-
- Args:
- requests: A sequence of request messages.
- response: A response message.
- test_case: A unittest.TestCase object affording useful assertion methods.
-
- Raises:
- AssertionError: If the requests and response do not match, indicating that
- there was some problem executing the RPC under test.
- """
- raise NotImplementedError()
-
-
-class StreamStreamTestMethodImplementation(six.with_metaclass(abc.ABCMeta, interfaces.Method)):
- """A controllable implementation of a stream-stream RPC method."""
-
- @abc.abstractmethod
- def service(self, response_consumer, context, control):
- """Services an RPC that accepts and produces streams of messages.
-
- Args:
- response_consumer: A stream.Consumer to be called to accept the response
- messages of the RPC.
- context: A face_interfaces.RpcContext object.
- control: A test_control.Control to control execution of this method.
-
- Returns:
- A stream.Consumer with which to accept the request messages of the RPC.
- The consumer returned from this method may or may not be invoked to
- completion: in the case of RPC abortion, RPC Framework will simply stop
- passing messages to this object. Implementations must not assume that
- this object will be called to completion of the request stream or even
- called at all.
-
- Raises:
- abandonment.Abandoned: May or may not be raised when the RPC has been
- aborted.
- """
- raise NotImplementedError()
-
-
-class StreamStreamTestMessages(six.with_metaclass(abc.ABCMeta)):
- """A type for stream-request-stream-response message pairings."""
-
- @abc.abstractmethod
- def requests(self):
- """Affords a sequence of request messages.
-
- Implementations of this method should return a different sequences with each
- call so that multiple test executions of the test method may be made with
- different inputs.
-
- Returns:
- A sequence of request messages.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def verify(self, requests, responses, test_case):
- """Verifies that the computed response matches the given requests.
-
- Args:
- requests: A sequence of request messages.
- responses: A sequence of response messages.
- test_case: A unittest.TestCase object affording useful assertion methods.
-
- Raises:
- AssertionError: If the requests and responses do not match, indicating
- that there was some problem executing the RPC under test.
- """
- raise NotImplementedError()
-
-
-class TestService(six.with_metaclass(abc.ABCMeta)):
- """A specification of implemented RPC methods to use in tests."""
-
- @abc.abstractmethod
- def name(self):
- """Identifies the RPC service name used during the test.
-
- Returns:
- The RPC service name to be used for the test.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def unary_unary_scenarios(self):
- """Affords unary-request-unary-response test methods and their messages.
-
- Returns:
- A dict from method name to pair. The first element of the pair
- is a UnaryUnaryTestMethodImplementation object and the second element
- is a sequence of UnaryUnaryTestMethodMessages objects.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def unary_stream_scenarios(self):
- """Affords unary-request-stream-response test methods and their messages.
-
- Returns:
- A dict from method name to pair. The first element of the pair is a
- UnaryStreamTestMethodImplementation object and the second element is a
- sequence of UnaryStreamTestMethodMessages objects.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def stream_unary_scenarios(self):
- """Affords stream-request-unary-response test methods and their messages.
-
- Returns:
- A dict from method name to pair. The first element of the pair is a
- StreamUnaryTestMethodImplementation object and the second element is a
- sequence of StreamUnaryTestMethodMessages objects.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def stream_stream_scenarios(self):
- """Affords stream-request-stream-response test methods and their messages.
-
- Returns:
- A dict from method name to pair. The first element of the pair is a
- StreamStreamTestMethodImplementation object and the second element is a
- sequence of StreamStreamTestMethodMessages objects.
- """
- raise NotImplementedError()
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/stock_service.py b/src/python/grpcio/tests/unit/framework/face/testing/stock_service.py
deleted file mode 100644
index 117c723f79..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/stock_service.py
+++ /dev/null
@@ -1,374 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Examples of Python implementations of the stock.proto Stock service."""
-
-from grpc.framework.common import cardinality
-from grpc.framework.foundation import abandonment
-from grpc.framework.foundation import stream
-from grpc.framework.foundation import stream_util
-from tests.unit.framework.face.testing import service
-from tests.unit._junkdrawer import stock_pb2
-
-SYMBOL_FORMAT = 'test symbol:%03d'
-STREAM_LENGTH = 400
-
-# A test-appropriate security-pricing function. :-P
-_price = lambda symbol_name: float(hash(symbol_name) % 4096)
-
-
-def _get_last_trade_price(stock_request, stock_reply_callback, control, active):
- """A unary-request, unary-response test method."""
- control.control()
- if active():
- stock_reply_callback(
- stock_pb2.StockReply(
- symbol=stock_request.symbol, price=_price(stock_request.symbol)))
- else:
- raise abandonment.Abandoned()
-
-
-def _get_last_trade_price_multiple(stock_reply_consumer, control, active):
- """A stream-request, stream-response test method."""
- def stock_reply_for_stock_request(stock_request):
- control.control()
- if active():
- return stock_pb2.StockReply(
- symbol=stock_request.symbol, price=_price(stock_request.symbol))
- else:
- raise abandonment.Abandoned()
- return stream_util.TransformingConsumer(
- stock_reply_for_stock_request, stock_reply_consumer)
-
-
-def _watch_future_trades(stock_request, stock_reply_consumer, control, active):
- """A unary-request, stream-response test method."""
- base_price = _price(stock_request.symbol)
- for index in range(stock_request.num_trades_to_watch):
- control.control()
- if active():
- stock_reply_consumer.consume(
- stock_pb2.StockReply(
- symbol=stock_request.symbol, price=base_price + index))
- else:
- raise abandonment.Abandoned()
- stock_reply_consumer.terminate()
-
-
-def _get_highest_trade_price(stock_reply_callback, control, active):
- """A stream-request, unary-response test method."""
-
- class StockRequestConsumer(stream.Consumer):
- """Keeps an ongoing record of the most valuable symbol yet consumed."""
-
- def __init__(self):
- self._symbol = None
- self._price = None
-
- def consume(self, stock_request):
- control.control()
- if active():
- if self._price is None:
- self._symbol = stock_request.symbol
- self._price = _price(stock_request.symbol)
- else:
- candidate_price = _price(stock_request.symbol)
- if self._price < candidate_price:
- self._symbol = stock_request.symbol
- self._price = candidate_price
-
- def terminate(self):
- control.control()
- if active():
- if self._symbol is None:
- raise ValueError()
- else:
- stock_reply_callback(
- stock_pb2.StockReply(symbol=self._symbol, price=self._price))
- self._symbol = None
- self._price = None
-
- def consume_and_terminate(self, stock_request):
- control.control()
- if active():
- if self._price is None:
- stock_reply_callback(
- stock_pb2.StockReply(
- symbol=stock_request.symbol,
- price=_price(stock_request.symbol)))
- else:
- candidate_price = _price(stock_request.symbol)
- if self._price < candidate_price:
- stock_reply_callback(
- stock_pb2.StockReply(
- symbol=stock_request.symbol, price=candidate_price))
- else:
- stock_reply_callback(
- stock_pb2.StockReply(
- symbol=self._symbol, price=self._price))
-
- self._symbol = None
- self._price = None
-
- return StockRequestConsumer()
-
-
-class GetLastTradePrice(service.UnaryUnaryTestMethodImplementation):
- """GetLastTradePrice for use in tests."""
-
- def name(self):
- return 'GetLastTradePrice'
-
- def cardinality(self):
- return cardinality.Cardinality.UNARY_UNARY
-
- def request_class(self):
- return stock_pb2.StockRequest
-
- def response_class(self):
- return stock_pb2.StockReply
-
- def serialize_request(self, request):
- return request.SerializeToString()
-
- def deserialize_request(self, serialized_request):
- return stock_pb2.StockRequest.FromString(serialized_request)
-
- def serialize_response(self, response):
- return response.SerializeToString()
-
- def deserialize_response(self, serialized_response):
- return stock_pb2.StockReply.FromString(serialized_response)
-
- def service(self, request, response_callback, context, control):
- _get_last_trade_price(
- request, response_callback, control, context.is_active)
-
-
-class GetLastTradePriceMessages(service.UnaryUnaryTestMessages):
-
- def __init__(self):
- self._index = 0
-
- def request(self):
- symbol = SYMBOL_FORMAT % self._index
- self._index += 1
- return stock_pb2.StockRequest(symbol=symbol)
-
- def verify(self, request, response, test_case):
- test_case.assertEqual(request.symbol, response.symbol)
- test_case.assertEqual(_price(request.symbol), response.price)
-
-
-class GetLastTradePriceMultiple(service.StreamStreamTestMethodImplementation):
- """GetLastTradePriceMultiple for use in tests."""
-
- def name(self):
- return 'GetLastTradePriceMultiple'
-
- def cardinality(self):
- return cardinality.Cardinality.STREAM_STREAM
-
- def request_class(self):
- return stock_pb2.StockRequest
-
- def response_class(self):
- return stock_pb2.StockReply
-
- def serialize_request(self, request):
- return request.SerializeToString()
-
- def deserialize_request(self, serialized_request):
- return stock_pb2.StockRequest.FromString(serialized_request)
-
- def serialize_response(self, response):
- return response.SerializeToString()
-
- def deserialize_response(self, serialized_response):
- return stock_pb2.StockReply.FromString(serialized_response)
-
- def service(self, response_consumer, context, control):
- return _get_last_trade_price_multiple(
- response_consumer, control, context.is_active)
-
-
-class GetLastTradePriceMultipleMessages(service.StreamStreamTestMessages):
- """Pairs of message streams for use with GetLastTradePriceMultiple."""
-
- def __init__(self):
- self._index = 0
-
- def requests(self):
- base_index = self._index
- self._index += 1
- return [
- stock_pb2.StockRequest(symbol=SYMBOL_FORMAT % (base_index + index))
- for index in range(STREAM_LENGTH)]
-
- def verify(self, requests, responses, test_case):
- test_case.assertEqual(len(requests), len(responses))
- for stock_request, stock_reply in zip(requests, responses):
- test_case.assertEqual(stock_request.symbol, stock_reply.symbol)
- test_case.assertEqual(_price(stock_request.symbol), stock_reply.price)
-
-
-class WatchFutureTrades(service.UnaryStreamTestMethodImplementation):
- """WatchFutureTrades for use in tests."""
-
- def name(self):
- return 'WatchFutureTrades'
-
- def cardinality(self):
- return cardinality.Cardinality.UNARY_STREAM
-
- def request_class(self):
- return stock_pb2.StockRequest
-
- def response_class(self):
- return stock_pb2.StockReply
-
- def serialize_request(self, request):
- return request.SerializeToString()
-
- def deserialize_request(self, serialized_request):
- return stock_pb2.StockRequest.FromString(serialized_request)
-
- def serialize_response(self, response):
- return response.SerializeToString()
-
- def deserialize_response(self, serialized_response):
- return stock_pb2.StockReply.FromString(serialized_response)
-
- def service(self, request, response_consumer, context, control):
- _watch_future_trades(request, response_consumer, control, context.is_active)
-
-
-class WatchFutureTradesMessages(service.UnaryStreamTestMessages):
- """Pairs of a single request message and a sequence of response messages."""
-
- def __init__(self):
- self._index = 0
-
- def request(self):
- symbol = SYMBOL_FORMAT % self._index
- self._index += 1
- return stock_pb2.StockRequest(
- symbol=symbol, num_trades_to_watch=STREAM_LENGTH)
-
- def verify(self, request, responses, test_case):
- test_case.assertEqual(STREAM_LENGTH, len(responses))
- base_price = _price(request.symbol)
- for index, response in enumerate(responses):
- test_case.assertEqual(base_price + index, response.price)
-
-
-class GetHighestTradePrice(service.StreamUnaryTestMethodImplementation):
- """GetHighestTradePrice for use in tests."""
-
- def name(self):
- return 'GetHighestTradePrice'
-
- def cardinality(self):
- return cardinality.Cardinality.STREAM_UNARY
-
- def request_class(self):
- return stock_pb2.StockRequest
-
- def response_class(self):
- return stock_pb2.StockReply
-
- def serialize_request(self, request):
- return request.SerializeToString()
-
- def deserialize_request(self, serialized_request):
- return stock_pb2.StockRequest.FromString(serialized_request)
-
- def serialize_response(self, response):
- return response.SerializeToString()
-
- def deserialize_response(self, serialized_response):
- return stock_pb2.StockReply.FromString(serialized_response)
-
- def service(self, response_callback, context, control):
- return _get_highest_trade_price(
- response_callback, control, context.is_active)
-
-
-class GetHighestTradePriceMessages(service.StreamUnaryTestMessages):
-
- def requests(self):
- return [
- stock_pb2.StockRequest(symbol=SYMBOL_FORMAT % index)
- for index in range(STREAM_LENGTH)]
-
- def verify(self, requests, response, test_case):
- price = None
- symbol = None
- for stock_request in requests:
- current_symbol = stock_request.symbol
- current_price = _price(current_symbol)
- if price is None or price < current_price:
- price = current_price
- symbol = current_symbol
- test_case.assertEqual(price, response.price)
- test_case.assertEqual(symbol, response.symbol)
-
-
-class StockTestService(service.TestService):
- """A corpus of test data with one method of each RPC cardinality."""
-
- def name(self):
- return 'Stock'
-
- def unary_unary_scenarios(self):
- return {
- 'GetLastTradePrice': (
- GetLastTradePrice(), [GetLastTradePriceMessages()]),
- }
-
- def unary_stream_scenarios(self):
- return {
- 'WatchFutureTrades': (
- WatchFutureTrades(), [WatchFutureTradesMessages()]),
- }
-
- def stream_unary_scenarios(self):
- return {
- 'GetHighestTradePrice': (
- GetHighestTradePrice(), [GetHighestTradePriceMessages()])
- }
-
- def stream_stream_scenarios(self):
- return {
- 'GetLastTradePriceMultiple': (
- GetLastTradePriceMultiple(), [GetLastTradePriceMultipleMessages()]),
- }
-
-
-STOCK_TEST_SERVICE = StockTestService()
diff --git a/src/python/grpcio/tests/unit/framework/face/testing/test_case.py b/src/python/grpcio/tests/unit/framework/face/testing/test_case.py
deleted file mode 100644
index f29d400844..0000000000
--- a/src/python/grpcio/tests/unit/framework/face/testing/test_case.py
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Tools for creating tests of implementations of the Face layer."""
-
-import abc
-
-import six
-
-# face_interfaces and interfaces are referenced in specification in this module.
-from grpc.framework.face import interfaces as face_interfaces # pylint: disable=unused-import
-from tests.unit.framework.face.testing import interfaces # pylint: disable=unused-import
-
-
-class FaceTestCase(six.with_metaclass(abc.ABCMeta)):
- """Describes a test of the Face Layer of RPC Framework.
-
- Concrete subclasses must also inherit from unittest.TestCase and from at least
- one class that defines test methods.
- """
-
- @abc.abstractmethod
- def set_up_implementation(
- self, name, methods, method_implementations,
- multi_method_implementation):
- """Instantiates the Face Layer implementation under test.
-
- Args:
- name: The service name to be used in the test.
- methods: A sequence of interfaces.Method objects describing the RPC
- methods that will be called during the test.
- method_implementations: A dictionary from string RPC method name to
- face_interfaces.MethodImplementation object specifying
- implementation of an RPC method.
- multi_method_implementation: An face_interfaces.MultiMethodImplementation
- or None.
-
- Returns:
- A sequence of length two the first element of which is a
- face_interfaces.GenericStub (backed by the given method
- implementations), and the second element of which is an arbitrary memo
- object to be kept and passed to tearDownImplementation at the conclusion
- of the test.
- """
- raise NotImplementedError()
-
- @abc.abstractmethod
- def tear_down_implementation(self, memo):
- """Destroys the Face layer implementation under test.
-
- Args:
- memo: The object from the second position of the return value of
- set_up_implementation.
- """
- raise NotImplementedError()
diff --git a/src/ruby/bin/interop/interop_server.rb b/src/ruby/bin/interop/interop_server.rb
deleted file mode 100755
index c6b0d00ec6..0000000000
--- a/src/ruby/bin/interop/interop_server.rb
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/usr/bin/env ruby
-
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# #######################################################################
-# DEPRECATED: The behaviour in this file has been moved to pb/test/server.rb
-#
-# This file remains to support existing tools and scripts that use it.
-# ######################################################################
-#
-# interop_server is a Testing app that runs a gRPC interop testing server.
-#
-# It helps validate interoperation b/w gRPC in different environments
-#
-# Helps validate interoperation b/w different gRPC implementations.
-#
-# Usage: $ path/to/interop_server.rb --port
-
-this_dir = File.expand_path(File.dirname(__FILE__))
-pb_dir = File.join(File.dirname(File.dirname(this_dir)), 'pb')
-$LOAD_PATH.unshift(pb_dir) unless $LOAD_PATH.include?(pb_dir)
-
-require 'test/server'
diff --git a/src/ruby/ext/grpc/extconf.rb b/src/ruby/ext/grpc/extconf.rb
index 82b6d313c8..07f7bb93b8 100644
--- a/src/ruby/ext/grpc/extconf.rb
+++ b/src/ruby/ext/grpc/extconf.rb
@@ -60,35 +60,27 @@ grpc_root = File.expand_path(File.join(File.dirname(__FILE__), '../../../..'))
grpc_config = ENV['GRPC_CONFIG'] || 'opt'
-if ENV.key?('GRPC_LIB_DIR')
- grpc_lib_dir = File.join(grpc_root, ENV['GRPC_LIB_DIR'])
-else
- grpc_lib_dir = File.join(grpc_root, 'libs', grpc_config)
-end
-
ENV['MACOSX_DEPLOYMENT_TARGET'] = '10.7'
-unless File.exist?(File.join(grpc_lib_dir, 'libgrpc.a')) or windows
- ENV['AR'] = RbConfig::CONFIG['AR'] + ' rcs'
- ENV['CC'] = RbConfig::CONFIG['CC']
- ENV['LD'] = ENV['CC']
+ENV['AR'] = RbConfig::CONFIG['AR'] + ' rcs'
+ENV['CC'] = RbConfig::CONFIG['CC']
+ENV['LD'] = ENV['CC']
- ENV['AR'] = 'libtool -o' if RUBY_PLATFORM =~ /darwin/
+ENV['AR'] = 'libtool -o' if RUBY_PLATFORM =~ /darwin/
- ENV['EMBED_OPENSSL'] = 'true'
- ENV['EMBED_ZLIB'] = 'true'
- ENV['ARCH_FLAGS'] = RbConfig::CONFIG['ARCH_FLAG']
- ENV['ARCH_FLAGS'] = '-arch i386 -arch x86_64' if RUBY_PLATFORM =~ /darwin/
- ENV['CFLAGS'] = '-DGPR_BACKWARDS_COMPATIBILITY_MODE'
+ENV['EMBED_OPENSSL'] = 'true'
+ENV['EMBED_ZLIB'] = 'true'
+ENV['ARCH_FLAGS'] = RbConfig::CONFIG['ARCH_FLAG']
+ENV['ARCH_FLAGS'] = '-arch i386 -arch x86_64' if RUBY_PLATFORM =~ /darwin/
+ENV['CFLAGS'] = '-DGPR_BACKWARDS_COMPATIBILITY_MODE'
- output_dir = File.expand_path(RbConfig::CONFIG['topdir'])
- grpc_lib_dir = File.join(output_dir, 'libs', grpc_config)
- ENV['BUILDDIR'] = output_dir
+output_dir = File.expand_path(RbConfig::CONFIG['topdir'])
+grpc_lib_dir = File.join(output_dir, 'libs', grpc_config)
+ENV['BUILDDIR'] = output_dir
- puts 'Building internal gRPC into ' + grpc_lib_dir
- system("make -j -C #{grpc_root} #{grpc_lib_dir}/libgrpc.a CONFIG=#{grpc_config}")
- exit 1 unless $? == 0
-end
+puts 'Building internal gRPC into ' + grpc_lib_dir
+system("make -j -C #{grpc_root} #{grpc_lib_dir}/libgrpc.a CONFIG=#{grpc_config}")
+exit 1 unless $? == 0
$CFLAGS << ' -I' + File.join(grpc_root, 'include')
$LDFLAGS << ' ' + File.join(grpc_lib_dir, 'libgrpc.a') unless windows
diff --git a/src/ruby/ext/grpc/rb_call.c b/src/ruby/ext/grpc/rb_call.c
index f5fdbb2ffd..48c49a21e9 100644
--- a/src/ruby/ext/grpc/rb_call.c
+++ b/src/ruby/ext/grpc/rb_call.c
@@ -214,6 +214,35 @@ static VALUE grpc_rb_call_get_peer(VALUE self) {
return res;
}
+/* Called to obtain the x509 cert of an authenticated peer. */
+static VALUE grpc_rb_call_get_peer_cert(VALUE self) {
+ grpc_call *call = NULL;
+ VALUE res = Qnil;
+ grpc_auth_context *ctx = NULL;
+ TypedData_Get_Struct(self, grpc_call, &grpc_call_data_type, call);
+
+ ctx = grpc_call_auth_context(call);
+
+ if (!ctx || !grpc_auth_context_peer_is_authenticated(ctx)) {
+ return Qnil;
+ }
+
+ {
+ grpc_auth_property_iterator it =
+ grpc_auth_context_find_properties_by_name(ctx, GRPC_X509_PEM_CERT_PROPERTY_NAME);
+ const grpc_auth_property *prop = grpc_auth_property_iterator_next(&it);
+ if (prop == NULL) {
+ return Qnil;
+ }
+
+ res = rb_str_new2(prop->value);
+ }
+
+ grpc_auth_context_release(ctx);
+
+ return res;
+}
+
/*
call-seq:
status = call.status
@@ -861,6 +890,7 @@ void Init_grpc_call() {
rb_define_method(grpc_rb_cCall, "run_batch", grpc_rb_call_run_batch, 4);
rb_define_method(grpc_rb_cCall, "cancel", grpc_rb_call_cancel, 0);
rb_define_method(grpc_rb_cCall, "peer", grpc_rb_call_get_peer, 0);
+ rb_define_method(grpc_rb_cCall, "peer_cert", grpc_rb_call_get_peer_cert, 0);
rb_define_method(grpc_rb_cCall, "status", grpc_rb_call_get_status, 0);
rb_define_method(grpc_rb_cCall, "status=", grpc_rb_call_set_status, 1);
rb_define_method(grpc_rb_cCall, "metadata", grpc_rb_call_get_metadata, 0);
diff --git a/src/ruby/ext/grpc/rb_channel_credentials.c b/src/ruby/ext/grpc/rb_channel_credentials.c
index 10391bc963..09bd3093a9 100644
--- a/src/ruby/ext/grpc/rb_channel_credentials.c
+++ b/src/ruby/ext/grpc/rb_channel_credentials.c
@@ -31,6 +31,8 @@
*
*/
+#include <string.h>
+
#include <ruby/ruby.h>
#include "rb_grpc_imports.generated.h"
#include "rb_channel_credentials.h"
@@ -39,6 +41,7 @@
#include <grpc/grpc.h>
#include <grpc/grpc_security.h>
+#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
#include "rb_call_credentials.h"
@@ -48,6 +51,8 @@
grpc_channel_credentials. */
static VALUE grpc_rb_cChannelCredentials = Qnil;
+static char *pem_root_certs = NULL;
+
/* grpc_rb_channel_credentials wraps a grpc_channel_credentials. It provides a
* mark object that is used to hold references to any objects used to create
* the credentials. */
@@ -236,6 +241,25 @@ static VALUE grpc_rb_channel_credentials_compose(int argc, VALUE *argv,
return grpc_rb_wrap_channel_credentials(creds, mark);
}
+static grpc_ssl_roots_override_result get_ssl_roots_override(
+ char **pem_root_certs_ptr) {
+ *pem_root_certs_ptr = pem_root_certs;
+ if (pem_root_certs == NULL) {
+ return GRPC_SSL_ROOTS_OVERRIDE_FAIL;
+ } else {
+ return GRPC_SSL_ROOTS_OVERRIDE_OK;
+ }
+}
+
+static VALUE grpc_rb_set_default_roots_pem(VALUE self, VALUE roots) {
+ char *roots_ptr = StringValueCStr(roots);
+ size_t length = strlen(roots_ptr);
+ (void)self;
+ pem_root_certs = gpr_malloc((length + 1) * sizeof(char));
+ memcpy(pem_root_certs, roots_ptr, length + 1);
+ return Qnil;
+}
+
void Init_grpc_channel_credentials() {
grpc_rb_cChannelCredentials =
rb_define_class_under(grpc_rb_mGrpcCore, "ChannelCredentials", rb_cObject);
@@ -251,6 +275,11 @@ void Init_grpc_channel_credentials() {
grpc_rb_channel_credentials_init_copy, 1);
rb_define_method(grpc_rb_cChannelCredentials, "compose",
grpc_rb_channel_credentials_compose, -1);
+ rb_define_module_function(grpc_rb_cChannelCredentials,
+ "set_default_roots_pem",
+ grpc_rb_set_default_roots_pem, 1);
+
+ grpc_set_ssl_roots_override_callback(get_ssl_roots_override);
id_pem_cert_chain = rb_intern("__pem_cert_chain");
id_pem_private_key = rb_intern("__pem_private_key");
diff --git a/src/ruby/ext/grpc/rb_grpc_imports.generated.c b/src/ruby/ext/grpc/rb_grpc_imports.generated.c
index e2068d752a..bc43f9d36b 100644
--- a/src/ruby/ext/grpc/rb_grpc_imports.generated.c
+++ b/src/ruby/ext/grpc/rb_grpc_imports.generated.c
@@ -124,6 +124,7 @@ grpc_tracer_set_enabled_type grpc_tracer_set_enabled_import;
grpc_header_key_is_legal_type grpc_header_key_is_legal_import;
grpc_header_nonbin_value_is_legal_type grpc_header_nonbin_value_is_legal_import;
grpc_is_binary_header_type grpc_is_binary_header_import;
+grpc_call_error_to_string_type grpc_call_error_to_string_import;
grpc_auth_property_iterator_next_type grpc_auth_property_iterator_next_import;
grpc_auth_context_property_iterator_type grpc_auth_context_property_iterator_import;
grpc_auth_context_peer_identity_type grpc_auth_context_peer_identity_import;
@@ -389,6 +390,7 @@ void grpc_rb_load_imports(HMODULE library) {
grpc_header_key_is_legal_import = (grpc_header_key_is_legal_type) GetProcAddress(library, "grpc_header_key_is_legal");
grpc_header_nonbin_value_is_legal_import = (grpc_header_nonbin_value_is_legal_type) GetProcAddress(library, "grpc_header_nonbin_value_is_legal");
grpc_is_binary_header_import = (grpc_is_binary_header_type) GetProcAddress(library, "grpc_is_binary_header");
+ grpc_call_error_to_string_import = (grpc_call_error_to_string_type) GetProcAddress(library, "grpc_call_error_to_string");
grpc_auth_property_iterator_next_import = (grpc_auth_property_iterator_next_type) GetProcAddress(library, "grpc_auth_property_iterator_next");
grpc_auth_context_property_iterator_import = (grpc_auth_context_property_iterator_type) GetProcAddress(library, "grpc_auth_context_property_iterator");
grpc_auth_context_peer_identity_import = (grpc_auth_context_peer_identity_type) GetProcAddress(library, "grpc_auth_context_peer_identity");
diff --git a/src/ruby/ext/grpc/rb_grpc_imports.generated.h b/src/ruby/ext/grpc/rb_grpc_imports.generated.h
index c8d21333ba..b67361ca25 100644
--- a/src/ruby/ext/grpc/rb_grpc_imports.generated.h
+++ b/src/ruby/ext/grpc/rb_grpc_imports.generated.h
@@ -322,6 +322,9 @@ extern grpc_header_nonbin_value_is_legal_type grpc_header_nonbin_value_is_legal_
typedef int(*grpc_is_binary_header_type)(const char *key, size_t length);
extern grpc_is_binary_header_type grpc_is_binary_header_import;
#define grpc_is_binary_header grpc_is_binary_header_import
+typedef const char *(*grpc_call_error_to_string_type)(grpc_call_error error);
+extern grpc_call_error_to_string_type grpc_call_error_to_string_import;
+#define grpc_call_error_to_string grpc_call_error_to_string_import
typedef const grpc_auth_property *(*grpc_auth_property_iterator_next_type)(grpc_auth_property_iterator *it);
extern grpc_auth_property_iterator_next_type grpc_auth_property_iterator_next_import;
#define grpc_auth_property_iterator_next grpc_auth_property_iterator_next_import
diff --git a/src/ruby/lib/grpc.rb b/src/ruby/lib/grpc.rb
index 4e23cd7af2..79fa705b1c 100644
--- a/src/ruby/lib/grpc.rb
+++ b/src/ruby/lib/grpc.rb
@@ -28,17 +28,22 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ssl_roots_path = File.expand_path('../../../../etc/roots.pem', __FILE__)
-unless ENV['GRPC_DEFAULT_SSL_ROOTS_FILE_PATH']
- ENV['GRPC_DEFAULT_SSL_ROOTS_FILE_PATH'] = ssl_roots_path
-end
-require 'grpc/errors'
-require 'grpc/grpc'
-require 'grpc/logconfig'
-require 'grpc/notifier'
-require 'grpc/version'
-require 'grpc/core/time_consts'
-require 'grpc/generic/active_call'
-require 'grpc/generic/client_stub'
-require 'grpc/generic/service'
-require 'grpc/generic/rpc_server'
+require_relative 'grpc/errors'
+require_relative 'grpc/grpc'
+require_relative 'grpc/logconfig'
+require_relative 'grpc/notifier'
+require_relative 'grpc/version'
+require_relative 'grpc/core/time_consts'
+require_relative 'grpc/generic/active_call'
+require_relative 'grpc/generic/client_stub'
+require_relative 'grpc/generic/service'
+require_relative 'grpc/generic/rpc_server'
+
+begin
+ file = File.open(ssl_roots_path)
+ roots = file.read
+ GRPC::Core::ChannelCredentials.set_default_roots_pem roots
+ensure
+ file.close
+end
diff --git a/src/ruby/lib/grpc/core/time_consts.rb b/src/ruby/lib/grpc/core/time_consts.rb
index 3b8c2daa07..5be7ed2cb7 100644
--- a/src/ruby/lib/grpc/core/time_consts.rb
+++ b/src/ruby/lib/grpc/core/time_consts.rb
@@ -27,7 +27,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-require 'grpc/grpc'
+require_relative '../grpc'
# GRPC contains the General RPC module.
module GRPC
diff --git a/src/ruby/lib/grpc/errors.rb b/src/ruby/lib/grpc/errors.rb
index 1d7588c18d..a1dd1e3e9d 100644
--- a/src/ruby/lib/grpc/errors.rb
+++ b/src/ruby/lib/grpc/errors.rb
@@ -27,7 +27,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-require 'grpc/grpc'
+require_relative './grpc'
# GRPC contains the General RPC module.
module GRPC
diff --git a/src/ruby/lib/grpc/generic/active_call.rb b/src/ruby/lib/grpc/generic/active_call.rb
index e80d24edc9..ecf3cc3293 100644
--- a/src/ruby/lib/grpc/generic/active_call.rb
+++ b/src/ruby/lib/grpc/generic/active_call.rb
@@ -28,7 +28,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
require 'forwardable'
-require 'grpc/generic/bidi_call'
+require_relative 'bidi_call'
class Struct
# BatchResult is the struct returned by calls to call#start_batch.
@@ -59,7 +59,8 @@ module GRPC
include Core::CallOps
extend Forwardable
attr_reader(:deadline)
- def_delegators :@call, :cancel, :metadata, :write_flag, :write_flag=
+ def_delegators :@call, :cancel, :metadata, :write_flag, :write_flag=,
+ :peer, :peer_cert
# client_invoke begins a client invocation.
#
@@ -472,7 +473,7 @@ module GRPC
# SingleReqView limits access to an ActiveCall's methods for use in server
# handlers that receive just one request.
SingleReqView = view_class(:cancelled, :deadline, :metadata,
- :output_metadata)
+ :output_metadata, :peer, :peer_cert)
# MultiReqView limits access to an ActiveCall's methods for use in
# server client_streamer handlers.
diff --git a/src/ruby/lib/grpc/generic/bidi_call.rb b/src/ruby/lib/grpc/generic/bidi_call.rb
index 6b9b785693..1f6d5f365d 100644
--- a/src/ruby/lib/grpc/generic/bidi_call.rb
+++ b/src/ruby/lib/grpc/generic/bidi_call.rb
@@ -28,7 +28,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
require 'forwardable'
-require 'grpc/grpc'
+require_relative '../grpc'
# GRPC contains the General RPC module.
module GRPC
diff --git a/src/ruby/lib/grpc/generic/client_stub.rb b/src/ruby/lib/grpc/generic/client_stub.rb
index a6bb92d72c..68e167a69f 100644
--- a/src/ruby/lib/grpc/generic/client_stub.rb
+++ b/src/ruby/lib/grpc/generic/client_stub.rb
@@ -27,8 +27,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-require 'grpc/generic/active_call'
-require 'grpc/version'
+require_relative 'active_call'
+require_relative '../version'
# GRPC contains the General RPC module.
module GRPC
diff --git a/src/ruby/lib/grpc/generic/rpc_desc.rb b/src/ruby/lib/grpc/generic/rpc_desc.rb
index dd90d8d91d..cc21ffd3c5 100644
--- a/src/ruby/lib/grpc/generic/rpc_desc.rb
+++ b/src/ruby/lib/grpc/generic/rpc_desc.rb
@@ -27,7 +27,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-require 'grpc/grpc'
+require_relative '../grpc'
# GRPC contains the General RPC module.
module GRPC
diff --git a/src/ruby/lib/grpc/generic/rpc_server.rb b/src/ruby/lib/grpc/generic/rpc_server.rb
index 5ba77db173..7f3a38a9f4 100644
--- a/src/ruby/lib/grpc/generic/rpc_server.rb
+++ b/src/ruby/lib/grpc/generic/rpc_server.rb
@@ -27,9 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-require 'grpc/grpc'
-require 'grpc/generic/active_call'
-require 'grpc/generic/service'
+require_relative '../grpc'
+require_relative 'active_call'
+require_relative 'service'
require 'thread'
# A global that contains signals the gRPC servers should respond to.
@@ -332,10 +332,15 @@ module GRPC
# the current thread to terminate it.
def run_till_terminated
GRPC.trap_signals
- t = Thread.new { run }
+ stopped = false
+ t = Thread.new do
+ run
+ stopped = true
+ end
wait_till_running
loop do
sleep SIGNAL_CHECK_PERIOD
+ break if stopped
break unless GRPC.handle_signals
end
stop
@@ -434,7 +439,6 @@ module GRPC
begin
an_rpc = @server.request_call(@cq, loop_tag, INFINITE_FUTURE)
break if (!an_rpc.nil?) && an_rpc.call.nil?
-
active_call = new_active_server_call(an_rpc)
unless active_call.nil?
@pool.schedule(active_call) do |ac|
diff --git a/src/ruby/lib/grpc/generic/service.rb b/src/ruby/lib/grpc/generic/service.rb
index 410e1add7d..8e940b5b13 100644
--- a/src/ruby/lib/grpc/generic/service.rb
+++ b/src/ruby/lib/grpc/generic/service.rb
@@ -27,8 +27,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-require 'grpc/generic/client_stub'
-require 'grpc/generic/rpc_desc'
+require_relative 'client_stub'
+require_relative 'rpc_desc'
# GRPC contains the General RPC module.
module GRPC
diff --git a/src/ruby/lib/grpc/grpc.rb b/src/ruby/lib/grpc/grpc.rb
index 250f6dd30d..b60a828d66 100644
--- a/src/ruby/lib/grpc/grpc.rb
+++ b/src/ruby/lib/grpc/grpc.rb
@@ -28,7 +28,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
begin
- require "grpc/#{RUBY_VERSION.sub(/\.\d$/, '')}/grpc_c"
+ require_relative "#{RUBY_VERSION.sub(/\.\d$/, '')}/grpc_c"
rescue LoadError
- require 'grpc/grpc_c'
+ require_relative 'grpc_c'
end
diff --git a/src/ruby/pb/grpc/testing/metrics.rb b/src/ruby/pb/grpc/testing/metrics.rb
new file mode 100644
index 0000000000..3b3c8cd61b
--- /dev/null
+++ b/src/ruby/pb/grpc/testing/metrics.rb
@@ -0,0 +1,28 @@
+# Generated by the protocol buffer compiler. DO NOT EDIT!
+# source: grpc/testing/metrics.proto
+
+require 'google/protobuf'
+
+Google::Protobuf::DescriptorPool.generated_pool.build do
+ add_message "grpc.testing.GaugeResponse" do
+ optional :name, :string, 1
+ oneof :value do
+ optional :long_value, :int64, 2
+ optional :double_value, :double, 3
+ optional :string_value, :string, 4
+ end
+ end
+ add_message "grpc.testing.GaugeRequest" do
+ optional :name, :string, 1
+ end
+ add_message "grpc.testing.EmptyMessage" do
+ end
+end
+
+module Grpc
+ module Testing
+ GaugeResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.testing.GaugeResponse").msgclass
+ GaugeRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.testing.GaugeRequest").msgclass
+ EmptyMessage = Google::Protobuf::DescriptorPool.generated_pool.lookup("grpc.testing.EmptyMessage").msgclass
+ end
+end
diff --git a/src/ruby/pb/grpc/testing/metrics_services.rb b/src/ruby/pb/grpc/testing/metrics_services.rb
new file mode 100644
index 0000000000..f5778bbbb1
--- /dev/null
+++ b/src/ruby/pb/grpc/testing/metrics_services.rb
@@ -0,0 +1,27 @@
+# Generated by the protocol buffer compiler. DO NOT EDIT!
+# Source: grpc/testing/metrics.proto for package 'grpc.testing'
+
+require 'grpc'
+require 'grpc/testing/metrics'
+
+module Grpc
+ module Testing
+ module MetricsService
+
+ # TODO: add proto service documentation here
+ class Service
+
+ include GRPC::GenericService
+
+ self.marshal_class_method = :encode
+ self.unmarshal_class_method = :decode
+ self.service_name = 'grpc.testing.MetricsService'
+
+ rpc :GetAllGauges, EmptyMessage, stream(GaugeResponse)
+ rpc :GetGauge, GaugeRequest, GaugeResponse
+ end
+
+ Stub = Service.rpc_stub_class
+ end
+ end
+end
diff --git a/src/ruby/pb/test/client.rb b/src/ruby/pb/test/client.rb
index 2f83e67c52..95b059a18e 100755
--- a/src/ruby/pb/test/client.rb
+++ b/src/ruby/pb/test/client.rb
@@ -38,23 +38,23 @@
# --server_port=<port> \
# --test_case=<testcase_name>
+# These lines are required for the generated files to load grpc
this_dir = File.expand_path(File.dirname(__FILE__))
lib_dir = File.join(File.dirname(File.dirname(this_dir)), 'lib')
-pb_dir = File.dirname(File.dirname(this_dir))
+pb_dir = File.dirname(this_dir)
$LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir)
$LOAD_PATH.unshift(pb_dir) unless $LOAD_PATH.include?(pb_dir)
-$LOAD_PATH.unshift(this_dir) unless $LOAD_PATH.include?(this_dir)
require 'optparse'
require 'logger'
-require 'grpc'
+require_relative '../../lib/grpc'
require 'googleauth'
require 'google/protobuf'
-require 'test/proto/empty'
-require 'test/proto/messages'
-require 'test/proto/test_services'
+require_relative 'proto/empty'
+require_relative 'proto/messages'
+require_relative 'proto/test_services'
AUTH_ENV = Google::Auth::CredentialsLoader::ENV_VAR
@@ -208,12 +208,10 @@ class NamedTests
def empty_unary
resp = @stub.empty_call(Empty.new)
assert('empty_unary: invalid response') { resp.is_a?(Empty) }
- p 'OK: empty_unary'
end
def large_unary
perform_large_unary
- p 'OK: large_unary'
end
def service_account_creds
@@ -230,7 +228,6 @@ class NamedTests
assert("#{__callee__}: bad oauth scope") do
@args.oauth_scope.include?(resp.oauth_scope)
end
- p "OK: #{__callee__}"
end
def jwt_token_creds
@@ -238,7 +235,6 @@ class NamedTests
wanted_email = MultiJson.load(json_key)['client_email']
resp = perform_large_unary(fill_username: true)
assert("#{__callee__}: bad username") { wanted_email == resp.username }
- p "OK: #{__callee__}"
end
def compute_engine_creds
@@ -247,7 +243,6 @@ class NamedTests
assert("#{__callee__}: bad username") do
@args.default_service_account == resp.username
end
- p "OK: #{__callee__}"
end
def oauth2_auth_token
@@ -259,7 +254,6 @@ class NamedTests
assert("#{__callee__}: bad oauth scope") do
@args.oauth_scope.include?(resp.oauth_scope)
end
- p "OK: #{__callee__}"
end
def per_rpc_creds
@@ -279,7 +273,6 @@ class NamedTests
assert("#{__callee__}: bad oauth scope") do
@args.oauth_scope.include?(resp.oauth_scope)
end
- p "OK: #{__callee__}"
end
def client_streaming
@@ -293,7 +286,6 @@ class NamedTests
assert("#{__callee__}: aggregate payload size is incorrect") do
wanted_aggregate_size == resp.aggregated_payload_size
end
- p "OK: #{__callee__}"
end
def server_streaming
@@ -311,7 +303,6 @@ class NamedTests
:COMPRESSABLE == r.payload.type
end
end
- p "OK: #{__callee__}"
end
def ping_pong
@@ -319,7 +310,6 @@ class NamedTests
ppp = PingPongPlayer.new(msg_sizes)
resps = @stub.full_duplex_call(ppp.each_item)
resps.each { |r| ppp.queue.push(r) }
- p "OK: #{__callee__}"
end
def timeout_on_sleeping_server
@@ -332,7 +322,6 @@ class NamedTests
assert("#{__callee__}: status was wrong") do
e.code == GRPC::Core::StatusCodes::DEADLINE_EXCEEDED
end
- p "OK: #{__callee__}"
end
def empty_stream
@@ -346,7 +335,6 @@ class NamedTests
assert("#{__callee__}: too many responses expected 0") do
count == 0
end
- p "OK: #{__callee__}"
end
def cancel_after_begin
@@ -361,7 +349,6 @@ class NamedTests
fail 'Should have raised GRPC:Cancelled'
rescue GRPC::Cancelled
assert("#{__callee__}: call operation should be CANCELLED") { op.cancelled }
- p "OK: #{__callee__}"
end
def cancel_after_first_response
@@ -374,7 +361,6 @@ class NamedTests
rescue GRPC::Cancelled
assert("#{__callee__}: call operation should be CANCELLED") { op.cancelled }
op.wait
- p "OK: #{__callee__}"
end
def all
@@ -442,7 +428,7 @@ def parse_args
opts.on('--use_tls USE_TLS', ['false', 'true'],
'require a secure connection?') do |v|
args['secure'] = v == 'true'
- end
+p end
opts.on('--use_test_ca USE_TEST_CA', ['false', 'true'],
'if secure, use the test certificate?') do |v|
args['use_test_ca'] = v == 'true'
@@ -464,6 +450,9 @@ def main
opts = parse_args
stub = create_stub(opts)
NamedTests.new(stub, opts).method(opts['test_case']).call
+ p "OK: #{opts['test_case']}"
end
-main
+if __FILE__ == $0
+ main
+end
diff --git a/src/ruby/pb/test/server.rb b/src/ruby/pb/test/server.rb
index 851e815222..914c7cc79d 100755
--- a/src/ruby/pb/test/server.rb
+++ b/src/ruby/pb/test/server.rb
@@ -39,7 +39,7 @@
this_dir = File.expand_path(File.dirname(__FILE__))
lib_dir = File.join(File.dirname(File.dirname(this_dir)), 'lib')
-pb_dir = File.dirname(File.dirname(this_dir))
+pb_dir = File.dirname(this_dir)
$LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir)
$LOAD_PATH.unshift(pb_dir) unless $LOAD_PATH.include?(pb_dir)
$LOAD_PATH.unshift(this_dir) unless $LOAD_PATH.include?(this_dir)
diff --git a/src/ruby/qps/src/proto/grpc/testing/control.rb b/src/ruby/qps/src/proto/grpc/testing/control.rb
index b81e22659d..958fca320b 100644
--- a/src/ruby/qps/src/proto/grpc/testing/control.rb
+++ b/src/ruby/qps/src/proto/grpc/testing/control.rb
@@ -34,6 +34,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :histogram_params, :message, 12, "grpc.testing.HistogramParams"
repeated :core_list, :int32, 13
optional :core_limit, :int32, 14
+ optional :other_client_api, :string, 15
end
add_message "grpc.testing.ClientStatus" do
optional :stats, :message, 1, "grpc.testing.ClientStats"
@@ -55,6 +56,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :core_limit, :int32, 8
optional :payload_config, :message, 9, "grpc.testing.PayloadConfig"
repeated :core_list, :int32, 10
+ optional :other_server_api, :string, 11
end
add_message "grpc.testing.ServerArgs" do
oneof :argtype do
@@ -111,11 +113,13 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
add_enum "grpc.testing.ClientType" do
value :SYNC_CLIENT, 0
value :ASYNC_CLIENT, 1
+ value :OTHER_CLIENT, 2
end
add_enum "grpc.testing.ServerType" do
value :SYNC_SERVER, 0
value :ASYNC_SERVER, 1
value :ASYNC_GENERIC_SERVER, 2
+ value :OTHER_SERVER, 3
end
add_enum "grpc.testing.RpcType" do
value :UNARY, 0
diff --git a/src/ruby/stress/metrics_server.rb b/src/ruby/stress/metrics_server.rb
new file mode 100644
index 0000000000..13638c4d21
--- /dev/null
+++ b/src/ruby/stress/metrics_server.rb
@@ -0,0 +1,83 @@
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+require_relative '../pb/grpc/testing/metrics.rb'
+require_relative '../pb/grpc/testing/metrics_services.rb'
+
+class Gauge
+ def get_name
+ raise NoMethodError.new
+ end
+
+ def get_type
+ raise NoMethodError.new
+ end
+
+ def get_value
+ raise NoMethodError.new
+ end
+end
+
+class MetricsServiceImpl < Grpc::Testing::MetricsService::Service
+ include Grpc::Testing
+ @gauges
+
+ def initialize
+ @gauges = {}
+ end
+
+ def register_gauge(gauge)
+ @gauges[gauge.get_name] = gauge
+ end
+
+ def make_gauge_response(gauge)
+ response = GaugeResponse.new(:name => gauge.get_name)
+ value = gauge.get_value
+ case gauge.get_type
+ when 'long'
+ response.long_value = value
+ when 'double'
+ response.double_value = value
+ when 'string'
+ response.string_value = value
+ end
+ response
+ end
+
+ def get_all_gauges(_empty, _call)
+ @gauges.values.map do |gauge|
+ make_gauge_response gauge
+ end
+ end
+
+ def get_gauge(gauge_req, _call)
+ gauge = @gauges[gauge_req.name]
+ make_gauge_response gauge
+ end
+end
diff --git a/src/ruby/stress/stress_client.rb b/src/ruby/stress/stress_client.rb
new file mode 100755
index 0000000000..698f9f1b87
--- /dev/null
+++ b/src/ruby/stress/stress_client.rb
@@ -0,0 +1,155 @@
+#!/usr/bin/env ruby
+
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+require 'optparse'
+require 'thread'
+require_relative '../pb/test/client'
+require_relative './metrics_server'
+require_relative '../lib/grpc'
+
+class QpsGauge < Gauge
+ @query_count
+ @query_mutex
+ @start_time
+
+ def initialize
+ @query_count = 0
+ @query_mutex = Mutex.new
+ @start_time = Time.now
+ end
+
+ def increment_queries
+ @query_mutex.synchronize { @query_count += 1}
+ end
+
+ def get_name
+ 'qps'
+ end
+
+ def get_type
+ 'long'
+ end
+
+ def get_value
+ (@query_mutex.synchronize { @query_count / (Time.now - @start_time) }).to_i
+ end
+end
+
+def start_metrics_server(port)
+ host = "0.0.0.0:#{port}"
+ server = GRPC::RpcServer.new
+ server.add_http2_port(host, :this_port_is_insecure)
+ service = MetricsServiceImpl.new
+ server.handle(service)
+ server_thread = Thread.new { server.run_till_terminated }
+ [server, service, server_thread]
+end
+
+StressArgs = Struct.new(:server_addresses, :test_cases, :duration,
+ :channels_per_server, :concurrent_calls, :metrics_port)
+
+def start(stress_args)
+ running = true
+ threads = []
+ qps_gauge = QpsGauge.new
+ metrics_server, metrics_service, metrics_thread =
+ start_metrics_server(stress_args.metrics_port)
+ metrics_service.register_gauge(qps_gauge)
+ stress_args.server_addresses.each do |address|
+ stress_args.channels_per_server.times do
+ client_args = Args.new
+ client_args.host, client_args.port = address.split(':')
+ client_args.secure = false
+ client_args.test_case = ''
+ stub = create_stub(client_args)
+ named_tests = NamedTests.new(stub, client_args)
+ stress_args.concurrent_calls.times do
+ threads << Thread.new do
+ while running
+ named_tests.method(stress_args.test_cases.sample).call
+ qps_gauge.increment_queries
+ end
+ end
+ end
+ end
+ end
+ if stress_args.duration >= 0
+ sleep stress_args.duration
+ running = false
+ metrics_server.stop
+ p "QPS: #{qps_gauge.get_value}"
+ threads.each { |thd| thd.join; }
+ end
+ metrics_thread.join
+end
+
+def parse_stress_args
+ stress_args = StressArgs.new
+ stress_args.server_addresses = ['localhost:8080']
+ stress_args.test_cases = []
+ stress_args.duration = -1
+ stress_args.channels_per_server = 1
+ stress_args.concurrent_calls = 1
+ stress_args.metrics_port = '8081'
+ OptionParser.new do |opts|
+ opts.on('--server_addresses [LIST]', Array) do |addrs|
+ stress_args.server_addresses = addrs
+ end
+ opts.on('--test_cases cases', Array) do |cases|
+ stress_args.test_cases = (cases.map do |item|
+ split = item.split(':')
+ [split[0]] * split[1].to_i
+ end).reduce([], :+)
+ end
+ opts.on('--test_duration_secs [INT]', OptionParser::DecimalInteger) do |time|
+ stress_args.duration = time
+ end
+ opts.on('--num_channels_per_server [INT]', OptionParser::DecimalInteger) do |channels|
+ stress_args.channels_per_server = channels
+ end
+ opts.on('--num_stubs_per_channel [INT]', OptionParser::DecimalInteger) do |stubs|
+ stress_args.concurrent_calls = stubs
+ end
+ opts.on('--metrics_port [port]') do |port|
+ stress_args.metrics_port = port
+ end
+ end.parse!
+ stress_args
+end
+
+def main
+ opts = parse_stress_args
+ start(opts)
+end
+
+if __FILE__ == $0
+ main
+end
diff --git a/src/ruby/tools/README.md b/src/ruby/tools/README.md
new file mode 100644
index 0000000000..e43f223c89
--- /dev/null
+++ b/src/ruby/tools/README.md
@@ -0,0 +1,12 @@
+# Ruby gRPC Tools
+
+This package distributes protoc and the Ruby gRPC protoc plugin for Windows, Linux, and Mac.
+
+Before this package is published, the following directories should be filled with the corresponding `protoc` and `grpc_ruby_plugin` executables.
+
+ - `bin/x86-linux`
+ - `bin/x86_64-linux`
+ - `bin/x86-macos`
+ - `bin/x86_64-macos`
+ - `bin/x86-windows`
+ - `bin/x86_64-windows`
diff --git a/src/python/grpcio/grpc/framework/base/__init__.py b/src/ruby/tools/bin/protoc.rb
index bff74be2c7..3a2a5b8dc9 100644..100755
--- a/src/python/grpcio/grpc/framework/base/__init__.py
+++ b/src/ruby/tools/bin/protoc.rb
@@ -1,4 +1,5 @@
-# Copyright 2015, Google Inc.
+#!/usr/bin/env ruby
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -27,9 +28,14 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-import warnings
+require 'rbconfig'
-warnings.simplefilter('always', DeprecationWarning)
-warnings.warn('the alpha API (includes this package) is deprecated, '
- 'unmaintained, and no longer tested. Please migrate to the beta '
- 'API.', DeprecationWarning, stacklevel=2)
+require_relative '../os_check'
+
+protoc_name = 'protoc' + RbConfig::CONFIG['EXEEXT']
+
+protoc_path = File.join(File.dirname(__FILE__),
+ RbConfig::CONFIG['host_cpu'] + '-' + OS.os_name,
+ protoc_name)
+
+exec([ protoc_path, protoc_path ], *ARGV)
diff --git a/src/ruby/tools/bin/protoc_grpc_ruby_plugin.rb b/src/ruby/tools/bin/protoc_grpc_ruby_plugin.rb
new file mode 100755
index 0000000000..4b296dedc7
--- /dev/null
+++ b/src/ruby/tools/bin/protoc_grpc_ruby_plugin.rb
@@ -0,0 +1,41 @@
+#!/usr/bin/env ruby
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+require 'rbconfig'
+
+require_relative '../os_check'
+
+plugin_name = 'grpc_ruby_plugin' + RbConfig::CONFIG['EXEEXT']
+
+plugin_path = File.join(File.dirname(__FILE__),
+ RbConfig::CONFIG['host_cpu'] + '-' + OS.os_name,
+ plugin_name)
+
+exec([ plugin_path, plugin_path ], *ARGV)
diff --git a/src/ruby/tools/grpc-tools.gemspec b/src/ruby/tools/grpc-tools.gemspec
new file mode 100644
index 0000000000..af904de4a9
--- /dev/null
+++ b/src/ruby/tools/grpc-tools.gemspec
@@ -0,0 +1,22 @@
+# -*- ruby -*-
+# encoding: utf-8
+require_relative 'version.rb'
+Gem::Specification.new do |s|
+ s.name = 'grpc-tools'
+ s.version = GRPC::Tools::VERSION
+ s.authors = ['grpc Authors']
+ s.email = 'grpc-io@googlegroups.com'
+ s.homepage = 'https://github.com/google/grpc/tree/master/src/ruby/tools'
+ s.summary = 'Development tools for Ruby gRPC'
+ s.description = 'protoc and the Ruby gRPC protoc plugin'
+ s.license = 'BSD-3-Clause'
+
+ s.files = %w( version.rb os_check.rb README.md )
+ s.files += Dir.glob('bin/**/*')
+
+ s.bindir = 'bin'
+
+ s.platform = Gem::Platform::RUBY
+
+ s.executables = %w( protoc.rb protoc_grpc_ruby_plugin.rb )
+end
diff --git a/src/python/grpcio/grpc/framework/base/exceptions.py b/src/ruby/tools/os_check.rb
index b8f4752184..2677306457 100644
--- a/src/python/grpcio/grpc/framework/base/exceptions.py
+++ b/src/ruby/tools/os_check.rb
@@ -1,4 +1,4 @@
-# Copyright 2015, Google Inc.
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -27,8 +27,19 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""Exceptions defined and used by the base layer of RPC Framework."""
+# This is based on http://stackoverflow.com/a/171011/159388 by Aaron Hinni
+require 'rbconfig'
-class NoSuchMethodError(Exception):
- """Indicates that an operation with an unrecognized name has been called."""
+module OS
+ def OS.os_name
+ case RbConfig::CONFIG['host_os']
+ when /cygwin|mswin|mingw|bccwin|wince|emx/
+ 'windows'
+ when /darwin/
+ 'macos'
+ else
+ 'linux'
+ end
+ end
+end
diff --git a/src/ruby/bin/grpc_ruby_interop_server b/src/ruby/tools/version.rb
index 656a5f7c99..12ad21b80e 100755..100644
--- a/src/ruby/bin/grpc_ruby_interop_server
+++ b/src/ruby/tools/version.rb
@@ -1,5 +1,3 @@
-#!/usr/bin/env ruby
-
# Copyright 2015, Google Inc.
# All rights reserved.
#
@@ -29,5 +27,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# Provides a gem binary entry point for the interop server
-require 'test/server'
+module GRPC
+ module Tools
+ VERSION = '0.14.0.dev'
+ end
+end
diff --git a/templates/grpc.gemspec.template b/templates/grpc.gemspec.template
index 6f8d1fb9e6..ce775ffb90 100644
--- a/templates/grpc.gemspec.template
+++ b/templates/grpc.gemspec.template
@@ -26,10 +26,6 @@
s.files += Dir.glob('include/grpc/**/*')
s.test_files = Dir.glob('src/ruby/spec/**/*')
s.bindir = 'src/ruby/bin'
- ${'%'}w(math noproto).each do |b|
- s.executables += ["#{b}_client.rb", "#{b}_server.rb"]
- end
- s.executables += %w(grpc_ruby_interop_client grpc_ruby_interop_server)
s.require_paths = %w( src/ruby/bin src/ruby/lib src/ruby/pb )
s.platform = Gem::Platform::RUBY
diff --git a/templates/package.json.template b/templates/package.json.template
index 5db270608b..11718b1ccb 100644
--- a/templates/package.json.template
+++ b/templates/package.json.template
@@ -21,7 +21,7 @@
"lib": "src/node/src"
},
"scripts": {
- "lint": "node ./node_modules/jshint/bin/jshint src/node/src src/node/test src/node/interop src/node/index.js",
+ "lint": "node ./node_modules/jshint/bin/jshint src/node/src src/node/test src/node/interop src/node/index.js --exclude-path=src/node/.jshintignore",
"test": "./node_modules/.bin/mocha src/node/test && npm run-script lint",
"gen_docs": "./node_modules/.bin/jsdoc -c src/node/jsdoc_conf.json",
"coverage": "./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha src/node/test",
@@ -37,6 +37,7 @@
"devDependencies": {
"async": "^1.5.0",
"google-auth-library": "^0.9.2",
+ "google-protobuf": "^3.0.0-alpha.5",
"istanbul": "^0.3.21",
"jsdoc": "^3.3.2",
"jshint": "^2.5.0",
@@ -74,5 +75,25 @@
"binding.gyp"
],
"main": "src/node/index.js",
- "license": "BSD-3-Clause"
+ "license": "BSD-3-Clause",
+ "jshintConfig" : {
+ "bitwise": true,
+ "curly": true,
+ "eqeqeq": true,
+ "esnext": true,
+ "freeze": true,
+ "immed": true,
+ "indent": 2,
+ "latedef": "nofunc",
+ "maxlen": 80,
+ "mocha": true,
+ "newcap": true,
+ "node": true,
+ "noarg": true,
+ "quotmark": "single",
+ "strict": true,
+ "trailing": true,
+ "undef": true,
+ "unused": "vars"
+ }
}
diff --git a/templates/package.xml.template b/templates/package.xml.template
index 2f498c02f4..63132dac94 100644
--- a/templates/package.xml.template
+++ b/templates/package.xml.template
@@ -12,7 +12,7 @@
<email>grpc-packages@google.com</email>
<active>yes</active>
</lead>
- <date>2016-03-01</date>
+ <date>2016-04-19</date>
<time>16:06:07</time>
<version>
<release>${settings.php_version.php()}</release>
@@ -24,7 +24,7 @@
</stability>
<license>BSD</license>
<notes>
- - Increase unit test code coverage #5225
+ - destroy grpc_byte_buffer after startBatch #6096
</notes>
<contents>
<dir baseinstalldir="/" name="/">
@@ -157,8 +157,8 @@
</release>
<release>
<version>
- <release>${settings.php_version.php()}</release>
- <api>${settings.php_version.php()}</api>
+ <release>0.8.1</release>
+ <api>0.8.1</api>
</version>
<stability>
<release>beta</release>
@@ -170,5 +170,20 @@
- Increase unit test code coverage #5225
</notes>
</release>
+ <release>
+ <version>
+ <release>${settings.php_version.php()}</release>
+ <api>${settings.php_version.php()}</api>
+ </version>
+ <stability>
+ <release>beta</release>
+ <api>beta</api>
+ </stability>
+ <date>2016-04-19</date>
+ <license>BSD</license>
+ <notes>
+ - destroy grpc_byte_buffer after startBatch #6096
+ </notes>
+ </release>
</changelog>
</package>
diff --git a/templates/src/csharp/Grpc.Core/VersionInfo.cs.template b/templates/src/csharp/Grpc.Core/VersionInfo.cs.template
index 3ca111e72b..96cf2ee17f 100644
--- a/templates/src/csharp/Grpc.Core/VersionInfo.cs.template
+++ b/templates/src/csharp/Grpc.Core/VersionInfo.cs.template
@@ -37,13 +37,20 @@
{
/// <summary>
/// Provides info about current version of gRPC.
+ /// See https://codingforsmarties.wordpress.com/2016/01/21/how-to-version-assemblies-destined-for-nuget/
+ /// for rationale about assembly versioning.
/// </summary>
public static class VersionInfo
{
/// <summary>
- /// Current version of gRPC C# assemblies
+ /// Current <c>AssemblyVersion</c> attribute of gRPC C# assemblies
/// </summary>
- public const string CurrentAssemblyVersion = "${settings.version.major}.${settings.version.minor}.${settings.version.patch}.0";
+ public const string CurrentAssemblyVersion = "1.0.0.0";
+
+ /// <summary>
+ /// Current <c>AssemblyFileVersion</c> of gRPC C# assemblies
+ /// </summary>
+ public const string CurrentAssemblyFileVersion = "${settings.version.major}.${settings.version.minor}.${settings.version.patch}.0";
/// <summary>
/// Current version of gRPC C#
diff --git a/templates/src/node/tools/package.json.template b/templates/src/node/tools/package.json.template
index c69de7c989..4f673c48d1 100644
--- a/templates/src/node/tools/package.json.template
+++ b/templates/src/node/tools/package.json.template
@@ -18,7 +18,8 @@
}
],
"bin": {
- "grpc-tools-protoc": "./bin/protoc.js"
+ "grpc-tools-protoc": "./bin/protoc.js",
+ "grpc-tools-plugin": "./bin/protoc_plugin.js"
},
"scripts": {
"install": "./node_modules/.bin/node-pre-gyp install"
@@ -34,6 +35,7 @@
"files": [
"index.js",
"bin/protoc.js",
+ "bin/protoc_plugin.js",
"LICENSE"
],
"main": "index.js"
diff --git a/templates/src/ruby/tools/version.rb.template b/templates/src/ruby/tools/version.rb.template
new file mode 100644
index 0000000000..dbc5f48cf5
--- /dev/null
+++ b/templates/src/ruby/tools/version.rb.template
@@ -0,0 +1,36 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ module GRPC
+ module Tools
+ VERSION = '${settings.ruby_version.ruby()}'
+ end
+ end
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile.template
new file mode 100644
index 0000000000..4cb8d3b088
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile.template
@@ -0,0 +1,39 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../csharp_deps.include"/>
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile.template
new file mode 100644
index 0000000000..e39175a1ea
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile.template
@@ -0,0 +1,39 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../cxx_deps.include"/>
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile.template
new file mode 100644
index 0000000000..542c81d614
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile.template
@@ -0,0 +1,37 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM golang:1.5
+
+ <%include file="../../go_path.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile.template
new file mode 100644
index 0000000000..542c81d614
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile.template
@@ -0,0 +1,37 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM golang:1.5
+
+ <%include file="../../go_path.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_java/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_java/Dockerfile.template
new file mode 100644
index 0000000000..c286e80826
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_java/Dockerfile.template
@@ -0,0 +1,44 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../java_deps.include"/>
+
+ # Trigger download of as many Gradle artifacts as possible.
+ RUN git clone --recursive --depth 1 https://github.com/grpc/grpc-java.git && ${'\\'}
+ cd grpc-java && ${'\\'}
+ ./gradlew :grpc-interop-testing:installDist -PskipCodegen=true && ${'\\'}
+ rm -r "$(pwd)"
+
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile.template
new file mode 100644
index 0000000000..89bb9acc1a
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile.template
@@ -0,0 +1,39 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../node_deps.include"/>
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template
new file mode 100644
index 0000000000..476f9d3d3e
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template
@@ -0,0 +1,64 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../ruby_deps.include"/>
+ <%include file="../../php_deps.include"/>
+ <%include file="../../run_tests_addons.include"/>
+ # ronn: a ruby tool used to convert markdown to man pages, used during the
+ # install of Protobuf extensions
+ #
+ # rake: a ruby version of make used to build the PHP Protobuf extension
+ RUN /bin/bash -l -c "rvm all do gem install ronn rake"
+
+ # Install composer
+ RUN curl -sS https://getcomposer.org/installer | php
+ RUN mv composer.phar /usr/local/bin/composer
+
+ # As an attempt to work around #4212, try to prefetch Protobuf-PHP dependency
+ # into composer cache to prevent "composer install" from cloning on each build.
+ RUN git clone --mirror https://github.com/stanley-cheung/Protobuf-PHP.git ${'\\'}
+ /root/.composer/cache/vcs/git-github.com-stanley-cheung-Protobuf-PHP.git/
+
+ # Download the patched PHP protobuf so that PHP gRPC clients can be generated
+ # from proto3 schemas.
+ RUN git clone https://github.com/stanley-cheung/Protobuf-PHP.git /var/local/git/protobuf-php
+
+ RUN /bin/bash -l -c "rvm use ruby-2.1 ${'\\'}
+ && cd /var/local/git/protobuf-php ${'\\'}
+ && rvm all do rake pear:package version=1.0 ${'\\'}
+ && pear install Protobuf-1.0.tgz"
+
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template
new file mode 100644
index 0000000000..4e816ce5b6
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template
@@ -0,0 +1,39 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../python_deps.include"/>
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile.template
new file mode 100644
index 0000000000..c3625b91fc
--- /dev/null
+++ b/templates/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile.template
@@ -0,0 +1,39 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../ruby_deps.include"/>
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/templates/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile.template b/templates/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile.template
new file mode 100644
index 0000000000..074178252d
--- /dev/null
+++ b/templates/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile.template
@@ -0,0 +1,41 @@
+%YAML 1.2
+--- |
+ # Copyright 2015, Google Inc.
+ # All rights reserved.
+ #
+ # Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are
+ # met:
+ #
+ # * Redistributions of source code must retain the above copyright
+ # notice, this list of conditions and the following disclaimer.
+ # * Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following disclaimer
+ # in the documentation and/or other materials provided with the
+ # distribution.
+ # * Neither the name of Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ FROM debian:jessie
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../ccache_setup.include"/>
+ <%include file="../../cxx_deps.include"/>
+ <%include file="../../gcp_api_libraries.include"/>
+ <%include file="../../csharp_deps.include"/>
+ # Define the default command.
+ CMD ["bash"]
+
diff --git a/test/core/bad_client/tests/server_registered_method.headers b/test/core/bad_client/tests/server_registered_method.headers
index 06ee73c82e..2640cc9cb8 100644
--- a/test/core/bad_client/tests/server_registered_method.headers
+++ b/test/core/bad_client/tests/server_registered_method.headers
@@ -1,4 +1,4 @@
-# headers used in simple_request.c
+# headers used in server_registered_method.c
# use tools/codegen/core/gen_header_frame.py to generate the binary strings
# contained in the source code
:path: /registered/bar
diff --git a/test/core/bad_client/tests/simple_request.c b/test/core/bad_client/tests/simple_request.c
index ac0fdde876..3ae6eb3592 100644
--- a/test/core/bad_client/tests/simple_request.c
+++ b/test/core/bad_client/tests/simple_request.c
@@ -77,6 +77,27 @@
"\x10\x0cgrpc-timeout\x02" \
"5S"
+#define PFX_STR_UNUSUAL2 \
+ "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n" \
+ "\x00\x00\x00\x04\x00\x00\x00\x00\x00" /* settings frame */ \
+ "\x00\x00\xf4\x01\x04\x00\x00\x00\x01" /* headers: generated from \
+ simple_request_unusual2.headers \
+ in this directory */ \
+ "\x10\x05:path\x08/foo/bar" \
+ "\x10\x07:scheme\x04http" \
+ "\x10\x07:method\x04POST" \
+ "\x10\x04host\x09localhost" \
+ "\x10\x0c" \
+ "content-type\x1e" \
+ "application/grpc;this-is-valid" \
+ "\x10\x14grpc-accept-encoding\x15identity,deflate,gzip" \
+ "\x10\x02te\x08trailers" \
+ "\x10\x0auser-agent\"bad-client grpc-c/0.12.0.0 (linux)" \
+ "\x10\x0cgrpc-timeout\x03" \
+ "10S" \
+ "\x10\x0cgrpc-timeout\x02" \
+ "5S"
+
static void *tag(intptr_t t) { return (void *)t; }
static void verifier(grpc_server *server, grpc_completion_queue *cq,
@@ -120,6 +141,7 @@ int main(int argc, char **argv) {
/* basic request: check that things are working */
GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR, 0);
GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR_UNUSUAL, 0);
+ GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR_UNUSUAL2, 0);
/* push an illegal data frame */
GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR
diff --git a/test/core/bad_client/tests/simple_request_unusual2.headers b/test/core/bad_client/tests/simple_request_unusual2.headers
new file mode 100644
index 0000000000..f70920f372
--- /dev/null
+++ b/test/core/bad_client/tests/simple_request_unusual2.headers
@@ -0,0 +1,13 @@
+# headers used in simple_request.c
+# use tools/codegen/core/gen_header_frame.py to generate the binary strings
+# contained in the source code
+:path: /foo/bar
+:scheme: http
+:method: POST
+host: localhost
+content-type: application/grpc;this-is-valid
+grpc-accept-encoding: deflate,identity,gzip
+te: trailers
+user-agent: bad-client grpc-c/0.12.0.0 (linux)
+grpc-timeout: 10S
+grpc-timeout: 5S
diff --git a/test/core/channel/channel_stack_test.c b/test/core/channel/channel_stack_test.c
index 81e3927a00..1a5594bde8 100644
--- a/test/core/channel/channel_stack_test.c
+++ b/test/core/channel/channel_stack_test.c
@@ -62,8 +62,8 @@ static void call_init_func(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
static void channel_destroy_func(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem) {}
-static void call_destroy_func(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {
+static void call_destroy_func(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *ignored) {
++*(int *)(elem->channel_data);
}
@@ -87,7 +87,7 @@ static void free_channel(grpc_exec_ctx *exec_ctx, void *arg, bool success) {
}
static void free_call(grpc_exec_ctx *exec_ctx, void *arg, bool success) {
- grpc_call_stack_destroy(exec_ctx, arg);
+ grpc_call_stack_destroy(exec_ctx, arg, NULL);
gpr_free(arg);
}
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/04a5f10d2ebc712cf13c05b5ed0fafb31b42737c b/test/core/end2end/fuzzers/api_fuzzer_corpus/04a5f10d2ebc712cf13c05b5ed0fafb31b42737c
new file mode 100644
index 0000000000..d46856deb1
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/04a5f10d2ebc712cf13c05b5ed0fafb31b42737c
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/38a55e83e685617cdf72e95f1303857b627ae346 b/test/core/end2end/fuzzers/api_fuzzer_corpus/38a55e83e685617cdf72e95f1303857b627ae346
new file mode 100644
index 0000000000..3c8c2c1c84
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/38a55e83e685617cdf72e95f1303857b627ae346
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/40b4b92460c4e76a39af9042fb3d86d491a98e16 b/test/core/end2end/fuzzers/api_fuzzer_corpus/40b4b92460c4e76a39af9042fb3d86d491a98e16
new file mode 100644
index 0000000000..44a2b9e30f
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/40b4b92460c4e76a39af9042fb3d86d491a98e16
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/6914f5f380c83ff9e3e90fc60d5048e47e5e77d9 b/test/core/end2end/fuzzers/api_fuzzer_corpus/6914f5f380c83ff9e3e90fc60d5048e47e5e77d9
new file mode 100644
index 0000000000..da0c78ebc0
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/6914f5f380c83ff9e3e90fc60d5048e47e5e77d9
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/7abe8c414aa1418157c2d7ae5e70a84ffb61c027 b/test/core/end2end/fuzzers/api_fuzzer_corpus/7abe8c414aa1418157c2d7ae5e70a84ffb61c027
new file mode 100644
index 0000000000..6b06ce291a
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/7abe8c414aa1418157c2d7ae5e70a84ffb61c027
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/8c5bbcc6935d43c94a0c4ce4a5da01c04fd223d8 b/test/core/end2end/fuzzers/api_fuzzer_corpus/8c5bbcc6935d43c94a0c4ce4a5da01c04fd223d8
new file mode 100644
index 0000000000..a0b621b9fc
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/8c5bbcc6935d43c94a0c4ce4a5da01c04fd223d8
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/b5bcc7f39420e997ec6f8e3c70ef49b8f1afb361 b/test/core/end2end/fuzzers/api_fuzzer_corpus/b5bcc7f39420e997ec6f8e3c70ef49b8f1afb361
new file mode 100644
index 0000000000..80aa9b8a3d
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/b5bcc7f39420e997ec6f8e3c70ef49b8f1afb361
Binary files differ
diff --git a/test/core/end2end/fuzzers/api_fuzzer_corpus/f755b44ff2221c971ca2bfaffc69e002ba982730 b/test/core/end2end/fuzzers/api_fuzzer_corpus/f755b44ff2221c971ca2bfaffc69e002ba982730
new file mode 100644
index 0000000000..32dab3be54
--- /dev/null
+++ b/test/core/end2end/fuzzers/api_fuzzer_corpus/f755b44ff2221c971ca2bfaffc69e002ba982730
Binary files differ
diff --git a/test/core/end2end/fuzzers/client_fuzzer_corpus/1e64080289ea4168304417f3fbd86b01d7d6f431 b/test/core/end2end/fuzzers/client_fuzzer_corpus/1e64080289ea4168304417f3fbd86b01d7d6f431
new file mode 100644
index 0000000000..374b283186
--- /dev/null
+++ b/test/core/end2end/fuzzers/client_fuzzer_corpus/1e64080289ea4168304417f3fbd86b01d7d6f431
Binary files differ
diff --git a/test/core/end2end/fuzzers/client_fuzzer_corpus/20ee437b7f456ebb19d98d94d9feb1d5e9174c65 b/test/core/end2end/fuzzers/client_fuzzer_corpus/20ee437b7f456ebb19d98d94d9feb1d5e9174c65
new file mode 100644
index 0000000000..29243f9996
--- /dev/null
+++ b/test/core/end2end/fuzzers/client_fuzzer_corpus/20ee437b7f456ebb19d98d94d9feb1d5e9174c65
Binary files differ
diff --git a/test/core/end2end/fuzzers/client_fuzzer_corpus/2c1ecf05c5dde692ed16502294e9570ac3b02600 b/test/core/end2end/fuzzers/client_fuzzer_corpus/2c1ecf05c5dde692ed16502294e9570ac3b02600
new file mode 100644
index 0000000000..0f30385492
--- /dev/null
+++ b/test/core/end2end/fuzzers/client_fuzzer_corpus/2c1ecf05c5dde692ed16502294e9570ac3b02600
Binary files differ
diff --git a/test/core/end2end/fuzzers/client_fuzzer_corpus/aa878edb0100e876e00e310ae221b220fdb5e028 b/test/core/end2end/fuzzers/client_fuzzer_corpus/aa878edb0100e876e00e310ae221b220fdb5e028
new file mode 100644
index 0000000000..bc6a444852
--- /dev/null
+++ b/test/core/end2end/fuzzers/client_fuzzer_corpus/aa878edb0100e876e00e310ae221b220fdb5e028
Binary files differ
diff --git a/test/core/end2end/fuzzers/client_fuzzer_corpus/slow-unit-53cf4d25741d5f6e7ad9147b286ff0b40cb500a9 b/test/core/end2end/fuzzers/client_fuzzer_corpus/slow-unit-53cf4d25741d5f6e7ad9147b286ff0b40cb500a9
new file mode 100644
index 0000000000..997b3d360b
--- /dev/null
+++ b/test/core/end2end/fuzzers/client_fuzzer_corpus/slow-unit-53cf4d25741d5f6e7ad9147b286ff0b40cb500a9
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/03a304b82629155af693978c2b53439e553f6450 b/test/core/end2end/fuzzers/server_fuzzer_corpus/03a304b82629155af693978c2b53439e553f6450
new file mode 100644
index 0000000000..d4072c6921
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/03a304b82629155af693978c2b53439e553f6450
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/03a72675e1969f836094f1ecfec2a7b34418e306 b/test/core/end2end/fuzzers/server_fuzzer_corpus/03a72675e1969f836094f1ecfec2a7b34418e306
new file mode 100644
index 0000000000..503af15fe8
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/03a72675e1969f836094f1ecfec2a7b34418e306
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/0416afd6875d9ba55f1e5f86a6456a5445d5e576 b/test/core/end2end/fuzzers/server_fuzzer_corpus/0416afd6875d9ba55f1e5f86a6456a5445d5e576
new file mode 100644
index 0000000000..30229f98fd
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/0416afd6875d9ba55f1e5f86a6456a5445d5e576
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/052c8f28e5884bb48f0d504461272cd3a5893215 b/test/core/end2end/fuzzers/server_fuzzer_corpus/052c8f28e5884bb48f0d504461272cd3a5893215
new file mode 100644
index 0000000000..5cbafc457c
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/052c8f28e5884bb48f0d504461272cd3a5893215
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/08c42ef29eff83052c5887855f2fa3e07ebe470c b/test/core/end2end/fuzzers/server_fuzzer_corpus/08c42ef29eff83052c5887855f2fa3e07ebe470c
new file mode 100644
index 0000000000..828275ee3c
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/08c42ef29eff83052c5887855f2fa3e07ebe470c
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/1ba889ea1543297824e99e641e6ca8b91f45732e b/test/core/end2end/fuzzers/server_fuzzer_corpus/1ba889ea1543297824e99e641e6ca8b91f45732e
new file mode 100644
index 0000000000..6ed060d1e3
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/1ba889ea1543297824e99e641e6ca8b91f45732e
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/2c4c7e2ed6d977ec119b040b328ad09808909a70 b/test/core/end2end/fuzzers/server_fuzzer_corpus/2c4c7e2ed6d977ec119b040b328ad09808909a70
new file mode 100644
index 0000000000..1d73a923c3
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/2c4c7e2ed6d977ec119b040b328ad09808909a70
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/3b09bf453c6f93983c24c4d5481e55d66213f93a b/test/core/end2end/fuzzers/server_fuzzer_corpus/3b09bf453c6f93983c24c4d5481e55d66213f93a
new file mode 100644
index 0000000000..1a7a213cd7
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/3b09bf453c6f93983c24c4d5481e55d66213f93a
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/49cb33cbb60f041e8e99dd718993acd2c3354416 b/test/core/end2end/fuzzers/server_fuzzer_corpus/49cb33cbb60f041e8e99dd718993acd2c3354416
new file mode 100644
index 0000000000..7f975251dd
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/49cb33cbb60f041e8e99dd718993acd2c3354416
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/4d982c41efad2242f8c06630c23c68146153b47b b/test/core/end2end/fuzzers/server_fuzzer_corpus/4d982c41efad2242f8c06630c23c68146153b47b
new file mode 100644
index 0000000000..fa1d5f081e
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/4d982c41efad2242f8c06630c23c68146153b47b
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/59743fe120be6ae1aed1c02230ee1bb460f621ee b/test/core/end2end/fuzzers/server_fuzzer_corpus/59743fe120be6ae1aed1c02230ee1bb460f621ee
new file mode 100644
index 0000000000..3038fde547
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/59743fe120be6ae1aed1c02230ee1bb460f621ee
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/830e3f794c53f7b284eb5c635b2943db9ee9aaee b/test/core/end2end/fuzzers/server_fuzzer_corpus/830e3f794c53f7b284eb5c635b2943db9ee9aaee
new file mode 100644
index 0000000000..366077e528
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/830e3f794c53f7b284eb5c635b2943db9ee9aaee
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/a5ccb8f124d8ddb5350b90bc0d6b96db280cb7c9 b/test/core/end2end/fuzzers/server_fuzzer_corpus/a5ccb8f124d8ddb5350b90bc0d6b96db280cb7c9
new file mode 100644
index 0000000000..9d39854fc9
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/a5ccb8f124d8ddb5350b90bc0d6b96db280cb7c9
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/a7fac1265a384fe9e45a9ee3d708b79c4e80505e b/test/core/end2end/fuzzers/server_fuzzer_corpus/a7fac1265a384fe9e45a9ee3d708b79c4e80505e
new file mode 100644
index 0000000000..338f61bdce
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/a7fac1265a384fe9e45a9ee3d708b79c4e80505e
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/aaf049720c707d4e14e47e7eb31d6a2dda60e66a b/test/core/end2end/fuzzers/server_fuzzer_corpus/aaf049720c707d4e14e47e7eb31d6a2dda60e66a
new file mode 100644
index 0000000000..dab9c75822
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/aaf049720c707d4e14e47e7eb31d6a2dda60e66a
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/c4e4c7572e005e18d56eac407033da058737a5ab b/test/core/end2end/fuzzers/server_fuzzer_corpus/c4e4c7572e005e18d56eac407033da058737a5ab
new file mode 100644
index 0000000000..070a581b37
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/c4e4c7572e005e18d56eac407033da058737a5ab
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/crash-dae0f07934a527989f23f06e630710ff6ca8c809 b/test/core/end2end/fuzzers/server_fuzzer_corpus/crash-dae0f07934a527989f23f06e630710ff6ca8c809
new file mode 100644
index 0000000000..b6dfd77e67
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/crash-dae0f07934a527989f23f06e630710ff6ca8c809
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/e96ad9c17795e52edc810a08d4fc61fe8790002a b/test/core/end2end/fuzzers/server_fuzzer_corpus/e96ad9c17795e52edc810a08d4fc61fe8790002a
new file mode 100644
index 0000000000..df9241dd0c
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/e96ad9c17795e52edc810a08d4fc61fe8790002a
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/fa202a5f51cd49f8ea5af60c5f403f797c01c504 b/test/core/end2end/fuzzers/server_fuzzer_corpus/fa202a5f51cd49f8ea5af60c5f403f797c01c504
new file mode 100644
index 0000000000..0ba5935164
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/fa202a5f51cd49f8ea5af60c5f403f797c01c504
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-0aa52e00ddd54f8e129430852c2da95650c354b0 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-0aa52e00ddd54f8e129430852c2da95650c354b0
new file mode 100644
index 0000000000..15d6f17cd3
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-0aa52e00ddd54f8e129430852c2da95650c354b0
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-3cec540a680b108dda1e0a8e0bfb2d44e5a4a4e8 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-3cec540a680b108dda1e0a8e0bfb2d44e5a4a4e8
new file mode 100644
index 0000000000..ca94f4b843
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-3cec540a680b108dda1e0a8e0bfb2d44e5a4a4e8
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-84f22ffca68c6e1590a44aa9f6dd0cef1f680c77 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-84f22ffca68c6e1590a44aa9f6dd0cef1f680c77
new file mode 100644
index 0000000000..9e7b002238
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-84f22ffca68c6e1590a44aa9f6dd0cef1f680c77
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-adaac86cf1aa1e98e95240c5f92c3708456c3624 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-adaac86cf1aa1e98e95240c5f92c3708456c3624
new file mode 100644
index 0000000000..c525f76ce3
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-adaac86cf1aa1e98e95240c5f92c3708456c3624
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-b281f018cc919301131cf3ed28449cfbd24b6bbf b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-b281f018cc919301131cf3ed28449cfbd24b6bbf
new file mode 100644
index 0000000000..380cd877ca
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-b281f018cc919301131cf3ed28449cfbd24b6bbf
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba0016a62a8576a57f000b90c364847ef6b12dcc b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba0016a62a8576a57f000b90c364847ef6b12dcc
new file mode 100644
index 0000000000..cbd18291f1
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba0016a62a8576a57f000b90c364847ef6b12dcc
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba17346b8e46e6a05aaa7342a959a7c5ab0f1471 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba17346b8e46e6a05aaa7342a959a7c5ab0f1471
new file mode 100644
index 0000000000..3f5b83987c
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba17346b8e46e6a05aaa7342a959a7c5ab0f1471
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ccafab6afdc6474610023b47bd7b3e1b9ea4647b b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ccafab6afdc6474610023b47bd7b3e1b9ea4647b
new file mode 100644
index 0000000000..65737bfeac
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ccafab6afdc6474610023b47bd7b3e1b9ea4647b
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-dc57e96cd02ba32fa4a99c97b6490e9879d30be5 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-dc57e96cd02ba32fa4a99c97b6490e9879d30be5
new file mode 100644
index 0000000000..6c4ed6d13e
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-dc57e96cd02ba32fa4a99c97b6490e9879d30be5
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f6c1042f96e15183dcc13b9658d971cc29426d53 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f6c1042f96e15183dcc13b9658d971cc29426d53
new file mode 100644
index 0000000000..414dc698e9
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f6c1042f96e15183dcc13b9658d971cc29426d53
Binary files differ
diff --git a/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f9a2773d6502fd4b1ffa73df3c550b0da63af833 b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f9a2773d6502fd4b1ffa73df3c550b0da63af833
new file mode 100644
index 0000000000..bf38fac345
--- /dev/null
+++ b/test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f9a2773d6502fd4b1ffa73df3c550b0da63af833
Binary files differ
diff --git a/test/core/end2end/tests/filter_causes_close.c b/test/core/end2end/tests/filter_causes_close.c
index 9f9ee85648..99049aa6bd 100644
--- a/test/core/end2end/tests/filter_causes_close.c
+++ b/test/core/end2end/tests/filter_causes_close.c
@@ -232,8 +232,8 @@ static void start_transport_stream_op(grpc_exec_ctx *exec_ctx,
static void init_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
grpc_call_element_args *args) {}
-static void destroy_call_elem(grpc_exec_ctx *exec_ctx,
- grpc_call_element *elem) {}
+static void destroy_call_elem(grpc_exec_ctx *exec_ctx, grpc_call_element *elem,
+ void *and_free_memory) {}
static void init_channel_elem(grpc_exec_ctx *exec_ctx,
grpc_channel_element *elem,
diff --git a/test/core/http/parser_test.c b/test/core/http/parser_test.c
index 10936754d9..7fdf60cc2b 100644
--- a/test/core/http/parser_test.c
+++ b/test/core/http/parser_test.c
@@ -238,6 +238,11 @@ int main(int argc, char **argv) {
"\r\n"
"hello world!",
200, "hello world!", "xyz", "abc", NULL);
+ test_succeeds(split_modes[i],
+ "HTTP/1.1 200 OK\n"
+ "\n"
+ "abc",
+ 200, "abc", NULL);
test_request_succeeds(split_modes[i],
"GET / HTTP/1.0\r\n"
"\r\n",
@@ -264,6 +269,11 @@ int main(int argc, char **argv) {
"xyz",
"GET", GRPC_HTTP_HTTP10, "/", "xyz", "xyz", "abc",
NULL);
+ test_request_succeeds(split_modes[i],
+ "GET / HTTP/1.0\n"
+ "\n"
+ "xyz",
+ "GET", GRPC_HTTP_HTTP10, "/", "xyz", NULL);
test_fails(split_modes[i], "HTTP/1.0\r\n");
test_fails(split_modes[i], "HTTP/1.2\r\n");
test_fails(split_modes[i], "HTTP/1.0 000 XYX\r\n");
@@ -281,6 +291,7 @@ int main(int argc, char **argv) {
test_fails(split_modes[i], "GET / HTTP/0.0\r\n");
test_fails(split_modes[i], "GET / ____/1.0\r\n");
test_fails(split_modes[i], "GET / HTTP/1.2\r\n");
+ test_fails(split_modes[i], "GET / HTTP/1.0\n");
tmp1 = gpr_malloc(2 * GRPC_HTTP_PARSER_MAX_HEADER_LENGTH);
memset(tmp1, 'a', 2 * GRPC_HTTP_PARSER_MAX_HEADER_LENGTH - 1);
diff --git a/test/core/surface/concurrent_connectivity_test.c b/test/core/surface/concurrent_connectivity_test.c
index a2fdf73596..28ddf58cc8 100644
--- a/test/core/surface/concurrent_connectivity_test.c
+++ b/test/core/surface/concurrent_connectivity_test.c
@@ -142,6 +142,12 @@ void bad_server_thread(void *vargs) {
gpr_free(args->addr);
}
+static void done_pollset_shutdown(grpc_exec_ctx *exec_ctx, void *pollset,
+ bool success) {
+ grpc_pollset_destroy(pollset);
+ gpr_free(pollset);
+}
+
int main(int argc, char **argv) {
struct server_thread_args args;
memset(&args, 0, sizeof(args));
@@ -207,8 +213,11 @@ int main(int argc, char **argv) {
gpr_atm_rel_store(&args.stop, 1);
gpr_thd_join(server);
- grpc_pollset_destroy(args.pollset);
- gpr_free(args.pollset);
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
+ grpc_pollset_shutdown(
+ &exec_ctx, args.pollset,
+ grpc_closure_create(done_pollset_shutdown, args.pollset));
+ grpc_exec_ctx_finish(&exec_ctx);
grpc_shutdown();
return 0;
diff --git a/test/core/util/passthru_endpoint.c b/test/core/util/passthru_endpoint.c
index 168ae59e91..ae955b1f68 100644
--- a/test/core/util/passthru_endpoint.c
+++ b/test/core/util/passthru_endpoint.c
@@ -83,11 +83,15 @@ static void me_write(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
if (m->parent->shutdown) {
ok = false;
} else if (m->on_read != NULL) {
- gpr_slice_buffer_addn(m->on_read_out, slices->slices, slices->count);
+ for (size_t i = 0; i < slices->count; i++) {
+ gpr_slice_buffer_add(m->on_read_out, gpr_slice_ref(slices->slices[i]));
+ }
grpc_exec_ctx_enqueue(exec_ctx, m->on_read, true, NULL);
m->on_read = NULL;
} else {
- gpr_slice_buffer_addn(&m->read_buffer, slices->slices, slices->count);
+ for (size_t i = 0; i < slices->count; i++) {
+ gpr_slice_buffer_add(&m->read_buffer, gpr_slice_ref(slices->slices[i]));
+ }
}
gpr_mu_unlock(&m->parent->mu);
grpc_exec_ctx_enqueue(exec_ctx, cb, ok, NULL);
diff --git a/test/core/util/port_windows.c b/test/core/util/port_windows.c
index 2b6d3dd223..154d607ec7 100644
--- a/test/core/util/port_windows.c
+++ b/test/core/util/port_windows.c
@@ -51,6 +51,11 @@
#include "src/core/lib/support/env.h"
#include "test/core/util/port_server_client.h"
+#if GPR_GETPID_IN_UNISTD_H
+#include <sys/unistd.h>
+static int _getpid() { return getpid(); }
+#endif
+
#define NUM_RANDOM_PORTS_TO_PICK 100
static int *chosen_ports = NULL;
@@ -114,7 +119,7 @@ static int is_port_available(int *port, int is_tcp) {
/* Try binding to port */
addr.sin_family = AF_INET;
addr.sin_addr.s_addr = INADDR_ANY;
- addr.sin_port = htons(*port);
+ addr.sin_port = htons((u_short)*port);
if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) < 0) {
gpr_log(GPR_DEBUG, "bind(port=%d) failed: %s", *port, strerror(errno));
closesocket(fd);
@@ -127,7 +132,7 @@ static int is_port_available(int *port, int is_tcp) {
closesocket(fd);
return 0;
}
- GPR_ASSERT(alen <= sizeof(addr));
+ GPR_ASSERT(alen <= (socklen_t)sizeof(addr));
actual_port = ntohs(addr.sin_port);
GPR_ASSERT(actual_port > 0);
if (*port == 0) {
diff --git a/test/core/util/test_config.c b/test/core/util/test_config.c
index 3155a4ece6..270d16600d 100644
--- a/test/core/util/test_config.c
+++ b/test/core/util/test_config.c
@@ -50,7 +50,7 @@ static unsigned seed(void) { return (unsigned)getpid(); }
#if GPR_GETPID_IN_PROCESS_H
#include <process.h>
-static unsigned seed(void) { return _getpid(); }
+static unsigned seed(void) { return (unsigned)_getpid(); }
#endif
#if GPR_WINDOWS_CRASH_HANDLER
@@ -210,7 +210,7 @@ static void install_crash_handler() {
#include <stdio.h>
#include <string.h>
-static char g_alt_stack[MINSIGSTKSZ];
+static char g_alt_stack[GPR_MAX(MINSIGSTKSZ, 65536)];
#define MAX_FRAMES 32
diff --git a/test/cpp/codegen/compiler_test_golden b/test/cpp/codegen/compiler_test_golden
new file mode 100644
index 0000000000..ef3d1aaa51
--- /dev/null
+++ b/test/cpp/codegen/compiler_test_golden
@@ -0,0 +1,294 @@
+// Generated by the gRPC protobuf plugin.
+// If you make any local change, they will be lost.
+// source: src/proto/grpc/testing/compiler_test.proto
+// Original file comments:
+// Copyright 2016, Google Inc.
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+//
+// File detached comment 1
+//
+// File detached comment 2
+//
+// File leading comment 1
+#ifndef GRPC_src_2fproto_2fgrpc_2ftesting_2fcompiler_5ftest_2eproto__INCLUDED
+#define GRPC_src_2fproto_2fgrpc_2ftesting_2fcompiler_5ftest_2eproto__INCLUDED
+
+#include "src/proto/grpc/testing/compiler_test.pb.h"
+
+#include <grpc++/impl/codegen/async_stream.h>
+#include <grpc++/impl/codegen/async_unary_call.h>
+#include <grpc++/impl/codegen/proto_utils.h>
+#include <grpc++/impl/codegen/rpc_method.h>
+#include <grpc++/impl/codegen/service_type.h>
+#include <grpc++/impl/codegen/status.h>
+#include <grpc++/impl/codegen/stub_options.h>
+#include <grpc++/impl/codegen/sync_stream.h>
+
+namespace grpc {
+class CompletionQueue;
+class Channel;
+class RpcService;
+class ServerCompletionQueue;
+class ServerContext;
+} // namespace grpc
+
+namespace grpc {
+namespace testing {
+
+// ServiceA detached comment 1
+//
+// ServiceA detached comment 2
+//
+// ServiceA leading comment 1
+class ServiceA GRPC_FINAL {
+ public:
+ class StubInterface {
+ public:
+ virtual ~StubInterface() {}
+ // MethodA1 leading comment 1
+ virtual ::grpc::Status MethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) = 0;
+ std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>> AsyncMethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>>(AsyncMethodA1Raw(context, request, cq));
+ }
+ // MethodA1 trailing comment 1
+ // MethodA2 detached leading comment 1
+ //
+ // Method A2 leading comment 1
+ // Method A2 leading comment 2
+ std::unique_ptr< ::grpc::ClientWriterInterface< ::grpc::testing::Request>> MethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response) {
+ return std::unique_ptr< ::grpc::ClientWriterInterface< ::grpc::testing::Request>>(MethodA2Raw(context, response));
+ }
+ std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::grpc::testing::Request>> AsyncMethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) {
+ return std::unique_ptr< ::grpc::ClientAsyncWriterInterface< ::grpc::testing::Request>>(AsyncMethodA2Raw(context, response, cq, tag));
+ }
+ // MethodA2 trailing comment 1
+ private:
+ virtual ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>* AsyncMethodA1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) = 0;
+ virtual ::grpc::ClientWriterInterface< ::grpc::testing::Request>* MethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response) = 0;
+ virtual ::grpc::ClientAsyncWriterInterface< ::grpc::testing::Request>* AsyncMethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) = 0;
+ };
+ class Stub GRPC_FINAL : public StubInterface {
+ public:
+ Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel);
+ ::grpc::Status MethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) GRPC_OVERRIDE;
+ std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>> AsyncMethodA1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>>(AsyncMethodA1Raw(context, request, cq));
+ }
+ std::unique_ptr< ::grpc::ClientWriter< ::grpc::testing::Request>> MethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response) {
+ return std::unique_ptr< ::grpc::ClientWriter< ::grpc::testing::Request>>(MethodA2Raw(context, response));
+ }
+ std::unique_ptr< ::grpc::ClientAsyncWriter< ::grpc::testing::Request>> AsyncMethodA2(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) {
+ return std::unique_ptr< ::grpc::ClientAsyncWriter< ::grpc::testing::Request>>(AsyncMethodA2Raw(context, response, cq, tag));
+ }
+
+ private:
+ std::shared_ptr< ::grpc::ChannelInterface> channel_;
+ ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>* AsyncMethodA1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) GRPC_OVERRIDE;
+ ::grpc::ClientWriter< ::grpc::testing::Request>* MethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response) GRPC_OVERRIDE;
+ ::grpc::ClientAsyncWriter< ::grpc::testing::Request>* AsyncMethodA2Raw(::grpc::ClientContext* context, ::grpc::testing::Response* response, ::grpc::CompletionQueue* cq, void* tag) GRPC_OVERRIDE;
+ const ::grpc::RpcMethod rpcmethod_MethodA1_;
+ const ::grpc::RpcMethod rpcmethod_MethodA2_;
+ };
+ static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions());
+
+ class Service : public ::grpc::Service {
+ public:
+ Service();
+ virtual ~Service();
+ // MethodA1 leading comment 1
+ virtual ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response);
+ // MethodA1 trailing comment 1
+ // MethodA2 detached leading comment 1
+ //
+ // Method A2 leading comment 1
+ // Method A2 leading comment 2
+ virtual ::grpc::Status MethodA2(::grpc::ServerContext* context, ::grpc::ServerReader< ::grpc::testing::Request>* reader, ::grpc::testing::Response* response);
+ // MethodA2 trailing comment 1
+ };
+ template <class BaseClass>
+ class WithAsyncMethod_MethodA1 : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service *service) {}
+ public:
+ WithAsyncMethod_MethodA1() {
+ ::grpc::Service::MarkMethodAsync(0);
+ }
+ ~WithAsyncMethod_MethodA1() GRPC_OVERRIDE {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ void RequestMethodA1(::grpc::ServerContext* context, ::grpc::testing::Request* request, ::grpc::ServerAsyncResponseWriter< ::grpc::testing::Response>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
+ ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag);
+ }
+ };
+ template <class BaseClass>
+ class WithAsyncMethod_MethodA2 : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service *service) {}
+ public:
+ WithAsyncMethod_MethodA2() {
+ ::grpc::Service::MarkMethodAsync(1);
+ }
+ ~WithAsyncMethod_MethodA2() GRPC_OVERRIDE {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status MethodA2(::grpc::ServerContext* context, ::grpc::ServerReader< ::grpc::testing::Request>* reader, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ void RequestMethodA2(::grpc::ServerContext* context, ::grpc::ServerAsyncReader< ::grpc::testing::Response, ::grpc::testing::Request>* reader, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
+ ::grpc::Service::RequestAsyncClientStreaming(1, context, reader, new_call_cq, notification_cq, tag);
+ }
+ };
+ typedef WithAsyncMethod_MethodA1<WithAsyncMethod_MethodA2<Service > > AsyncService;
+ template <class BaseClass>
+ class WithGenericMethod_MethodA1 : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service *service) {}
+ public:
+ WithGenericMethod_MethodA1() {
+ ::grpc::Service::MarkMethodGeneric(0);
+ }
+ ~WithGenericMethod_MethodA1() GRPC_OVERRIDE {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status MethodA1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ };
+ template <class BaseClass>
+ class WithGenericMethod_MethodA2 : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service *service) {}
+ public:
+ WithGenericMethod_MethodA2() {
+ ::grpc::Service::MarkMethodGeneric(1);
+ }
+ ~WithGenericMethod_MethodA2() GRPC_OVERRIDE {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status MethodA2(::grpc::ServerContext* context, ::grpc::ServerReader< ::grpc::testing::Request>* reader, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ };
+};
+
+// ServiceB leading comment 1
+class ServiceB GRPC_FINAL {
+ public:
+ class StubInterface {
+ public:
+ virtual ~StubInterface() {}
+ // MethodB1 leading comment 1
+ virtual ::grpc::Status MethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) = 0;
+ std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>> AsyncMethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>>(AsyncMethodB1Raw(context, request, cq));
+ }
+ // MethodB1 trailing comment 1
+ private:
+ virtual ::grpc::ClientAsyncResponseReaderInterface< ::grpc::testing::Response>* AsyncMethodB1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) = 0;
+ };
+ class Stub GRPC_FINAL : public StubInterface {
+ public:
+ Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel);
+ ::grpc::Status MethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::testing::Response* response) GRPC_OVERRIDE;
+ std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>> AsyncMethodB1(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) {
+ return std::unique_ptr< ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>>(AsyncMethodB1Raw(context, request, cq));
+ }
+
+ private:
+ std::shared_ptr< ::grpc::ChannelInterface> channel_;
+ ::grpc::ClientAsyncResponseReader< ::grpc::testing::Response>* AsyncMethodB1Raw(::grpc::ClientContext* context, const ::grpc::testing::Request& request, ::grpc::CompletionQueue* cq) GRPC_OVERRIDE;
+ const ::grpc::RpcMethod rpcmethod_MethodB1_;
+ };
+ static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions());
+
+ class Service : public ::grpc::Service {
+ public:
+ Service();
+ virtual ~Service();
+ // MethodB1 leading comment 1
+ virtual ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response);
+ // MethodB1 trailing comment 1
+ };
+ template <class BaseClass>
+ class WithAsyncMethod_MethodB1 : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service *service) {}
+ public:
+ WithAsyncMethod_MethodB1() {
+ ::grpc::Service::MarkMethodAsync(0);
+ }
+ ~WithAsyncMethod_MethodB1() GRPC_OVERRIDE {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ void RequestMethodB1(::grpc::ServerContext* context, ::grpc::testing::Request* request, ::grpc::ServerAsyncResponseWriter< ::grpc::testing::Response>* response, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) {
+ ::grpc::Service::RequestAsyncUnary(0, context, request, response, new_call_cq, notification_cq, tag);
+ }
+ };
+ typedef WithAsyncMethod_MethodB1<Service > AsyncService;
+ template <class BaseClass>
+ class WithGenericMethod_MethodB1 : public BaseClass {
+ private:
+ void BaseClassMustBeDerivedFromService(const Service *service) {}
+ public:
+ WithGenericMethod_MethodB1() {
+ ::grpc::Service::MarkMethodGeneric(0);
+ }
+ ~WithGenericMethod_MethodB1() GRPC_OVERRIDE {
+ BaseClassMustBeDerivedFromService(this);
+ }
+ // disable synchronous version of this method
+ ::grpc::Status MethodB1(::grpc::ServerContext* context, const ::grpc::testing::Request* request, ::grpc::testing::Response* response) GRPC_FINAL GRPC_OVERRIDE {
+ abort();
+ return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
+ }
+ };
+};
+// ServiceB trailing comment 1
+
+} // namespace testing
+} // namespace grpc
+
+
+#endif // GRPC_src_2fproto_2fgrpc_2ftesting_2fcompiler_5ftest_2eproto__INCLUDED
diff --git a/test/cpp/codegen/golden_file_test.cc b/test/cpp/codegen/golden_file_test.cc
new file mode 100644
index 0000000000..ec08d08de6
--- /dev/null
+++ b/test/cpp/codegen/golden_file_test.cc
@@ -0,0 +1,64 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <fstream>
+#include <sstream>
+
+#include <gtest/gtest.h>
+
+// These paths rely on the fact that we run our tests under grpc/
+const char kGeneratedFilePath[] =
+ "gens/src/proto/grpc/testing/compiler_test.grpc.pb.h";
+const char kGoldenFilePath[] = "test/cpp/codegen/compiler_test_golden";
+
+TEST(GoldenFileTest, TestGeneratedFile) {
+ std::ifstream generated(kGeneratedFilePath);
+ std::ifstream golden(kGoldenFilePath);
+
+ ASSERT_TRUE(generated.good());
+ ASSERT_TRUE(golden.good());
+
+ std::ostringstream gen_oss;
+ std::ostringstream gold_oss;
+ gen_oss << generated.rdbuf();
+ gold_oss << golden.rdbuf();
+ EXPECT_EQ(gold_oss.str(), gen_oss.str());
+
+ generated.close();
+ golden.close();
+}
+
+int main(int argc, char **argv) {
+ ::testing::InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
diff --git a/test/cpp/interop/stress_interop_client.cc b/test/cpp/interop/stress_interop_client.cc
index 04671fb935..f287a5aa3b 100644
--- a/test/cpp/interop/stress_interop_client.cc
+++ b/test/cpp/interop/stress_interop_client.cc
@@ -84,49 +84,37 @@ StressTestInteropClient::StressTestInteropClient(
int test_id, const grpc::string& server_address,
std::shared_ptr<Channel> channel,
const WeightedRandomTestSelector& test_selector, long test_duration_secs,
- long sleep_duration_ms, long metrics_collection_interval_secs)
+ long sleep_duration_ms)
: test_id_(test_id),
server_address_(server_address),
channel_(channel),
interop_client_(new InteropClient(channel, false)),
test_selector_(test_selector),
test_duration_secs_(test_duration_secs),
- sleep_duration_ms_(sleep_duration_ms),
- metrics_collection_interval_secs_(metrics_collection_interval_secs) {}
+ sleep_duration_ms_(sleep_duration_ms) {}
-void StressTestInteropClient::MainLoop(std::shared_ptr<Gauge> qps_gauge) {
+void StressTestInteropClient::MainLoop(std::shared_ptr<QpsGauge> qps_gauge) {
gpr_log(GPR_INFO, "Running test %d. ServerAddr: %s", test_id_,
server_address_.c_str());
- gpr_timespec test_end_time =
- gpr_time_add(gpr_now(GPR_CLOCK_REALTIME),
- gpr_time_from_seconds(test_duration_secs_, GPR_TIMESPAN));
+ gpr_timespec test_end_time;
+ if (test_duration_secs_ < 0) {
+ test_end_time = gpr_inf_future(GPR_CLOCK_REALTIME);
+ } else {
+ test_end_time =
+ gpr_time_add(gpr_now(GPR_CLOCK_REALTIME),
+ gpr_time_from_seconds(test_duration_secs_, GPR_TIMESPAN));
+ }
- gpr_timespec current_time = gpr_now(GPR_CLOCK_REALTIME);
- gpr_timespec next_stat_collection_time = current_time;
- gpr_timespec collection_interval =
- gpr_time_from_seconds(metrics_collection_interval_secs_, GPR_TIMESPAN);
- long num_calls_per_interval = 0;
+ qps_gauge->Reset();
- while (test_duration_secs_ < 0 ||
- gpr_time_cmp(gpr_now(GPR_CLOCK_REALTIME), test_end_time) < 0) {
+ while (gpr_time_cmp(gpr_now(GPR_CLOCK_REALTIME), test_end_time) < 0) {
// Select the test case to execute based on the weights and execute it
TestCaseType test_case = test_selector_.GetNextTest();
gpr_log(GPR_DEBUG, "%d - Executing the test case %d", test_id_, test_case);
RunTest(test_case);
- num_calls_per_interval++;
-
- // See if its time to collect stats yet
- current_time = gpr_now(GPR_CLOCK_REALTIME);
- if (gpr_time_cmp(next_stat_collection_time, current_time) < 0) {
- qps_gauge->Set(num_calls_per_interval /
- metrics_collection_interval_secs_);
-
- num_calls_per_interval = 0;
- next_stat_collection_time =
- gpr_time_add(current_time, collection_interval);
- }
+ qps_gauge->Incr();
// Sleep between successive calls if needed
if (sleep_duration_ms_ > 0) {
diff --git a/test/cpp/interop/stress_interop_client.h b/test/cpp/interop/stress_interop_client.h
index 6fd303d6b7..cb0cd98821 100644
--- a/test/cpp/interop/stress_interop_client.h
+++ b/test/cpp/interop/stress_interop_client.h
@@ -87,12 +87,11 @@ class StressTestInteropClient {
StressTestInteropClient(int test_id, const grpc::string& server_address,
std::shared_ptr<Channel> channel,
const WeightedRandomTestSelector& test_selector,
- long test_duration_secs, long sleep_duration_ms,
- long metrics_collection_interval_secs);
+ long test_duration_secs, long sleep_duration_ms);
// The main function. Use this as the thread entry point.
- // qps_gauge is the Gauge to record the requests per second metric
- void MainLoop(std::shared_ptr<Gauge> qps_gauge);
+ // qps_gauge is the QpsGauge to record the requests per second metric
+ void MainLoop(std::shared_ptr<QpsGauge> qps_gauge);
private:
void RunTest(TestCaseType test_case);
@@ -104,7 +103,6 @@ class StressTestInteropClient {
const WeightedRandomTestSelector& test_selector_;
long test_duration_secs_;
long sleep_duration_ms_;
- long metrics_collection_interval_secs_;
};
} // namespace testing
diff --git a/test/cpp/interop/stress_test.cc b/test/cpp/interop/stress_test.cc
index 38caf31b76..d9e3fd25c5 100644
--- a/test/cpp/interop/stress_test.cc
+++ b/test/cpp/interop/stress_test.cc
@@ -56,9 +56,6 @@ extern void gpr_default_log(gpr_log_func_args* args);
DEFINE_int32(metrics_port, 8081, "The metrics server port.");
-DEFINE_int32(metrics_collection_interval_secs, 5,
- "How often (in seconds) should metrics be recorded.");
-
DEFINE_int32(sleep_duration_ms, 0,
"The duration (in millisec) between two"
" consecutive test calls (per server) issued by the server.");
@@ -275,19 +272,19 @@ int main(int argc, char** argv) {
stub_idx++) {
StressTestInteropClient* client = new StressTestInteropClient(
++thread_idx, *it, channel, test_selector, FLAGS_test_duration_secs,
- FLAGS_sleep_duration_ms, FLAGS_metrics_collection_interval_secs);
+ FLAGS_sleep_duration_ms);
- bool is_already_created;
- // Gauge name
+ bool is_already_created = false;
+ // QpsGauge name
std::snprintf(buffer, sizeof(buffer),
"/stress_test/server_%d/channel_%d/stub_%d/qps",
server_idx, channel_idx, stub_idx);
test_threads.emplace_back(grpc::thread(
&StressTestInteropClient::MainLoop, client,
- metrics_service.CreateGauge(buffer, &is_already_created)));
+ metrics_service.CreateQpsGauge(buffer, &is_already_created)));
- // The Gauge should not have been already created
+ // The QpsGauge should not have been already created
GPR_ASSERT(!is_already_created);
}
}
diff --git a/test/cpp/qps/client.h b/test/cpp/qps/client.h
index 5a9027a4a2..175529f01b 100644
--- a/test/cpp/qps/client.h
+++ b/test/cpp/qps/client.h
@@ -39,6 +39,7 @@
#include <vector>
#include <grpc++/support/byte_buffer.h>
+#include <grpc++/support/channel_arguments.h>
#include <grpc++/support/slice.h>
#include <grpc/support/log.h>
#include <grpc/support/time.h>
@@ -280,7 +281,7 @@ class ClientImpl : public Client {
create_stub_(create_stub) {
for (int i = 0; i < config.client_channels(); i++) {
channels_[i].init(config.server_targets(i % config.server_targets_size()),
- config, create_stub_);
+ config, create_stub_, i);
}
ClientRequestCreator<RequestType> create_req(&request_,
@@ -303,14 +304,17 @@ class ClientImpl : public Client {
}
void init(const grpc::string& target, const ClientConfig& config,
std::function<std::unique_ptr<StubType>(std::shared_ptr<Channel>)>
- create_stub) {
+ create_stub,
+ int shard) {
// We have to use a 2-phase init like this with a default
// constructor followed by an initializer function to make
// old compilers happy with using this in std::vector
+ ChannelArguments args;
+ args.SetInt("shard_to_ensure_no_subchannel_merges", shard);
channel_ = CreateTestChannel(
target, config.security_params().server_host_override(),
- config.has_security_params(),
- !config.security_params().use_test_ca());
+ config.has_security_params(), !config.security_params().use_test_ca(),
+ std::shared_ptr<CallCredentials>(), args);
stub_ = create_stub(channel_);
}
Channel* get_channel() { return channel_.get(); }
diff --git a/test/cpp/qps/driver.cc b/test/cpp/qps/driver.cc
index 2583ceb819..04b2b453f9 100644
--- a/test/cpp/qps/driver.cc
+++ b/test/cpp/qps/driver.cc
@@ -83,6 +83,7 @@ static std::unordered_map<string, std::deque<int>> get_hosts_and_cores(
auto stub = WorkerService::NewStub(
CreateChannel(*it, InsecureChannelCredentials()));
grpc::ClientContext ctx;
+ ctx.set_fail_fast(false);
CoreRequest dummy;
CoreResponse cores;
grpc::Status s = stub->CoreCount(&ctx, dummy, &cores);
@@ -166,6 +167,7 @@ namespace runsc {
static ClientContext* AllocContext(list<ClientContext>* contexts) {
contexts->emplace_back();
auto context = &contexts->back();
+ context->set_fail_fast(false);
return context;
}
@@ -435,6 +437,7 @@ void RunQuit() {
CreateChannel(workers[i], InsecureChannelCredentials()));
Void dummy;
grpc::ClientContext ctx;
+ ctx.set_fail_fast(false);
GPR_ASSERT(stub->QuitWorker(&ctx, dummy, &dummy).ok());
}
}
diff --git a/test/cpp/util/metrics_server.cc b/test/cpp/util/metrics_server.cc
index d9b44a6a92..cc6b39b753 100644
--- a/test/cpp/util/metrics_server.cc
+++ b/test/cpp/util/metrics_server.cc
@@ -42,16 +42,26 @@
namespace grpc {
namespace testing {
-Gauge::Gauge(long initial_val) : val_(initial_val) {}
+QpsGauge::QpsGauge()
+ : start_time_(gpr_now(GPR_CLOCK_REALTIME)), num_queries_(0) {}
-void Gauge::Set(long new_val) {
- std::lock_guard<std::mutex> lock(val_mu_);
- val_ = new_val;
+void QpsGauge::Reset() {
+ std::lock_guard<std::mutex> lock(num_queries_mu_);
+ num_queries_ = 0;
+ start_time_ = gpr_now(GPR_CLOCK_REALTIME);
}
-long Gauge::Get() {
- std::lock_guard<std::mutex> lock(val_mu_);
- return val_;
+void QpsGauge::Incr() {
+ std::lock_guard<std::mutex> lock(num_queries_mu_);
+ num_queries_++;
+}
+
+long QpsGauge::Get() {
+ std::lock_guard<std::mutex> lock(num_queries_mu_);
+ gpr_timespec time_diff =
+ gpr_time_sub(gpr_now(GPR_CLOCK_REALTIME), start_time_);
+ long duration_secs = time_diff.tv_sec > 0 ? time_diff.tv_sec : 1;
+ return num_queries_ / duration_secs;
}
grpc::Status MetricsServiceImpl::GetAllGauges(
@@ -60,7 +70,7 @@ grpc::Status MetricsServiceImpl::GetAllGauges(
gpr_log(GPR_DEBUG, "GetAllGauges called");
std::lock_guard<std::mutex> lock(mu_);
- for (auto it = gauges_.begin(); it != gauges_.end(); it++) {
+ for (auto it = qps_gauges_.begin(); it != qps_gauges_.end(); it++) {
GaugeResponse resp;
resp.set_name(it->first); // Gauge name
resp.set_long_value(it->second->Get()); // Gauge value
@@ -75,8 +85,8 @@ grpc::Status MetricsServiceImpl::GetGauge(ServerContext* context,
GaugeResponse* response) {
std::lock_guard<std::mutex> lock(mu_);
- const auto it = gauges_.find(request->name());
- if (it != gauges_.end()) {
+ const auto it = qps_gauges_.find(request->name());
+ if (it != qps_gauges_.end()) {
response->set_name(it->first);
response->set_long_value(it->second->Get());
}
@@ -84,16 +94,17 @@ grpc::Status MetricsServiceImpl::GetGauge(ServerContext* context,
return Status::OK;
}
-std::shared_ptr<Gauge> MetricsServiceImpl::CreateGauge(const grpc::string& name,
- bool* already_present) {
+std::shared_ptr<QpsGauge> MetricsServiceImpl::CreateQpsGauge(
+ const grpc::string& name, bool* already_present) {
std::lock_guard<std::mutex> lock(mu_);
- std::shared_ptr<Gauge> gauge(new Gauge(0));
- const auto p = gauges_.emplace(name, gauge);
+ std::shared_ptr<QpsGauge> qps_gauge(new QpsGauge());
+ const auto p = qps_gauges_.emplace(name, qps_gauge);
- // p.first is an iterator pointing to <name, shared_ptr<Gauge>> pair. p.second
- // is a boolean which is set to 'true' if the Gauge is inserted in the guages_
- // map and 'false' if it is already present in the map
+ // p.first is an iterator pointing to <name, shared_ptr<QpsGauge>> pair.
+ // p.second is a boolean which is set to 'true' if the QpsGauge is
+ // successfully inserted in the guages_ map and 'false' if it is already
+ // present in the map
*already_present = !p.second;
return p.first->second;
}
diff --git a/test/cpp/util/metrics_server.h b/test/cpp/util/metrics_server.h
index ce05e0be64..aa9bfed23d 100644
--- a/test/cpp/util/metrics_server.h
+++ b/test/cpp/util/metrics_server.h
@@ -48,10 +48,13 @@
* Example:
* MetricsServiceImpl metricsImpl;
* ..
- * // Create Gauge(s). Note: Gauges can be created even after calling
+ * // Create QpsGauge(s). Note: QpsGauges can be created even after calling
* // 'StartServer'.
- * Gauge gauge1 = metricsImpl.CreateGauge("foo",is_present);
- * // gauge1 can now be used anywhere in the program to set values.
+ * QpsGauge qps_gauge1 = metricsImpl.CreateQpsGauge("foo", is_present);
+ * // qps_gauge1 can now be used anywhere in the program by first making a
+ * // one-time call qps_gauge1.Reset() and then calling qps_gauge1.Incr()
+ * // every time to increment a query counter
+ *
* ...
* // Create the metrics server
* std::unique_ptr<grpc::Server> server = metricsImpl.StartServer(port);
@@ -60,17 +63,24 @@
namespace grpc {
namespace testing {
-// TODO(sreek): Add support for other types of Gauges like Double, String in
-// future
-class Gauge {
+class QpsGauge {
public:
- Gauge(long initial_val);
- void Set(long new_val);
+ QpsGauge();
+
+ // Initialize the internal timer and reset the query count to 0
+ void Reset();
+
+ // Increment the query count by 1
+ void Incr();
+
+ // Return the current qps (i.e query count divided by the time since this
+ // QpsGauge object created (or Reset() was called))
long Get();
private:
- long val_;
- std::mutex val_mu_;
+ gpr_timespec start_time_;
+ long num_queries_;
+ std::mutex num_queries_mu_;
};
class MetricsServiceImpl GRPC_FINAL : public MetricsService::Service {
@@ -81,17 +91,17 @@ class MetricsServiceImpl GRPC_FINAL : public MetricsService::Service {
grpc::Status GetGauge(ServerContext* context, const GaugeRequest* request,
GaugeResponse* response) GRPC_OVERRIDE;
- // Create a Gauge with name 'name'. is_present is set to true if the Gauge
+ // Create a QpsGauge with name 'name'. is_present is set to true if the Gauge
// is already present in the map.
- // NOTE: CreateGauge can be called anytime (i.e before or after calling
+ // NOTE: CreateQpsGauge can be called anytime (i.e before or after calling
// StartServer).
- std::shared_ptr<Gauge> CreateGauge(const grpc::string& name,
- bool* already_present);
+ std::shared_ptr<QpsGauge> CreateQpsGauge(const grpc::string& name,
+ bool* already_present);
std::unique_ptr<grpc::Server> StartServer(int port);
private:
- std::map<string, std::shared_ptr<Gauge>> gauges_;
+ std::map<string, std::shared_ptr<QpsGauge>> qps_gauges_;
std::mutex mu_;
};
diff --git a/tools/buildgen/plugins/expand_version.py b/tools/buildgen/plugins/expand_version.py
index dd77f7af12..c6cc5621c9 100755
--- a/tools/buildgen/plugins/expand_version.py
+++ b/tools/buildgen/plugins/expand_version.py
@@ -27,10 +27,10 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""Buildgen .proto files list plugin.
+"""Buildgen package version plugin
This parses the list of targets from the yaml build file, and creates
-a list called "protos" that contains all of the proto file names.
+a custom version string for each language's package.
"""
diff --git a/tools/buildgen/plugins/list_api.py b/tools/buildgen/plugins/list_api.py
index ff937a0ab8..1fc4f4123c 100755
--- a/tools/buildgen/plugins/list_api.py
+++ b/tools/buildgen/plugins/list_api.py
@@ -64,12 +64,13 @@ def headers_under(directory):
def mako_plugin(dictionary):
apis = []
+ headers = []
-# for lib in dictionary['libs']:
-# if lib['name'] == 'grpc':
-# apis.extend(list_c_apis(lib['public_headers']))
- apis.extend(list_c_apis(sorted(headers_under('include/grpc'))))
+ for lib in dictionary['libs']:
+ if lib['name'] in ['grpc', 'gpr']:
+ headers.extend(lib['public_headers'])
+ apis.extend(list_c_apis(sorted(set(headers))))
dictionary['c_apis'] = apis
diff --git a/tools/buildgen/plugins/make_fuzzer_tests.py b/tools/buildgen/plugins/make_fuzzer_tests.py
index e8e1bd0aa6..9d0006973a 100644
--- a/tools/buildgen/plugins/make_fuzzer_tests.py
+++ b/tools/buildgen/plugins/make_fuzzer_tests.py
@@ -50,8 +50,8 @@ def mako_plugin(dictionary):
'name': new_target['name'],
'args': [fn],
'exclude_configs': [],
- 'platforms': ['linux', 'mac', 'windows', 'posix'],
- 'ci_platforms': ['linux', 'mac', 'windows', 'posix'],
+ 'platforms': ['linux'],
+ 'ci_platforms': ['linux'],
'flaky': False,
'language': 'c',
'cpu_cost': 0.1,
diff --git a/tools/dockerfile/grpc_base/Dockerfile b/tools/dockerfile/grpc_base/Dockerfile
deleted file mode 100644
index 91862773d5..0000000000
--- a/tools/dockerfile/grpc_base/Dockerfile
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Base Dockerfile for gRPC dev images
-FROM debian:latest
-
-# Install Git.
-RUN apt-get update && apt-get install -y \
- autoconf \
- autotools-dev \
- build-essential \
- bzip2 \
- curl \
- gcc \
- git \
- libc6 \
- libc6-dbg \
- libc6-dev \
- libgtest-dev \
- libtool \
- make \
- strace \
- python-dev \
- python-setuptools \
- telnet \
- unzip \
- wget \
- zip && apt-get clean
-
-# Install useful useful python modules
-RUN easy_install -U pip
-RUN pip install -U crcmod # makes downloads from cloud storage faster
-
-# Install GCloud
-RUN wget https://dl.google.com/dl/cloudsdk/release/google-cloud-sdk.zip \
- && unzip google-cloud-sdk.zip && rm google-cloud-sdk.zip
-ENV CLOUD_SDK /google-cloud-sdk
-RUN $CLOUD_SDK/install.sh --usage-reporting=true --path-update=true --bash-completion=true --rc-path=/.bashrc --disable-installation-options
-ENV PATH $CLOUD_SDK/bin:$PATH
-
-# Define the default command.
-CMD ["bash"]
diff --git a/tools/dockerfile/grpc_base/README.md b/tools/dockerfile/grpc_base/README.md
deleted file mode 100644
index 5c81b02425..0000000000
--- a/tools/dockerfile/grpc_base/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-Base GRPC Dockerfile
-====================
-
-Dockerfile for creating the base gRPC development Docker instance.
-For now, this assumes that the development will be done on GCE instances,
-with source code on GitHub.
-
-As of 2015/02/02, it includes
-- git
-- some useful tools like curl, emacs, strace, telnet etc
-- a patched version of protoc, to allow protos with stream tags to work
diff --git a/tools/dockerfile/grpc_linuxbrew/Dockerfile b/tools/dockerfile/grpc_linuxbrew/Dockerfile
deleted file mode 100644
index 848489e091..0000000000
--- a/tools/dockerfile/grpc_linuxbrew/Dockerfile
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# A work-in-progress Dockerfile that allows running gRPC homebrew
-# installations inside docker containers
-FROM debian:jessie
-
-# Core dependencies
-RUN apt-get update && apt-get install -y \
- bzip2 curl git ruby wget
-
-# Install linuxbrew
-ENV PATH /home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:$PATH
-RUN git clone https://github.com/Homebrew/linuxbrew.git /home/linuxbrew/.linuxbrew
-RUN brew doctor || true
-
-# Python dependency
-RUN apt-get update && apt-get install -y python-dev
-RUN curl https://bootstrap.pypa.io/get-pip.py | python
-
-# NodeJS dependency
-RUN touch .profile
-RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash
-RUN /bin/bash -l -c "nvm install 0.12"
-
-# Ruby dependency
-RUN gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
-RUN /bin/bash -l -c "\curl -sSL https://get.rvm.io | bash -s stable"
-RUN /bin/bash -l -c "rvm install ruby-2.1"
-
-# PHP dependency
-RUN apt-get update && apt-get install -y php5 php5-dev php-pear phpunit unzip
-
-RUN /bin/bash -l -c "echo 'export PATH=/home/linuxbrew/.linuxbrew/bin:\$PATH' >> ~/.bashrc"
-
-CMD ["bash"]
diff --git a/tools/dockerfile/grpc_interop_csharp/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile
index 93cd25010e..baab2f5638 100644
--- a/tools/dockerfile/grpc_interop_csharp/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile
@@ -27,12 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# A work-in-progress Dockerfile that allows running gRPC test suites
-# inside a docker container.
-
FROM debian:jessie
-# Install Git.
+# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
autoconf \
autotools-dev \
@@ -43,13 +40,16 @@ RUN apt-get update && apt-get install -y \
gcc \
gcc-multilib \
git \
+ golang \
gyp \
+ lcov \
libc6 \
libc6-dbg \
libc6-dev \
libgtest-dev \
libtool \
make \
+ perl \
strace \
python-dev \
python-setuptools \
@@ -59,15 +59,11 @@ RUN apt-get update && apt-get install -y \
wget \
zip && apt-get clean
-# Prepare ccache
-RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
-RUN ln -s /usr/bin/ccache /usr/local/bin/g++
-RUN ln -s /usr/bin/ccache /usr/local/bin/cc
-RUN ln -s /usr/bin/ccache /usr/local/bin/c++
-RUN ln -s /usr/bin/ccache /usr/local/bin/clang
-RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
-#################
+#================
# C# dependencies
# Update to a newer version of mono
@@ -84,5 +80,20 @@ RUN apt-get update && apt-get -y dist-upgrade && apt-get install -y \
nuget \
&& apt-get clean
+# Prepare ccache
+RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
+RUN ln -s /usr/bin/ccache /usr/local/bin/g++
+RUN ln -s /usr/bin/ccache /usr/local/bin/cc
+RUN ln -s /usr/bin/ccache /usr/local/bin/c++
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+
+#======================
+# Zookeeper dependencies
+# TODO(jtattermusch): is zookeeper still needed?
+RUN apt-get install -y libzookeeper-mt-dev
+
+RUN mkdir /var/local/jenkins
+
# Define the default command.
CMD ["bash"]
diff --git a/tools/dockerfile/grpc_interop_csharp/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh
index fd5436c44f..fd5436c44f 100755
--- a/tools/dockerfile/grpc_interop_csharp/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh
diff --git a/tools/dockerfile/grpc_interop_cxx/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile
index 1fa1907533..2bbccca9e5 100644
--- a/tools/dockerfile/grpc_interop_cxx/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile
@@ -27,12 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# A work-in-progress Dockerfile that allows running gRPC test suites
-# inside a docker container.
-
FROM debian:jessie
-# Install Git.
+# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
autoconf \
autotools-dev \
@@ -43,13 +40,16 @@ RUN apt-get update && apt-get install -y \
gcc \
gcc-multilib \
git \
+ golang \
gyp \
+ lcov \
libc6 \
libc6-dbg \
libc6-dev \
libgtest-dev \
libtool \
make \
+ perl \
strace \
python-dev \
python-setuptools \
@@ -59,6 +59,14 @@ RUN apt-get update && apt-get install -y \
wget \
zip && apt-get clean
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
+
+#=================
+# C++ dependencies
+RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean
+
# Prepare ccache
RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
RUN ln -s /usr/bin/ccache /usr/local/bin/g++
@@ -67,9 +75,12 @@ RUN ln -s /usr/bin/ccache /usr/local/bin/c++
RUN ln -s /usr/bin/ccache /usr/local/bin/clang
RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
-##################
-# C++ dependencies
-RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang
+#======================
+# Zookeeper dependencies
+# TODO(jtattermusch): is zookeeper still needed?
+RUN apt-get install -y libzookeeper-mt-dev
+
+RUN mkdir /var/local/jenkins
# Define the default command.
CMD ["bash"]
diff --git a/tools/dockerfile/grpc_interop_cxx/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh
index 1c0828d23a..1c0828d23a 100755
--- a/tools/dockerfile/grpc_interop_cxx/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh
diff --git a/tools/dockerfile/grpc_interop_go/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile
index ec71a53c2d..ec71a53c2d 100644
--- a/tools/dockerfile/grpc_interop_go/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile
diff --git a/tools/dockerfile/grpc_interop_go/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_go/build_interop.sh
index e891549342..e891549342 100755
--- a/tools/dockerfile/grpc_interop_go/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_go/build_interop.sh
diff --git a/tools/dockerfile/grpc_interop_http2/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile
index ec71a53c2d..ec71a53c2d 100644
--- a/tools/dockerfile/grpc_interop_http2/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_http2/Dockerfile
diff --git a/tools/dockerfile/grpc_interop_http2/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh
index 46ddaf929a..46ddaf929a 100755
--- a/tools/dockerfile/grpc_interop_http2/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh
diff --git a/tools/dockerfile/grpc_interop_java/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_java/Dockerfile
index 370657b651..252c9bc928 100644
--- a/tools/dockerfile/grpc_interop_java/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_java/Dockerfile
@@ -31,23 +31,23 @@ FROM debian:jessie
# Install JDK 8 and Git
#
-# TODO(temiola): simplify this if/when a simpler process is available.
-#
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections && \
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list && \
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list && \
- apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 && \
- apt-get update && \
- apt-get -y install \
+ apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
+
+RUN apt-get update && apt-get -y install \
git \
libapr1 \
oracle-java8-installer \
&& \
- apt-get clean && rm -r /var/cache/oracle-jdk8-installer/
+ apt-get clean && rm -r /var/cache/oracle-jdk8-installer/
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
ENV PATH $PATH:$JAVA_HOME/bin
+
+
# Trigger download of as many Gradle artifacts as possible.
RUN git clone --recursive --depth 1 https://github.com/grpc/grpc-java.git && \
cd grpc-java && \
diff --git a/tools/dockerfile/grpc_interop_java/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_java/build_interop.sh
index 9997c63308..9997c63308 100755
--- a/tools/dockerfile/grpc_interop_java/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_java/build_interop.sh
diff --git a/tools/dockerfile/grpc_interop_node/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile
index db5aff844d..64314f8864 100644
--- a/tools/dockerfile/grpc_interop_node/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile
@@ -27,12 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# A work-in-progress Dockerfile that allows running gRPC test suites
-# inside a docker container.
-
FROM debian:jessie
-# Install Git.
+# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
autoconf \
autotools-dev \
@@ -43,14 +40,16 @@ RUN apt-get update && apt-get install -y \
gcc \
gcc-multilib \
git \
+ golang \
gyp \
+ lcov \
libc6 \
libc6-dbg \
libc6-dev \
libgtest-dev \
- libssl-dev \
libtool \
make \
+ perl \
strace \
python-dev \
python-setuptools \
@@ -60,6 +59,18 @@ RUN apt-get update && apt-get install -y \
wget \
zip && apt-get clean
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
+
+#==================
+# Node dependencies
+
+# Install nvm
+RUN touch .profile
+RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash
+RUN /bin/bash -l -c "nvm install 0.12 && npm config set cache /tmp/npm-cache"
+
# Prepare ccache
RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
RUN ln -s /usr/bin/ccache /usr/local/bin/g++
@@ -68,13 +79,12 @@ RUN ln -s /usr/bin/ccache /usr/local/bin/c++
RUN ln -s /usr/bin/ccache /usr/local/bin/clang
RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
-##################
-# Node dependencies
+#======================
+# Zookeeper dependencies
+# TODO(jtattermusch): is zookeeper still needed?
+RUN apt-get install -y libzookeeper-mt-dev
-# Install nvm
-RUN touch .profile
-RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash
-RUN /bin/bash -l -c "nvm install 0.12"
+RUN mkdir /var/local/jenkins
# Define the default command.
CMD ["bash"]
diff --git a/tools/dockerfile/grpc_interop_node/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh
index 4d4290d0b4..b99fd444ee 100755
--- a/tools/dockerfile/grpc_interop_node/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh
@@ -41,8 +41,6 @@ cd /var/local/git/grpc
nvm use 0.12
nvm alias default 0.12 # prevent the need to run 'nvm use' in every shell
-make install-certs
-
# build Node interop client & server
npm install -g node-gyp
npm install --unsafe-perm --build-from-source
diff --git a/tools/dockerfile/grpc_interop_php/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile
index cf3e79176a..e27a6a2301 100644
--- a/tools/dockerfile/grpc_interop_php/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile
@@ -27,12 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# A work-in-progress Dockerfile that allows running gRPC test suites
-# inside a docker container.
-
FROM debian:jessie
-# Install Git.
+# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
autoconf \
autotools-dev \
@@ -43,13 +40,16 @@ RUN apt-get update && apt-get install -y \
gcc \
gcc-multilib \
git \
+ golang \
gyp \
+ lcov \
libc6 \
libc6-dbg \
libc6-dev \
libgtest-dev \
libtool \
make \
+ perl \
strace \
python-dev \
python-setuptools \
@@ -59,15 +59,11 @@ RUN apt-get update && apt-get install -y \
wget \
zip && apt-get clean
-# Prepare ccache
-RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
-RUN ln -s /usr/bin/ccache /usr/local/bin/g++
-RUN ln -s /usr/bin/ccache /usr/local/bin/cc
-RUN ln -s /usr/bin/ccache /usr/local/bin/c++
-RUN ln -s /usr/bin/ccache /usr/local/bin/clang
-RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
-##################
+#==================
# Ruby dependencies
# Install rvm
@@ -82,14 +78,35 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc"
RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc"
RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc"
-##################
+#=================
# PHP dependencies
# Install dependencies
+RUN /bin/bash -l -c "echo 'deb http://packages.dotdeb.org wheezy-php55 all' \
+ >> /etc/apt/sources.list.d/dotdeb.list"
+RUN /bin/bash -l -c "echo 'deb-src http://packages.dotdeb.org wheezy-php55 all' \
+ >> /etc/apt/sources.list.d/dotdeb.list"
+RUN wget http://www.dotdeb.org/dotdeb.gpg -O- | apt-key add -
+
RUN apt-get update && apt-get install -y \
git php5 php5-dev phpunit unzip
+# Prepare ccache
+RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
+RUN ln -s /usr/bin/ccache /usr/local/bin/g++
+RUN ln -s /usr/bin/ccache /usr/local/bin/cc
+RUN ln -s /usr/bin/ccache /usr/local/bin/c++
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+
+#======================
+# Zookeeper dependencies
+# TODO(jtattermusch): is zookeeper still needed?
+RUN apt-get install -y libzookeeper-mt-dev
+
+RUN mkdir /var/local/jenkins
+
# ronn: a ruby tool used to convert markdown to man pages, used during the
# install of Protobuf extensions
#
diff --git a/tools/dockerfile/grpc_interop_php/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh
index 87262f1d62..87262f1d62 100755
--- a/tools/dockerfile/grpc_interop_php/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh
diff --git a/tools/dockerfile/grpc_interop_python/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile
index 047604b1b7..071fb2c93b 100644
--- a/tools/dockerfile/grpc_interop_python/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile
@@ -27,12 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# A work-in-progress Dockerfile that allows running gRPC test suites
-# inside a docker container.
-
FROM debian:jessie
-# Install Git.
+# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
autoconf \
autotools-dev \
@@ -43,17 +40,18 @@ RUN apt-get update && apt-get install -y \
gcc \
gcc-multilib \
git \
+ golang \
gyp \
+ lcov \
libc6 \
libc6-dbg \
libc6-dev \
libgtest-dev \
- libssl-dev \
libtool \
make \
+ perl \
strace \
python-dev \
- python-pip \
python-setuptools \
python-yaml \
telnet \
@@ -61,6 +59,25 @@ RUN apt-get update && apt-get install -y \
wget \
zip && apt-get clean
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
+
+#====================
+# Python dependencies
+
+# Install dependencies
+
+RUN apt-get update && apt-get install -y \
+ python-all-dev \
+ python3-all-dev \
+ python-pip
+
+# Install Python packages from PyPI
+RUN pip install pip --upgrade
+RUN pip install virtualenv
+RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.0.0a2 tox
+
# Prepare ccache
RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
RUN ln -s /usr/bin/ccache /usr/local/bin/g++
@@ -69,14 +86,12 @@ RUN ln -s /usr/bin/ccache /usr/local/bin/c++
RUN ln -s /usr/bin/ccache /usr/local/bin/clang
RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+#======================
+# Zookeeper dependencies
+# TODO(jtattermusch): is zookeeper still needed?
+RUN apt-get install -y libzookeeper-mt-dev
-#####################
-# Python dependencies
-
-# Install Python requisites
-RUN /bin/bash -l -c "pip install --upgrade pip"
-RUN /bin/bash -l -c "pip install virtualenv"
-RUN /bin/bash -l -c "pip install tox"
+RUN mkdir /var/local/jenkins
# Define the default command.
CMD ["bash"]
diff --git a/tools/dockerfile/grpc_interop_python/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_python/build_interop.sh
index 6454a4f5e2..f29c59da8e 100755
--- a/tools/dockerfile/grpc_interop_python/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_python/build_interop.sh
@@ -39,8 +39,4 @@ cp -r /var/local/jenkins/service_account $HOME || true
cd /var/local/git/grpc
-make
-
-# build Python interop client and server
-CONFIG=opt ./tools/run_tests/build_python.sh
-
+tools/run_tests/run_tests.py -l python -c opt --build_only
diff --git a/tools/dockerfile/grpc_interop_ruby/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile
index ff201fa291..df8eef5438 100644
--- a/tools/dockerfile/grpc_interop_ruby/Dockerfile
+++ b/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile
@@ -27,12 +27,9 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# A work-in-progress Dockerfile that allows running gRPC test suites
-# inside a docker container.
-
FROM debian:jessie
-# Install Git.
+# Install Git and basic packages.
RUN apt-get update && apt-get install -y \
autoconf \
autotools-dev \
@@ -43,13 +40,16 @@ RUN apt-get update && apt-get install -y \
gcc \
gcc-multilib \
git \
+ golang \
gyp \
+ lcov \
libc6 \
libc6-dbg \
libc6-dev \
libgtest-dev \
libtool \
make \
+ perl \
strace \
python-dev \
python-setuptools \
@@ -59,16 +59,11 @@ RUN apt-get update && apt-get install -y \
wget \
zip && apt-get clean
-# Prepare ccache
-RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
-RUN ln -s /usr/bin/ccache /usr/local/bin/g++
-RUN ln -s /usr/bin/ccache /usr/local/bin/cc
-RUN ln -s /usr/bin/ccache /usr/local/bin/c++
-RUN ln -s /usr/bin/ccache /usr/local/bin/clang
-RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
-
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
-##################
+#==================
# Ruby dependencies
# Install rvm
@@ -83,5 +78,20 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc"
RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc"
RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc"
+# Prepare ccache
+RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
+RUN ln -s /usr/bin/ccache /usr/local/bin/g++
+RUN ln -s /usr/bin/ccache /usr/local/bin/cc
+RUN ln -s /usr/bin/ccache /usr/local/bin/c++
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+
+#======================
+# Zookeeper dependencies
+# TODO(jtattermusch): is zookeeper still needed?
+RUN apt-get install -y libzookeeper-mt-dev
+
+RUN mkdir /var/local/jenkins
+
# Define the default command.
CMD ["bash"]
diff --git a/tools/dockerfile/grpc_interop_ruby/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh
index 685397bac2..97b3860f98 100755
--- a/tools/dockerfile/grpc_interop_ruby/build_interop.sh
+++ b/tools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh
@@ -40,7 +40,5 @@ cp -r /var/local/jenkins/service_account $HOME || true
cd /var/local/git/grpc
rvm --default use ruby-2.1
-make install-certs
-
# build Ruby interop client and server
(cd src/ruby && gem update bundler && bundle && rake compile)
diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile b/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile
new file mode 100644
index 0000000000..823fe948fb
--- /dev/null
+++ b/tools/dockerfile/stress_test/grpc_interop_stress_csharp/Dockerfile
@@ -0,0 +1,101 @@
+# Copyright 2015, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+FROM debian:jessie
+
+# Install Git and basic packages.
+RUN apt-get update && apt-get install -y \
+ autoconf \
+ autotools-dev \
+ build-essential \
+ bzip2 \
+ ccache \
+ curl \
+ gcc \
+ gcc-multilib \
+ git \
+ golang \
+ gyp \
+ lcov \
+ libc6 \
+ libc6-dbg \
+ libc6-dev \
+ libgtest-dev \
+ libtool \
+ make \
+ perl \
+ strace \
+ python-dev \
+ python-setuptools \
+ python-yaml \
+ telnet \
+ unzip \
+ wget \
+ zip && apt-get clean
+
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
+
+# Prepare ccache
+RUN ln -s /usr/bin/ccache /usr/local/bin/gcc
+RUN ln -s /usr/bin/ccache /usr/local/bin/g++
+RUN ln -s /usr/bin/ccache /usr/local/bin/cc
+RUN ln -s /usr/bin/ccache /usr/local/bin/c++
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang
+RUN ln -s /usr/bin/ccache /usr/local/bin/clang++
+
+#=================
+# C++ dependencies
+RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean
+
+# Google Cloud platform API libraries
+RUN apt-get update && apt-get install -y python-pip && apt-get clean
+RUN pip install --upgrade google-api-python-client
+
+
+#================
+# C# dependencies
+
+# Update to a newer version of mono
+RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
+RUN echo "deb http://download.mono-project.com/repo/debian wheezy main" | tee /etc/apt/sources.list.d/mono-xamarin.list
+RUN echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | tee -a /etc/apt/sources.list.d/mono-xamarin.list
+RUN echo "deb http://download.mono-project.com/repo/debian wheezy-libjpeg62-compat main" | tee -a /etc/apt/sources.list.d/mono-xamarin.list
+RUN echo "deb http://download.mono-project.com/repo/debian wheezy-libtiff-compat main" | tee -a /etc/apt/sources.list.d/mono-xamarin.list
+
+# Install dependencies
+RUN apt-get update && apt-get -y dist-upgrade && apt-get install -y \
+ mono-devel \
+ ca-certificates-mono \
+ nuget \
+ && apt-get clean
+
+# Define the default command.
+CMD ["bash"]
diff --git a/src/python/grpcio/grpc/framework/alpha/exceptions.py b/tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh
index 09359c5e94..1f4bf893cc 100644..100755
--- a/src/python/grpcio/grpc/framework/alpha/exceptions.py
+++ b/tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh
@@ -1,3 +1,4 @@
+#!/bin/bash
# Copyright 2015, Google Inc.
# All rights reserved.
#
@@ -26,22 +27,21 @@
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Builds C# interop server and client in a base image.
+set -e
-"""Exceptions raised by GRPC.
-
-Only GRPC should instantiate and raise these exceptions.
-"""
-import abc
-
-import six
+mkdir -p /var/local/git
+git clone --recursive /var/local/jenkins/grpc /var/local/git/grpc
-class RpcError(six.with_metaclass(abc.ABCMeta, Exception)):
- """Common super type for all exceptions raised by GRPC."""
+# Copy service account keys if available
+cp -r /var/local/jenkins/service_account $HOME || true
+cd /var/local/git/grpc
-class CancellationError(RpcError):
- """Indicates that an RPC has been cancelled."""
+# Build C++ metrics client (to query the metrics from csharp stress client)
+make metrics_client -j
+# Build C# interop client & server
+tools/run_tests/run_tests.py -l csharp -c dbg --build_only
-class ExpirationError(RpcError):
- """Indicates that an RPC has expired ("timed out")."""
diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal
index e02bb6f02f..6d8f800540 100644
--- a/tools/doxygen/Doxyfile.core.internal
+++ b/tools/doxygen/Doxyfile.core.internal
@@ -1172,6 +1172,7 @@ src/core/lib/support/slice_buffer.c \
src/core/lib/support/stack_lockfree.c \
src/core/lib/support/string.c \
src/core/lib/support/string_posix.c \
+src/core/lib/support/string_util_win32.c \
src/core/lib/support/string_win32.c \
src/core/lib/support/subprocess_posix.c \
src/core/lib/support/subprocess_windows.c \
@@ -1186,6 +1187,7 @@ src/core/lib/support/time_posix.c \
src/core/lib/support/time_precise.c \
src/core/lib/support/time_win32.c \
src/core/lib/support/tls_pthread.c \
+src/core/lib/support/tmpfile_msys.c \
src/core/lib/support/tmpfile_posix.c \
src/core/lib/support/tmpfile_win32.c \
src/core/lib/support/wrap_memcpy.c
diff --git a/tools/gce/linux_performance_worker_init.sh b/tools/gce/linux_performance_worker_init.sh
index 478e04ef37..25ac3bcede 100755
--- a/tools/gce/linux_performance_worker_init.sh
+++ b/tools/gce/linux_performance_worker_init.sh
@@ -83,11 +83,13 @@ sudo apt-get install -y libgflags-dev libgtest-dev libc++-dev clang
# Python dependencies
sudo pip install tabulate
sudo pip install google-api-python-client
+sudo pip install tox
curl -O https://bootstrap.pypa.io/get-pip.py
sudo pypy get-pip.py
sudo pypy -m pip install tabulate
sudo pip install google-api-python-client
+sudo pip install tox
# Node dependencies (nvm has to be installed under user jenkins)
touch .profile
diff --git a/tools/jenkins/build_interop_image.sh b/tools/jenkins/build_interop_image.sh
index 26687a5a85..d2ba97c3de 100755
--- a/tools/jenkins/build_interop_image.sh
+++ b/tools/jenkins/build_interop_image.sh
@@ -71,10 +71,10 @@ then
fi
# Use image name based on Dockerfile checksum
-BASE_IMAGE=${BASE_NAME}_base:`sha1sum tools/dockerfile/$BASE_NAME/Dockerfile | cut -f1 -d\ `
+BASE_IMAGE=${BASE_NAME}_base:`sha1sum tools/dockerfile/interoptest/$BASE_NAME/Dockerfile | cut -f1 -d\ `
# Make sure base docker image has been built. Should be instantaneous if so.
-docker build -t $BASE_IMAGE --force-rm=true tools/dockerfile/$BASE_NAME || exit $?
+docker build -t $BASE_IMAGE --force-rm=true tools/dockerfile/interoptest/$BASE_NAME || exit $?
# Create a local branch so the child Docker script won't complain
git branch -f jenkins-docker
@@ -92,7 +92,7 @@ CONTAINER_NAME="build_${BASE_NAME}_$(uuidgen)"
-v /tmp/ccache:/tmp/ccache \
--name=$CONTAINER_NAME \
$BASE_IMAGE \
- bash -l /var/local/jenkins/grpc/tools/dockerfile/$BASE_NAME/build_interop.sh \
+ bash -l /var/local/jenkins/grpc/tools/dockerfile/interoptest/$BASE_NAME/build_interop.sh \
&& docker commit $CONTAINER_NAME $INTEROP_IMAGE \
&& echo "Successfully built image $INTEROP_IMAGE")
EXITCODE=$?
diff --git a/tools/jenkins/run_distribution.sh b/tools/jenkins/run_distribution.sh
deleted file mode 100755
index 306b85b045..0000000000
--- a/tools/jenkins/run_distribution.sh
+++ /dev/null
@@ -1,144 +0,0 @@
-#!/bin/bash
-# Copyright 2015, Google Inc.
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-# This script is invoked by Jenkins and triggers a test run of
-# linuxbrew installation of a selected language
-set -ex
-
-# Our homebrew installation script command, per language
-# Can be used in both linux and macos
-if [ "$language" == "core" ]; then
- command="curl -fsSL https://goo.gl/getgrpc | bash -"
-elif [[ "python nodejs ruby php" =~ "$language" ]]; then
- command="curl -fsSL https://goo.gl/getgrpc | bash -s $language"
-else
- echo "unsupported language $language"
- exit 1
-fi
-
-if [ "$platform" == "linux" ]; then
-
- if [ "$dist_channel" == "homebrew" ]; then
-
- sha1=$(sha1sum tools/dockerfile/grpc_linuxbrew/Dockerfile | cut -f1 -d\ )
- DOCKER_IMAGE_NAME=grpc_linuxbrew_$sha1
-
- # build docker image, contains all pre-requisites
- docker build -t $DOCKER_IMAGE_NAME tools/dockerfile/grpc_linuxbrew
-
- # run per-language homebrew installation script
- docker run --rm=true $DOCKER_IMAGE_NAME bash -l \
- -c "nvm use 0.12; \
- npm set unsafe-perm true; \
- rvm use ruby-2.1; \
- $command"
-
- else
- echo "Unsupported $platform dist_channel $dist_channel"
- exit 1
- fi
-
-elif [ "$platform" == "macos" ]; then
-
- if [ "$dist_channel" == "homebrew" ]; then
-
- echo "Formulas installed by system-wide homebrew (before)"
- brew list -l
-
- # Save the original PATH so that we can run the system `brew` command
- # again at the end of the script
- export ORIGINAL_PATH=$PATH
-
- # Set up temp directories for test installation of homebrew
- brew_root=/tmp/homebrew-test-$language
- rm -rf $brew_root
- mkdir -p $brew_root
- git clone https://github.com/Homebrew/homebrew.git $brew_root
-
- # Make sure we are operating at the right copy of temp homebrew
- # installation
- export PATH=$brew_root/bin:$PATH
-
- # Set up right environment for each language
- case $language in
- *python*)
- rm -rf jenkins_python_venv
- virtualenv jenkins_python_venv
- source jenkins_python_venv/bin/activate
- ;;
- *nodejs*)
- export PATH=$HOME/.nvm/versions/node/v0.12.7/bin:$PATH
- ;;
- *ruby*)
- export PATH=/usr/local/rvm/rubies/ruby-2.2.1/bin:$PATH
- ;;
- *php*)
- export CFLAGS="-Wno-parentheses-equality"
- ;;
- esac
-
- # Run our homebrew installation script
- bash -c "$command"
-
- # Uninstall / clean up per-language modules/extensions after the test
- case $language in
- *python*)
- deactivate
- rm -rf jenkins_python_venv
- ;;
- *nodejs*)
- npm list -g | grep grpc
- npm uninstall -g grpc
- ;;
- *ruby*)
- gem list | grep grpc
- gem uninstall grpc
- ;;
- *php*)
- rm grpc.so
- ;;
- esac
-
- # Clean up
- rm -rf $brew_root
-
- echo "Formulas installed by system-wide homebrew (after, should be unaffected)"
- export PATH=$ORIGINAL_PATH
- brew list -l
-
- else
- echo "Unsupported $platform dist_channel $dist_channel"
- exit 1
- fi
-
-else
- echo "unsupported platform $platform"
- exit 1
-fi
diff --git a/tools/jenkins/run_performance.sh b/tools/jenkins/run_performance.sh
index 903a144215..13a332751b 100755
--- a/tools/jenkins/run_performance.sh
+++ b/tools/jenkins/run_performance.sh
@@ -34,4 +34,4 @@ set -ex
# Enter the gRPC repo root
cd $(dirname $0)/../..
-tools/run_tests/run_performance_tests.py -l c++ node ruby csharp
+tools/run_tests/run_performance_tests.py -l c++ node ruby csharp python
diff --git a/tools/run_tests/build_package_node.sh b/tools/run_tests/build_package_node.sh
index 540c826311..6bc9466b63 100755
--- a/tools/run_tests/build_package_node.sh
+++ b/tools/run_tests/build_package_node.sh
@@ -35,10 +35,54 @@ set -ex
cd $(dirname $0)/../..
-mkdir -p artifacts/
-cp -r $EXTERNAL_GIT_ROOT/architecture={x86,x64},language=node,platform={windows,linux,macos}/artifacts/* artifacts/ || true
+base=$(pwd)
+artifacts=$base/artifacts
+
+mkdir -p $artifacts
+cp -r $EXTERNAL_GIT_ROOT/architecture={x86,x64},language=node,platform={windows,linux,macos}/artifacts/* $artifacts/ || true
+
+npm update
+npm pack
+
+cp grpc-*.tgz $artifacts/grpc.tgz
+
+mkdir -p bin
+
+cd src/node/tools
npm update
npm pack
+cp grpc-tools-*.tgz $artifacts/
+tools_version=$(npm list | grep -oP '(?<=grpc-tools@)\S+')
+
+output_dir=$artifacts/grpc-precompiled-binaries/node/grpc-tools/$tools_version
+mkdir -p $output_dir
-cp grpc-*.tgz artifacts/grpc.tgz
+for arch in {x86,x64}; do
+ case arch in
+ x86)
+ node_arch=ia32
+ ;;
+ *)
+ node_arch=$arch
+ ;;
+ esac
+ for plat in {windows,linux,macos}; do
+ case plat in
+ windows)
+ node_plat=win32
+ ;;
+ macos)
+ node_plat=darwin
+ ;;
+ *)
+ node_plat=$plat
+ ;;
+ esac
+ rm bin/*
+ input_dir="$EXTERNAL_GIT_ROOT/architecture=$arch,language=protoc,platform=$plat/artifacts"
+ cp $input_dir/protoc* bin/
+ cp $input_dir/grpc_node_plugin* bin/
+ tar -czf $output_dir/$node_plat-$node_arch.tar.gz bin/
+ done
+done
diff --git a/tools/run_tests/build_package_ruby.sh b/tools/run_tests/build_package_ruby.sh
index 1a5b94348d..e44428bf7e 100755
--- a/tools/run_tests/build_package_ruby.sh
+++ b/tools/run_tests/build_package_ruby.sh
@@ -32,6 +32,8 @@ set -ex
cd $(dirname $0)/../..
+base=$(pwd)
+
mkdir -p artifacts/
# All the ruby packages have been built in the artifact phase already
@@ -41,3 +43,25 @@ cp -r $EXTERNAL_GIT_ROOT/architecture={x86,x64},language=ruby,platform={windows,
# TODO: all the artifact builder configurations generate a grpc-VERSION.gem
# source distribution package, and only one of them will end up
# in the artifacts/ directory. They should be all equivalent though.
+
+for arch in {x86,x64}; do
+ case $arch in
+ x64)
+ ruby_arch=x86_64
+ ;;
+ *)
+ ruby_arch=$arch
+ ;;
+ esac
+ for plat in {windows,linux,macos}; do
+ input_dir="$EXTERNAL_GIT_ROOT/architecture=$arch,language=protoc,platform=$plat/artifacts"
+ output_dir="$base/src/ruby/tools/bin/${ruby_arch}-${plat}"
+ mkdir -p $output_dir
+ cp $input_dir/protoc* $output_dir/
+ cp $input_dir/grpc_ruby_plugin* $output_dir/
+ done
+done
+
+cd $base/src/ruby/tools
+gem build grpc-tools.gemspec
+cp ./grpc-tools*.gem $base/artifacts/
diff --git a/tools/run_tests/build_python.sh b/tools/run_tests/build_python.sh
index 30d121007f..594c20b14c 100755
--- a/tools/run_tests/build_python.sh
+++ b/tools/run_tests/build_python.sh
@@ -33,6 +33,8 @@ set -ex
# change to grpc repo root
cd $(dirname $0)/../..
+TOX_PYTHON_ENV="$1"
+
ROOT=`pwd`
export LD_LIBRARY_PATH=$ROOT/libs/$CONFIG
export DYLD_LIBRARY_PATH=$ROOT/libs/$CONFIG
@@ -47,9 +49,9 @@ then
export GRPC_PYTHON_ENABLE_CYTHON_TRACING=1
fi
-tox --notest
+tox -e ${TOX_PYTHON_ENV} --notest
-$ROOT/.tox/py27/bin/python $ROOT/setup.py build
-$ROOT/.tox/py27/bin/python $ROOT/setup.py build_py
-$ROOT/.tox/py27/bin/python $ROOT/setup.py build_ext --inplace
-$ROOT/.tox/py27/bin/python $ROOT/setup.py gather --test
+$ROOT/.tox/${TOX_PYTHON_ENV}/bin/python $ROOT/setup.py build
+$ROOT/.tox/${TOX_PYTHON_ENV}/bin/python $ROOT/setup.py build_py
+$ROOT/.tox/${TOX_PYTHON_ENV}/bin/python $ROOT/setup.py build_ext --inplace
+$ROOT/.tox/${TOX_PYTHON_ENV}/bin/python $ROOT/setup.py gather --test
diff --git a/src/python/grpcio/grpc/framework/base/null.py b/tools/run_tests/performance/kill_workers.sh
index 1e30d4557b..7a8763424d 100644..100755
--- a/src/python/grpcio/grpc/framework/base/null.py
+++ b/tools/run_tests/performance/kill_workers.sh
@@ -1,3 +1,4 @@
+#!/bin/bash
# Copyright 2015, Google Inc.
# All rights reserved.
#
@@ -27,30 +28,27 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-"""Null links that ignore tickets passed to them."""
+set -ex
-from grpc.framework.base import interfaces
+cd $(dirname $0)/../../..
+# Make sure there are no pre-existing QPS workers around before starting
+# the performance test suite
-class _NullForeLink(interfaces.ForeLink):
- """A do-nothing ForeLink."""
+# C++
+killall -9 qps_worker || true
- def accept_back_to_front_ticket(self, ticket):
- pass
+# C#
+ps -C mono -o pid=,cmd= | grep QpsWorker | awk '{print $1}' | xargs kill -9
- def join_rear_link(self, rear_link):
- raise NotImplementedError()
+# Ruby
+ps -C ruby -o pid=,cmd= | grep 'qps/worker.rb' | awk '{print $1}' | xargs kill -9
+# Node
+ps -C node -o pid=,cmd= | grep 'performance/worker.js' | awk '{print $1}' | xargs kill -9
-class _NullRearLink(interfaces.RearLink):
- """A do-nothing RearLink."""
+# Python
+ps -C python -o pid=,cmd= | grep 'qps_worker.py' | awk '{print $1}' | xargs kill -9
- def accept_front_to_back_ticket(self, ticket):
- pass
-
- def join_fore_link(self, fore_link):
- raise NotImplementedError()
-
-
-NULL_FORE_LINK = _NullForeLink()
-NULL_REAR_LINK = _NullRearLink()
+# Java
+jps | grep LoadWorker | awk '{print $1}' | xargs kill -9
diff --git a/tools/run_tests/performance/remote_host_prepare.sh b/tools/run_tests/performance/remote_host_prepare.sh
index 17cfa1a599..d7f539a74e 100755
--- a/tools/run_tests/performance/remote_host_prepare.sh
+++ b/tools/run_tests/performance/remote_host_prepare.sh
@@ -41,10 +41,9 @@ ssh "${USER_AT_HOST}" "rm -rf ~/performance_workspace && mkdir -p ~/performance_
# could also kill jenkins.
ssh "${USER_AT_HOST}" "killall -9 qps_worker mono node ruby || true"
-# Kill all java LoadWorker processes. We can't just killall java
-# as one of the processes might be jenkins.
-ssh "${USER_AT_HOST}" 'kill -9 $(jps | grep LoadWorker | cut -f1 -d" ") || true'
-
# push the current sources to the slave and unpack it.
scp ../grpc.tar "${USER_AT_HOST}:~/performance_workspace"
ssh "${USER_AT_HOST}" "tar -xf ~/performance_workspace/grpc.tar -C ~/performance_workspace"
+
+# For consistency with local run, invoke the kill_workers script remotely.
+ssh "${USER_AT_HOST}" "~/performance_workspace/grpc/tools/run_tests/performance/kill_workers.sh"
diff --git a/src/ruby/bin/grpc_ruby_interop_client b/tools/run_tests/performance/run_worker_python.sh
index e79fd33aa5..0da8deda58 100755
--- a/src/ruby/bin/grpc_ruby_interop_client
+++ b/tools/run_tests/performance/run_worker_python.sh
@@ -1,6 +1,5 @@
-#!/usr/bin/env ruby
-
-# Copyright 2015, Google Inc.
+#!/bin/bash
+# Copyright 2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -29,5 +28,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# Provides a gem binary entry point for the interop client.
-require 'test/client'
+set -ex
+
+cd $(dirname $0)/../../..
+
+PYTHONPATH=src/python/grpcio:src/python/gens .tox/py27/bin/python src/python/grpcio/tests/qps/qps_worker.py $@
diff --git a/tools/run_tests/performance/scenario_config.py b/tools/run_tests/performance/scenario_config.py
index 55657f8d8a..ddbe237569 100644
--- a/tools/run_tests/performance/scenario_config.py
+++ b/tools/run_tests/performance/scenario_config.py
@@ -456,6 +456,128 @@ class NodeLanguage:
def __str__(self):
return 'node'
+class PythonLanguage:
+
+ def __init__(self):
+ self.safename = 'python'
+
+ def worker_cmdline(self):
+ return ['tools/run_tests/performance/run_worker_python.sh']
+
+ def worker_port_offset(self):
+ return 500
+
+ def scenarios(self):
+ yield {
+ 'name': 'python_to_cpp_protobuf_streaming_ping_pong',
+ 'num_servers': 1,
+ 'num_clients': 1,
+ 'client_config': {
+ 'client_type': 'ASYNC_CLIENT',
+ 'security_params': SECURE_SECARGS,
+ 'outstanding_rpcs_per_channel': 1,
+ 'client_channels': 1,
+ 'async_client_threads': 1,
+ 'rpc_type': 'STREAMING',
+ 'load_params': {
+ 'closed_loop': {}
+ },
+ 'payload_config': EMPTY_PROTO_PAYLOAD,
+ 'histogram_params': HISTOGRAM_PARAMS,
+ },
+ 'server_config': {
+ 'server_type': 'SYNC_SERVER',
+ 'security_params': SECURE_SECARGS,
+ 'core_limit': 0,
+ 'async_server_threads': 1,
+ },
+ 'warmup_seconds': WARMUP_SECONDS,
+ 'benchmark_seconds': BENCHMARK_SECONDS,
+ 'SERVER_LANGUAGE': 'c++'
+ }
+ yield {
+ 'name': 'python_protobuf_sync_unary_ping_pong',
+ 'num_servers': 1,
+ 'num_clients': 1,
+ 'client_config': {
+ 'client_type': 'SYNC_CLIENT',
+ 'security_params': SECURE_SECARGS,
+ 'outstanding_rpcs_per_channel': 1,
+ 'client_channels': 1,
+ 'async_client_threads': 1,
+ 'rpc_type': 'UNARY',
+ 'load_params': {
+ 'closed_loop': {}
+ },
+ 'payload_config': EMPTY_PROTO_PAYLOAD,
+ 'histogram_params': HISTOGRAM_PARAMS,
+ },
+ 'server_config': {
+ 'server_type': 'SYNC_SERVER',
+ 'security_params': SECURE_SECARGS,
+ 'core_limit': 0,
+ 'async_server_threads': 1,
+ },
+ 'warmup_seconds': WARMUP_SECONDS,
+ 'benchmark_seconds': BENCHMARK_SECONDS,
+ }
+ yield {
+ 'name': 'python_protobuf_async_unary_ping_pong',
+ 'num_servers': 1,
+ 'num_clients': 1,
+ 'client_config': {
+ 'client_type': 'ASYNC_CLIENT',
+ 'security_params': SECURE_SECARGS,
+ 'outstanding_rpcs_per_channel': 1,
+ 'client_channels': 1,
+ 'async_client_threads': 1,
+ 'rpc_type': 'UNARY',
+ 'load_params': {
+ 'closed_loop': {}
+ },
+ 'payload_config': EMPTY_PROTO_PAYLOAD,
+ 'histogram_params': HISTOGRAM_PARAMS,
+ },
+ 'server_config': {
+ 'server_type': 'SYNC_SERVER',
+ 'security_params': SECURE_SECARGS,
+ 'core_limit': 0,
+ 'async_server_threads': 1,
+ },
+ 'warmup_seconds': WARMUP_SECONDS,
+ 'benchmark_seconds': BENCHMARK_SECONDS,
+ }
+ yield {
+ 'name': 'python_to_cpp_single_channel_throughput',
+ 'num_servers': 1,
+ 'num_clients': 1,
+ 'client_config': {
+ 'client_type': 'ASYNC_CLIENT',
+ 'security_params': SECURE_SECARGS,
+ 'outstanding_rpcs_per_channel': 1,
+ 'client_channels': 1,
+ 'async_client_threads': 1,
+ 'rpc_type': 'STREAMING',
+ 'load_params': {
+ 'closed_loop': {}
+ },
+ 'payload_config': BIG_GENERIC_PAYLOAD,
+ 'histogram_params': HISTOGRAM_PARAMS,
+ },
+ 'server_config': {
+ 'server_type': 'ASYNC_GENERIC_SERVER',
+ 'security_params': SECURE_SECARGS,
+ 'core_limit': SINGLE_MACHINE_CORES/2,
+ 'async_server_threads': 1,
+ 'payload_config': BIG_GENERIC_PAYLOAD,
+ },
+ 'warmup_seconds': WARMUP_SECONDS,
+ 'benchmark_seconds': BENCHMARK_SECONDS,
+ 'SERVER_LANGUAGE': 'c++'
+ }
+
+ def __str__(self):
+ return 'python'
class RubyLanguage:
@@ -562,4 +684,5 @@ LANGUAGES = {
'node' : NodeLanguage(),
'ruby' : RubyLanguage(),
'java' : JavaLanguage(),
+ 'python' : PythonLanguage(),
}
diff --git a/tools/run_tests/run_interop_tests.py b/tools/run_tests/run_interop_tests.py
index 28b91f8b62..758be9304d 100755
--- a/tools/run_tests/run_interop_tests.py
+++ b/tools/run_tests/run_interop_tests.py
@@ -111,8 +111,7 @@ class CSharpLanguage:
return {}
def unimplemented_test_cases(self):
- # TODO: status_code_and_message doesn't work against node_server
- return _SKIP_COMPRESSION + ['status_code_and_message']
+ return _SKIP_COMPRESSION
def unimplemented_test_cases_server(self):
return _SKIP_COMPRESSION
@@ -270,13 +269,13 @@ class RubyLanguage:
self.safename = str(self)
def client_cmd(self, args):
- return ['ruby', 'src/ruby/bin/interop/interop_client.rb'] + args
+ return ['ruby', 'src/ruby/pb/test/client.rb'] + args
def cloud_to_prod_env(self):
return {}
def server_cmd(self, args):
- return ['ruby', 'src/ruby/bin/interop/interop_server.rb', '--use_tls=true'] + args
+ return ['ruby', 'src/ruby/pb/test/server.rb', '--use_tls=true'] + args
def global_env(self):
return {}
@@ -314,7 +313,8 @@ class PythonLanguage:
]
def global_env(self):
- return {'LD_LIBRARY_PATH': '{}/libs/opt'.format(DOCKER_WORKDIR_ROOT)}
+ return {'LD_LIBRARY_PATH': '{}/libs/opt'.format(DOCKER_WORKDIR_ROOT),
+ 'PYTHONPATH': '{}/src/python/gens'.format(DOCKER_WORKDIR_ROOT)}
def unimplemented_test_cases(self):
return _SKIP_ADVANCED + _SKIP_COMPRESSION + ['jwt_token_creds',
@@ -590,8 +590,8 @@ prod_servers = {
False),
'cloud_gateway_v2': ('216.239.32.255', 'grpc-test2.sandbox.googleapis.com',
True),
- 'gateway_v4': ('grpc-test4.sandbox.googleapis.com',
- 'grpc-test4.sandbox.googleapis.com', True),
+ 'gateway_v4': ('grpc-test4.sandbox.googleapis.com',
+ 'grpc-test4.sandbox.googleapis.com', True),
'cloud_gateway_v4': ('216.239.32.255', 'grpc-test4.sandbox.googleapis.com',
True),
}
diff --git a/tools/run_tests/run_performance_tests.py b/tools/run_tests/run_performance_tests.py
index ada341abf5..5519666e84 100755
--- a/tools/run_tests/run_performance_tests.py
+++ b/tools/run_tests/run_performance_tests.py
@@ -157,8 +157,9 @@ def archive_repo(languages):
sys.exit(1)
-def prepare_remote_hosts(hosts):
- """Prepares remote hosts."""
+def prepare_remote_hosts(hosts, prepare_local=False):
+ """Prepares remote hosts (and maybe prepare localhost as well)."""
+ prepare_timeout = 5*60
prepare_jobs = []
for host in hosts:
user_at_host = '%s@%s' % (_REMOTE_HOST_USERNAME, host)
@@ -167,13 +168,20 @@ def prepare_remote_hosts(hosts):
cmdline=['tools/run_tests/performance/remote_host_prepare.sh'],
shortname='remote_host_prepare.%s' % host,
environ = {'USER_AT_HOST': user_at_host},
- timeout_seconds=5*60))
- jobset.message('START', 'Preparing remote hosts.', do_newline=True)
+ timeout_seconds=prepare_timeout))
+ if prepare_local:
+ # Prepare localhost as well
+ prepare_jobs.append(
+ jobset.JobSpec(
+ cmdline=['tools/run_tests/performance/kill_workers.sh'],
+ shortname='local_prepare',
+ timeout_seconds=prepare_timeout))
+ jobset.message('START', 'Preparing hosts.', do_newline=True)
num_failures, _ = jobset.run(
prepare_jobs, newline_on_success=True, maxjobs=10)
if num_failures == 0:
jobset.message('SUCCESS',
- 'Remote hosts ready to start build.',
+ 'Prepare step completed successfully.',
do_newline=True)
else:
jobset.message('FAILED', 'Failed to prepare remote hosts.',
@@ -238,6 +246,9 @@ def start_qpsworkers(languages, worker_hosts):
def create_scenarios(languages, workers_by_lang, remote_host=None, regex='.*',
bq_result_table=None):
"""Create jobspecs for scenarios to run."""
+ all_workers = [worker
+ for workers in workers_by_lang.values()
+ for worker in workers]
scenarios = []
for language in languages:
for scenario_json in language.scenarios():
@@ -263,9 +274,6 @@ def create_scenarios(languages, workers_by_lang, remote_host=None, regex='.*',
scenarios.append(scenario)
# the very last scenario requests shutting down the workers.
- all_workers = [worker
- for workers in workers_by_lang.values()
- for worker in workers]
scenarios.append(create_quit_jobspec(all_workers, remote_host=remote_host))
return scenarios
@@ -322,7 +330,9 @@ if args.remote_driver_host:
if remote_hosts:
archive_repo(languages=[str(l) for l in languages])
- prepare_remote_hosts(remote_hosts)
+ prepare_remote_hosts(remote_hosts, prepare_local=True)
+else:
+ prepare_remote_hosts([], prepare_local=True)
build_local = False
if not args.remote_driver_host:
diff --git a/tools/run_tests/run_python.sh b/tools/run_tests/run_python.sh
index a93ef2576d..7a3ce6b821 100755
--- a/tools/run_tests/run_python.sh
+++ b/tools/run_tests/run_python.sh
@@ -33,6 +33,8 @@ set -ex
# change to grpc repo root
cd $(dirname $0)/../..
+TOX_PYTHON_ENV="$1"
+
ROOT=`pwd`
export LD_LIBRARY_PATH=$ROOT/libs/$CONFIG
export DYLD_LIBRARY_PATH=$ROOT/libs/$CONFIG
@@ -45,9 +47,9 @@ export GRPC_PYTHON_USE_PRECOMPILED_BINARIES=0
if [ "$CONFIG" = "gcov" ]
then
export GRPC_PYTHON_ENABLE_CYTHON_TRACING=1
- tox
+ tox -e ${TOX_PYTHON_ENV}
else
- $ROOT/.tox/py27/bin/python $ROOT/setup.py test_lite
+ $ROOT/.tox/${TOX_PYTHON_ENV}/bin/python $ROOT/setup.py test_lite
fi
mkdir -p $ROOT/reports
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index 9dff686bbf..dea481ef90 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -356,24 +356,20 @@ class PhpLanguage(object):
class PythonLanguage(object):
- def __init__(self):
- self._build_python_versions = ['2.7']
- self._has_python_versions = []
-
def configure(self, config, args):
self.config = config
self.args = args
- _check_compiler(self.args.compiler, ['default'])
+ self._tox_env = self._get_tox_env(self.args.compiler)
def test_specs(self):
# load list of known test suites
with open('src/python/grpcio/tests/tests.json') as tests_json_file:
tests_json = json.load(tests_json_file)
environment = dict(_FORCE_ENVIRON_FOR_WRAPPERS)
- environment['PYVER'] = '2.7'
+ environment['PYTHONPATH'] = os.path.abspath('src/python/gens')
if self.config.build_config != 'gcov':
return [self.config.job_spec(
- ['tools/run_tests/run_python.sh'],
+ ['tools/run_tests/run_python.sh', self._tox_env],
None,
environ=dict(environment.items() +
[('GRPC_PYTHON_TESTRUNNER_FILTER', suite_name)]),
@@ -398,18 +394,7 @@ class PythonLanguage(object):
return []
def build_steps(self):
- commands = []
- for python_version in self._build_python_versions:
- try:
- with open(os.devnull, 'w') as output:
- subprocess.check_call(['which', 'python' + python_version],
- stdout=output, stderr=output)
- commands.append(['tools/run_tests/build_python.sh', python_version])
- self._has_python_versions.append(python_version)
- except:
- jobset.message('WARNING', 'Missing Python ' + python_version,
- do_newline=True)
- return commands
+ return [['tools/run_tests/build_python.sh', self._tox_env]]
def post_tests_steps(self):
return []
@@ -420,6 +405,15 @@ class PythonLanguage(object):
def dockerfile_dir(self):
return 'tools/dockerfile/test/python_jessie_%s' % _docker_arch_suffix(self.args.arch)
+ def _get_tox_env(self, compiler):
+ """Returns name of tox environment based on selected compiler."""
+ if compiler == 'python2.7' or compiler == 'default':
+ return 'py27'
+ elif compiler == 'python3.4':
+ return 'py34'
+ else:
+ raise Exception('Compiler %s not supported.' % compiler)
+
def __str__(self):
return 'python'
@@ -807,7 +801,8 @@ argp.add_argument('--compiler',
choices=['default',
'gcc4.4', 'gcc4.9', 'gcc5.3',
'clang3.4', 'clang3.6',
- 'vs2010', 'vs2013', 'vs2015'],
+ 'vs2010', 'vs2013', 'vs2015',
+ 'python2.7', 'python3.4'],
default='default',
help='Selects compiler to use. Allowed values depend on the platform and language.')
argp.add_argument('--build_only',
diff --git a/tools/run_tests/sources_and_headers.json b/tools/run_tests/sources_and_headers.json
index 2b140a4270..25d9c5df94 100644
--- a/tools/run_tests/sources_and_headers.json
+++ b/tools/run_tests/sources_and_headers.json
@@ -2128,6 +2128,24 @@
{
"deps": [
"gpr",
+ "grpc",
+ "grpc++"
+ ],
+ "headers": [
+ "src/proto/grpc/testing/compiler_test.grpc.pb.h",
+ "src/proto/grpc/testing/compiler_test.pb.h"
+ ],
+ "language": "c++",
+ "name": "golden_file_test",
+ "src": [
+ "test/cpp/codegen/golden_file_test.cc"
+ ],
+ "third_party": false,
+ "type": "target"
+ },
+ {
+ "deps": [
+ "gpr",
"gpr_test_util",
"grpc",
"grpc++",
@@ -2176,6 +2194,19 @@
],
"headers": [],
"language": "c++",
+ "name": "grpc_node_plugin",
+ "src": [
+ "src/compiler/node_plugin.cc"
+ ],
+ "third_party": false,
+ "type": "target"
+ },
+ {
+ "deps": [
+ "grpc_plugin_support"
+ ],
+ "headers": [],
+ "language": "c++",
"name": "grpc_objective_c_plugin",
"src": [
"src/compiler/objective_c_plugin.cc"
@@ -4363,6 +4394,8 @@
"src/compiler/csharp_generator.h",
"src/compiler/csharp_generator_helpers.h",
"src/compiler/generator_helpers.h",
+ "src/compiler/node_generator.h",
+ "src/compiler/node_generator_helpers.h",
"src/compiler/objective_c_generator.h",
"src/compiler/objective_c_generator_helpers.h",
"src/compiler/python_generator.h",
@@ -4382,6 +4415,9 @@
"src/compiler/csharp_generator.h",
"src/compiler/csharp_generator_helpers.h",
"src/compiler/generator_helpers.h",
+ "src/compiler/node_generator.cc",
+ "src/compiler/node_generator.h",
+ "src/compiler/node_generator_helpers.h",
"src/compiler/objective_c_generator.cc",
"src/compiler/objective_c_generator.h",
"src/compiler/objective_c_generator_helpers.h",
@@ -5479,6 +5515,7 @@
"src/core/lib/support/string.c",
"src/core/lib/support/string.h",
"src/core/lib/support/string_posix.c",
+ "src/core/lib/support/string_util_win32.c",
"src/core/lib/support/string_win32.c",
"src/core/lib/support/string_win32.h",
"src/core/lib/support/subprocess_posix.c",
@@ -5497,6 +5534,7 @@
"src/core/lib/support/time_win32.c",
"src/core/lib/support/tls_pthread.c",
"src/core/lib/support/tmpfile.h",
+ "src/core/lib/support/tmpfile_msys.c",
"src/core/lib/support/tmpfile_posix.c",
"src/core/lib/support/tmpfile_win32.c",
"src/core/lib/support/wrap_memcpy.c"
diff --git a/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md b/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md
index 62ca8aff2c..9f079beebc 100644
--- a/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md
+++ b/tools/run_tests/stress_test/STRESS_CLIENT_SPEC.md
@@ -6,8 +6,8 @@ This document specifies the features a stress test client should implement in or
--------------
**1.** A stress test client should be able to repeatedly execute one or more of the existing 'interop test cases'. It may just be a wrapper around the existing interop test client. The exact command line arguments the client should support are listed in _Table 1_ below.
-**2.** The stress test client must implement a metrics server defined by _[metrics.proto](https://github.com/grpc/grpc/blob/master/src/proto/grpc/testing/metrics.proto)_ and must expose _qps_ as a long-valued Gauge. The client can track the overall _qps_ in one Gauge or in multiple Gauges (for example: One per Channel or Stub).
- The framework periodically queries the _qps_ by calling the `GetAllGauges()` method (the framework assumes that all the returned Gauges are _qps_ Gauges) and uses this to determine if the stress test client is running or crashed or stalled.
+**2.** The stress test client must implement a metrics server defined by _[metrics.proto](https://github.com/grpc/grpc/blob/master/src/proto/grpc/testing/metrics.proto)_ and must expose _qps_ as a `Long`-valued Gauge. The client can track the overall _qps_ in one Gauge or in multiple Gauges (for example: One per Channel or Stub).
+ The framework periodically queries the _qps_ by calling the `GetAllGauges()` method (the framework assumes that all the returned Gauges are _qps_ Gauges and adds them up to determine the final qps) and uses this to determine if the stress test client is running or crashed or stalled.
> *Note:* In this context, the term _**qps**_ means _interop test cases per second_ (not _messages per second_ or _rpc calls per second_)
diff --git a/tools/run_tests/stress_test/configs/asan.json b/tools/run_tests/stress_test/configs/asan.json
index c558855314..cb9f55763b 100644
--- a/tools/run_tests/stress_test/configs/asan.json
+++ b/tools/run_tests/stress_test/configs/asan.json
@@ -16,8 +16,7 @@
"num_channels_per_server":5,
"num_stubs_per_channel":10,
"test_cases": "empty_unary:1,large_unary:1,client_streaming:1,server_streaming:1,empty_stream:1",
- "metrics_port": 8081,
- "metrics_collection_interval_secs":120
+ "metrics_port": 8081
},
"metricsPort": 8081,
"metricsArgs": {
diff --git a/tools/run_tests/stress_test/configs/csharp.json b/tools/run_tests/stress_test/configs/csharp.json
new file mode 100644
index 0000000000..b7090696b4
--- /dev/null
+++ b/tools/run_tests/stress_test/configs/csharp.json
@@ -0,0 +1,90 @@
+{
+ "dockerImages": {
+ "grpc_stress_csharp" : {
+ "buildScript": "tools/jenkins/build_interop_stress_image.sh",
+ "dockerFileDir": "grpc_interop_stress_csharp"
+ }
+ },
+
+ "clientTemplates": {
+ "baseTemplates": {
+ "default": {
+ "wrapperScriptPath": "/var/local/git/grpc/tools/gcp/stress_test/run_client.py",
+ "pollIntervalSecs": 60,
+ "clientArgs": {
+ "num_channels_per_server":5,
+ "num_stubs_per_channel":10,
+ "test_cases": "empty_unary:1,large_unary:1,client_streaming:1,server_streaming:1,empty_stream:1",
+ "metrics_port": 8081
+ },
+ "metricsPort": 8081,
+ "metricsArgs": {
+ "metrics_server_address": "localhost:8081",
+ "total_only": "true"
+ }
+ }
+ },
+ "templates": {
+ "csharp_client": {
+ "baseTemplate": "default",
+ "stressClientCmd": [
+ "mono",
+ "/var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.StressClient/bin/Debug/Grpc.IntegrationTesting.StressClient.exe"
+ ],
+ "metricsClientCmd": ["/var/local/git/grpc/bins/opt/metrics_client"]
+ }
+ }
+ },
+
+ "serverTemplates": {
+ "baseTemplates":{
+ "default": {
+ "wrapperScriptPath": "/var/local/git/grpc/tools/gcp/stress_test/run_server.py",
+ "serverPort": 8080,
+ "serverArgs": {
+ "port": 8080
+ }
+ }
+ },
+ "templates": {
+ "csharp_server": {
+ "baseTemplate": "default",
+ "stressServerCmd": [
+ "mono",
+ "/var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Server/bin/Debug/Grpc.IntegrationTesting.Server.exe"
+ ]
+ }
+ }
+ },
+
+ "testMatrix": {
+ "serverPodSpecs": {
+ "stress-server-csharp": {
+ "serverTemplate": "csharp_server",
+ "dockerImage": "grpc_stress_csharp",
+ "numInstances": 1
+ }
+ },
+
+ "clientPodSpecs": {
+ "stress-client-csharp": {
+ "clientTemplate": "csharp_client",
+ "dockerImage": "grpc_stress_csharp",
+ "numInstances": 10,
+ "serverPodSpec": "stress-server-csharp"
+ }
+ }
+ },
+
+ "globalSettings": {
+ "buildDockerImages": true,
+ "pollIntervalSecs": 60,
+ "testDurationSecs": 7200,
+ "kubernetesProxyPort": 8001,
+ "datasetIdNamePrefix": "stress_test_csharp",
+ "summaryTableId": "summary",
+ "qpsTableId": "qps",
+ "podWarmupSecs": 60
+ }
+}
+
diff --git a/tools/run_tests/stress_test/configs/opt-tsan-asan.json b/tools/run_tests/stress_test/configs/opt-tsan-asan.json
index 4f172ef30b..936d15169e 100644
--- a/tools/run_tests/stress_test/configs/opt-tsan-asan.json
+++ b/tools/run_tests/stress_test/configs/opt-tsan-asan.json
@@ -26,8 +26,7 @@
"num_channels_per_server":5,
"num_stubs_per_channel":10,
"test_cases": "empty_unary:1,large_unary:1,client_streaming:1,server_streaming:1,empty_stream:1",
- "metrics_port": 8081,
- "metrics_collection_interval_secs": 60
+ "metrics_port": 8081
},
"metricsPort": 8081,
"metricsArgs": {
diff --git a/tools/run_tests/stress_test/configs/opt.json b/tools/run_tests/stress_test/configs/opt.json
index 75505186f2..f45b824048 100644
--- a/tools/run_tests/stress_test/configs/opt.json
+++ b/tools/run_tests/stress_test/configs/opt.json
@@ -16,8 +16,7 @@
"num_channels_per_server":5,
"num_stubs_per_channel":10,
"test_cases": "empty_unary:1,large_unary:1,client_streaming:1,server_streaming:1,empty_stream:1",
- "metrics_port": 8081,
- "metrics_collection_interval_secs": 60
+ "metrics_port": 8081
},
"metricsPort": 8081,
"metricsArgs": {
diff --git a/tools/run_tests/stress_test/configs/tsan.json b/tools/run_tests/stress_test/configs/tsan.json
index a7ec08313d..6ef3bdf7ea 100644
--- a/tools/run_tests/stress_test/configs/tsan.json
+++ b/tools/run_tests/stress_test/configs/tsan.json
@@ -16,8 +16,7 @@
"num_channels_per_server":5,
"num_stubs_per_channel":10,
"test_cases": "empty_unary:1,large_unary:1,client_streaming:1,server_streaming:1,empty_stream:1",
- "metrics_port": 8081,
- "metrics_collection_interval_secs":120
+ "metrics_port": 8081
},
"metricsPort": 8081,
"metricsArgs": {
diff --git a/tools/run_tests/tests.json b/tools/run_tests/tests.json
index 97d43d7894..cf1154426f 100644
--- a/tools/run_tests/tests.json
+++ b/tools/run_tests/tests.json
@@ -2280,6 +2280,27 @@
"flaky": false,
"gtest": true,
"language": "c++",
+ "name": "golden_file_test",
+ "platforms": [
+ "linux",
+ "mac",
+ "posix",
+ "windows"
+ ]
+ },
+ {
+ "args": [],
+ "ci_platforms": [
+ "linux",
+ "mac",
+ "posix",
+ "windows"
+ ],
+ "cpu_cost": 1.0,
+ "exclude_configs": [],
+ "flaky": false,
+ "gtest": true,
+ "language": "c++",
"name": "grpclb_api_test",
"platforms": [
"linux",
@@ -23261,10 +23282,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/00.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23272,10 +23290,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23283,10 +23298,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/01.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23294,10 +23306,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23305,10 +23314,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0159f564d91869bc07239f5551a493c2845a4524"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23316,10 +23322,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23327,10 +23330,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/02.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23338,10 +23338,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23349,10 +23346,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0211f960c2da343c3cde6406e650d73278e01e47"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23360,10 +23354,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23371,10 +23362,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0236f28708dcc2e044d67ecf93539ce6c33a727a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23382,10 +23370,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23393,10 +23378,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/02434dcdaca96b9eacee76eb351e99f015eaa05e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23404,10 +23386,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23415,10 +23394,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/03.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23426,10 +23402,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23437,10 +23410,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0302b90625ac9f61f45b45d043fda23b5472d711"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23448,10 +23418,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23459,10 +23426,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/04.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23470,10 +23434,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23481,10 +23442,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0433cabb8c28820bda0a6eac35d17d120f1b6865"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23492,10 +23450,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23503,10 +23458,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0452ea591951af85724608917fda16926dad7451"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23514,10 +23466,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23525,10 +23474,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0468ab4bf4f7e10b680f43efae4bf9686834d220"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23536,10 +23482,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/04a5f10d2ebc712cf13c05b5ed0fafb31b42737c"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -23547,10 +23506,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/04e01f399f194434b2b724877df64828e8f52c14"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23558,10 +23514,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23569,10 +23522,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/05.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23580,10 +23530,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23591,10 +23538,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0539bf31b2310091ce30d0123142d63589939105"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23602,10 +23546,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23613,10 +23554,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0542a0e5aeb1658cc965724bfced56770569263b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23624,10 +23562,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23635,10 +23570,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/056e56878b249c7fd0b95576b352ab2f4d46582e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23646,10 +23578,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23657,10 +23586,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/05dee1c3847f2bca29bd14ed701ce64999b298b2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23668,10 +23594,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23679,10 +23602,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/06.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23690,10 +23610,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23701,10 +23618,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/064d3beeef29a647deb1b345426ea7212de71cfe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23712,10 +23626,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23723,10 +23634,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/067298a97640cc5e212647864d21bc1fa6bb7e75"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23734,10 +23642,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23745,10 +23650,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/07.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23756,10 +23658,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23767,10 +23666,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/070c7005e63abba72c6bc1a0ee6d44e340f2d2be"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23778,10 +23674,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23789,10 +23682,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/07674d39538e07c29342cb2ee8856bc71fc06638"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23800,10 +23690,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23811,10 +23698,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/07aa7d6c71878eb78b25ca12d79082f70ae7f64c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23822,10 +23706,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23833,10 +23714,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/07ae5ed3dedbd83e376c892a9546cc0cd733c26f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23844,10 +23722,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23855,10 +23730,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/07cc8b298d1502d0c30f3f160871e66e5a1f3fe1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23866,10 +23738,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23877,10 +23746,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/08.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23888,10 +23754,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23899,10 +23762,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/085865a209776911782f592c9f30ffe0ad3814a0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23910,10 +23770,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23921,10 +23778,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/09.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23932,10 +23786,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23943,10 +23794,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/092b85d1f5c922287e476e6e75ad8a0a80c779a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23954,10 +23802,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23965,10 +23810,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/09923e3ef02243b1902406c637f9516cbe99d7cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23976,10 +23818,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -23987,10 +23826,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -23998,10 +23834,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24009,10 +23842,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0a71ae781345f9ee2b08008a81f9055e6c1d5256"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24020,10 +23850,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24031,10 +23858,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0a7aad5682c304b0cbda31445b221238e0293a9f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24042,10 +23866,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24053,10 +23874,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0b.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24064,10 +23882,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24075,10 +23890,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0b6f0ea99a329e054032e6c292b99c3bcad0c9f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24086,10 +23898,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24097,10 +23906,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0bbd89b21cfd192174c25803c7f1afeec88e6524"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24108,10 +23914,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24119,10 +23922,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24130,10 +23930,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24141,10 +23938,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0d.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24152,10 +23946,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24163,10 +23954,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0d16d6c2c128ac4ee7b596b763822b4194968533"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24174,10 +23962,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24185,10 +23970,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0d8bd296d63a5aca5f80d7a7d00387048babda36"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24196,10 +23978,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24207,10 +23986,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0d9d8241c5568fea586d21f91ae1891dac31ba24"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24218,10 +23994,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24229,10 +24002,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0e.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24240,10 +24010,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24251,10 +24018,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0e2a9ad3aacba320563095a874768a9e546a3db2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24262,10 +24026,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24273,10 +24034,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24284,10 +24042,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24295,10 +24050,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0f2831e0f73521a0991e11115c16847afca16bb3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24306,10 +24058,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24317,10 +24066,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/0fa216ec645b3973b5e6d28baedd5acc1542e69e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24328,10 +24074,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24339,10 +24082,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/10302aa7598eb36d0ac22d0478eb0f2a6b010ea6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24350,10 +24090,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24361,10 +24098,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1109cb814fd134862a3f5ef5c9b2244585882b8f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24372,10 +24106,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24383,10 +24114,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/119410315423e5f37919886ced7f03235e5792aa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24394,10 +24122,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24405,10 +24130,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/12083209096187575021a775826b08b70b39ed4c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24416,10 +24138,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24427,10 +24146,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1254c9256157e6362003c97c8c93d8cd67a28772"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24438,10 +24154,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24449,10 +24162,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/12a97827d0f817e3ffd8d9cf1bdba0f945b6fda4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24460,10 +24170,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24471,10 +24178,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/12ef45f6beba92677a2a7508fc5e1bfef30ded66"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24482,10 +24186,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24493,10 +24194,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/130c41e2dd87c36b4079c8e5bd380dbe3e0a2b38"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24504,10 +24202,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24515,10 +24210,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/13c409dcf7752c25b2b51ac5fad9201b505d7059"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24526,10 +24218,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24537,10 +24226,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/143789594154049441d565b65ce725fc4f8c12bc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24548,10 +24234,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24559,10 +24242,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/149044286608a7945721c61f12196bebd5adb2ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24570,10 +24250,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24581,10 +24258,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/157586c7c0ba8fd0dc9bfc2426229a7da934cec2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24592,10 +24266,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24603,10 +24274,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/15c37fe5be9f23c0f0e59e12ee7666007acdb3c5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24614,10 +24282,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24625,10 +24290,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1661d0799cbf2015fd64e9f648ebb49281d41c6d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24636,10 +24298,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24647,10 +24306,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1671cf01e5baf796c5572b7b0e15d226a5c93f23"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24658,10 +24314,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24669,10 +24322,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/16a9beb811f836a444172a5da9290b47d77c32ef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24680,10 +24330,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24691,10 +24338,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/16d52016278caebf92ba455f7ac8a8c7482c3563"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24702,10 +24346,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24713,10 +24354,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/173ebf4139ee6d7a574b6767059d82375674bbf4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24724,10 +24362,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24735,10 +24370,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/17cfb281eaa8a17d77e08c3648bb93f3b5aa5297"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24746,10 +24378,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24757,10 +24386,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/183c878064b6a0ddf6a22dc4a2aa0d33a2d802d0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24768,10 +24394,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24779,10 +24402,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1887558eb48d6a4341610fd0395cef8e87744044"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24790,10 +24410,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24801,10 +24418,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/18c856af1e2ebb934401e523043eaf80aecc8363"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24812,10 +24426,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24823,10 +24434,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/18f2d7626b6ad4859e735e448b00b6916f1d3e2e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24834,10 +24442,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24845,10 +24450,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/19dcc3082c76b85177ce6a56d195473aaa285268"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24856,10 +24458,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24867,10 +24466,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1a6b907bfa02ceebeb80aab47b3c3c51161eb868"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24878,10 +24474,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24889,10 +24482,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1b699132724acab3d42fb5210c07b74343449873"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24900,10 +24490,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24911,10 +24498,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1c0417c96e6408d2902ef8fe4b8cd05f1ce4a50f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24922,10 +24506,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24933,10 +24514,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1c6e5ad8dbff133707cc85b05a0057abf55d08ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24944,10 +24522,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24955,10 +24530,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1c73564518349ebc87c4023b9d9a3cbc4fbc6cdd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24966,10 +24538,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24977,10 +24546,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1c98433d827ea4aae2ba8a68c4d11bc2527cb15d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -24988,10 +24554,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -24999,10 +24562,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1ccd81836f26b7ececde2b02a22b19ab2a498631"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25010,10 +24570,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25021,10 +24578,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1d8b40b4798e652184df3bcffe1b1d7e32648f79"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25032,10 +24586,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25043,10 +24594,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1e4a2a6998218ea8f475aa2ee27869207b33b612"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25054,10 +24602,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25065,10 +24610,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1e55e5f47b550bab133099e5a98d7c751a0a2d7b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25076,10 +24618,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25087,10 +24626,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1e7d2d8f6109f4c02815ce8582c799134f2ff5dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25098,10 +24634,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25109,10 +24642,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/1fda93a85f7b5b7a0c2d68a03123e58a6d20f124"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25120,10 +24650,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25131,10 +24658,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/20322515ebf6df572cb2f596d8a20d3d8893193d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25142,10 +24666,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25153,10 +24674,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/207c5a0f80f052ac7b48f6dd45cd33987be27f32"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25164,10 +24682,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25175,10 +24690,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2099db589f606dd8932a950280f5d2b23751af9f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25186,10 +24698,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25197,10 +24706,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/21f3be485826850e4f4670bb81982e2827815426"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25208,10 +24714,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25219,10 +24722,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/240afe42d3e2834c46a79d9df0dd6ca018831398"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25230,10 +24730,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25241,10 +24738,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/24a87af0954c808fbd3f2c55185d4b1fa9459f4e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25252,10 +24746,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25263,10 +24754,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/24df70902c288fcac060365c2e6f61269a3606b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25274,10 +24762,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25285,10 +24770,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2500fc12d5d1b5ed99fc3fe518c28849d1c8d6e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25296,10 +24778,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25307,10 +24786,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2501c7c3f78829725e6bf556277785588318106b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25318,10 +24794,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25329,10 +24802,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2507810915aecd3adf1287edf8c9f54b23a8ebd5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25340,10 +24810,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25351,10 +24818,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/253b8946a7cf403dd466f1685df2f741d4660a34"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25362,10 +24826,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25373,10 +24834,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/26865cd90c1461694d94d96232436372df2a91fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25384,10 +24842,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25395,10 +24850,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2743ee5a764fb0c4e04cdf84c9b3810ac8093998"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25406,10 +24858,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25417,10 +24866,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2748d28f2e03d740a89f7a50ea52450d0c5523f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25428,10 +24874,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25439,10 +24882,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2837baed2fbf1612f88224e91ddc46241dd9d972"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25450,10 +24890,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25461,10 +24898,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/28f8c7af6aab3bbabe028f780e174b27b924a146"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25472,10 +24906,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25483,10 +24914,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2942908b7973da7113098a0ea25487e3372db173"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25494,10 +24922,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25505,10 +24930,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/296c3f5b9880fe7ccff4d2a67f489b38b5b6fd6e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25516,10 +24938,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25527,10 +24946,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2a600cae342e8e9e23406bb1e76133f48d936766"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25538,10 +24954,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25549,10 +24962,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2ab009994e603404e194ebe0120840d388fb765e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25560,10 +24970,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25571,10 +24978,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2ad5ed48b598bd9e2d486a21eed5314736e5b56a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25582,10 +24986,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25593,10 +24994,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2aee21e4d1175963fa719d376406bb10d4818bdd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25604,10 +25002,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25615,10 +25010,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2af392765963966f2d1ddd5d5af4fcadd93c3b06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25626,10 +25018,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25637,10 +25026,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2af4e625522d128d03252f35b5fa5094cbcebc9f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25648,10 +25034,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25659,10 +25042,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2b931953e9bd02c3310a05234e91550bcd8ddf62"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25670,10 +25050,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25681,10 +25058,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2b933a0ede25a06e32c7d9cc5a3eda78086f3060"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25692,10 +25066,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25703,10 +25074,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2bbe5b2c12a964b53a5e6f78cdd5f595d95082a9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25714,10 +25082,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25725,10 +25090,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2bc326b3ecf6d069595bc27cc1bca76b374c8e85"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25736,10 +25098,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25747,10 +25106,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2c917a39d34aad10d611a1647a6df6502b4d4d59"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25758,10 +25114,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25769,10 +25122,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2d61ec2cff75eadbc47e0932998b8a797e0cd96c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25780,10 +25130,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25791,10 +25138,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2d9440daa210b9298f34982dcf7adc3564ad965c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25802,10 +25146,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25813,10 +25154,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2d974f9fd1c57bce55cb9f1bbc25eb1e7a10454b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25824,10 +25162,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25835,10 +25170,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2db3a358c43c179a728f0650a00be295e88f8060"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25846,10 +25178,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25857,10 +25186,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2e21a2f9bff2514667aaec75629c82daa067ff57"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25868,10 +25194,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25879,10 +25202,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2e82bfb7e8eede401ce75f6afe8c15ffd06130db"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25890,10 +25210,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25901,10 +25218,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2f0a8f0f96402ba1681ab3a9095a3dea47cdc53f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25912,10 +25226,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25923,10 +25234,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2f120ceed5250084f62010df9bf8fe8e8f3f643b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25934,10 +25242,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25945,10 +25250,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2f44fd38efef5818750f9adc9b133e40f9cdec71"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25956,10 +25258,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25967,10 +25266,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2f57224df35ff1583d14436a477330db23d70b0a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -25978,10 +25274,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -25989,10 +25282,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/2fa6a874e625ca4d71941408d94698f898be4ea1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26000,10 +25290,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26011,10 +25298,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/301c057536319f49dcec68ab96677714e3dbf793"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26022,10 +25306,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26033,10 +25314,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/30694ac08ff5a6a10cc781b9042c89f4019cfe0a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26044,10 +25322,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26055,10 +25330,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/307a91e344b94923837e01a1657ff277f44db07d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26066,10 +25338,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26077,10 +25346,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/30fbe0ac4c74e2be3edd4f21b72bcae02e6c623f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26088,10 +25354,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26099,10 +25362,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/313001e1cc15ef9887b43e0c6de398eea2f20e00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26110,10 +25370,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26121,10 +25378,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/31429d04a34cc6643eebed7eeb8a807a83b57b1f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26132,10 +25386,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26143,10 +25394,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3230d9876d770657d86dfb768b80494cda52abc8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26154,10 +25402,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26165,10 +25410,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/32594aaa716c1a04b0f927ef964f1593735cb289"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26176,10 +25418,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26187,10 +25426,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/32b9de8461fd32b1236abb86abc91c82652d6e2c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26198,10 +25434,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26209,10 +25442,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/32c108ead009572fbe9a216b372e5c0b3843238e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26220,10 +25450,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26231,10 +25458,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3399ac8bb9e0d3a2cbf22a95d1e20c70e2415e41"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26242,10 +25466,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26253,10 +25474,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/342d148e59fb500ad76d583cf828c16cd3d3ed2e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26264,10 +25482,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26275,10 +25490,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3465fb573ac3c59a0804aadeba2f205870abcc3d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26286,10 +25498,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26297,10 +25506,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/364f77bffd55805e2be9d2b3a071012e8fc3a083"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26308,10 +25514,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26319,10 +25522,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/368d2b5d4c6776afbed8e5e76cc3a4ccdde1df42"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26330,10 +25530,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26341,10 +25538,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/383043f6c05edc5a18f5c8e7b9d0314db63eab5e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26352,10 +25546,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26363,10 +25554,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3850b085a0a33fa2a08630dddb03e0f1adb1bee9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26374,10 +25562,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/38a55e83e685617cdf72e95f1303857b627ae346"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -26385,10 +25586,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/38c609f72f5a2cf977788afef9c34652f754add0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26396,10 +25594,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26407,10 +25602,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3a287590e2d38d5dbc0b85d29ae2497d27aa0305"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26418,10 +25610,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26429,10 +25618,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3a4fa4e81b78cae093b2d53b0a6f272a398a7cda"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26440,10 +25626,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26451,10 +25634,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3aee5ced2869452b8ed65313d01b9b9c87144cd4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26462,10 +25642,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26473,10 +25650,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3b002ab57ff8080fbb1e72d985ca6f59f96a171e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26484,10 +25658,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26495,10 +25666,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3c84d21c46b89e7573750dd4517ea2eb58e37e27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26506,10 +25674,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26517,10 +25682,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3c8e6352f6c2a07bd5ef2b9a93c103935c8eaf0d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26528,10 +25690,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26539,10 +25698,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3d8c66be71e0ae0dfb0c2c7b84e4d8336f92b7ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26550,10 +25706,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26561,10 +25714,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3dedcaf501bc9718e5d372862b081fc9fdfb3959"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26572,10 +25722,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26583,10 +25730,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3df06a68edfc53fa88634c657a50cc6820354165"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26594,10 +25738,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26605,10 +25746,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3f36ae935255c4bbd2bd8d4a85bfa92bba02225c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26616,10 +25754,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26627,10 +25762,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/3f47ad9ab401599f42d3c4f37ab9f702e3ff0fc9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26638,10 +25770,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/40b4b92460c4e76a39af9042fb3d86d491a98e16"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -26649,10 +25794,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/42324d3d9e013cd43d4feeed1b48fbe1ea18a732"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26660,10 +25802,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26671,10 +25810,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/42a8e7c267f66a0747f30b4053ec79325074dc97"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26682,10 +25818,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26693,10 +25826,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/42c3c4a4e7d21e79d1e36494d5324f10a5ecbb04"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26704,10 +25834,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26715,10 +25842,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/43676969fb81dcc1699b6a17eb465ef3cd4c2ab8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26726,10 +25850,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26737,10 +25858,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/439d4e4ed3ab9fe77e2bbda5b2be3d123beefa00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26748,10 +25866,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26759,10 +25874,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/441c94c010d19206c337d3c850cc449523ab480d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26770,10 +25882,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26781,10 +25890,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4449ec3eda232c394fad83e34b002e9bb46862e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26792,10 +25898,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26803,10 +25906,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/449ece0109a8543f26311f3ddc23525a2f288b64"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26814,10 +25914,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26825,10 +25922,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/44bf16b9eb7302a6b02a600ac92dadf916c4e629"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26836,10 +25930,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26847,10 +25938,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/44e1fdcc46db56bf61a6702fd10766b56d35bc74"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26858,10 +25946,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26869,10 +25954,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/45657516294c5426c490e6aa522a79077c972856"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26880,10 +25962,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26891,10 +25970,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/465b299ab3509b61016406e0d1d93f7774c03c8c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26902,10 +25978,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26913,10 +25986,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/46efabc911aab09a5e7a34a19ef97ce710594a77"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26924,10 +25994,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26935,10 +26002,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/472adcbc2a1970f2392e596c28bd44087b8f3431"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26946,10 +26010,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26957,10 +26018,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/47e402f3386843e0055431750f30b710e10295dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26968,10 +26026,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -26979,10 +26034,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/47ecf4079ea23d4de5fd9282f733eb5429f7ab05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -26990,10 +26042,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27001,10 +26050,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/484ab9d070fffe7e3d1a1704c9fa2ce01e192450"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27012,10 +26058,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27023,10 +26066,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4905b3fb0f7d2196a5612e8e432abda666e4317d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27034,10 +26074,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27045,10 +26082,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/490f5aa97dc05ef1ce089fa9d4fd377bacafcf18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27056,10 +26090,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27067,10 +26098,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4a3eae69f4c5dc768b166620af348316c9fac3e6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27078,10 +26106,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27089,10 +26114,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4c3dcb9cb14f89b3616fc7cca78f2ebc502907eb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27100,10 +26122,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27111,10 +26130,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4c686a41d4d2226b3cc76b8154d8df090d075f00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27122,10 +26138,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27133,10 +26146,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4d472e5a8e8ee92be6f23a101babbc601dd2512c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27144,10 +26154,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27155,10 +26162,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4d4aa6ddd6404300e5278682e560f25292e9804e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27166,10 +26170,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27177,10 +26178,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4e36813fde9b5de1b62de95f498f2e0a48b5c5f7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27188,10 +26186,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27199,10 +26194,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4ef22ea5b0aa8b80a180a9654f5aef121c5aad83"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27210,10 +26202,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27221,10 +26210,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/4f53cc7b3ed0c77c3b5e4478f54caa40e0bf64b6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27232,10 +26218,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27243,10 +26226,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5000fa3e29de15e7533b0e04b37eb1985ae69891"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27254,10 +26234,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27265,10 +26242,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/50841095cafd9f9de6684fb3d89cd5fe148494ef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27276,10 +26250,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27287,10 +26258,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/50bfe6100bf11339372ba29fe0c9b38c3ec2ebf0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27298,10 +26266,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27309,10 +26274,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/51d7466ac65468db7094bdedc60d1604231acc05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27320,10 +26282,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27331,10 +26290,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/51ed796a5f8d8fccebe013ccccdc1ed5d8b8b4c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27342,10 +26298,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27353,10 +26306,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/528cc09294d2288fc91a4bab7cf6ec621c6621b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27364,10 +26314,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27375,10 +26322,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5298ce28a7eab28c99964c0d838b017355607c92"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27386,10 +26330,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27397,10 +26338,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/52dba1b997f903c5fa3d7da71421b36d96d9f55c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27408,10 +26346,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27419,10 +26354,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/53e68cd362f3c8d64941efbb0b527c52da5e8424"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27430,10 +26362,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27441,10 +26370,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/546fe2e2b1e2756c3f121d0545866798c85c9b8b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27452,10 +26378,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27463,10 +26386,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/54a0a2c37ce1830f241f6e2828adc8057cfa385f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27474,10 +26394,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27485,10 +26402,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/55ed466781b547db5957233bd8db0ce1f189183f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27496,10 +26410,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27507,10 +26418,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5677b3500e9353856c8d87fbe1476a22df4231f8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27518,10 +26426,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27529,10 +26434,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/56f3ca8174d263240113de88e7547e7b1c5cb2cf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27540,10 +26442,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27551,10 +26450,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/57798cc4375de344391221fd07d591f5c64d646d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27562,10 +26458,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27573,10 +26466,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/57da1745490c2f21ecb86370f1f72f77752bc739"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27584,10 +26474,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27595,10 +26482,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/57dea4528141649208fa2af10c18e98e80c1758b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27606,10 +26490,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27617,10 +26498,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/588f9166c839baf3102185d38f77f9a750e62c7f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27628,10 +26506,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27639,10 +26514,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5939ec5fd8f4e02ff0720cfa3ef685876bb3549d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27650,10 +26522,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27661,10 +26530,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/594d676c8c05d75ba8587d9e900850dff5e21ff8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27672,10 +26538,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27683,10 +26546,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/595603f4ed37e3716cbe53b3ef180e5cdf8005f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27694,10 +26554,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27705,10 +26562,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5a3c9d98651a315b5bde737482ff54f6b90361e0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27716,10 +26570,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27727,10 +26578,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5a6491ab9c23fae58967d4a4b5d5cfb23f620001"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27738,10 +26586,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27749,10 +26594,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5a85c9bd6a6d7a2f753dd315e4747fc0249c8799"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27760,10 +26602,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27771,10 +26610,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5a8ca84c7d4d9b055f05c55b1f707f223979d387"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27782,10 +26618,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27793,10 +26626,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5be956066b72ea1799e333a7bd17fb0b8fc2b91c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27804,10 +26634,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27815,10 +26642,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5d0137a19ae57cfdf5172a8b51e8ea0a0a893690"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27826,10 +26650,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27837,10 +26658,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5d2f29b31d78b47077b15779d620747034d18c05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27848,10 +26666,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27859,10 +26674,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5d765c856a9a8650e1b17813340b9b6ba0989b58"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27870,10 +26682,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27881,10 +26690,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5e1391f44f904fa54e66ec174e4c8879921e842a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27892,10 +26698,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27903,10 +26706,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/5ea01efbec747fc55ae29eb2b779f00889ca6922"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27914,10 +26714,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27925,10 +26722,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/60e8618c075ec5fd47a1699271c6da1b5befd579"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27936,10 +26730,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27947,10 +26738,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6184ea16753b0827f728285f18dad4b3bde00024"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27958,10 +26746,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27969,10 +26754,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6186bfc21ff7df3982e5d9757e5c7160da0f493a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -27980,10 +26762,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -27991,10 +26770,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6230cce2862a18c4c92dc6fb4e034a1d15e1ff18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28002,10 +26778,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28013,10 +26786,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/62fbfe90a1b9ac471bc2644c896f64515f6b3c7e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28024,10 +26794,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28035,10 +26802,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/638c36cfe098b98008e594eddf90fdacfc078fae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28046,10 +26810,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28057,10 +26818,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6421db654fff309bc191aba0330fbcd1347655e3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28068,10 +26826,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28079,10 +26834,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/646c501021c79bf6eb1a39a9bcc82e018f31bca2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28090,10 +26842,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28101,10 +26850,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/64c572e594c2d491a902e8fdff7b617ac0c6881b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28112,10 +26858,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28123,10 +26866,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/64eb970cc80162a4b80d49364f4227db3429e156"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28134,10 +26874,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28145,10 +26882,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/655b880459e6e00100727af9df52b64f6d77a653"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28156,10 +26890,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28167,10 +26898,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/660c071578cbdccb503317ecbf2fd331bc4ac82d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28178,10 +26906,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28189,10 +26914,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/66ac31199d08e7a3b066059cd409457a850847b2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28200,10 +26922,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28211,10 +26930,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/66ef59d5da68fdb5e55b60fc8a8a764afb021b4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28222,10 +26938,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28233,10 +26946,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/682cb8ad9fe4641e7a140ae3d3ee27c841ba397f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28244,10 +26954,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/6914f5f380c83ff9e3e90fc60d5048e47e5e77d9"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -28255,10 +26978,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/696ea30e2e1490f2f31b153641b2c29152ded5c2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28266,10 +26986,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28277,10 +26994,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6a10118289fe7179c4e9bb6a1b466ba34c582bfb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28288,10 +27002,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28299,10 +27010,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6bfbea131237606756a12f275e736045c0956536"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28310,10 +27018,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28321,10 +27026,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6c1c2177f3483086607c717d0c6c35a81d79e18e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28332,10 +27034,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28343,10 +27042,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6ded157ecd3fce79fa69c51ee9ecb4639013e6ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28354,10 +27050,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28365,10 +27058,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6e1cf196e7c8ad4226d89f3ca2c6f7949598bec2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28376,10 +27066,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28387,10 +27074,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6ef96bc0c5b6ab5f8a4453b9cf5784fd55e3b59f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28398,10 +27082,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28409,10 +27090,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6f88ae246aa4af9c74732d87a758ba5ca0f40caf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28420,10 +27098,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28431,10 +27106,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/6f8ffc96f9ebe390929165e32bdc187afb7a40ce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28442,10 +27114,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28453,10 +27122,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/70bd921a3d4700d49ad6b99e0cfee42c36a13b3a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28464,10 +27130,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28475,10 +27138,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/710f61e5765c91bcf9cf2e07264771cf2feae48d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28486,10 +27146,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28497,10 +27154,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/71c01818823d5c5fd8a3d1cb4c5db4aca51efdb2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28508,10 +27162,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28519,10 +27170,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/71e2b03b503dbbdc0d2e724c562b9f1c77f972fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28530,10 +27178,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28541,10 +27186,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7240f3408714c2dcdcb448f234efef4f08e6b2fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28552,10 +27194,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28563,10 +27202,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/727f43500183aec9c0d9be7d2363fa1761cda5d5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28574,10 +27210,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28585,10 +27218,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/72a3729a9bb74378156dcd42171e39ec348c71d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28596,10 +27226,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28607,10 +27234,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/72c363848fe754c23e1f9f2acc2f025666417d2d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28618,10 +27242,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28629,10 +27250,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/73889340124f1f88859aab4e6ce36c0019a44218"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28640,10 +27258,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28651,10 +27266,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7462e4d1834938e8a5fb975da6865cc7d6b225f3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28662,10 +27274,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28673,10 +27282,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/74b69a49c2df95009ff18d820bbe7fe6ae797aae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28684,10 +27290,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28695,10 +27298,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/74cc62178f9c631dc49cf09b0ff5884322d33969"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28706,10 +27306,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28717,10 +27314,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/74eef5817db3984a020b2868f3c9979d0220c829"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28728,10 +27322,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28739,10 +27330,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/758ce3af56f75edb8faa20ef78ffda5511dffb3a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28750,10 +27338,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28761,10 +27346,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/761f683f6486e3efb606bf08fa527a4c1a51f302"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28772,10 +27354,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28783,10 +27362,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/76487a234f6f7276d8eba4edabef7623a592fdf6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28794,10 +27370,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28805,10 +27378,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/767c4f399ccca740ea3032eeade86851f12e7f9a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28816,10 +27386,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28827,10 +27394,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/767d136ac4b3e33d9aa5320d941693e09648e59b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28838,10 +27402,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28849,10 +27410,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/768b6302130ac824947f956e062184afaafcdbab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28860,10 +27418,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28871,10 +27426,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/77d4480781e1e1a9d5d5c02ff53fba10127f8b6a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28882,10 +27434,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28893,10 +27442,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/77e8407dfe09892312213f7d6b2ad8a961b6b88e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28904,10 +27450,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28915,10 +27458,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/792276ed826b9078ecfbd51e0136962f5e10ed6e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28926,10 +27466,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28937,10 +27474,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7a0b2f8659484409af6a76d1df273b8dc66e3439"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28948,10 +27482,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/7abe8c414aa1418157c2d7ae5e70a84ffb61c027"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -28959,10 +27506,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7be89fb64b3d931387e8a5b1ef51bf9cda18006a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28970,10 +27514,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -28981,10 +27522,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7c026422a34cb34de673a1d6702cbde67d112d27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -28992,10 +27530,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29003,10 +27538,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7c58daa09675ba2b11e69636bb78dc0d1343bb51"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29014,10 +27546,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29025,10 +27554,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7c9b4e2ea03542254235893edd042a822145e504"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29036,10 +27562,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29047,10 +27570,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7cdff0948ef64e551ad02f857acd5956d91530c9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29058,10 +27578,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29069,10 +27586,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7d33039255c9611d0e9e0cc7e230f87ad55c007f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29080,10 +27594,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29091,10 +27602,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7d6713afac17551fc2628c0f9f18c41a1aa9c2f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29102,10 +27610,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29113,10 +27618,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7d88455cc77259c8bf17c1cdc0b24edf5667c79c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29124,10 +27626,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29135,10 +27634,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7de73ddcb20d0940b937323599a5094bfb26ae6c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29146,10 +27642,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29157,10 +27650,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/7e8f7517bb0bb95011b48f1f4f4a631d4d756a5f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29168,10 +27658,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29179,10 +27666,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/80a249d17248e0dc7dcc9fb64d8ac2dd0320a544"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29190,10 +27674,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29201,10 +27682,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/80a56bd23287d856a653f22f57f7d1442235b713"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29212,10 +27690,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29223,10 +27698,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/80b6a3cf5bb7cdeffcb6cbaaa10889168542a25a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29234,10 +27706,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29245,10 +27714,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/811533455c494627bb5b5802f4ed7a386f57cb1e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29256,10 +27722,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29267,10 +27730,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8123e9dc4d43115412f07fcf9946c99d9a1a55c3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29278,10 +27738,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29289,10 +27746,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/820d5ba2e9d91563dae39a1b02833fbef1e6d8f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29300,10 +27754,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29311,10 +27762,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/83c29132911949c65d508753420708e9a0ffd6ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29322,10 +27770,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29333,10 +27778,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8492f54a92f9a2a05af1a078489a3a68145d8985"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29344,10 +27786,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29355,10 +27794,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/84c995b299f8d6fa0733d11f0b1a0b4414a7e232"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29366,10 +27802,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29377,10 +27810,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/85220ed0c63891f376bee53c785b407fd9548f8b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29388,10 +27818,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29399,10 +27826,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8554d0f8fc68c84fbd8515165a3d98aad0dfab3e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29410,10 +27834,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29421,10 +27842,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/856fb7cd57f36cfcc8a2cad0cf61f9fff9696776"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29432,10 +27850,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29443,10 +27858,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8711e2f477871e3ca68642bbb388e7f473f25394"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29454,10 +27866,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29465,10 +27874,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8713d28e8cf45d3670ad40829a83b1fc7cd41a75"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29476,10 +27882,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29487,10 +27890,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8778868ac7a23d552d93772aa8566cf427a0c1f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29498,10 +27898,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29509,10 +27906,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8791b58ad0dbfdf9c37d48bc60940f86c6c7e3b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29520,10 +27914,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29531,10 +27922,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/87add83a18a25fe585df8adc124eae6d70733f74"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29542,10 +27930,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29553,10 +27938,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/880070b48f04fd1c8ffafd750e1c4d37ff404c6c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29564,10 +27946,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29575,10 +27954,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/885267691bb42bc807b6e578571430a81513eee0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29586,10 +27962,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29597,10 +27970,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/88be31c841a66f523045f7bd1708ce64272e4276"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29608,10 +27978,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29619,10 +27986,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/893ea11ec0c4425940d18a32acf23d5967d98dd9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29630,10 +27994,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29641,10 +28002,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8949e5c946cf6ec7d1981d553972d4f3a6026987"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29652,10 +28010,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29663,10 +28018,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8a034b07b9baf1b441c0fb0322652772973f20ff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29674,10 +28026,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29685,10 +28034,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8a912877743b165b233303efaf502f5092b3c5b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29696,10 +28042,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29707,10 +28050,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8a9f7329b30a562837353767313df7fa9a1f31f7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29718,10 +28058,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29729,10 +28066,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8b253ba946d6768c147f5d52552e150b703437e0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29740,10 +28074,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29751,10 +28082,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8b53f252f8558726dc0daaee84e2b4d2f0835f44"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29762,10 +28090,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29773,10 +28098,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8b7ebe7fb16e63e2584595ee77afb19359356eda"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29784,10 +28106,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29795,10 +28114,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8c501e1c87c42c4b7765ab027bd537ef72656605"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29806,10 +28122,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/8c5bbcc6935d43c94a0c4ce4a5da01c04fd223d8"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -29817,10 +28146,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8d7bb385d6b13b0e689a1e81e29113746218ba99"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29828,10 +28154,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29839,10 +28162,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8d951b7ab0231fb1dc573433b354eac58c699c36"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29850,10 +28170,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29861,10 +28178,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8e94dd64fdbf453f06b351d6a8f77a43cc34e4bc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29872,10 +28186,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29883,10 +28194,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8ea86819b4ac803bb12fd6b63e6496238aa329c1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29894,10 +28202,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29905,10 +28210,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8f43b11f10961dcce8eaa8340c96d10bdbc937ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29916,10 +28218,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29927,10 +28226,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8f8b66436bade06813ec9ed4fce6774914b73db3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29938,10 +28234,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29949,10 +28242,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/8ff5277cdbe1417da64bfdb342747a23f5e4f956"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29960,10 +28250,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29971,10 +28258,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/901c9a33205897999e7e78063ccdc5d363267568"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -29982,10 +28266,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -29993,10 +28274,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/90230730fae07c8eeb6b5bd571a119b486a21473"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30004,10 +28282,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30015,10 +28290,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/90cd72030567bddbce06152fa0af1a024d542fa7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30026,10 +28298,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30037,10 +28306,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/91e2f574e7ceb7f69a93011aac68903cd014a6c7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30048,10 +28314,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30059,10 +28322,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/92273cf09f18534ae700c1f35dfab49faa091c54"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30070,10 +28330,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30081,10 +28338,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/929980ce480ca47855bdebb8f6ebef7fa447fd5b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30092,10 +28346,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30103,10 +28354,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9379dd6ade6947a59a1786435a2d55a705161ae5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30114,10 +28362,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30125,10 +28370,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/950511efda7aea60b3bfae95e31683210a88792c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30136,10 +28378,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30147,10 +28386,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9538327ef9f0a8d380a473bd25114b6859acf9b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30158,10 +28394,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30169,10 +28402,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9629c9a0c98f15eec2b7fd114fa5ff9ff5c61a19"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30180,10 +28410,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30191,10 +28418,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/96a80511d8ef3ffdd370a3cc9467713a538259bb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30202,10 +28426,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30213,10 +28434,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/984b6ee241b92be62923c6dc5bacaadb36183b89"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30224,10 +28442,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30235,10 +28450,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/98b88c0751f1d9e5dc3d4751d2cb52ed8f0b008d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30246,10 +28458,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30257,10 +28466,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9a0de0d63d44e00fc88e6cb88f4b8665db3b4b5e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30268,10 +28474,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30279,10 +28482,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9a24710002a240ad32b7adb5310f4970c09cc8ca"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30290,10 +28490,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30301,10 +28498,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9a425eda58b05407e671f6b86a6664eb728843cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30312,10 +28506,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30323,10 +28514,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9b6f00dd2752afbd223aad960168e4e535330d30"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30334,10 +28522,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30345,10 +28530,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9bc5b4a9a81905cbc7ee4a25482068dcab93898d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30356,10 +28538,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30367,10 +28546,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9bfd723bfa4162bb5801a6050af0a8b2db10d4ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30378,10 +28554,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30389,10 +28562,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9c0911c1a4b91f842670082c14af67d1f4b7bb6f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30400,10 +28570,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30411,10 +28578,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9c5538a5492013e6bdbcce2a373be19fc97c4f20"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30422,10 +28586,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30433,10 +28594,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9c837f4e6cb572b3431b3a5065b889273712810e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30444,10 +28602,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30455,10 +28610,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9d91fac343dd8a7848746ca5472fb1452052bfb7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30466,10 +28618,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30477,10 +28626,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9ebd34b96faba2fea70a50533df78a8c1dc35247"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30488,10 +28634,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30499,10 +28642,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9f1db4144e46f913ca02e0abe2ccd5c7481e2a92"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30510,10 +28650,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30521,10 +28658,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9f77859f13bbe482011164f7a5e1a2a77d8596f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30532,10 +28666,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30543,10 +28674,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/9fb07d3aba4e2d39eff7d31111515d7df2c981ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30554,10 +28682,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30565,10 +28690,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a074a30fc5c627e8093a8f860d67661df22f8148"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30576,10 +28698,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30587,10 +28706,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a10775155c8eb3a834d067c0978753513d5e1d75"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30598,10 +28714,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30609,10 +28722,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a1b04c2504a75f50d47875bd1db804cef3674cf0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30620,10 +28730,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30631,10 +28738,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a1b153e4cde45a7302094f6c751e3248d2f0fb8e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30642,10 +28746,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30653,10 +28754,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a1dffc6b0fabef88188bc4c140bc2d331d73f997"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30664,10 +28762,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30675,10 +28770,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a25eb9c166a097ea3afa590e3584eb9986bd9445"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30686,10 +28778,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30697,10 +28786,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a2ac5153026b26fcbea42786e238b15017a684be"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30708,10 +28794,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30719,10 +28802,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a3026496fa01a4cae2682da4b3e7cfae09929698"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30730,10 +28810,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30741,10 +28818,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a3c9b6e89b534d02bdad07207c4fdcda536f28a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30752,10 +28826,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30763,10 +28834,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a3cc00f1a2020ff2e2d53bc91a212b5fdbe5c006"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30774,10 +28842,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30785,10 +28850,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a55fb292d4e1ffcdaf933f2dbdd8410628eb7acc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30796,10 +28858,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30807,10 +28866,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a6914c7bbe81fd2138bc20e63b27c0cadd0471ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30818,10 +28874,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30829,10 +28882,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a693801403d7721b5b3d7d4525cc0b830ab35e06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30840,10 +28890,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30851,10 +28898,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a6f614d434a1fe2162f7872100baef21b2051b53"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30862,10 +28906,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30873,10 +28914,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a78a65e7bd4c3cf41fce74155e97a758658fe8b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30884,10 +28922,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30895,10 +28930,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a8d353c157cc3788a86a0d572adcc7744e7e902a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30906,10 +28938,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30917,10 +28946,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a8f87a7038125bd0e3b753c2a42ebdc3e4c75cba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30928,10 +28954,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30939,10 +28962,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a9548cec37ad3c54d4bff10c9127db3638065d77"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30950,10 +28970,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30961,10 +28978,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a967ca556a517366de03b8a9d21e991783f0896c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30972,10 +28986,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -30983,10 +28994,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a96e54f84588c424c5ff2615fb0745684a11de39"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -30994,10 +29002,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31005,10 +29010,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/a994ed559126fb75d245d34816a727d8585045ac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31016,10 +29018,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31027,10 +29026,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/aa926963580066aa503c5433dad9889fabc4ee08"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31038,10 +29034,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31049,10 +29042,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/aabcb4ea803e0b5399cb7a2cca8d28baa3f6c4ae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31060,10 +29050,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31071,10 +29058,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/aaf2bf9eaf71df9e0c597335e8d6f8c2d370b093"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31082,10 +29066,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31093,10 +29074,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ab013aca29d6027d443e9dc0c550a26e7a23f01d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31104,10 +29082,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31115,10 +29090,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ab1a75a7dec4c780749be5afa45fdb9e7e7907ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31126,10 +29098,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31137,10 +29106,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ab4a63521f8afd81d6f5bf117597039cb02d453a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31148,10 +29114,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31159,10 +29122,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ab850ea6858b0b4798d8d8c60cf7d715b9064c85"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31170,10 +29130,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31181,10 +29138,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ab8c19341f57f87c38055a9aaee515f8e65a33f3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31192,10 +29146,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31203,10 +29154,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/abe27eee1a472ac0dafe73619602ff44bf7d0657"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31214,10 +29162,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31225,10 +29170,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/acb49fc7f5d61f15e2e0b8f391678365381c5ab9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31236,10 +29178,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31247,10 +29186,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ad8f14d76933f67a10d9e8442eaa1b88b2395cd7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31258,10 +29194,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31269,10 +29202,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/af042d0ae8cd624acfa12788ffc0154e6f49394b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31280,10 +29210,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31291,10 +29218,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/af0a181159725d308833841738c5d14d478228e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31302,10 +29226,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31313,10 +29234,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b05cbc7820c94bb3ee46dd3869ea39923338b4ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31324,10 +29242,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31335,10 +29250,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b0ff62377b87b846f720a70f0b7f7bdc76aa1315"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31346,10 +29258,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31357,10 +29266,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b12be9771ea0f5b687f50fa9abe5cb8bb688fa6a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31368,10 +29274,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31379,10 +29282,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b23f1233d0e21c4aaaebe2fe5931903698b2408c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31390,10 +29290,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31401,10 +29298,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b29d3c87c76355ce07ea4d4c354bf9d40294abb3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31412,10 +29306,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31423,10 +29314,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b33f833f291ebba4d777c2bae51193553c27d138"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31434,10 +29322,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31445,10 +29330,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b37f3e85a80b5dcde6b48b46f162418fd2ee83ec"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31456,10 +29338,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31467,10 +29346,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b3b9e307ce3af6fa515a33668374e15fcc909ae5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31478,10 +29354,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31489,10 +29362,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b4037205abce710935a93d656f69928ecc814b50"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31500,10 +29370,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31511,10 +29378,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b436d6ea729dd071f87b21819cf1f32979216aee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31522,10 +29386,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31533,10 +29394,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b46794fb4115e84da13a79153b2ea44d89d952a5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31544,10 +29402,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31555,10 +29410,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b49df296137b4c86eef0fd5fc55bbdd1cb3c4a7e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31566,10 +29418,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31577,10 +29426,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b4dfbd50da81516e8afcd93def813b4b813c3ae1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31588,10 +29434,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31599,10 +29442,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b51853fe4f799f7f959922fda1b3500668a45157"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31610,10 +29450,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31621,10 +29458,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b56db2235df5a81ff15d0c07612de7eee0272304"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31632,10 +29466,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/b5bcc7f39420e997ec6f8e3c70ef49b8f1afb361"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -31643,10 +29490,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b5daec8e0821e8626c9b93ece56ccfef0511346b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31654,10 +29498,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31665,10 +29506,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b61f6be57dd30d8c76aae7b966ffee26093f49ea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31676,10 +29514,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31687,10 +29522,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b766e4a3e84ee0a2f57fccbc3a7f7f812b2032d3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31698,10 +29530,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31709,10 +29538,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b77ca0306f700c8c88854e73ccbdf470fba3f820"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31720,10 +29546,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31731,10 +29554,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b792b464ceb568355e80a4588a3ae1b43f05a34d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31742,10 +29562,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31753,10 +29570,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b7f282fbd77193d822df9c8156370398e1fd099c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31764,10 +29578,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31775,10 +29586,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b821e8d3e12441e1120723cf4eda4d939794b17f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31786,10 +29594,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31797,10 +29602,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b8a74cc440fbfaa2a523f20ca964976bde128fd0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31808,10 +29610,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31819,10 +29618,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b8cd185f946c392f8fb5adca4851043df849ac6e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31830,10 +29626,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31841,10 +29634,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b93e4c7538558dfe92d2925646029b5dafe653d0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31852,10 +29642,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31863,10 +29650,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b94adf31dbe157a38e8b3a873658b8dace55f517"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31874,10 +29658,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31885,10 +29666,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/b96fd7809c6f18c465e834a96dd60b43b32fac73"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31896,10 +29674,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31907,10 +29682,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bad.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31918,10 +29690,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31929,10 +29698,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bb349c691efa909b4c5412b9210e1acf4a4b7505"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31940,10 +29706,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31951,10 +29714,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bbf053837b7e0e2adc868be62fc91248b8dce176"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31962,10 +29722,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31973,10 +29730,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bbf7ccb14d60a1d4fa79e572464c687530ca6c2a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -31984,10 +29738,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -31995,10 +29746,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bc5e743f85f6632110277f09847381a402e1624c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32006,10 +29754,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32017,10 +29762,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bc6770a9bad24599ea4970735e9b17702a12b651"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32028,10 +29770,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32039,10 +29778,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bc7f0b79a1781772d7f48e168462f99da27b03e2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32050,10 +29786,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32061,10 +29794,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bc96b9415e9bb48d27f37d91c51d10ec08139974"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32072,10 +29802,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32083,10 +29810,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bc9b5b6ba4b6ccbb9e5ff75edd0df8eef9c36d4c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32094,10 +29818,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32105,10 +29826,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bcae3229d884c5cfc36ae28c672f9b960e30042f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32116,10 +29834,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32127,10 +29842,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bcc7eb464ff05cd0cd2669611776e55ca4dcb2b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32138,10 +29850,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32149,10 +29858,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bd1ed73f6cf97f980d23ff2e9f4f4e78b80bda57"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32160,10 +29866,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32171,10 +29874,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bd459204c5fee8000abc7d895a317028351d0dec"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32182,10 +29882,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32193,10 +29890,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bd4786be14d852c68e605eaefa782f79064f32e2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32204,10 +29898,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32215,10 +29906,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bd5c6df9c2cfaa96d768b1fe6e8fff57bf1d02c9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32226,10 +29914,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32237,10 +29922,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bd7314ef323557ccf3a97c1b1ba4bed0a9b24de2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32248,10 +29930,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32259,10 +29938,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bd891b3b4256f1c4207c3bbe5bd86f5e90a49ee2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32270,10 +29946,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32281,10 +29954,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bde8a553b10a613c32f800429a07f0b5a2d37e53"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32292,10 +29962,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32303,10 +29970,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/be0ccf7b9b4581e01a42e9cad6343c93ccf6f362"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32314,10 +29978,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32325,10 +29986,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/be40890ee61e101a7429d53cd9ffd59ee600e0f6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32336,10 +29994,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32347,10 +30002,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bef8cedf1a792786a027114c85a89a1bef3155c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32358,10 +30010,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32369,10 +30018,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/bf0d70e0d09e5c2ddd79b55dbabdd58b385307f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32380,10 +30026,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32391,10 +30034,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c004d2a6d36524db9e0c18c5df6170366dd2b6f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32402,10 +30042,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32413,10 +30050,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c17ca23726e7bca7b0d92398f827cfb25c7f0d40"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32424,10 +30058,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32435,10 +30066,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c1937db2c3dff32ff22a53a8b76614602cf41d73"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32446,10 +30074,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32457,10 +30082,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c2d14ed959df62d2f6dbe46c71489bed68e3c0f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32468,10 +30090,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32479,10 +30098,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c343ddb31042500e460861abc70e98ce3088ceed"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32490,10 +30106,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32501,10 +30114,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c45cc40cc387134dec06733a01bde8fc44a2c9d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32512,10 +30122,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32523,10 +30130,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c4a63251d65cb186242e7aba5ab3d4709d3f0065"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32534,10 +30138,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32545,10 +30146,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c53efcb830c4ae5cba7b3e0803635445e1469103"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32556,10 +30154,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32567,10 +30162,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c56726277ddeb233e30b6223158042aafb944191"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32578,10 +30170,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32589,10 +30178,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c5e5b4c1e4e2bae55c1355950c3c7a593cb3fc04"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32600,10 +30186,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32611,10 +30194,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c69863dd21c782e609d6ecdb9150f887a0f39989"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32622,10 +30202,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32633,10 +30210,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c73e85bdaa195d9659ae9b08995a9fb716f9c92a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32644,10 +30218,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32655,10 +30226,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c73fbc2e78f496b5666da99bccac9445ac9feeac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32666,10 +30234,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32677,10 +30242,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c76a1cca503160ca659aad6f7a05ca8fe5db439e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32688,10 +30250,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32699,10 +30258,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c7c13a37189ce2482f5517f6ef0903431194e11b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32710,10 +30266,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32721,10 +30274,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c837e4dc49146de843c9556c1b3c886abb552db7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32732,10 +30282,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32743,10 +30290,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c918b9e3e9cdfdb21d94ef0fba85b25f3ed9d098"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32754,10 +30298,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32765,10 +30306,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c957b37c99c5bb22b2c1f6dd050c57e685505599"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32776,10 +30314,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32787,10 +30322,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c978dc651b961f2d48aad95b40ac761b3467f212"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32798,10 +30330,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32809,10 +30338,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/c9bda5eb1a93526b4809d147647cc78452988e29"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32820,10 +30346,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32831,10 +30354,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ca086cf78308275212c52012f06edf3b4152204a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32842,10 +30362,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32853,10 +30370,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ca6add6699d063e2212335264ad3e004327afc1a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32864,10 +30378,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32875,10 +30386,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ca6b20544c093b14703410d792c8f73e73205bce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32886,10 +30394,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32897,10 +30402,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cc34f9a0d85a22556faffadf90182f7c44bf168a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32908,10 +30410,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32919,10 +30418,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cc7087fd7c7398e7c2afe3fb03e705262b5e843a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32930,10 +30426,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32941,10 +30434,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cca20202993dda83570ac83c0b1967ce225c78b9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32952,10 +30442,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32963,10 +30450,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ccdff5940d61b708f67fcc55dc26ac1ad4f4c298"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32974,10 +30458,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -32985,10 +30466,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cd0e7c4cd361b786b6f27c481ed601fd373cb221"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -32996,10 +30474,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33007,10 +30482,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cd4f2c59f0cf55d9a73fb0b96d701c784c446048"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33018,10 +30490,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33029,10 +30498,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cdc064f39a9a67210b1be6b195d38d5d0d73eaa0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33040,10 +30506,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33051,10 +30514,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ce02561c4cfd1ec7e272cf81678149350f8a066c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33062,10 +30522,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33073,10 +30530,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/cf26c6969c0f649a2ccd780edb8b3dc314ff7701"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33084,10 +30538,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33095,10 +30546,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-0a0ee428270236e707457b9560a91c233ed2326c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33106,10 +30554,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33117,10 +30562,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-0b1b50227d01f99998b01ed218f5d4dc3839d44f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33128,10 +30570,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33139,10 +30578,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-14359c8f754c2ecdae21deeeec033ae10360033a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33150,10 +30586,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33161,10 +30594,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-1b9aeaf762bb1a972dda8f3a455df2628efd693b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33172,10 +30602,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33183,10 +30610,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-1bc1a02532d212c8975e0cdcd5127c98fcaf752b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33194,10 +30618,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33205,10 +30626,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-212c3b09f310867e1e8ffa7faecac75c12f4cda3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33216,10 +30634,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33227,10 +30642,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-2ccee0e61103a767acec12b9146d478202b93b27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33238,10 +30650,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33249,10 +30658,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-2f1092c48db455fbe1ae5e275f8d221dc8c52f00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33260,10 +30666,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33271,10 +30674,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-4ae4941b4c3f857966a0e3c05f789a0a5ae15bbf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33282,10 +30682,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33293,10 +30690,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-4e4d7a383785c83b78ed6597bfed360079a49a08"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33304,10 +30698,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33315,10 +30706,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-5c774460d2dc7ae9d471ef4b87609b13e4e95219"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33326,10 +30714,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33337,10 +30722,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-6db86c556caf542fe8c3345ef396467b1d609d32"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33348,10 +30730,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33359,10 +30738,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-72ab4efc255cfc55ed03c1002187a68e2e18e33b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33370,10 +30746,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33381,10 +30754,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-7ca23a3e10cdbf579cf81a50e51af358f86631eb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33392,10 +30762,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33403,10 +30770,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-82b2ae1d2174f5782b32c89ce60f68bf5a30c0e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33414,10 +30778,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33425,10 +30786,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-89e1b03278bad9790ae0f8614a8389414d1eab37"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33436,10 +30794,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33447,10 +30802,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-8ab0b6e57b90ab4c6b8d5de8278464eb428f4668"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33458,10 +30810,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33469,10 +30818,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-8e2e3975a865fb107fff8060f4f949aa235727d5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33480,10 +30826,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33491,10 +30834,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-916f6ab61cd358be9a241e2eb09851f700335eda"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33502,10 +30842,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33513,10 +30850,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-97ec5404605d0d7bed44c2b845e06f6d9479c152"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33524,10 +30858,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33535,10 +30866,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-9862337313ff89e8dd6fbd6f870a568ec4bd6ecc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33546,10 +30874,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33557,10 +30882,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-9e53b8c6ea7f6ae5c53e5834c50eac8e9f33259a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33568,10 +30890,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33579,10 +30898,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-a6224f954d8234d45e6f6ea27aca4d65ca77b6c7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33590,10 +30906,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33601,10 +30914,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-ba2c1509ff87865d9e23c056b9c7fe2732825ef0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33612,10 +30922,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33623,10 +30930,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-bac7a77b50e53ff71b0f52ce635e64ac15a787dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33634,10 +30938,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33645,10 +30946,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-bebee7dd27c149af9e7b573300c686969fde9eb3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33656,10 +30954,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33667,10 +30962,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-ca8aa113c22037a2a552c1763f845609d555ef9b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33678,10 +30970,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33689,10 +30978,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-cce6ffed471344173c135e536b454f469bd07e03"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33700,10 +30986,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33711,10 +30994,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-dc6abf90d5e8e1b96f7e25f418b1a7f572e6a738"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33722,10 +31002,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33733,10 +31010,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-e45753da8952c41715a65010250efba0a4a4d243"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33744,10 +31018,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33755,10 +31026,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-e7930097a989131890a316b0b1ed85801699562b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33766,10 +31034,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33777,10 +31042,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-ed3086c0ca03a427fca1817b52a4d6530fb4096b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33788,10 +31050,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33799,10 +31058,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-ed7959740df2fdcf62626e370dcd7eb43963731b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33810,10 +31066,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33821,10 +31074,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-ef09afe157880d7f363fb87f6bc194ce1a72554c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33832,10 +31082,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33843,10 +31090,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-f40dcae7e7cc52e44d49c7fd5452e33a77ef4499"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33854,10 +31098,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33865,10 +31106,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-f8bf4b7d89c07d661b695a3e4fdf269b853fe168"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33876,10 +31114,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33887,10 +31122,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/crash-fb41c97305a2c94d367e40863dc046c8f78a57c9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33898,10 +31130,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33909,10 +31138,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d00326f1b0a93acb1cb7fe02ba0342cc6e1875e6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33920,10 +31146,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33931,10 +31154,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d0692d73e38ed8c154ebddd627ce99890a1cf798"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33942,10 +31162,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33953,10 +31170,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d0fcc9d6dc91ead9fd27f0c613ea031f21fb4de4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33964,10 +31178,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33975,10 +31186,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d17e7451bcef39ce542d84f2539f9586ea35f21e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -33986,10 +31194,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -33997,10 +31202,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d18b5e648be40b0ea52fc8b10bcbae9bd4325f0e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34008,10 +31210,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34019,10 +31218,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d194d6aa501f75ed24fc399ee594fb77341e5d38"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34030,10 +31226,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34041,10 +31234,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d1ade96319d9de82cf3b0480d226a5ad9f31eaa1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34052,10 +31242,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34063,10 +31250,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d1b53c2a386259ce958c34e2cb281514e14e0d03"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34074,10 +31258,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34085,10 +31266,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d290717010121ba2745e551e7a80be6e9f6d59e2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34096,10 +31274,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34107,10 +31282,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d2956eabd7b8b9d6b136731a3a4fa077f184aa13"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34118,10 +31290,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34129,10 +31298,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d2c828ee88b3e352fad3263f1e1ff901a41fc7a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34140,10 +31306,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34151,10 +31314,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d3124f8fe39ebe943d0d5a7087a51d7e852505bd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34162,10 +31322,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34173,10 +31330,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d333dc3999c6dcca82d85f72e65e10c07f12d978"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34184,10 +31338,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34195,10 +31346,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d3bec93d378e7466bacd95be431500ed30cba449"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34206,10 +31354,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34217,10 +31362,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d48a5cefe695d0494df4540ea395dcdd90a332ef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34228,10 +31370,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34239,10 +31378,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d4c3ed789ef8a888244504601964f0a0c994a66d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34250,10 +31386,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34261,10 +31394,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d4caa070bca058455b68c7b96961e3ca0f151b32"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34272,10 +31402,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34283,10 +31410,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d63251b34cf38052b657d62e353aa42d905e52c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34294,10 +31418,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34305,10 +31426,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d65f32b4af92080a496fb0965075c060c70ee444"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34316,10 +31434,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34327,10 +31442,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d712d007679af5438c7bda723ddc724c2e57b0c1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34338,10 +31450,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34349,10 +31458,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d80ba5bbc230065821c0c6530f70bdf205e817cc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34360,10 +31466,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34371,10 +31474,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d8137be32de0a676678672fe6f82992b2ca61fef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34382,10 +31482,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34393,10 +31490,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d8bbba8dd44b71161c835cb09610e47401de44e3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34404,10 +31498,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34415,10 +31506,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d913cc4e8f2900d7035d196fd62707cf1194e02b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34426,10 +31514,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34437,10 +31522,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d91e9bf6b6c78f35a68ba877f3325b3c1ee3db35"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34448,10 +31530,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34459,10 +31538,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d97ade864dccd3eea245411665e5126f97302063"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34470,10 +31546,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34481,10 +31554,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/d9f752e6e02987d7bfe6f0f4c4d70644d357fef5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34492,10 +31562,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34503,10 +31570,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/da23c62c70f6c1174adc08093c429f1ec657921a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34514,10 +31578,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34525,10 +31586,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dab32e8bb17a9bd7b04b8b895b7b48c27d38ef51"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34536,10 +31594,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34547,10 +31602,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dacc3689e0a7b90aeebfaee000adf89e95e50cf9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34558,10 +31610,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34569,10 +31618,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dad2c9af972d2e21c4437f0d94fdeacd7c8c7641"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34580,10 +31626,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34591,10 +31634,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/db7c4b56e701832634e61cc0b3ab5206fabf518d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34602,10 +31642,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34613,10 +31650,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dd0e562fcf5edda051585b70d3b3780a9a6a2818"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34624,10 +31658,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34635,10 +31666,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dddf3303e3e8e558ca6f147ec11d8195b6de30bb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34646,10 +31674,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34657,10 +31682,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dde3b1c08399b61df7de4997194d9392c2e4c3cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34668,10 +31690,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34679,10 +31698,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/de838de0352fc7ee32452bc83043cf587176e120"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34690,10 +31706,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34701,10 +31714,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/deeec423355ed885b906c6770c96d3f17583fdf3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34712,10 +31722,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34723,10 +31730,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/df616ee922cc89908b771e5276e47abcbaff1346"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34734,10 +31738,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34745,10 +31746,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/df8ef8bf4069afd375066fbb74cbe137f73db829"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34756,10 +31754,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34767,10 +31762,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/df949398b0b614309219c4128b167746e16a1ead"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34778,10 +31770,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34789,10 +31778,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dfe6d60fd53eb8f4174366d1515c5a90ce10bf1b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34800,10 +31786,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34811,10 +31794,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/dfefc5d84c18606a3aefd5bb721a06e192b4420e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34822,10 +31802,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34833,10 +31810,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e022322a04b3ac1452055563bb41976a03a146ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34844,10 +31818,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34855,10 +31826,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e06db057637f6738a48464cc2d65d7399fe296e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34866,10 +31834,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34877,10 +31842,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e0e7112238b555fdc12a1c5e9adb50703ae56a43"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34888,10 +31850,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34899,10 +31858,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e140f7efd72850d181a0145bb9ea7d92e61dec95"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34910,10 +31866,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34921,10 +31874,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e1a0398910c28ad61e065e98e884a7492f6dc594"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34932,10 +31882,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34943,10 +31890,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e212833dd63750f436254c0c81f1ddd42fb9a17e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34954,10 +31898,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34965,10 +31906,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e23c0abb4f625880dbae1cc81ce5b146992f5d36"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34976,10 +31914,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -34987,10 +31922,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e33f7d7998fe6e12ecc4014c8434e4ca591371b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -34998,10 +31930,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35009,10 +31938,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e401c1abdd1ef0458dd46e35167c4734667ebcc0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35020,10 +31946,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35031,10 +31954,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e42a9e07845680b8aad95408657c87b01873bcbe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35042,10 +31962,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35053,10 +31970,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e42fc248764aac6f6e0af5b5705272f82101287f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35064,10 +31978,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35075,10 +31986,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e4ba9f46387c5687fb9003724893c0b199debf2d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35086,10 +31994,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35097,10 +32002,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e55693473101ac4626e04012beb1b9b6d93a0a94"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35108,10 +32010,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35119,10 +32018,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e57acbf9e36c755cc50b00bc868c01ca1c1f6842"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35130,10 +32026,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35141,10 +32034,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e590a42febe0442ddf632b05cda112b3aca43380"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35152,10 +32042,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35163,10 +32050,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e5afbabdb437dfc44f06ddf8b9f793868e8fdde0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35174,10 +32058,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35185,10 +32066,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e5d120938961b8ed1e0f46e342683432b9081dd1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35196,10 +32074,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35207,10 +32082,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e62f5243dd375cb4b71c864a18ddd50b5b99762f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35218,10 +32090,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35229,10 +32098,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e6660a661f0adb7be809c558ca15573add24f686"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35240,10 +32106,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35251,10 +32114,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e66b054263dd9e7ea90d7dfaee555e2f24bfb60f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35262,10 +32122,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35273,10 +32130,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e72218971bac83f556e86b0a65ec303e2a05eac8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35284,10 +32138,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35295,10 +32146,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e73a05b1cf7dfeeada6356bb18ec4381485bb3d0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35306,10 +32154,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35317,10 +32162,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e75fa90650f1d67ff9849024e88a91300690778c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35328,10 +32170,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35339,10 +32178,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e79ffffd4bd565b2b5bb8d0f191c8e34385de085"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35350,10 +32186,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35361,10 +32194,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e8c24e95b095fee6053a49f51326479b60949424"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35372,10 +32202,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35383,10 +32210,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e8fd7c4270b5f2cb56fb06684858c39c7ccfa909"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35394,10 +32218,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35405,10 +32226,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/e921037de2e963b653e881fba095eeb33799d749"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35416,10 +32234,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35427,10 +32242,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ea2cf809383d8725bec1b44ab774f04b3e6d5ae5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35438,10 +32250,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35449,10 +32258,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ea351febbe2c4e73fb0e0d34e7d2a23ff46b79f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35460,10 +32266,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35471,10 +32274,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ea6cc4b0a83ac8d578c4927f3c9d5a57a4464df3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35482,10 +32282,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35493,10 +32290,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/eb342f6fd92411d7beb1f82983a19849d45ff46f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35504,10 +32298,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35515,10 +32306,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/eb9367a74ba61abe8d5f5fdb7c1c840b2d27dab7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35526,10 +32314,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35537,10 +32322,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/eb9faf5efb229c562a6825f930b8316f2aff2864"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35548,10 +32330,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35559,10 +32338,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ebbc2aa89ec745a7201eb4aa1aded15d35e4206c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35570,10 +32346,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35581,10 +32354,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ec012a94d14659f311451e89e757bd06a93d30b8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35592,10 +32362,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35603,10 +32370,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/eca1d41de5486c09c6aa7767289daa7185379220"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35614,10 +32378,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35625,10 +32386,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ed9a1a597bad76e9ed9e52ba2e5c80304583c006"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35636,10 +32394,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35647,10 +32402,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/eda5d435276e002a08358fd67a2bbd75902236a3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35658,10 +32410,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35669,10 +32418,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/edfcf299569efc4788937d2cd4ca0e625fb9e527"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35680,10 +32426,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35691,10 +32434,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ef264406b5a2263cd7a9145f7ca68ed8fd6c50ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35702,10 +32442,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35713,10 +32450,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ef4127bfbb6d1b7490a076c4af795b1e40b2bcd8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35724,10 +32458,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35735,10 +32466,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ef930a505edebc0ff6ca7eef7549bbaa21d95b4a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35746,10 +32474,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35757,10 +32482,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/efa80ac7daa93de08fc91bdf2a912269a3f2396a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35768,10 +32490,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35779,10 +32498,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f0a7e39c194ee3f30312ae2f4827bdbd43416a42"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35790,10 +32506,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35801,10 +32514,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f0e8450c85a3c6dfaa50ee65399270c59a127088"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35812,10 +32522,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35823,10 +32530,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f0ee077bc982be02a547d81d85e5c69e36fe38fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35834,10 +32538,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35845,10 +32546,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f1a6421ddd077ba6971eee7ba1084ed66fd1bee3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35856,10 +32554,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35867,10 +32562,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f1b592b7e1a5af83eea1bccc2d7bcca302173d57"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35878,10 +32570,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35889,10 +32578,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f224ca8baea51bbc26a3814af9253483c66ad8f8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35900,10 +32586,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35911,10 +32594,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f238d0b5973d8d4081ba7036711d8c3091554e28"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35922,10 +32602,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35933,10 +32610,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f2bb9fb90c0fb7dfd765e1c528330881e721c7d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35944,10 +32618,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35955,10 +32626,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f37b108d4dca7cdd24f464ad880a57aa038528ae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35966,10 +32634,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35977,10 +32642,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f3c0468b37c09b998096d18cd13a522dec09888b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -35988,10 +32650,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -35999,10 +32658,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f47f636b8e22e8db428ea956d9336bd12b928a9e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36010,10 +32666,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36021,10 +32674,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f4d74d507a7171e5f116bf750a20435eeaf81f3f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36032,10 +32682,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36043,10 +32690,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f4dc057d97c34f31ea542d67593b8d3a295bf52a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36054,10 +32698,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36065,10 +32706,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f59e8ceab587254d408a4af86cd938d896eb0b6d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36076,10 +32714,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36087,10 +32722,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f65e41c8021049c4ca8782902de25d6791bae63a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36098,10 +32730,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36109,10 +32738,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f693fbf860c6cd1090a6dc220c20eb5c51543208"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36120,10 +32746,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36131,10 +32754,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f71de0dac54e25fe658e8c78208b855d3f0db23c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36142,10 +32762,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36153,10 +32770,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f73f63e243ea6484a97ece29bb8d4f33841410fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36164,10 +32778,23 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/api_fuzzer_corpus/f755b44ff2221c971ca2bfaffc69e002ba982730"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "api_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -36175,10 +32802,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f788d2b893fe39fe24582acffa6a70f1ca4e3037"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36186,10 +32810,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36197,10 +32818,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f7b309af25b6ae5029a9548142333a905e3c99be"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36208,10 +32826,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36219,10 +32834,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f7c45ab223810b0b6b77042055a86800e5ec213a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36230,10 +32842,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36241,10 +32850,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f7c686af20a3cf5b5c569a570656df83db3fe165"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36252,10 +32858,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36263,10 +32866,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f8373fd74d8a4eafc7d015e2643c2a277656b716"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36274,10 +32874,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36285,10 +32882,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f861e708b6d0e0ca691d88a31e73f3d2643deacd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36296,10 +32890,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36307,10 +32898,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f8a02d7d9317428fd142c05f9428840d3d30aff4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36318,10 +32906,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36329,10 +32914,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f91f27afa6e72fd653eb41b316ad2d2e88fc0bb7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36340,10 +32922,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36351,10 +32930,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f9540ce65b08ec33d9157d03bf5231b767460d4a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36362,10 +32938,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36373,10 +32946,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f96f406763e8d6a53de319e67e942696cc10a4b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36384,10 +32954,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36395,10 +32962,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/f97d97545054500e8035ac3c73957d0f75b2715b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36406,10 +32970,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36417,10 +32978,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fa423921deeaeda55d2ff74e9541e5d89ddc7d36"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36428,10 +32986,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36439,10 +32994,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fa45cfbecd8680693570d90f214abd9febf681a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36450,10 +33002,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36461,10 +33010,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fa99f1f9be3384be1229657b26374545228c2318"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36472,10 +33018,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36483,10 +33026,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fae6e98220e0943926fe570bd32ea7f0dcd34feb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36494,10 +33034,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36505,10 +33042,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fb0bfb049d4a99a529ff339218a5d962983118d0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36516,10 +33050,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36527,10 +33058,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fb9505e4511c982f4f26675979a138a3408d80e2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36538,10 +33066,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36549,10 +33074,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fc0cb8a6287528bfbe1e43d452fc40a180c221f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36560,10 +33082,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36571,10 +33090,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fc2bb278363a5f7d4dbfe8d123a8092a99d5a9f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36582,10 +33098,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36593,10 +33106,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fc37856ff6d7a1cce83efad8cc7727f5aac44200"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36604,10 +33114,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36615,10 +33122,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fc9879794ab7f7cdc4959c204788fce6146c0579"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36626,10 +33130,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36637,10 +33138,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fda1618a9c7d2d7c22234b3c7f996116bc5e6e4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36648,10 +33146,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36659,10 +33154,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fe680903482b870b820690f61cc607e5d26a652a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36670,10 +33162,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36681,10 +33170,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/fef5208b90316cac47bdc95ffd384b9c9a8a7c78"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36692,10 +33178,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36703,10 +33186,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ff6138cc4a36bad9a76401072dbd41fd2ad437cc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36714,10 +33194,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36725,10 +33202,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/ffd263ba66c7dd7180f5b8e13a3f7b8bf169dd79"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36736,10 +33210,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36747,10 +33218,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/timeout-0fa0559576ad2a45b06d0bfb84115963d7d48206"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36758,10 +33226,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36769,10 +33234,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/timeout-82b2ae1d2174f5782b32c89ce60f68bf5a30c0e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36780,10 +33242,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36791,10 +33250,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/timeout-e45753da8952c41715a65010250efba0a4a4d243"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36802,10 +33258,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36813,10 +33266,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/timeout-f1536451f002afe7a6ff34a3755026e4ace1fee3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36824,10 +33274,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36835,10 +33282,7 @@
"test/core/end2end/fuzzers/api_fuzzer_corpus/timeout-f40dcae7e7cc52e44d49c7fd5452e33a77ef4499"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36846,10 +33290,7 @@
"language": "c",
"name": "api_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36857,10 +33298,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/001946397b463a3562c5951f6325069d8a3a2ded"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36868,10 +33306,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36879,10 +33314,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/00c8446b230bebbae2b473552b174a06b446337a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36890,10 +33322,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36901,10 +33330,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/01b05a9eaa95950f697627264bbd5006060f68e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36912,10 +33338,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36923,10 +33346,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/01c9569f5835a576fc50ea03141662c7ef1aa088"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36934,10 +33354,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36945,10 +33362,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/025215e11687c7d2e0055e5b2b902d08e0436f78"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36956,10 +33370,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36967,10 +33378,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/02ba99615d1d69eb328adce99670f659959c1bc1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -36978,10 +33386,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -36989,10 +33394,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/03abf728ac1d833c2d4a9ff7e0c912b949edc04c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37000,10 +33402,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37011,10 +33410,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/03beeae554ed6952e94a0bf32cdbe9f97eb3ba43"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37022,10 +33418,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37033,10 +33426,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/05b4eaa1e1a759aa6b23521c06d915174e8fec88"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37044,10 +33434,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37055,10 +33442,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/05cfa5deaead322efce84b710758a24440cef16e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37066,10 +33450,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37077,10 +33458,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/07048654244e377ddf246e8cc18f71443035cd2b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37088,10 +33466,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37099,10 +33474,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/078232947d7ff25557e836b4e9e907214e99b320"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37110,10 +33482,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37121,10 +33490,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/08a8a647b6a8f47ae10852322d14832fc15021f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37132,10 +33498,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37143,10 +33506,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0949f4ac376808482be6ab2dcb18a2ecb08d9a52"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37154,10 +33514,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37165,10 +33522,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0b6fa6330bce65dfe7f758bcbfca2a2844dd07a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37176,10 +33530,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37187,10 +33538,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0c30868720d5e1a19ff23c53740749c37a43540d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37198,10 +33546,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37209,10 +33554,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0c5e0660ddf5f14af8f3fbcc754a967506994c9b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37220,10 +33562,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37231,10 +33570,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0d36da88698737ec1ca7b55b30fe2b2036de7e19"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37242,10 +33578,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37253,10 +33586,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0d8c547f1d261ba07c2648bae009636c17709600"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37264,10 +33594,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37275,10 +33602,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0dd33527db106a3e84172e8f2189734b00ced4ed"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37286,10 +33610,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37297,10 +33618,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0e354d89d02c6c5cbba2f140dab7b609bf00793e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37308,10 +33626,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37319,10 +33634,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0e3a18f0f08dcb9dd174627bc997f74a5c7a1390"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37330,10 +33642,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37341,10 +33650,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0f83cbec19c834f534f353f4fce20c0cd88231f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37352,10 +33658,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37363,10 +33666,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0f98d7d56e9a99b97e5dc7eb122ef22e9684077b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37374,10 +33674,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37385,10 +33682,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/0fd8859246740606c498755ab00d6147abcfec00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37396,10 +33690,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37407,10 +33698,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/100bb8f2e6a0b41da13f4edb5c15d4a04e564840"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37418,10 +33706,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37429,10 +33714,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/101305ccd08c7a8bd0c2913c37d3dd0d39d4bb64"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37440,10 +33722,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37451,10 +33730,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/10f5d1937cb068fee7f85e2654be2bfe77498bb9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37462,10 +33738,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37473,10 +33746,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/110074f658208166d52897c9266fc46cbaa8af36"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37484,10 +33754,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37495,10 +33762,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1160214cdb23e8fc187078a8d6796656c1ade925"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37506,10 +33770,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37517,10 +33778,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/118ffddb43ccf9dae8bdb4702232d1dc39b021f7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37528,10 +33786,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37539,10 +33794,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1306c4c6ea714d4db0e4d814c944d8d40335e0fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37550,10 +33802,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37561,10 +33810,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1402bbcac6fa24eeb0475250e33f704096e2fb45"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37572,10 +33818,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37583,10 +33826,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/143e0d4f546bbb984a7c3ac1c60a37dcf85ea58d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37594,10 +33834,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37605,10 +33842,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1576c915ee38f5bd19f285ed0ed47e36026518f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37616,10 +33850,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37627,10 +33858,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1602788cf33d0354d6d48ead549e5137cd211979"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37638,10 +33866,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37649,10 +33874,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/17b1758fc7cd69a00d140f113b1ac894023ff20b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37660,10 +33882,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37671,10 +33890,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/18185cbf9e9cfc1fd28d27ed0d651d7cee6a2c06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37682,10 +33898,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37693,10 +33906,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1875a4acdcffe505ca92ea8af8d9d6b174736e80"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37704,10 +33914,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37715,10 +33922,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/18850965807039500c7f5450a907e86825cf823d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37726,10 +33930,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37737,10 +33938,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/18926cdc608599e8df6b0f4df99d4ad856ef4373"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37748,10 +33946,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37759,10 +33954,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1965cd58fc41578a837231c69075994da2e871d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37770,10 +33962,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37781,10 +33970,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/19e984af62c36fe982284c87421d8ee46173e9f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37792,10 +33978,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37803,10 +33986,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1aee32faadffa3c2ec508e8fd30006423665488f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37814,10 +33994,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37825,10 +34002,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1ba08b63181066ffab948eb301a6a2363a81872d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37836,10 +34010,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37847,10 +34018,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1c222dae4e2cde1fca9f9bf6226200f70d625342"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37858,10 +34026,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37869,10 +34034,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1ca51ab2fefef4f549c4a8e7f4910c6b5a4b4b1d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37880,10 +34042,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37891,10 +34050,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1cbcaad71950c62d41bab50f9c242d014cc0d904"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37902,10 +34058,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37913,10 +34066,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1d19042e6db2a90c52fcc3cb0aa76f2fd335014e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37924,10 +34074,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37935,10 +34082,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1d458954e8174bbb5dd4d0053df47d6b7adf290a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37946,10 +34090,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -37957,10 +34098,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1dc86d0febe4adc5353230cea24b5f7cce829283"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37968,10 +34106,23 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/client_fuzzer_corpus/1e64080289ea4168304417f3fbd86b01d7d6f431"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "client_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -37979,10 +34130,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1e84d42fcf18bbf81ef6e8a16a0c57abbf8d292a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -37990,10 +34138,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38001,10 +34146,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1f040e756f76357979f317e0c6541f72fd93df06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38012,10 +34154,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38023,10 +34162,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1fe7d16ffc2084d5d3c5f23d16902ae8810a5393"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38034,10 +34170,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38045,10 +34178,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/1ffc4952225dda41de59603e487ff7fd3026b958"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38056,10 +34186,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38067,10 +34194,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/20216d27af2b3dcc83d944e5f7a489ed2eff98fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38078,10 +34202,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38089,10 +34210,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/204093594b568ada9c7857a971f2a4b42123ee1c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38100,10 +34218,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38111,10 +34226,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/20539e464ced1a0a63d74bae731ca0a75db05967"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38122,10 +34234,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38133,10 +34242,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/205cf2b6994f10b783aa0a06938a5e47cb581126"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38144,10 +34250,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38155,10 +34258,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/207e12d6a84dc8fa020b3a60b3f75932ca4f8fa5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38166,10 +34266,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38177,10 +34274,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/20ea73876cc9cd5b3d3efa1bda21deb5eac2d61e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38188,10 +34282,23 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/client_fuzzer_corpus/20ee437b7f456ebb19d98d94d9feb1d5e9174c65"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "client_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -38199,10 +34306,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2166c7093c424a2136c4cb8b10d0b124047320d4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38210,10 +34314,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38221,10 +34322,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/21a6a133f3d1e06c077032ba56a7df4161f62efe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38232,10 +34330,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38243,10 +34338,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/224fa2e83fd8ecaa9059ad37a55238f74b8e0829"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38254,10 +34346,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38265,10 +34354,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/230527b90b0179139c961aca426187893191fdf2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38276,10 +34362,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38287,10 +34370,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2467fa0f8a9f4bd121f544892f0782498b2df533"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38298,10 +34378,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38309,10 +34386,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/246dcf347eba7f4d4e04d97dabc002f0acf2164e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38320,10 +34394,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38331,10 +34402,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/252de25a5237c830ad8c5e4732c176e03785042b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38342,10 +34410,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38353,10 +34418,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/25761748660a64111a8daa46f72ea1f336c2046a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38364,10 +34426,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38375,10 +34434,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2585dc7b6c095e978b56e0249fe9b5c61a4840af"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38386,10 +34442,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38397,10 +34450,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/25949b623930511f9d43fea4aa56a4389a28e11a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38408,10 +34458,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38419,10 +34466,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/26110f21dcb0fde99942e631366ebbd9d895860d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38430,10 +34474,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38441,10 +34482,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2663ce44ca5832381cbbdf7b252e39d6df021a93"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38452,10 +34490,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38463,10 +34498,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/269afce3bfff993c05c2a3b28c6cf3dfb3f461d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38474,10 +34506,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38485,10 +34514,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/26b8a9d27cef1ce4c3c5aefa2dee50001aab4b13"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38496,10 +34522,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38507,10 +34530,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/27f37037525aac7a41ffbadd6ce52e5a1851a2b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38518,10 +34538,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38529,10 +34546,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/289cdf83f89f70a13e9078259f764a339617c827"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38540,10 +34554,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38551,10 +34562,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/28ee8cae75efa07da9649933a9482d00643b5395"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38562,10 +34570,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38573,10 +34578,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/299034b9e0cc8d91c049c489dca6d1a2b8b08959"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38584,10 +34586,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38595,10 +34594,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/29952a15459cce9c647255ab5d7486df0507eff4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38606,10 +34602,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38617,10 +34610,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/299faa82b90ef12421d160148dfb6cd0077b57c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38628,10 +34618,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38639,10 +34626,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/29be7d33920998bae7329d77d4c81989eae91647"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38650,10 +34634,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38661,10 +34642,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2a8260b23460f90f770cedcafa14868d24db201e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38672,10 +34650,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38683,10 +34658,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2b230a7b55b17f2f8e89c4be73a662d781f7fb3c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38694,10 +34666,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38705,10 +34674,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2b71439e9ebf611a92386b9f21ad44bde7926184"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38716,10 +34682,23 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/client_fuzzer_corpus/2c1ecf05c5dde692ed16502294e9570ac3b02600"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "client_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -38727,10 +34706,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2c342f8715556398d49bcf3343b5a249d968e19e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38738,10 +34714,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38749,10 +34722,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2c6e69067c68c145dc5d3a60b86d8081fdf95d0d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38760,10 +34730,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38771,10 +34738,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2c79128c697b53256c56b9c57c7259866e0e2347"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38782,10 +34746,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38793,10 +34754,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2d83097b3cbd2245b085e749fe923fb590790e0c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38804,10 +34762,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38815,10 +34770,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2dce4a1fc4bb00bfcd43d549a3785913c9280369"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38826,10 +34778,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38837,10 +34786,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2deb1aeb93c2abca4177b1fe886eb354c83fe8af"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38848,10 +34794,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38859,10 +34802,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2e9860242d55a74cec244bb5c5445eb2797a3157"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38870,10 +34810,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38881,10 +34818,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2f288409c5f3cf2a10b3e1970a9c3d037dabe080"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38892,10 +34826,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38903,10 +34834,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/2f5f6d281a3d0473a04a17cbcbc6fd06cb73fd8b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38914,10 +34842,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38925,10 +34850,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/301e10bb6d9f60d91efde4e0c48893203a5b8b88"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38936,10 +34858,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38947,10 +34866,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/302a11eb9b9687464b88c9a670da371f6a6c57e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38958,10 +34874,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38969,10 +34882,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3128887b8e02f1873ed6b36766a870543269ea00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -38980,10 +34890,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -38991,10 +34898,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/31545e9fe4c6aa43329dc0d4a735842574fcaaed"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39002,10 +34906,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39013,10 +34914,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/31d12a2b1378120d15b4097371d792daa95de0a9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39024,10 +34922,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39035,10 +34930,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/320dc10f64b59b0eb0ae140912eded1ef9276556"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39046,10 +34938,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39057,10 +34946,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3336748264594689041e4080b51bc56f716d0689"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39068,10 +34954,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39079,10 +34962,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/333d0554d91872e693d118d6988132d95b7920ae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39090,10 +34970,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39101,10 +34978,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/337d579ab5eb157d7d58e9287d447976062cbd8d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39112,10 +34986,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39123,10 +34994,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/33c32a80db0ec311ee8744991c5b19345bfd8fe9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39134,10 +35002,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39145,10 +35010,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/35fbd748458e3fd6068957d46a9fbb2b0113d2b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39156,10 +35018,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39167,10 +35026,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/361c6f4374443671f039fd9659577e4460178020"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39178,10 +35034,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39189,10 +35042,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/368c75135a7341a96627d0dcfc4b2081003d8979"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39200,10 +35050,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39211,10 +35058,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/370b2c16cc353621091eda4964d4c4329205ffc3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39222,10 +35066,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39233,10 +35074,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/370f893353f792c99754ece93baed2105decd71e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39244,10 +35082,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39255,10 +35090,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/375c2462d6ae891222686f9519294811fa5de010"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39266,10 +35098,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39277,10 +35106,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/379b177d55b1eb86ddb66dc3a037fd8283ee07c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39288,10 +35114,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39299,10 +35122,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3a01c85934363bd2067f76d0d40c491f9f846c8a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39310,10 +35130,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39321,10 +35138,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3a3eb65d51f30f4cd16cc6f8436a5b00702a5712"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39332,10 +35146,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39343,10 +35154,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3ae87e3150628c422ada13002b08f2d9c5a9d78e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39354,10 +35162,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39365,10 +35170,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3afbc4c35885b79c6e6628afce93ce852d7767de"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39376,10 +35178,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39387,10 +35186,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3b3b4f9a985ec49f6c54bae798208625e5adb777"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39398,10 +35194,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39409,10 +35202,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3c7b516e302ad3503a933b5dcfb8c58acaea07a0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39420,10 +35210,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39431,10 +35218,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3d4d961511c1de95a81b129f2fe96390209de2e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39442,10 +35226,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39453,10 +35234,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3da7577acd806e1d92d48211b22fd9db352fd834"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39464,10 +35242,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39475,10 +35250,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3e8f531043a07df2280bca73fe4a7987d82ce67e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39486,10 +35258,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39497,10 +35266,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/3fcc2da89f438b247cb5b4b41e15aceccfa75b36"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39508,10 +35274,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39519,10 +35282,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4040224f3df361afe45bce682d56d26f13829413"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39530,10 +35290,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39541,10 +35298,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/41aad2f11a7ab418213352e84de872d9997db8d2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39552,10 +35306,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39563,10 +35314,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/41b499e86caed7b48c59aaaf51360c3c71029400"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39574,10 +35322,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39585,10 +35330,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/42554ddbe59429d30d718282ca606ed8b5a90eb3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39596,10 +35338,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39607,10 +35346,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/42c395ab373346fb283ace021bdc1f6428f92f80"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39618,10 +35354,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39629,10 +35362,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/43202ad9b1a689d919ab9ae91c2d0223394867bf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39640,10 +35370,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39651,10 +35378,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/438789ebe8a5d676f6f03ef8329c3d77579aeba4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39662,10 +35386,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39673,10 +35394,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/44153f8b7af5a3b27625a46af89e1712daa3ae8a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39684,10 +35402,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39695,10 +35410,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/44d64196fb2e8d9506734a81304f6ef17b9bc29d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39706,10 +35418,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39717,10 +35426,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/44f0973ec77d6fb9eac931e84fa7ec6fdadccca6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39728,10 +35434,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39739,10 +35442,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/450f9f56c80c8b71e37302a254ba7c3f7298dfd7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39750,10 +35450,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39761,10 +35458,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/451e69ab65e0fe0a5731622ed21ab2b5380df677"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39772,10 +35466,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39783,10 +35474,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/46dcb1c399e5a514267fbbd5a50939f34e0ad6be"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39794,10 +35482,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39805,10 +35490,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/47e8aee44c2c7bd870f15b50fc085c5a8030edfc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39816,10 +35498,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39827,10 +35506,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/489e9830136adcc53f4b191199c33504685b3737"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39838,10 +35514,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39849,10 +35522,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/49112bf1277d93601eb6526fe9ee9d45864d759e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39860,10 +35530,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39871,10 +35538,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4a11af9ef42aeb36691185520be281c4760ad27b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39882,10 +35546,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39893,10 +35554,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4a4553c2e939cd50981bc38e8ddb1f2109ddb3a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39904,10 +35562,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39915,10 +35570,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4b2ce115b15082ed951f4dc0b432da6a9d37bf85"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39926,10 +35578,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39937,10 +35586,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4b585eb75ebca2187c0aa5a6abe4c8125aa80127"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39948,10 +35594,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39959,10 +35602,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4b611a3748757e2fa89fcd2fb22d34444fbf5b42"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39970,10 +35610,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -39981,10 +35618,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4e21c4b5c454df51c102f09ea1ba78c42133ee16"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -39992,10 +35626,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40003,10 +35634,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4eaff3c3515a1ca019d46b9be0b7318eaffb63d1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40014,10 +35642,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40025,10 +35650,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4ec113a0126fc5746fa3f955727d009040e8377f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40036,10 +35658,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40047,10 +35666,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4f5b9d5c707a35084918c272efd1295d301ca0b5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40058,10 +35674,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40069,10 +35682,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/4f8b5b7489cca36225acec0f9aa7f5c556d79d8d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40080,10 +35690,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40091,10 +35698,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/50ece7ea16659b4e1a2284cea963fab662c19e6b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40102,10 +35706,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40113,10 +35714,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/514c9cd7b6519b596900d924ff2caa173d688f4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40124,10 +35722,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40135,10 +35730,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/51c6c5297acebf9d21a8a7d6261d0a17c2adfb56"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40146,10 +35738,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40157,10 +35746,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/52c00bde7f4af95a86deb0a6717d1faf2828a939"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40168,10 +35754,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40179,10 +35762,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/534c900ade27c8f7fccb1f3b7e7703f77f13a8f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40190,10 +35770,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40201,10 +35778,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/5360327e8bc8969f31b364df3081b51a1e03900c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40212,10 +35786,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40223,10 +35794,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/542c958c84d1e319b9ba23c52de2c4bca08a8dc7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40234,10 +35802,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40245,10 +35810,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/5482dc4af170def9c183315efaa48f9c186926a1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40256,10 +35818,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40267,10 +35826,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/54e67ed1036f3f5b315e0e3c02948c30eba900fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40278,10 +35834,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40289,10 +35842,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/55ca8f6d9928c239a7abb32554463e6e1e1ee084"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40300,10 +35850,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40311,10 +35858,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/570ca8d2555dde94aa3b3121e8f5256e83eabe5e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40322,10 +35866,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40333,10 +35874,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/57ee6efc38f4c544a3ea3e5e73987e825bdf2980"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40344,10 +35882,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40355,10 +35890,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/58a067ec6eda7191a5a910d8120633271d3af074"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40366,10 +35898,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40377,10 +35906,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/58d6dffb65a1fe1bc4e3fa970a15459587a32f77"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40388,10 +35914,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40399,10 +35922,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/591ef436ef8cc982b48fd827a4555b57cd9780e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40410,10 +35930,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40421,10 +35938,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/59d78f6397f0483d139f5bd0a9f264156f34acc4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40432,10 +35946,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40443,10 +35954,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/5a2447fdfdbf123f4592c1284007b7d50a01750b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40454,10 +35962,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40465,10 +35970,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/5ca233a53e3e425cc12e04b466a49789291eaa00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40476,10 +35978,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40487,10 +35986,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/5dc7b2086a39f56d8b9135f524d34a01fcabafd8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40498,10 +35994,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40509,10 +36002,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/5e1659e7cd840ab3f958273ebffdd215f2c81da6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40520,10 +36010,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40531,10 +36018,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/605e474e9d9436488dfe084d348908e4dfab81a3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40542,10 +36026,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40553,10 +36034,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/6066fc9e28b4ce704230f0e8cf21e7c3195aa2a3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40564,10 +36042,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40575,10 +36050,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/607dac8012f188cb035b189fc3637028137023e0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40586,10 +36058,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40597,10 +36066,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/611343a6b8879b393ba2f38ed41c7f5355355920"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40608,10 +36074,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40619,10 +36082,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/62c843359941660da3fc9eea62a5732aaa3be283"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40630,10 +36090,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40641,10 +36098,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/636a19b8f50c4efccccea83ab78a933d999e41fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40652,10 +36106,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40663,10 +36114,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/64696e93ead18265cdac3fb37dae29ad3be6d764"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40674,10 +36122,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40685,10 +36130,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/64c0e0b4d9c2d25fdcb1e2bdcb999487fc096dad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40696,10 +36138,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40707,10 +36146,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/64cad305e1858eae27cd723778fb9f4b7052eaa5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40718,10 +36154,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40729,10 +36162,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/64d27dc9f984c49d421a5b0cb0391992d5aac1a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40740,10 +36170,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40751,10 +36178,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/653ec14661c40ea25bdbab4a7cb9371c669d10d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40762,10 +36186,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40773,10 +36194,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/66145518601b1405361df12570f6e0b2b9a2e5b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40784,10 +36202,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40795,10 +36210,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/662d81374a2c96f867ccd88a4295190827c45453"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40806,10 +36218,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40817,10 +36226,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/669256f857011c32f5757ec19b2e5b9a372f6c23"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40828,10 +36234,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40839,10 +36242,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/6749752b02f7d14fff9ac35f6b68dd62f5b49fcd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40850,10 +36250,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40861,10 +36258,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/67e72cea2b7042f08e8dfba5191d27bb390e4d00"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40872,10 +36266,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40883,10 +36274,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/685fbddd9ea612b25e325a50bd659997b4d77da1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40894,10 +36282,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40905,10 +36290,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/69542ed81b00a5ec8daaf4e8d509201eecd502c5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40916,10 +36298,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40927,10 +36306,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/69be4179b28e408a0574935e893c6986bbca0de9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40938,10 +36314,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40949,10 +36322,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/69e52eef5dd0c51012b5c974cf70f4074ba814a9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40960,10 +36330,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40971,10 +36338,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/6b1698d096095d4035ce67a8680b52eada00cce2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -40982,10 +36346,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -40993,10 +36354,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/6bfd3679f4e30aaaa1808e96c980edcfa9cac1c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41004,10 +36362,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41015,10 +36370,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/6e2796549e29e5066f780a5e926fd6e3bb362450"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41026,10 +36378,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41037,10 +36386,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/6e71553967212dfea2c9995f3641e582d8c2105b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41048,10 +36394,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41059,10 +36402,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/71106770243ccca03f5025aadb298ee3a825824b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41070,10 +36410,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41081,10 +36418,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/717695057d76b81c344ed8c23cc024195caa9405"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41092,10 +36426,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41103,10 +36434,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7353a7b2ea9f61325728b2f118416549e89dd79b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41114,10 +36442,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41125,10 +36450,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/739228a1400cd69c47f110002c34dbe1661e8c41"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41136,10 +36458,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41147,10 +36466,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7465a4955a064e8f1bb777d4b0de5b3df8469831"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41158,10 +36474,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41169,10 +36482,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/74e6831be67485fb59b8e226fb8a48d88faf57d6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41180,10 +36490,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41191,10 +36498,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/753efc088d6023ca113a12acc54015a22f7daf9f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41202,10 +36506,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41213,10 +36514,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/759a1e2e34cad14321a5e5790b1e6a783312fea1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41224,10 +36522,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41235,10 +36530,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/77ea9180617391d8503427a1c060538182f7729f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41246,10 +36538,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41257,10 +36546,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7885df741c88ca4b539798d9985c445f41cc2929"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41268,10 +36554,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41279,10 +36562,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7af3156d286a32a6a6fede46d93ec12ded1ac138"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41290,10 +36570,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41301,10 +36578,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7af41e5391204f4596cb1461792e2e23f9390b7b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41312,10 +36586,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41323,10 +36594,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7c2e48b0d08aaeb95b5ca26036384aa2cec9de77"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41334,10 +36602,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41345,10 +36610,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7c73c0671308e37a8075a20863e70e180ef8b6ea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41356,10 +36618,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41367,10 +36626,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/7e18989175bba8d9aea34413d6f328549e1c6825"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41378,10 +36634,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41389,10 +36642,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8021c689f0078c5c59419c9959f5c58472245bc7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41400,10 +36650,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41411,10 +36658,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/807b8c4ca068cff4bc0fc8e854c1215a2fe65960"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41422,10 +36666,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41433,10 +36674,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/80bd4827db81a1da28fae8c150f5e2d46651c598"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41444,10 +36682,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41455,10 +36690,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/813d2c34c0df8d4a918e68e58cf0ae3703d0d46f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41466,10 +36698,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41477,10 +36706,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/824152f7bd022996b41327002f6971cd9900b265"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41488,10 +36714,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41499,10 +36722,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/829a1dc2bcb22a230df8aa20540def0e16864983"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41510,10 +36730,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41521,10 +36738,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/82c0e02a867a5fdfb805e01ebf1a008220311e27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41532,10 +36746,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41543,10 +36754,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/831248cea079b629bf0ef6d9d02c159d6f8ed41b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41554,10 +36762,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41565,10 +36770,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/834527ef0bc1572c584938ca7fe5336961754708"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41576,10 +36778,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41587,10 +36786,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8382c249fc9c7a248833d89de554e63807c475f7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41598,10 +36794,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41609,10 +36802,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/83baaee9b46770d9eef0e161a6e52cda76e3b043"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41620,10 +36810,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41631,10 +36818,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/842cea88bccc41d7e2625dae8ff7268ee79e9f57"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41642,10 +36826,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41653,10 +36834,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/850c639595eae3cc9c2cfef473e28fd4e8174dc8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41664,10 +36842,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41675,10 +36850,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/857ce08213a5106c746767352c6863d7bd134208"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41686,10 +36858,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41697,10 +36866,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/86eb156ff8ddd7edc535840d412342ada6f3b184"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41708,10 +36874,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41719,10 +36882,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/871a2e4d73a7fbb50f71558517a2f704b7fdb868"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41730,10 +36890,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41741,10 +36898,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8795e24f23db36e4f9ab609c9faff601b984eb6f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41752,10 +36906,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41763,10 +36914,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/87e97b460042d045629263ad10ff3de7b000f0a1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41774,10 +36922,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41785,10 +36930,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/89cf42c02d7135afa6c81d8a0c2bc4c3df557769"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41796,10 +36938,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41807,10 +36946,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8b7b914723bfc23ec650cb91d209141641fba09f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41818,10 +36954,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41829,10 +36962,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8b8b9fcdfff1f891b1694614b7309cb4a2098f4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41840,10 +36970,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41851,10 +36978,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8b8f6d58dff9ab0c37183ec93c9a600d5ba5d9e6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41862,10 +36986,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41873,10 +36994,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8ba00963037c9ff548b7a702497441799075f14b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41884,10 +37002,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41895,10 +37010,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8bacacba71bfa5c74fd74cb6577a49a7aec9cf1f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41906,10 +37018,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41917,10 +37026,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8c527bdf0f304a31866f71cdb298511041ecd320"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41928,10 +37034,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41939,10 +37042,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8d352ea63259e26e1bb61f5a8f78254be4e3e7b1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41950,10 +37050,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41961,10 +37058,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8dfc4e78007040009f37109f9ca928c31b3ebb49"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41972,10 +37066,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -41983,10 +37074,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8ea624983d766ed45780378a3eec24eb2faeb229"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -41994,10 +37082,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42005,10 +37090,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/8eeb8cf054ebd546ca0555ef1cd4ac6a08628917"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42016,10 +37098,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42027,10 +37106,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/90a9c3390752b94ca19a58cb2fe6267bc818f718"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42038,10 +37114,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42049,10 +37122,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9125277ed9ec5d59e51f3e1a8d97d25ef88a5d4f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42060,10 +37130,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42071,10 +37138,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/91916df7c8f04d8c2b6b8f4aeaeee6972ce0de74"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42082,10 +37146,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42093,10 +37154,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/92cce6dc5c31acd62347b15d89d52ab94b507e0f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42104,10 +37162,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42115,10 +37170,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/92ea0d3200665e1836ac12bed0837425cb9f43de"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42126,10 +37178,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42137,10 +37186,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9329b80d0125cc994d7ad36540c7a8265d76983c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42148,10 +37194,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42159,10 +37202,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/94108ac8420347598c7cee743b2a158b1270fb8f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42170,10 +37210,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42181,10 +37218,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/954ea72fdbeaf5b46d18c6d5bb77fc1a0f97569d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42192,10 +37226,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42203,10 +37234,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9552c3f6304af40224b800f3a3a5df3887a530f6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42214,10 +37242,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42225,10 +37250,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/96e5126447131d3d59cc6547f6b91d3433ce37c8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42236,10 +37258,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42247,10 +37266,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/970fccda0b34b59ade44d52e1212699b4d2419a8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42258,10 +37274,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42269,10 +37282,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/97c4b73f72b248b4ebf4bf30892d0db828a85297"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42280,10 +37290,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42291,10 +37298,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/98c0c0a3c8c05aec3082755a4635e65baecf4752"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42302,10 +37306,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42313,10 +37314,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/98da5edafac67704810f093b38c86e4c77b75349"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42324,10 +37322,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42335,10 +37330,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/98dddd3f679af150e9933bd864ae20e20b7aa25a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42346,10 +37338,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42357,10 +37346,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/999d0995c2f09beda8783eac95d7643a11d5c89a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42368,10 +37354,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42379,10 +37362,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9a43f48d4f6219618f8cc9e876880fe81109ad72"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42390,10 +37370,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42401,10 +37378,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9a4da2a37a26c114e1226bfbe1cf80ec5ca99a66"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42412,10 +37386,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42423,10 +37394,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9abf980e8909aeb31936553ca22ccfd8680c4dab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42434,10 +37402,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42445,10 +37410,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9b1355c6e2c43ce83001bbead09a79852e04feef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42456,10 +37418,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42467,10 +37426,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9b4d4ce0457f5300d6b4b309762acfdbc41e3965"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42478,10 +37434,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42489,10 +37442,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9bd059ff0a90e86ada1ba7e5b90ae04637ae9e90"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42500,10 +37450,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42511,10 +37458,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9c4eac3dd734a74673c76e6b21fd9c18cdfa831c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42522,10 +37466,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42533,10 +37474,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9d2dd744ba59c1e8ec091e23938e46d1bb5ee519"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42544,10 +37482,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42555,10 +37490,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9d362d2aaeee243a5b54621d8187c4b16f87c9f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42566,10 +37498,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42577,10 +37506,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9d6947df24c9ebcbec72c568d9708d7b1ecae63c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42588,10 +37514,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42599,10 +37522,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9dfdce1b090a559a14f9a5852f78547413b1d1ed"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42610,10 +37530,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42621,10 +37538,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9e2ab07030bd35a4c31df32c79aca5e76c1d04f8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42632,10 +37546,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42643,10 +37554,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9f0ab521c728be21e93112b2730c52bc1d6c0021"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42654,10 +37562,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42665,10 +37570,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9f2316ddcea948c947fbbf35ae87b767b8c1dc55"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42676,10 +37578,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42687,10 +37586,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9f9ed47f98b4905f1f6ef2b552a66905bdf79b1b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42698,10 +37594,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42709,10 +37602,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/9fee3212240d4bccfdab3696dbbc579b06d39982"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42720,10 +37610,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42731,10 +37618,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a09ef34c93fe0ffc13045f67b7ecec683fb72e98"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42742,10 +37626,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42753,10 +37634,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a30fc2605f4e74f7003f902ea4a4c994e3ce9bfd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42764,10 +37642,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42775,10 +37650,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a33e1b28074a41fc5c2611a67161ae5638a47dd5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42786,10 +37658,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42797,10 +37666,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a3cd54d43d3b3bdfcf224d636dc11ce1b5ee4d30"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42808,10 +37674,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42819,10 +37682,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a4874327383ca168f9d9d59cffe327f61e9a6610"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42830,10 +37690,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42841,10 +37698,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a4e4a0473ac1f2b8de86efdf00fcb382a343126d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42852,10 +37706,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42863,10 +37714,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a502dbaf3c842bd86e9ae513e8782eb23c70ad7a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42874,10 +37722,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42885,10 +37730,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a60ae4e21a913e84405814f18555f0c179c24167"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42896,10 +37738,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42907,10 +37746,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a6603e797695274d10bce000f66ca0a715f7d8c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42918,10 +37754,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42929,10 +37762,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a6d4b6043d86c376e9b166d5ca395f3e099ae229"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42940,10 +37770,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42951,10 +37778,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a6f0d1ed80393ec0a884718b44fe2dc9f852d38a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42962,10 +37786,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42973,10 +37794,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a706f2067bfbda7837eaad68972d60547e2957c3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -42984,10 +37802,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -42995,10 +37810,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a814c5743d492b96d2b402f9e819bf8406262224"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43006,10 +37818,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43017,10 +37826,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a8e67676784506d2e6eab3a0dfa25e53a80b40a0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43028,10 +37834,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43039,10 +37842,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/a9d71e1ff2912d8874e38fc61cbd9a8ef28af4a9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43050,10 +37850,23 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/client_fuzzer_corpus/aa878edb0100e876e00e310ae221b220fdb5e028"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "client_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -43061,10 +37874,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/aaada46c7f3bff58c2dd6f4a8394135ed5f253ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43072,10 +37882,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43083,10 +37890,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ab27fb527771c7d86f74afb6864e95402328ec0e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43094,10 +37898,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43105,10 +37906,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ab8d6e1ecbd80c6223b8623a386c61023502a57c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43116,10 +37914,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43127,10 +37922,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/abd52da5882855a63632a6917df3639538928cd3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43138,10 +37930,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43149,10 +37938,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ac38a6572f8420b4df37d9e39088d1905fced71d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43160,10 +37946,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43171,10 +37954,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ac727124e46a249419f088c8665324a11b357b84"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43182,10 +37962,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43193,10 +37970,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/adb9bf315315338bcad85929917b9def2aa098cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43204,10 +37978,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43215,10 +37986,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ade2d2f0e120a9527487e9b92458ee6844800e4e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43226,10 +37994,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43237,10 +38002,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ae8c538d4ad7f2996ac724bad7a075e1aea32556"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43248,10 +38010,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43259,10 +38018,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/af8b24ffaecdfaf96c0cd7c76f31dc9e1b4d0935"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43270,10 +38026,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43281,10 +38034,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/afcce9e02e0696a2af073855a386f589cc12c94d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43292,10 +38042,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43303,10 +38050,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b00a32e8bfb75e75f31410dfe3592da6248275c6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43314,10 +38058,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43325,10 +38066,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b09f98e13e5b67a4dd7f74eff00bb247b9967844"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43336,10 +38074,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43347,10 +38082,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b24a0dd1bc0bfabb832f0d1c8410c018c4ddaf4e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43358,10 +38090,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43369,10 +38098,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b283eb8884c98dd50523995ce221aa1ecb3ca182"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43380,10 +38106,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43391,10 +38114,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b2a79b262ee3966c5ce7c7b42dcffd55d7d0956b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43402,10 +38122,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43413,10 +38130,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b2aa4861b5104e8bb8bb173f4b023a2172a7b9a2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43424,10 +38138,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43435,10 +38146,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b33eb7e1bde4c69671dbbf9489b4d4b87c5d23fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43446,10 +38154,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43457,10 +38162,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b39bfaf6a3072d8a50984dcc54967e9246f8d3e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43468,10 +38170,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43479,10 +38178,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b3f33b78433af7f607bc99b569b0cef95a1a6ca0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43490,10 +38186,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43501,10 +38194,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b46e762671a5e28c7061da3baee6fc41dcc0122b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43512,10 +38202,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43523,10 +38210,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b6d86bedf3cf19441114e463458a454709e627b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43534,10 +38218,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43545,10 +38226,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b755933ad6e318ee9e0c430ff69be7a515d44def"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43556,10 +38234,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43567,10 +38242,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b7b664a39372dd6142b8ef7906857e4ab3f1fc84"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43578,10 +38250,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43589,10 +38258,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/b7c31bb5f6acc65b88e31400dcae71f7be392c86"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43600,10 +38266,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43611,10 +38274,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ba942f8fb244b60561a067129c242c4bc4fdd5e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43622,10 +38282,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43633,10 +38290,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/baa28a5baedb645f4430940a4b4b1142f4b03e0f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43644,10 +38298,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43655,10 +38306,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/baf7839388e10ff0c410a58797482cb83693b309"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43666,10 +38314,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43677,10 +38322,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/bbc03bf6274a79528d43e200e8f1aaa770a155d6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43688,10 +38330,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43699,10 +38338,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/bc9e17fed43c5d0668a87e8d6354c344c5b4d00b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43710,10 +38346,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43721,10 +38354,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/bcc7340f8876a7dff381ca676efc39d30eed9f48"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43732,10 +38362,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43743,10 +38370,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/bd0bef14e73aa1073eb5acb6e4cc901c976335f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43754,10 +38378,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43765,10 +38386,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/be3237e72b3d8d56eec0520145dd7d1a5064eede"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43776,10 +38394,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43787,10 +38402,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/be8cc5bab95e0ea7af538ca11175d710da6207d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43798,10 +38410,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43809,10 +38418,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/be988fc0c00a8422020dea3dc72451b09e25e1ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43820,10 +38426,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43831,10 +38434,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c0deaead93c9b3f2fc211fb7f0711ac192715a40"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43842,10 +38442,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43853,10 +38450,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c24143cf5f6f77f002e0ab82e3060906e2e7d062"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43864,10 +38458,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43875,10 +38466,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c3afa705dab02fea4d892134e7c01c3af270cb6e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43886,10 +38474,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43897,10 +38482,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c3de41124a14ea562360aabc9e12666851bff2fe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43908,10 +38490,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43919,10 +38498,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c4e60ae7c05b12a90dd7c43fbc85ae4be7540f18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43930,10 +38506,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43941,10 +38514,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c5d0c169d326d79fc4ee8521b282dbcbf33c1d5c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43952,10 +38522,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43963,10 +38530,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c5dfb4a82f91d07041d4b0ca6cc34cfa1e9c7199"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43974,10 +38538,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -43985,10 +38546,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c685689a9d5b259afe237d857b7c6551dc95c176"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -43996,10 +38554,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44007,10 +38562,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c77087b4651f4c62a780d77a3b4c233490244e8a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44018,10 +38570,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44029,10 +38578,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c784ad2e205ba49b5bb1302746723dbc57320981"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44040,10 +38586,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44051,10 +38594,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c84da54dacf04445b50448a70fb0ecdd08e9234a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44062,10 +38602,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44073,10 +38610,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c8cb20176e427d2e108187924f570ef1df6d440c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44084,10 +38618,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44095,10 +38626,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c916ea9c6901c1e77af764773bd2843baa2ebdc6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44106,10 +38634,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44117,10 +38642,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/c97ebf43d8a5ce5cdb8e93a5d0362239c284ab4d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44128,10 +38650,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44139,10 +38658,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ca0db313bf949ba3f87a5254646a7a7dc8a7f89d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44150,10 +38666,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44161,10 +38674,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cc4197d2381a75b674fe4944b8c690fe69a0b3b1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44172,10 +38682,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44183,10 +38690,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cceb4c620c02337138e489383db0d4f4e2c7a722"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44194,10 +38698,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44205,10 +38706,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cd4be18b1ae872c40580edc4fe8cbdf1fe2a3881"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44216,10 +38714,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44227,10 +38722,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cd76ed6aff7e074b0cfdcc6305ec4e453d8304bb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44238,10 +38730,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44249,10 +38738,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ce990633c0f2b2a2ddb66144ed942d4bc9bcd8fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44260,10 +38746,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44271,10 +38754,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ceb297908903ba0fc24982ad4e6010e79dfbdd5e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44282,10 +38762,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44293,10 +38770,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cedd54df6d34491dbf7843c2621d6818418aca02"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44304,10 +38778,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44315,10 +38786,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cf75632ee185df2cbbbe148e2e1ad5410f11d361"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44326,10 +38794,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44337,10 +38802,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/cfa40fccc5ea4304e83ca26f4e567765c2c08627"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44348,10 +38810,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44359,10 +38818,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-12b69708d452b3cefe2da4a708a1030a661d37fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44370,10 +38826,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44381,10 +38834,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-3bd02c98286bfa7be8e13c5500ddb587bba74fbb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44392,10 +38842,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44403,10 +38850,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-53e93a1906d8442d058500e7107929cdd3e84ff8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44414,10 +38858,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44425,10 +38866,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-570c79624a2e4d36be107745d2b25e74464553af"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44436,10 +38874,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44447,10 +38882,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-8e546795782dffa5d5f5e94c9510aac178fcee39"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44458,10 +38890,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44469,10 +38898,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-d5af12c391b7bf0ce63ee3dc656ee4410fe496eb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44480,10 +38906,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44491,10 +38914,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-d92bb454bbbd415175df541661e3696453ce3e43"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44502,10 +38922,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44513,10 +38930,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/crash-e470e9fd09a5c9ef303813a40361c897650289fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44524,10 +38938,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44535,10 +38946,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d194592e6f471dd487ca2625e6c3da7802ea372f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44546,10 +38954,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44557,10 +38962,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d1b1863b478e1ea71eafac9e03256080c8f0d1c5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44568,10 +38970,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44579,10 +38978,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d24d1b9d754391fd0b11b0456a2e8c6050cadee6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44590,10 +38986,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44601,10 +38994,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d250e525e8ff2ae4a9bddb2e478a90a1242155f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44612,10 +39002,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44623,10 +39010,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d257c41db22b60cd937de16b9d90a44b9fa8e426"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44634,10 +39018,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44645,10 +39026,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d2df8e95436cf98ef2189191a75a3d9c78b1be6c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44656,10 +39034,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44667,10 +39042,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d3386702918881101368cdba2c4967e86ff3a7b9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44678,10 +39050,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44689,10 +39058,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d363f288f48fba8fde401978b7e764295735645e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44700,10 +39066,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44711,10 +39074,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d36e015b1e14ecb9559d67bb09c2851699f0aa35"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44722,10 +39082,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44733,10 +39090,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d49450b97f489f0dea74a9f83c71abeba1066d3c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44744,10 +39098,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44755,10 +39106,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d4a72650e8218ec551fef6560ddd136d52828a4e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44766,10 +39114,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44777,10 +39122,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d60469c0b5b385f20d55aa5cca55bc2c801f3b95"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44788,10 +39130,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44799,10 +39138,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d70b2046ee62676b525490b70812c2157e5a3585"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44810,10 +39146,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44821,10 +39154,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d727b7edb460c549d7b12b90f581048c9f4747e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44832,10 +39162,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44843,10 +39170,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d89026894e6c5f8b5c88dec12950f56c4b6924ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44854,10 +39178,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44865,10 +39186,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d90c312791129dee8c5f85cb3308323d0c39b70d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44876,10 +39194,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44887,10 +39202,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/d91281daad9b821294db204dfc244b2d0d5496e4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44898,10 +39210,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44909,10 +39218,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/da322a6b88da87babb52d1527fe54cb4ac214b32"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44920,10 +39226,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44931,10 +39234,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/da4d300d0a8e6f803ec053e3e7689c4b91eaef90"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44942,10 +39242,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44953,10 +39250,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/da538941f1613c627523cb1be71eb220d1ca2579"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44964,10 +39258,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44975,10 +39266,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/da8d4c7f02dbeaa543c159b3a4e527059978a429"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -44986,10 +39274,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -44997,10 +39282,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/data_frame.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45008,10 +39290,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45019,10 +39298,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/dc4a248fa4c903ce3a571dd18aea575019445740"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45030,10 +39306,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45041,10 +39314,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/dc7ebba06558484af10b5aafd01ec4fd59276b12"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45052,10 +39322,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45063,10 +39330,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/dc815fd6d5e817898238481472f359bc50b510c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45074,10 +39338,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45085,10 +39346,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/dccd1fd6d3394f5f68c87950ed7356a2e9ef0f6f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45096,10 +39354,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45107,10 +39362,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/dd662353bad317cee7d16191a39e094bfa4898f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45118,10 +39370,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45129,10 +39378,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/df684493457bc8d87dec2ca0825f7b43978fecfd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45140,10 +39386,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45151,10 +39394,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e0d1ee5e2e169dcae87f790f5c27e84a3453cedb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45162,10 +39402,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45173,10 +39410,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e18cab69ad5cc17c88f8b56ca9929ca8af3eed30"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45184,10 +39418,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45195,10 +39426,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e1bd70aa5c802cd4462ff4833c09ed432ce4c9fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45206,10 +39434,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45217,10 +39442,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e1f2e203d39ab2509d4a67f7a44265b1e6364334"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45228,10 +39450,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45239,10 +39458,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e262f378a3d27bc519d472ce3650bdffcd48a055"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45250,10 +39466,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45261,10 +39474,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e309e21c69e4b96ab37f675f4e87a52453512ef8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45272,10 +39482,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45283,10 +39490,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e30c4ef6423bd4d872792fbd6954ff8e47d31a97"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45294,10 +39498,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45305,10 +39506,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e3422e8f5d63a9ef180aab552353955c7aba90b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45316,10 +39514,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45327,10 +39522,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e40b0fa5d814be8f2081ca2c8e0a4090d4893831"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45338,10 +39530,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45349,10 +39538,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e442f9fd63bc5345de1c14803d4ca4bb6f1152cf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45360,10 +39546,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45371,10 +39554,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e4c0e27cfd3690b8255a8214d6dd055385d1d24e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45382,10 +39562,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45393,10 +39570,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e4dc0a111e77dc495c5db07df5e2917adb674697"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45404,10 +39578,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45415,10 +39586,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e5a7c086208248a15ee6fa5195fc4ce22469de15"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45426,10 +39594,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45437,10 +39602,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e5ac3394971400b6636d029aec7ec665a94ecf29"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45448,10 +39610,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45459,10 +39618,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e61f728210ce72ed8b2c066bd1b1ecf9e6824b77"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45470,10 +39626,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45481,10 +39634,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e6a08259a7d47601eab5c0249cb6547024e002c7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45492,10 +39642,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45503,10 +39650,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e6b3c920b47e00055226d49b9f715c5d4353e3e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45514,10 +39658,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45525,10 +39666,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e6f5cc0702a5f38b9e7339849e1dd2e4001e547d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45536,10 +39674,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45547,10 +39682,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e7c26599fb2e2b031346ff1ba09294fd758f7abe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45558,10 +39690,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45569,10 +39698,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e8323c817d18f0c920d3cf53be41a9bc0fd64b76"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45580,10 +39706,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45591,10 +39714,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e969affd8af10a1b87dc63afd3b29cce3e58fbb2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45602,10 +39722,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45613,10 +39730,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/e9f7f7f258c72222397a960652c01d2a37e2afe3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45624,10 +39738,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45635,10 +39746,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/eb969b9ab1b0d6b5d197795223ba7a091ebd8460"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45646,10 +39754,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45657,10 +39762,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ebb0786acc21c6185356eae9a62490a03fddd1f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45668,10 +39770,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45679,10 +39778,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ec180175f0edea0a6c3eea2ae719b006bc029ff8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45690,10 +39786,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45701,10 +39794,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ed6358fbe6721c9ac01a6f4cab4d2df377eb1f11"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45712,10 +39802,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45723,10 +39810,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ee436743977b8e31feec22a91b1ce23dee96665e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45734,10 +39818,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45745,10 +39826,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/ef1984d6146670122c7a7246374bca460e7284e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45756,10 +39834,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45767,10 +39842,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/eff9ad9144a2953fadc019fe72eb1cc3447c33fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45778,10 +39850,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45789,10 +39858,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/empty"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45800,10 +39866,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45811,10 +39874,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f03120d1a8376638e071735bf4746454b6ede389"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45822,10 +39882,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45833,10 +39890,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f09410ab7bc19ee1ff206f94e8eec2931faef15f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45844,10 +39898,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45855,10 +39906,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f1b9b6803e41beabb1a762d511fc148116e09e78"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45866,10 +39914,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45877,10 +39922,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f24f925945aaf5e8b5ee470935e5aa7f847e7a72"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45888,10 +39930,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45899,10 +39938,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f41f9319bda14ef21b925c46945b30728503dfaf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45910,10 +39946,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45921,10 +39954,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f4499e3d4bf60ae3ae929c485a13ea4dc2713369"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45932,10 +39962,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45943,10 +39970,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f5b1eab444efb2664a295d4e6d087eb209c0c480"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45954,10 +39978,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45965,10 +39986,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f66305230042fa83fcd1b98c469d90ffef3ff6da"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45976,10 +39994,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -45987,10 +40002,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f6af3f46aacee395877d7f7909f8e412a6538efb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -45998,10 +40010,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46009,10 +40018,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f74143e8160754e40eb4d21a182c970210707979"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46020,10 +40026,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46031,10 +40034,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f7812b2aca4d12ffbdac67bcacc41b34524de6cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46042,10 +40042,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46053,10 +40050,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f8467d9574de94b9bb904f75a6a7e2405c36f105"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46064,10 +40058,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46075,10 +40066,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f84f5d6188cf099465f0b70337b87ad8aa8efb78"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46086,10 +40074,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46097,10 +40082,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f8fb1348ec3ceeb75c2a03df6a2ead0de6f4127a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46108,10 +40090,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46119,10 +40098,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f91f76fa45a23adfed48a10ec9512cf16bfb6636"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46130,10 +40106,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46141,10 +40114,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f96843fdf2d6fdd661c26201d96ae7bec72c6c3d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46152,10 +40122,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46163,10 +40130,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f9940356ee9b212849fbdf0d818b17af1a4f3c6c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46174,10 +40138,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46185,10 +40146,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/f9c875c00b7327df5bf21c3e051b55b0d2ed3cc8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46196,10 +40154,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46207,10 +40162,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fb340fff42a4d7ebf6b82adb9345655ffeeb05d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46218,10 +40170,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46229,10 +40178,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fc3ef8b3cb43e4d2721b252e7fb578d83ed6605f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46240,10 +40186,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46251,10 +40194,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fcc557c9844892675be823fac8788eb694a3a118"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46262,10 +40202,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46273,10 +40210,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fda07f0de15cac77ccc54ec221d81cdade189bfd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46284,10 +40218,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46295,10 +40226,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fdb553b8d82e68270a7345b048772bf8367b1224"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46306,10 +40234,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46317,10 +40242,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fe1390762579b5c335bbdea73e251b95b979c3c9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46328,10 +40250,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46339,10 +40258,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fecccfc70b1cf1a524b9f28a9ba2c153c8e14d0e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46350,10 +40266,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46361,10 +40274,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/fef80aa34c31700ac8e53bede4a97131176ceef0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46372,10 +40282,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46383,10 +40290,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/hdr_frame.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46394,10 +40298,7 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46405,10 +40306,7 @@
"test/core/end2end/fuzzers/client_fuzzer_corpus/settings_frame_1.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46416,10 +40314,23 @@
"language": "c",
"name": "client_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/client_fuzzer_corpus/slow-unit-53cf4d25741d5f6e7ad9147b286ff0b40cb500a9"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "client_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -46427,10 +40338,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0141fcddc9807ee093313b2256f1306fbbdc6cda"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46438,10 +40346,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46449,10 +40354,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0255050a9ccb25f46d6c1bf6a5a8a4c0c7635599"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46460,10 +40362,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46471,10 +40370,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0320a995a8c76c64c8a0e0297f632b76d9bc92d6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46482,10 +40378,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46493,10 +40386,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/042091aeac4cc255506b96fa11c7354e699fde76"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46504,10 +40394,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46515,10 +40402,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0696e7bf7837d98de01c915d3c9d80e5d21b30d2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46526,10 +40410,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46537,10 +40418,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/06995c2f3f01c7ec50547415dc324c64030b7a3e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46548,10 +40426,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46559,10 +40434,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/06f7ce769fe07804fc842462d4be8c1aa2ba82c2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46570,10 +40442,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46581,10 +40450,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0781b055c85ab8fbd0a3d0080a32e394af8761c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46592,10 +40458,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46603,10 +40466,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/080e1f19e6061c5bcac31add2095f87f6ce46129"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46614,10 +40474,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46625,10 +40482,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0828169ba82152a8907f1001e3d98804397d4610"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46636,10 +40490,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46647,10 +40498,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/08ffc4a4160e9fe6f322c28870a89a41fd9c37d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46658,10 +40506,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46669,10 +40514,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/090a7a758898a6e7c9108b7e8a1cb9cda383e707"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46680,10 +40522,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46691,10 +40530,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0940663729501b750a18542e1041cc26385c6148"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46702,10 +40538,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46713,10 +40546,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0a10bd140c6c5fb109a0816ca061739688a6db9a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46724,10 +40554,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46735,10 +40562,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0a4d3fda02cdcb7adad1daa80d65780c9c8d1464"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46746,10 +40570,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46757,10 +40578,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0ad812832efa33e086874fbf3496664d3f1b4dbe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46768,10 +40586,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46779,10 +40594,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0c9996d4fef87bacd7a001e99a515b3ba3d5788f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46790,10 +40602,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46801,10 +40610,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0d6210208831fe55951af56cdeee3d54a91a5361"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46812,10 +40618,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46823,10 +40626,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0d784965b2262df7ed7a1eb57b92a718cc76bde8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46834,10 +40634,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46845,10 +40642,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0dc9e41eedf35ccedf4e2b0d230ead7c4d72fdb2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46856,10 +40650,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46867,10 +40658,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0dd470c8939ed535de6b36f7b7bfb68aeace493e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46878,10 +40666,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46889,10 +40674,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0e61e471fa6d3405daef4276ee00cf5fc189f378"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46900,10 +40682,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46911,10 +40690,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/0e9196f951874edbb5ed098739ea5c8b6c0751c2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46922,10 +40698,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46933,10 +40706,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/11442d93a554b9e7f9ab02782bbf9443bf6e1ddc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46944,10 +40714,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46955,10 +40722,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/11833b795d04eda5a3af56ef7b3c3a26a8ee3444"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46966,10 +40730,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46977,10 +40738,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/141272316382b0f3e9ec841c735b84e7aa517c3e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -46988,10 +40746,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -46999,10 +40754,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/15ae43369798e48c396dfe7d53a21878b96e66c8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47010,10 +40762,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47021,10 +40770,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/166bf1843c229d34a2880d234dd166c27bdc11fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47032,10 +40778,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47043,10 +40786,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/179e8ac763b4051a953a38b6b3b1f1e1f6cc6c9e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47054,10 +40794,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47065,10 +40802,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/17faf0ba8a491a835d35977a9007b90ab7d30d2a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47076,10 +40810,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47087,10 +40818,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/188f6cf2470e95b228341de305ef839b27f01a5c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47098,10 +40826,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47109,10 +40834,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/1ab3e52adace335d02e2b5130eb4f7c918add7fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47120,10 +40842,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47131,10 +40850,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/1b5150514364e2c17f5a4edac1b7af99b936f55a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47142,10 +40858,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47153,10 +40866,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/1e8befb98cbaba059d6771abd1680e19484e7723"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47164,10 +40874,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47175,10 +40882,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/1e9b962969c359bc2ff766704c8ca8e25f5eccfc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47186,10 +40890,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47197,10 +40898,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/1f80af104acf41b912bf4a48fb938267e3718719"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47208,10 +40906,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47219,10 +40914,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/1fcc4afd6f48e83d61ea74970df3ca9dcd8ec291"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47230,10 +40922,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47241,10 +40930,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/213a734ccdb813b18ad9f2dd99b7f9967ee1460b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47252,10 +40938,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47263,10 +40946,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/2151945f43991c27e123c45dc72b93752a47e65f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47274,10 +40954,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47285,10 +40962,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/21545d998c27a5a1572a89a552937752432b1c14"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47296,10 +40970,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47307,10 +40978,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/23c7443fa1ab713e7c34ec50222b1b8cceaedc65"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47318,10 +40986,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47329,10 +40994,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/2445bb2c6779712dc9e14c01fecb7103f8732858"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47340,10 +41002,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47351,10 +41010,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/244b0a20500e31d3c538418800db816b07f4d210"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47362,10 +41018,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47373,10 +41026,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/2461b9fa6b5bc4b6424dec5b9a18d4ec7c309112"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47384,10 +41034,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47395,10 +41042,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/24ec2f3e17d3850564788f3fed17a5c586c44658"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47406,10 +41050,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47417,10 +41058,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/2537b8d6b902b8dfc6e17f194cf7d05ddecf74cf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47428,10 +41066,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47439,10 +41074,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/253ad01acea4b7038edc3f2a8c4a0c0f5c4dcd05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47450,10 +41082,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47461,10 +41090,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/256d0bbdbed22f5867a6f503bf082011e61ee12b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47472,10 +41098,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47483,10 +41106,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/26f0e88adbd8f8cdf778131a35b33ecf8711fa49"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47494,10 +41114,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47505,10 +41122,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/2e5dd8fb9d2a31fad9d681eda697d085b647b57c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47516,10 +41130,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47527,10 +41138,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/2fdfd2abf30c636ec8c841f1ac26594e25664f0f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47538,10 +41146,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47549,10 +41154,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/311dac5092e36134d3490f98aa4207425e0ee941"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47560,10 +41162,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47571,10 +41170,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/320fe6224a5b691c0425e34b6b14e8c6fe9f9620"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47582,10 +41178,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47593,10 +41186,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3255f1c7441a7150dc3c33022bfbe8c956c7b7b1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47604,10 +41194,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47615,10 +41202,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/33bc9db104eb72891fb096f34cbac191b3f9918d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47626,10 +41210,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47637,10 +41218,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/342ff1db70a7616b4ef76c03a42802c6702c18cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47648,10 +41226,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47659,10 +41234,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/344c011df992ccfc0ec682c14a1cb2d7959998c7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47670,10 +41242,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47681,10 +41250,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/35775efb9d0d68fa07987b9a84934389b528e436"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47692,10 +41258,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47703,10 +41266,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3650168db6fe115fb1e73eed4b76cd224d977d01"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47714,10 +41274,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47725,10 +41282,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/38228bf98cdb50fd3fa830ba5a9d4c7399063dff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47736,10 +41290,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47747,10 +41298,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/38717bee901151b22a10beb12c6623ccc844d3c2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47758,10 +41306,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47769,10 +41314,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3a4bb427a85bdc5bf66ac71db073c99e0dc9f881"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47780,10 +41322,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47791,10 +41330,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3ab48621d9b8f075369099a8ec7517bd23fd6e70"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47802,10 +41338,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47813,10 +41346,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3aec8d9311130dfbb6584fe6e619579c21992b5f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47824,10 +41354,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47835,10 +41362,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3b14837f22905dcb04f93aed2aa69bf95924fb9d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47846,10 +41370,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47857,10 +41378,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3be63c163805927e04fd7f84d96122c48240e601"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47868,10 +41386,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47879,10 +41394,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3bf2e349747c0f539181e0d4084a5fe506811a9e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47890,10 +41402,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47901,10 +41410,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3c5af4d73e94d0e8ad5666b6acb340f929031e95"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47912,10 +41418,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47923,10 +41426,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3d2b25346a9671d83bd082d170a45eed739bae6b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47934,10 +41434,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47945,10 +41442,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3de7b860c3fba2bc55707fd6875dce276f2f249b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47956,10 +41450,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47967,10 +41458,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3e2004ff9f40e398e0f41138a25a8b66e3d843d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -47978,10 +41466,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -47989,10 +41474,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/3f8983e457033cc85997c356935ba9c21460e86b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48000,10 +41482,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48011,10 +41490,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4105669086d83a20f8d991088553ba08202478cd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48022,10 +41498,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48033,10 +41506,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4180619316eef7912d1cf52ffe85897242e1ae88"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48044,10 +41514,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48055,10 +41522,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/420291d7139d9246de747739fd98102434a742dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48066,10 +41530,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48077,10 +41538,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4256437fc5897c0cd5d755816e4e68c7be326849"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48088,10 +41546,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48099,10 +41554,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/42b25a5413c536478a3e63da5adef4250babf2f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48110,10 +41562,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48121,10 +41570,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/42bef44ae751a45c671d9da5b1231d2ac747a48d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48132,10 +41578,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48143,10 +41586,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/438c3c9045c3cf7910aceec34f77b47a70ca4abd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48154,10 +41594,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48165,10 +41602,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/43af96b4f65ed0ace7236427f2f8833c4835989e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48176,10 +41610,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48187,10 +41618,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/44c6119bb91a452d6128ce0ea0d62938800779ea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48198,10 +41626,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48209,10 +41634,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/46d595331689ae01d77aff387747a98ff3480096"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48220,10 +41642,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48231,10 +41650,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/471a307b81dc37459087d41532741c5c9d7ba836"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48242,10 +41658,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48253,10 +41666,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/48900b4a5557530922ce45c15ad0d3b0a337520d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48264,10 +41674,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48275,10 +41682,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/48bcce2c6487b18706ef0c609ca39c456215bac8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48286,10 +41690,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48297,10 +41698,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/49027bbd3f3f3cafa315843c8fe8280f86985273"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48308,10 +41706,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48319,10 +41714,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/499376c5e291da2f9c25999abf4960fab5a92ec8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48330,10 +41722,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48341,10 +41730,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4a3b7ce0cdf217963a0b692769e5d6f4befe73b8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48352,10 +41738,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48363,10 +41746,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4a3fdb96bc8c80f1992f0f72f963f84856cbade8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48374,10 +41754,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48385,10 +41762,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4aae80e05793d7adb42a7e6e8a5283b677318777"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48396,10 +41770,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48407,10 +41778,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4c7a034d3a3b4f29d99caf021a0e9bbb89706c2e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48418,10 +41786,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48429,10 +41794,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/4ce8a43fb17a075627160812ad26c25210d8a82d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48440,10 +41802,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48451,10 +41810,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5032a75a98cd14d4dab75c1c5e2cd981abb19dcf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48462,10 +41818,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48473,10 +41826,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/50b3f4b6aed97f442496d27f3b4315a18ba76d5f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48484,10 +41834,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48495,10 +41842,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/51064b88a98658d48a0da7f1545c2d1293ad9538"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48506,10 +41850,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48517,10 +41858,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/51752f12d59fadaaa0dc72e6370612b84ee1555b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48528,10 +41866,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48539,10 +41874,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/51eff6fcbfe1a51ceb3f5f2140c01eea89b4313d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48550,10 +41882,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48561,10 +41890,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/51f65f681cf3a1218d83ad58642c06deaea86210"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48572,10 +41898,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48583,10 +41906,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/521809903d36db80b1ccd707f354361f2bf05075"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48594,10 +41914,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48605,10 +41922,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/52fe8f0e1fa270ea16f66c93f2ffab265ce059e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48616,10 +41930,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48627,10 +41938,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/53de87ae94acdc8e58a369459c12a3240f1294fe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48638,10 +41946,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48649,10 +41954,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/54a2b3993c3483745f6314c870a038a8e58f97a7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48660,10 +41962,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48671,10 +41970,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/55d60c2e5040a38be8ca41de63e137e3fef892a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48682,10 +41978,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48693,10 +41986,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5653c44a5b520bdf2bdc599b7966f1d7c44950b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48704,10 +41994,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48715,10 +42002,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5838b5a683229ebb6e6277e2810863e642b8afc2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48726,10 +42010,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48737,10 +42018,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/588d225784891ac88e30ac6eb5651d63fac34083"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48748,10 +42026,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48759,10 +42034,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/58d51c21a20b6549567a0ab8fee29d162dd3fc5a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48770,10 +42042,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48781,10 +42050,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/58f1036d8ff855841ec25b3c33e85a8fec0d94b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48792,10 +42058,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48803,10 +42066,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5a99df42fb7bbafa2d55714ee235b1c46776b2ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48814,10 +42074,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48825,10 +42082,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5b42793550699b2c015bed677cfcddc052f73513"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48836,10 +42090,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48847,10 +42098,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5b8ca72ba00231c38b19f582127e6a146eba4282"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48858,10 +42106,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48869,10 +42114,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5baa13dc95da05e7ba02bbe9583ea24517a29a1a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48880,10 +42122,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48891,10 +42130,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5bab61eb53176449e25c2c82f172b82cb13ffb9d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48902,10 +42138,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48913,10 +42146,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5c6f6b6f7f3e7b435f060abb73c20d2b773a7f56"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48924,10 +42154,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48935,10 +42162,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5c9fd9cc7100feaeead1e0e45201945a6e76fd85"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48946,10 +42170,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48957,10 +42178,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/5ff49c9edc7361797a951585f3e180222c8dd95d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48968,10 +42186,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -48979,10 +42194,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/6129954942e26c2a9ec071b6659675745613cf3c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -48990,10 +42202,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49001,10 +42210,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/61fa69b6b51b0ed91914fe48779173f8d26a1d54"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49012,10 +42218,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49023,10 +42226,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/6362ac61cfb6e964aff78f3cd648475dfd5fd4e9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49034,10 +42234,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49045,10 +42242,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/644deba51c79b6ebd470bd4367452941045d112a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49056,10 +42250,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49067,10 +42258,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/64beae98e2276749b133e6368c9e0f19a79eba96"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49078,10 +42266,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49089,10 +42274,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/64d7add9192301fd878854dc96f9fa9053f03992"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49100,10 +42282,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49111,10 +42290,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/65566df65e8f55428b6672cc351df414fa8f936c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49122,10 +42298,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49133,10 +42306,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/65bb703af35d5afb824cd68c41d7a1aeb3848d35"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49144,10 +42314,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49155,10 +42322,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/66c537bf59cb3667c037b3517be3d31245c9da8a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49166,10 +42330,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49177,10 +42338,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/66f576baeb0c9435a56eb7375dadc5b5d630ed87"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49188,10 +42346,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49199,10 +42354,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/67b4cec5183659aeae0f5bc71b3adf0542a11828"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49210,10 +42362,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49221,10 +42370,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/68c94721eda2f62481bff9f1d183df70498d0c5b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49232,10 +42378,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49243,10 +42386,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/68ee8169a65d58edb9fc1c752ea81dfec383203c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49254,10 +42394,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49265,10 +42402,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/6b203d49bbba6ee74def0d35c2266e06ad3c45d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49276,10 +42410,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49287,10 +42418,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/6d580f28d785c0bf87ac351a31a89289449feadb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49298,10 +42426,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49309,10 +42434,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/6f231dec759eb2105e09263d53e171de19a92c74"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49320,10 +42442,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49331,10 +42450,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/70ff6621a09e4f641538cb1b27e8b382b2f56a94"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49342,10 +42458,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49353,10 +42466,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/71981b55f27a1eb6274eda247048fa2c597f5004"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49364,10 +42474,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49375,10 +42482,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/71c2b0bebf7f0e916e4ab7eb36d47ccca2b9101c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49386,10 +42490,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49397,10 +42498,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/74610e278a5b90aa12ce1beaf222c4306b02ed43"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49408,10 +42506,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49419,10 +42514,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/748ee9817eba56ec9938601a0e380c74bad4563f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49430,10 +42522,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49441,10 +42530,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7727e3eeb2a48c46bf5a678c300ff8a38b8ffe3a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49452,10 +42538,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49463,10 +42546,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/78176d80c1d74c4b1b820d386ae483ac4d1d92b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49474,10 +42554,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49485,10 +42562,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/789abb571563a6795220046f76b7cf0ade90743c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49496,10 +42570,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49507,10 +42578,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/78f5ff40e5554aa9c31b45f79a7ae9699f93e7fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49518,10 +42586,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49529,10 +42594,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7a28fc2e9c72d51d29e87eed63ed405c9779b5e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49540,10 +42602,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49551,10 +42610,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7a42083be21dce7f96edef1f3b3b2fea0bcaeb3f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49562,10 +42618,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49573,10 +42626,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7a51275b11ecb1efec9251390531681c8d6f2481"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49584,10 +42634,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49595,10 +42642,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7b9682cd7a3984698f6eac034c59c0f91b4fb83d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49606,10 +42650,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49617,10 +42658,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7ba7239a29d6183960e3986abc8f19cfb548b905"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49628,10 +42666,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49639,10 +42674,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7d3b3d5f23d0ede9f7e5dbd1115db58c8a54a213"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49650,10 +42682,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49661,10 +42690,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/7ff3b6239b04479a9caf67f45b2d0c619f712815"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49672,10 +42698,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49683,10 +42706,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8035c81c95dedfc27c3649064f98f49e3e72c21f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49694,10 +42714,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49705,10 +42722,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/804e1052842ce4d44b9c775ade2b18fcb8ce7bcf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49716,10 +42730,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49727,10 +42738,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/80514b85933ea9bdd3462595f949c5af24409b87"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49738,10 +42746,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49749,10 +42754,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8057c32b8bd28a5ec2105d62f2abe8cf69c9f5fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49760,10 +42762,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49771,10 +42770,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/806a3bd4e078d91adeacedfd3e47ef8ae229244a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49782,10 +42778,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49793,10 +42786,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8090444f98218e65ff9594789ff22bbea3c0497c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49804,10 +42794,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49815,10 +42802,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/80e516692955d5f224706f268e247858858e16d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49826,10 +42810,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49837,10 +42818,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/810a1372fa97380265f5529c5043ae96f007f5bb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49848,10 +42826,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49859,10 +42834,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8127597d3c146b2a89579e44daef9d03a0f941ec"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49870,10 +42842,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49881,10 +42850,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/82ed571f8922caa572d13b4cc9b5c5fabafaade9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49892,10 +42858,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49903,10 +42866,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8328e86178800f87a3bf6f80749984f45b0cd0e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49914,10 +42874,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49925,10 +42882,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/84441efd7d8bdb0ce2fac28f218d3d5d4d77f1d4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49936,10 +42890,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49947,10 +42898,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/84cbf70f45a64d5a01d1c96367b6d6160134f1ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49958,10 +42906,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49969,10 +42914,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/85eb0f4502a51e646dab4ae08eabd90613cdf8e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -49980,10 +42922,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -49991,10 +42930,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/86080f33e4eae21b37863c253ce61eaa13021a97"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50002,10 +42938,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50013,10 +42946,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/862e3ccf601ee0f7fbd8b23e6811fd50485a118f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50024,10 +42954,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50035,10 +42962,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/86bae059b18af8ae263e5ae0022b67da0cfc0fbe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50046,10 +42970,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50057,10 +42978,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/870f9cc4bd89c6c04c6a51ceae1efa8634627cd6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50068,10 +42986,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50079,10 +42994,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8762a523cdb78d2344d553fa52a229bd63c44e51"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50090,10 +43002,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50101,10 +43010,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/894211571f9153c3c2ea4102541dac69be8aaa9c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50112,10 +43018,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50123,10 +43026,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/894e9b7832c52acb04bfa994ef53c7105d8db206"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50134,10 +43034,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50145,10 +43042,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8b0e12978b8e2eecf62346e438e47d0993845693"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50156,10 +43050,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50167,10 +43058,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8b3fa0bd4f289eff6a04a5205e04baaeafbdf637"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50178,10 +43066,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50189,10 +43074,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8d1deedd1e463f8c95129a6f839c380a7c83ab04"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50200,10 +43082,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50211,10 +43090,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8d1e029bd72381e382c87e61b4c5a9741d80d644"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50222,10 +43098,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50233,10 +43106,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8dd1983889b6632228d4897c365a1e6124d101e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50244,10 +43114,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50255,10 +43122,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8dfc2183691385432f92957cff0b2538e5a0ebfa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50266,10 +43130,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50277,10 +43138,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8eb9b86b4f0aa79b8ef84b44e1fb03094e7bb426"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50288,10 +43146,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50299,10 +43154,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8ec540c36da3814e93da765bf2ff0825b59c1bd0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50310,10 +43162,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50321,10 +43170,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8f1bec32f4b8e64062f5405a096543e61d771076"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50332,10 +43178,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50343,10 +43186,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8f3e48c49d0794909f6e8e61e5a4312edf484c33"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50354,10 +43194,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50365,10 +43202,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/8fbbf3c0eaa25b64d0a97a8ee08006539e649199"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50376,10 +43210,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50387,10 +43218,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/907d0021d42d0fdc867fd02d3609cdce13c8a055"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50398,10 +43226,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50409,10 +43234,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/919511c217a3427c22cad4a71aae31a6cd47b193"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50420,10 +43242,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50431,10 +43250,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9267c81c3283da8193c198de05e05fa30631a453"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50442,10 +43258,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50453,10 +43266,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/92e80997a4237d76f10b70dae2870b7255c97435"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50464,10 +43274,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50475,10 +43282,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/935322db76f5d4c74c2dc68fc4631915b8e24323"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50486,10 +43290,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50497,10 +43298,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/939f2627ef6263d0176566de267ff3eb910e6a60"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50508,10 +43306,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50519,10 +43314,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/94adea6a0d9a44bee6f5e88adcee57be9e9e3597"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50530,10 +43322,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50541,10 +43330,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/94dcbe0d3352bd9b230096b8dce9c6d8d63f9d51"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50552,10 +43338,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50563,10 +43346,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/95dad738f60e3e5eb0f1cdafd91ad461f4418e8f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50574,10 +43354,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50585,10 +43362,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/960c0a21c9e5c1a61b93b34da3189b0de1c264df"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50596,10 +43370,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50607,10 +43378,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/96903512b1f1dec08206123f024b62d0e31cd4dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50618,10 +43386,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50629,10 +43394,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/96a89c005e8d9992e34cc149b0be096ad0051446"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50640,10 +43402,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50651,10 +43410,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/97db8a66dd513eea47a5a25115508f4e59984854"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50662,10 +43418,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50673,10 +43426,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/98f2cb84ad89550cf56ee54e11f1448ae7287247"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50684,10 +43434,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50695,10 +43442,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/993497422a59b7f9f0f6db8c867339b5c9e4c978"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50706,10 +43450,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50717,10 +43458,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/999821e3750a7f2c9db663d2d100b4404c225040"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50728,10 +43466,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50739,10 +43474,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/99b2ed83be40cab431d1940e8de2dc3ebfe9352f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50750,10 +43482,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50761,10 +43490,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/99e888b7372b29256dbefd476855ff73584cc00f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50772,10 +43498,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50783,10 +43506,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9b18087deb3cfafa1b964aa65d8ee980bc61404e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50794,10 +43514,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50805,10 +43522,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9b3c745ea3e313909a228a07b49aae110b02ae4a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50816,10 +43530,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50827,10 +43538,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9be1ce0ba77758928ff5e9c45139b1624cbe9c2d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50838,10 +43546,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50849,10 +43554,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9c703141efd69eb8f32a58133c8035fb585e0f4c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50860,10 +43562,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50871,10 +43570,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9c7f77981677499f0426a0ffb5cb79d5fe55dcb2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50882,10 +43578,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50893,10 +43586,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9ca59e6cadaa5be9af30dfe5620d1bcd70f442e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50904,10 +43594,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50915,10 +43602,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9d139835d91474e8d8361d65698a31b8b38c4f7b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50926,10 +43610,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50937,10 +43618,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9e2179564a99e96e179c96f28802a0a2759b581c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50948,10 +43626,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50959,10 +43634,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9e56bb3b68d2e2617cb2d2f0f3941f7fc832e462"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50970,10 +43642,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -50981,10 +43650,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9f318b2c2ff9cf4615bd06ba13bdd086b4ad08c6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -50992,10 +43658,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51003,10 +43666,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/9f8d90b1480989fc46ea2f1c66cf687638994587"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51014,10 +43674,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51025,10 +43682,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a09db5715f0bc3879a0e18e4db5a6b5640b254a3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51036,10 +43690,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51047,10 +43698,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a0c59a090818bca29d76ccf9843f7e2faf330ddf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51058,10 +43706,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51069,10 +43714,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a1cf10478e5e01a0d951c743a3dd45aa5fc409f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51080,10 +43722,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51091,10 +43730,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a22c0f03f8c005a4612a9dcbcd6a643334c35d2f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51102,10 +43738,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51113,10 +43746,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a3154b8ed26b3461f2b091c732da00b63ce8bed3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51124,10 +43754,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51135,10 +43762,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a84a1ed1a24e753a27adfd3ba806f06fc44f899f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51146,10 +43770,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51157,10 +43778,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a871e7ce66afd4f57702cd1299de06cd08995561"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51168,10 +43786,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51179,10 +43794,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a8dc736ea964586b7dcbf2bc065ec4675d1daba3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51190,10 +43802,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51201,10 +43810,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/a91a835836c72217824f0b63491d9b623130502a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51212,10 +43818,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51223,10 +43826,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ab97c1f6033dc7d96f69b9e1461fd594c16f4ebf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51234,10 +43834,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51245,10 +43842,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ac8a8c23acd8c290a11dc7828f7f397957fa6400"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51256,10 +43850,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51267,10 +43858,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ac94b2788f5252f9e2e8502c7c75e04bef4c0b76"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51278,10 +43866,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51289,10 +43874,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ad03b4f58470c43db6593a35be48989486d754f9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51300,10 +43882,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51311,10 +43890,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/af417c83e831a96fda1bdde99a1af6509ef2df3d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51322,10 +43898,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51333,10 +43906,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/affd292cd2ce3306b4651cc7ec0ec0524cbbae3d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51344,10 +43914,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51355,10 +43922,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b0587e6e319f4b56d877e7ed46bc7da9b1e7249c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51366,10 +43930,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51377,10 +43938,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b166aa66b5b3ad178bc38aee5768226c8adc082f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51388,10 +43946,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51399,10 +43954,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b1ade0571262c6e5f1d72f6d25ebb513d2055bc9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51410,10 +43962,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51421,10 +43970,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b244c690157ff21d073940ef8c77d1898f37cf8e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51432,10 +43978,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51443,10 +43986,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b523091ee4f17d20f51f9b5cf82293465cf61780"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51454,10 +43994,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51465,10 +44002,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b7d4d49ac2c530eb8444a449feb689ee50fd210d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51476,10 +44010,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51487,10 +44018,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/b855c161121bfa29c6fb22d3c0236fae4af6984e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51498,10 +44026,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51509,10 +44034,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/bcaa71abf23b2e5130e0cc464755fe769bf4aaa7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51520,10 +44042,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51531,10 +44050,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/bcf4684ce097faa7e9d99b6e93cc2de24f57aee3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51542,10 +44058,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51553,10 +44066,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/bdca6504d2ee7925f62e176355bb481344772075"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51564,10 +44074,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51575,10 +44082,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/beb208fd8675ba7de2ecb12998d2d628d579ca7c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51586,10 +44090,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51597,10 +44098,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/bf0c98689ab81fc32787023300caf9a4175583dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51608,10 +44106,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51619,10 +44114,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/bf479e97b39b697e715663de6a1e78dd58d64122"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51630,10 +44122,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51641,10 +44130,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/bf826c96be94d1b42eea0666f7239cc5f699a375"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51652,10 +44138,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51663,10 +44146,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c17650d19ae4a48abb36739c83d8979453f5705f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51674,10 +44154,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51685,10 +44162,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c1e5307d88feda2c3b15fc221cba92bcf41622bf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51696,10 +44170,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51707,10 +44178,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c249f408c552a0408eab3fe1d1cbeca95cd537c1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51718,10 +44186,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51729,10 +44194,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c26b460aebc9082c519539069f7e060042989696"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51740,10 +44202,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51751,10 +44210,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c2eae71daad0d3561ab4d09b8b85372b8d790bc1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51762,10 +44218,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51773,10 +44226,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c37fda8d02e99132a1de99f959596c784ab8a53c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51784,10 +44234,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51795,10 +44242,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c4836760377a7091fb20f4afa9c712875792b9a7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51806,10 +44250,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51817,10 +44258,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c48caad597176404f776d532d4baf9faf7655ee2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51828,10 +44266,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51839,10 +44274,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c4eff0f59986fc5ab09d5bd95f394292f2882659"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51850,10 +44282,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51861,10 +44290,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c5fc2086d167c8c3a7d9ec778db69c5fa14a59fe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51872,10 +44298,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51883,10 +44306,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c600877ce547166eb1b9d83afbe128d98767f8a3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51894,10 +44314,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51905,10 +44322,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c6a98fdaf6de78e59e1a149a43f3e42222d650b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51916,10 +44330,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51927,10 +44338,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c8d22f7fb4f37f2d8cc7953fa2d599d38d899aec"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51938,10 +44346,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51949,10 +44354,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c90951c19b24bac84296e3ec32cdeafe99e99cfb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51960,10 +44362,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51971,10 +44370,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/c95ff2a172626efb50e94aa6781feba609820076"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -51982,10 +44378,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -51993,10 +44386,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ca6c557afb9c571de62e9b65ca6469a6133760da"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52004,10 +44394,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52015,10 +44402,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/cb2d0fb23f66c968af2e80d59f71d4c1aed96fbd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52026,10 +44410,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52037,10 +44418,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/cc60a642cc2037ad3c459a57381b8f65d8d7aa35"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52048,10 +44426,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52059,10 +44434,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ccd3b8aa26c52f6d9c607c26ebdf621142aff745"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52070,10 +44442,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52081,10 +44450,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ccdfd1354997eb117bd76b75440a7e4ff20bf564"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52092,10 +44458,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52103,10 +44466,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/cd7a7b8f08c189e95ae3e2ea44b9015000e823f3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52114,10 +44474,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52125,10 +44482,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ce05678d812a5f8ae8e115938410116ce9169456"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52136,10 +44490,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52147,10 +44498,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ce6b642b81373f05baa2a6fe6e9d5d1387046285"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52158,10 +44506,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52169,10 +44514,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/cf84d06e4dddb997a79a41f9b6122bf620bbdb4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52180,10 +44522,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52191,10 +44530,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/cfbcc3e8cd65aa8b654688145ade34b8789468a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52202,10 +44538,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52213,10 +44546,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d000502f32ca5620d7745f39ff6be3b547e26a6d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52224,10 +44554,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52235,10 +44562,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d131f83ee73450ff45565d0c638be7d8beeb30d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52246,10 +44570,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52257,10 +44578,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d1c7ae01a81a122c2fd7c5d8debcae7566e9ee2f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52268,10 +44586,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52279,10 +44594,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d2817b89d7aaa7fa880c077b1a67168ec2f4f0f7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52290,10 +44602,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52301,10 +44610,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d3ccd7039dd34baef465c4b78baa7a30312a8f07"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52312,10 +44618,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52323,10 +44626,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d4cfaf3b59b22b654d7af80ee6715ce5015bfdc0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52334,10 +44634,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52345,10 +44642,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d5670827c8e8d4c95ac0f738c0790c19916c0336"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52356,10 +44650,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52367,10 +44658,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d59d7e94863f1ed89cacfbaabf7bc59946036c8f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52378,10 +44666,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52389,10 +44674,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d76d0c7f24ae3cc3f530d5306b8dcc15290c7ff2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52400,10 +44682,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52411,10 +44690,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d8b15e9e555ad9900ba4be8cc9f87bef75725b24"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52422,10 +44698,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52433,10 +44706,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/d9748abd540810c2449c3dd39a0ebb62754e520f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52444,10 +44714,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52455,10 +44722,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/da9fc821f0c1e00728b139b36269bc3d21c0a8cc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52466,10 +44730,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52477,10 +44738,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/dcd1bd94ad97b4e67fd7e12ff1bf7c039eb17f66"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52488,10 +44746,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52499,10 +44754,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/dd3ba9b139e13324fc76cd62af84b00ca8b87205"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52510,10 +44762,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52521,10 +44770,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/de0a9dce0ea4e4bfdcb13f788ae728bf979fed25"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52532,10 +44778,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52543,10 +44786,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/deb6f9a930d9b31586ede19fd8fd3caae0e5b1f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52554,10 +44794,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52565,10 +44802,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/dee95e0280b70681eddfb68e3b418126c5661e18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52576,10 +44810,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52587,10 +44818,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/df01203edfa2dfe9e108ddde786ae48235624fef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52598,10 +44826,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52609,10 +44834,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/df0adbe2523508e9afb42a58d98c2657710d6033"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52620,10 +44842,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52631,10 +44850,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e05fcba1b22f658c8bd6f3c330b2b3c9faebf977"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52642,10 +44858,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52653,10 +44866,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e145caa75d73e3d819a9cb4b6217f1f53112f3f8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52664,10 +44874,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52675,10 +44882,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e1d86c0094657386197d191855b5645ac1dd5936"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52686,10 +44890,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52697,10 +44898,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e25adf8de44f5978d00b7e8c52aee89c5cd1fe93"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52708,10 +44906,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52719,10 +44914,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e29f05162e3d96d5549f96aa4a54c868535b2847"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52730,10 +44922,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52741,10 +44930,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e3a970ac8636d29da3ded328b876ed3550cb3209"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52752,10 +44938,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52763,10 +44946,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e3cfdc862187b4ec28bd4fb2ced5094bb5b09909"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52774,10 +44954,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52785,10 +44962,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e4ce52007d001806fc9368b62c124dfc56e8471c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52796,10 +44970,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52807,10 +44978,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e52173f0bc3325629046e85e2dc41acc6ba7d1c3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52818,10 +44986,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52829,10 +44994,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e6589006e3bda4c57247ad66fcd73ac00ee2cbe2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52840,10 +45002,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52851,10 +45010,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e6fab7572fb2a1c6e107b6f83cffd103a233d021"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52862,10 +45018,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52873,10 +45026,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e790f5d312957dbfd20abdefe4b1735779ff9689"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52884,10 +45034,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52895,10 +45042,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e8809017a4cf6c1e80a93f661166ead961f26bb4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52906,10 +45050,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52917,10 +45058,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/e9733e973c33b38c2087b7f1deb36688b3b14259"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52928,10 +45066,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52939,10 +45074,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ea8134769855d574f6673bf0301eb2e24632c6eb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52950,10 +45082,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52961,10 +45090,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/eb489536e4e5589a93a17cd36669475b8f2a5e1b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52972,10 +45098,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -52983,10 +45106,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/eb48ebd4d01e5623dd16ae61938b3333fab3ce78"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -52994,10 +45114,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53005,10 +45122,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/eb6ca7624384239c7f7e0d83edb7cc334b7926d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53016,10 +45130,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53027,10 +45138,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ec9457ad41ed745ea9377ffdb16ad09f981daa7f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53038,10 +45146,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53049,10 +45154,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/edff5256a2d60d0e51caef25dc1d6f1643dad6d5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53060,10 +45162,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53071,10 +45170,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ee4d9c5d22512da42726f47213ff56404d1d81d1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53082,10 +45178,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53093,10 +45186,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/eef2f30b5e2ecd98ebefb12d57aba8b4ad52d904"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53104,10 +45194,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53115,10 +45202,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ef23911de1a27d03d2d4983ca1527e17d6a7092b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53126,10 +45210,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53137,10 +45218,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ef5b7fc62a2daecf1e8f928b1fa3ebd028413a41"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53148,10 +45226,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53159,10 +45234,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ef718258ca1870198e91a2fbc1eaa90b620673fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53170,10 +45242,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53181,10 +45250,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/efb46deb37a78f41dd760f6b7203b20956eb114e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53192,10 +45258,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53203,10 +45266,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/efdd6824bd2456e3e408e0e84369c4fa3aa14f41"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53214,10 +45274,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53225,10 +45282,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/efec040a5de1969df5e37e4bc50a0a8f0de341d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53236,10 +45290,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53247,10 +45298,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f1e30464c24dc1d7cec7ec1dd2adec8512232b43"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53258,10 +45306,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53269,10 +45314,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f27a617b936814476770a3b31a5afb80d0f3b423"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53280,10 +45322,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53291,10 +45330,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f3f0d99ac2962f8fddb25c65fb4c8c6eb63518a9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53302,10 +45338,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53313,10 +45346,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f4628084cf46f139babb886a782b4ab5977d5d2e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53324,10 +45354,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53335,10 +45362,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f4753e8881e4b3c71f2728149be7d04cc648f6a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53346,10 +45370,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53357,10 +45378,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f4d6ff635ae4fda497221da4bfa3e593df59a44e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53368,10 +45386,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53379,10 +45394,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f52f4d51aaaed0f9c3a20936cf5efd25d0692f67"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53390,10 +45402,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53401,10 +45410,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f7cf30724ab740918eee6e4a6b6658ae3d7706e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53412,10 +45418,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53423,10 +45426,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f823828ffd2a60efee36f1de52cb0f024ac5b4bb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53434,10 +45434,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53445,10 +45442,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/f8760761bd5ab7b47376bfbc5a44e16b2d5ca800"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53456,10 +45450,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53467,10 +45458,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/fb15042c268625089ef6c8aa3d8a6f12d1d02c74"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53478,10 +45466,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53489,10 +45474,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/fc3dd4292d6884a770199596f5e9cbc1e869e5fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53500,10 +45482,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53511,10 +45490,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/fd34ec90fe8f9218fd25c3eac151aec998cff6d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53522,10 +45498,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53533,10 +45506,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/fdf548cde981fab4fb17bd63a124b75eddc5c836"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53544,10 +45514,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53555,10 +45522,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/fe47fb18b064e26479c3c3140082bd01065e897a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53566,10 +45530,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53577,10 +45538,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ff2097734bd7bb8451aece13c9336c4624735170"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53588,10 +45546,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53599,10 +45554,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ff2c949863eb4e14d9e835c51591304403d91b6c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53610,10 +45562,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53621,10 +45570,7 @@
"test/core/transport/chttp2/hpack_parser_corpus/ff7d6ff060e63355701b2e655c802902338497de"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53632,10 +45578,7 @@
"language": "c",
"name": "hpack_parser_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53643,10 +45586,7 @@
"test/core/http/corpus/0299ca2580e4398d170c4a336e0c33eb2cd9d427"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53654,10 +45594,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53665,10 +45602,7 @@
"test/core/http/corpus/05e613853d64a9669ea3cf41b0de777dc24931ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53676,10 +45610,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53687,10 +45618,7 @@
"test/core/http/corpus/069352518a1d1baa05f317c677d275cefda2ac97"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53698,10 +45626,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53709,10 +45634,7 @@
"test/core/http/corpus/0925527c9358b1e10ec0f0387cd99f35204d9a34"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53720,10 +45642,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53731,10 +45650,7 @@
"test/core/http/corpus/0c5b7c2569410b526605e308309a7f36574e530d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53742,10 +45658,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53753,10 +45666,7 @@
"test/core/http/corpus/0ef3d0a84360bb5ad66274f1226f5cb273ecdbcf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53764,10 +45674,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53775,10 +45682,7 @@
"test/core/http/corpus/1e1273f90187fdf5df3625764245610f86af6aa4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53786,10 +45690,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53797,10 +45698,7 @@
"test/core/http/corpus/1fbc57d118f3733287e9a9d808bb8947b3260e55"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53808,10 +45706,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53819,10 +45714,7 @@
"test/core/http/corpus/24756c396bc72894fd720092bb6f9c03e66b469f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53830,10 +45722,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53841,10 +45730,7 @@
"test/core/http/corpus/276def41311933421ae7a9ee42e906c85b6a4d3f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53852,10 +45738,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53863,10 +45746,7 @@
"test/core/http/corpus/29daa75432381937fd005cb25e314e328de6e9f9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53874,10 +45754,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53885,10 +45762,7 @@
"test/core/http/corpus/2a75204bc492084ad853682f8de3fb137d5907bc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53896,10 +45770,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53907,10 +45778,7 @@
"test/core/http/corpus/2d34ba249b755a880525cf53c665633a5e359305"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53918,10 +45786,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53929,10 +45794,7 @@
"test/core/http/corpus/33f4ea0c7ea27c37d8f95cfa64d282370efdafd2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53940,10 +45802,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53951,10 +45810,7 @@
"test/core/http/corpus/35554617ea6418bd43161fe9a2c337ed82d7ec5b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53962,10 +45818,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53973,10 +45826,7 @@
"test/core/http/corpus/35f0c561297cfc840ddaeebb9fc61091f4eadece"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -53984,10 +45834,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -53995,10 +45842,7 @@
"test/core/http/corpus/3787bcc22ef645e665cc5f722b8a633af86de9cf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54006,10 +45850,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54017,10 +45858,7 @@
"test/core/http/corpus/3953688866ccb3b4f371f1a858570d6afdb6452d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54028,10 +45866,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54039,10 +45874,7 @@
"test/core/http/corpus/39b19c41ba537f37511eff7727733715db432e76"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54050,10 +45882,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54061,10 +45890,7 @@
"test/core/http/corpus/3e3c4756d5e40b5aa250954cbac86b826e70a7ac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54072,10 +45898,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54083,10 +45906,7 @@
"test/core/http/corpus/3f03265921120c6ffa61b944e213e062a5538d4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54094,10 +45914,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54105,10 +45922,7 @@
"test/core/http/corpus/3fb034e66ee5494a67acae1b4e6ff64ba92a2046"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54116,10 +45930,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54127,10 +45938,7 @@
"test/core/http/corpus/466059ed07a0d55d6ad5e522c7d367cbf278eaf9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54138,10 +45946,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54149,10 +45954,7 @@
"test/core/http/corpus/487725eb38511c79a9340bf4560a1411061fa6fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54160,10 +45962,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54171,10 +45970,7 @@
"test/core/http/corpus/48b9b205cae8ac21512a3f26f49fd53e21ee13c5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54182,10 +45978,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54193,10 +45986,7 @@
"test/core/http/corpus/4b1f1f79a0bfa3f942479dd5f8edb59a7c257c55"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54204,10 +45994,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54215,10 +46002,7 @@
"test/core/http/corpus/5028c56a5116a186b7343ff59567b47347a0796d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54226,10 +46010,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54237,10 +46018,7 @@
"test/core/http/corpus/533f62b3f495ce704babf3ee8d840f196a714dff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54248,10 +46026,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54259,10 +46034,7 @@
"test/core/http/corpus/5892cbb284771fc9761caae37b19cd6e27dbc104"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54270,10 +46042,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54281,10 +46050,7 @@
"test/core/http/corpus/5aeab6e4f7c2a1c09d4ac0dbdb3beac4893607ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54292,10 +46058,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54303,10 +46066,7 @@
"test/core/http/corpus/5b6292bdf009b0daecbc90b85cca30a88c36eec5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54314,10 +46074,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54325,10 +46082,7 @@
"test/core/http/corpus/5c1659b77678b41faa4fa13df7772dae3238d1c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54336,10 +46090,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54347,10 +46098,7 @@
"test/core/http/corpus/5c81f61621e29ec9c6a64ac3af9b3b216141618e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54358,10 +46106,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54369,10 +46114,7 @@
"test/core/http/corpus/657368df512ca6294b9df16adf935a3f374a8be2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54380,10 +46122,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54391,10 +46130,7 @@
"test/core/http/corpus/7fc4520094902ce2c760d70eaad5b674d2817337"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54402,10 +46138,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54413,10 +46146,7 @@
"test/core/http/corpus/81f59a12b458ec3604035cb962165c604d1355e6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54424,10 +46154,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54435,10 +46162,7 @@
"test/core/http/corpus/8f41c50e88ee8c17ecad3d41d63d38fb12aca0b9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54446,10 +46170,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54457,10 +46178,7 @@
"test/core/http/corpus/97c16de7fe3c390a2e6c09ff5c28f17d5c67542c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54468,10 +46186,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54479,10 +46194,7 @@
"test/core/http/corpus/97e4499d450c95660de86747f527e670f2012548"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54490,10 +46202,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54501,10 +46210,7 @@
"test/core/http/corpus/9a996857196e0998a1278994a9bab3d35526e7f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54512,10 +46218,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54523,10 +46226,7 @@
"test/core/http/corpus/9b7e00049ec356ecd84b1747e4e1941140139ae8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54534,10 +46234,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54545,10 +46242,7 @@
"test/core/http/corpus/9f0c38ec455cc363369b3674a2d32bc21c206de1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54556,10 +46250,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54567,10 +46258,7 @@
"test/core/http/corpus/a1dc7bc235e46eb21d91084d7b52d5ff9f45df85"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54578,10 +46266,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54589,10 +46274,7 @@
"test/core/http/corpus/aa3bbb876eafa8ad8ca4ff2eabc6dd94341d2441"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54600,10 +46282,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54611,10 +46290,7 @@
"test/core/http/corpus/ae8ba95d7dbe99926a8f5bfd80347fd6a4b616a0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54622,10 +46298,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54633,10 +46306,7 @@
"test/core/http/corpus/b04fea5c041c707db0ad9c09a81672557b52cc47"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54644,10 +46314,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54655,10 +46322,7 @@
"test/core/http/corpus/c4acff8aa2ff886f35439f72625d05002990c940"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54666,10 +46330,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54677,10 +46338,7 @@
"test/core/http/corpus/c55ce9995b002e88a102ae2891a71e8bacb346c8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54688,10 +46346,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54699,10 +46354,7 @@
"test/core/http/corpus/ca5a0c00b8969310acb73d15ad0d0c602f1bd0c2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54710,10 +46362,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54721,10 +46370,7 @@
"test/core/http/corpus/cce734f1b263de6994f7950e0df7bf0c81449f70"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54732,10 +46378,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54743,10 +46386,7 @@
"test/core/http/corpus/d39c8ee11a697634a09b309460c0bbd967e7effa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54754,10 +46394,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54765,10 +46402,7 @@
"test/core/http/corpus/d4c3e4cf5d035596433c30eaabbd2b2925f4b453"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54776,10 +46410,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54787,10 +46418,7 @@
"test/core/http/corpus/d51f7fcc089f269c7afecaaca51966bab5fde629"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54798,10 +46426,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54809,10 +46434,7 @@
"test/core/http/corpus/d936dad71c129cf659097dc3db64550c4dd467f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54820,10 +46442,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54831,10 +46450,7 @@
"test/core/http/corpus/e275b0466a8fb8d9e0e15856e343ddc7112ae66b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54842,10 +46458,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54853,10 +46466,7 @@
"test/core/http/corpus/e5c364b205855a2991ce07482aebb2a3a6147089"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54864,10 +46474,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54875,10 +46482,7 @@
"test/core/http/corpus/ee2077e08c3cfccd9bd82adb574ac4fc7d429afb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54886,10 +46490,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54897,10 +46498,7 @@
"test/core/http/corpus/fc5d4b9117ba9e87388174aee4f4970bdfe8d066"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54908,10 +46506,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54919,10 +46514,7 @@
"test/core/http/corpus/fdeb2c7daa9e7704f67e141106384e6dd0042c0b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54930,10 +46522,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54941,10 +46530,7 @@
"test/core/http/corpus/request1.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54952,10 +46538,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54963,10 +46546,7 @@
"test/core/http/corpus/request2.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54974,10 +46554,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -54985,10 +46562,7 @@
"test/core/http/corpus/request3.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -54996,10 +46570,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55007,10 +46578,7 @@
"test/core/http/corpus/request4.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55018,10 +46586,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55029,10 +46594,7 @@
"test/core/http/corpus/request5.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55040,10 +46602,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55051,10 +46610,7 @@
"test/core/http/corpus/response1.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55062,10 +46618,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55073,10 +46626,7 @@
"test/core/http/corpus/response2.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55084,10 +46634,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55095,10 +46642,7 @@
"test/core/http/corpus/response3.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55106,10 +46650,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55117,10 +46658,7 @@
"test/core/http/corpus/response4.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55128,10 +46666,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55139,10 +46674,7 @@
"test/core/http/corpus/response5.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55150,10 +46682,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55161,10 +46690,7 @@
"test/core/http/corpus/response6.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55172,10 +46698,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55183,10 +46706,7 @@
"test/core/http/corpus/toolong.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55194,10 +46714,7 @@
"language": "c",
"name": "http_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55205,10 +46722,7 @@
"test/core/json/corpus/006d552e952c42b5340baaeb85c2cb80c81e78dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55216,10 +46730,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55227,10 +46738,7 @@
"test/core/json/corpus/007eb985c44b6089a34995a7d9ebf349f1c2bf18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55238,10 +46746,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55249,10 +46754,7 @@
"test/core/json/corpus/03b74a08f23734691512cb12d0b38d189a8df905"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55260,10 +46762,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55271,10 +46770,7 @@
"test/core/json/corpus/0495693af07325fb0d52eafd2d4c4d802c6457c6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55282,10 +46778,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55293,10 +46786,7 @@
"test/core/json/corpus/05454ab015cf74e9c3e8574d995517e05dd56751"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55304,10 +46794,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55315,10 +46802,7 @@
"test/core/json/corpus/0716d9708d321ffb6a00818614779e779925365c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55326,10 +46810,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55337,10 +46818,7 @@
"test/core/json/corpus/0a9b3522a8e711e3bd53e2c2eb9d28b34a003acc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55348,10 +46826,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55359,10 +46834,7 @@
"test/core/json/corpus/0ade7c2cf97f75d009975f4d720d1fa6c19f4897"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55370,10 +46842,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55381,10 +46850,7 @@
"test/core/json/corpus/0b1fcf0ac07e1e50cfe27316c7e1c8cc997f1318"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55392,10 +46858,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55403,10 +46866,7 @@
"test/core/json/corpus/0bc13548356d08009703d35e9c8d74397367bdfb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55414,10 +46874,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55425,10 +46882,7 @@
"test/core/json/corpus/0ea9a160c57f2c705dce037196e360bf9be739c5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55436,10 +46890,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55447,10 +46898,7 @@
"test/core/json/corpus/0f20d9c46991c0e97419e2cca07c7389f1d6bdf8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55458,10 +46906,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55469,10 +46914,7 @@
"test/core/json/corpus/0f2e2e6346f70c419300b661251754d50f7ca8ea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55480,10 +46922,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55491,10 +46930,7 @@
"test/core/json/corpus/108b310facc1a193833fc2971fd83081f775ea0c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55502,10 +46938,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55513,10 +46946,7 @@
"test/core/json/corpus/108e5bcd69b19ad0df743641085163b84f376fe8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55524,10 +46954,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55535,10 +46962,7 @@
"test/core/json/corpus/10e3ecd5624465020fdf0662a67e0f0885536cae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55546,10 +46970,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55557,10 +46978,7 @@
"test/core/json/corpus/113c8c97cbb0a2b6176d75eaa9ac9baaa7ccddcc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55568,10 +46986,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55579,10 +46994,7 @@
"test/core/json/corpus/11479d936dd006410a5946b6081a94d573bf8efd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55590,10 +47002,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55601,10 +47010,7 @@
"test/core/json/corpus/11aa091189b78d1cc35c7ff4907ac16a73aba547"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55612,10 +47018,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55623,10 +47026,7 @@
"test/core/json/corpus/1227907b2ee5a9492a890beed55332e4560834c8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55634,10 +47034,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55645,10 +47042,7 @@
"test/core/json/corpus/134d65130947ec69cf8df8483424b45e99cf04e3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55656,10 +47050,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55667,10 +47058,7 @@
"test/core/json/corpus/13584505caa892d94982a968bbc4391ebcfe0d06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55678,10 +47066,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55689,10 +47074,7 @@
"test/core/json/corpus/137f554ee0f6b903acb81ab4e1f98c11fe92b008"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55700,10 +47082,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55711,10 +47090,7 @@
"test/core/json/corpus/1401ea03ec78b8f20dc7be952555004d7147f0f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55722,10 +47098,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55733,10 +47106,7 @@
"test/core/json/corpus/141d45a59b073aeec4443cd7bcf20f7833ddbc95"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55744,10 +47114,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55755,10 +47122,7 @@
"test/core/json/corpus/15a8f2e7f94aa00b46f1b991416aa015dd633580"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55766,10 +47130,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55777,10 +47138,7 @@
"test/core/json/corpus/15c9c1284c27c8893559e15c9b2a50cbd5bbb56f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55788,10 +47146,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55799,10 +47154,7 @@
"test/core/json/corpus/15d1a6cda48ef569b368a0c4627435bc2c80a988"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55810,10 +47162,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55821,10 +47170,7 @@
"test/core/json/corpus/17a29f2ac6df774585d7713091b299729738030c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55832,10 +47178,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55843,10 +47186,7 @@
"test/core/json/corpus/17b815f1f72cb64481bc40263e91ce063040f739"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55854,10 +47194,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55865,10 +47202,7 @@
"test/core/json/corpus/182d57403d2c973a394055017d35b7621aa0aa05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55876,10 +47210,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55887,10 +47218,7 @@
"test/core/json/corpus/190fbe2da448f6bdec0706c5301ad13363ae3ad9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55898,10 +47226,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55909,10 +47234,7 @@
"test/core/json/corpus/1b045a24b8f1f1fd6e8234d5019952ee7713a8b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55920,10 +47242,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55931,10 +47250,7 @@
"test/core/json/corpus/1b6453892473a467d07372d45eb05abc2031647a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55942,10 +47258,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55953,10 +47266,7 @@
"test/core/json/corpus/1c6463aa2dabcb4fadc8e5441d8b418535e768af"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55964,10 +47274,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55975,10 +47282,7 @@
"test/core/json/corpus/1dea95b5050b766274ef80847505c0e4f47f3ebb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -55986,10 +47290,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -55997,10 +47298,7 @@
"test/core/json/corpus/1df0754d3e7970b3afe549b11ca128dcd0d4832b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56008,10 +47306,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56019,10 +47314,7 @@
"test/core/json/corpus/1dfe267b623b20cd97c6e8969d8b9148af9f4a2c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56030,10 +47322,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56041,10 +47330,7 @@
"test/core/json/corpus/1e5c2f367f02e47a8c160cda1cd9d91decbac441"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56052,10 +47338,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56063,10 +47346,7 @@
"test/core/json/corpus/20efdba13ca7a3657d071b3d56997aa3b083068a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56074,10 +47354,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56085,10 +47362,7 @@
"test/core/json/corpus/215a956168f77421253e947c2436371d56aa7ea1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56096,10 +47370,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56107,10 +47378,7 @@
"test/core/json/corpus/2174b9ab6bf4f7c21fe1ed56957f1776ef611959"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56118,10 +47386,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56129,10 +47394,7 @@
"test/core/json/corpus/232f4bced4075545bb1469d5c2360f083ec7ec65"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56140,10 +47402,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56151,10 +47410,7 @@
"test/core/json/corpus/26aca41ee8f199e7c0c7cf31d979952571c53fc9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56162,10 +47418,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56173,10 +47426,7 @@
"test/core/json/corpus/27d84210636e9e83786be9e9b96b69f70b743b86"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56184,10 +47434,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56195,10 +47442,7 @@
"test/core/json/corpus/27da426a5883662d19ea78f306d7a992be52f827"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56206,10 +47450,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56217,10 +47458,7 @@
"test/core/json/corpus/296dcda6f7e6979e68ddef7cbc1206a355084ad3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56228,10 +47466,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56239,10 +47474,7 @@
"test/core/json/corpus/29b08c03ca5a6851fa4604a984cb7ff44433a5a5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56250,10 +47482,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56261,10 +47490,7 @@
"test/core/json/corpus/2a3d964ec4527ad9f02129fcbf087b67a6ea6444"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56272,10 +47498,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56283,10 +47506,7 @@
"test/core/json/corpus/2b04974149815b143afb17af4388d751217e54ec"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56294,10 +47514,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56305,10 +47522,7 @@
"test/core/json/corpus/2b3b1ad952e3acb566e32a84e2d503acde13eb53"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56316,10 +47530,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56327,10 +47538,7 @@
"test/core/json/corpus/2cc301a6ed7f01e2cd339f02bd0fda20c227a17e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56338,10 +47546,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56349,10 +47554,7 @@
"test/core/json/corpus/2d3d5b9275553430b4cfa68114099120ad7809ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56360,10 +47562,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56371,10 +47570,7 @@
"test/core/json/corpus/2d5dbf403e0c12e2fe21b04ca3daff171c028ab7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56382,10 +47578,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56393,10 +47586,7 @@
"test/core/json/corpus/2d7c769bed62004270034b976b1d940a5686106b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56404,10 +47594,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56415,10 +47602,7 @@
"test/core/json/corpus/2db120231eea12d9cdc6a00f30839b3cef2046be"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56426,10 +47610,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56437,10 +47618,7 @@
"test/core/json/corpus/2db610e1a230409a205cf22fbad3348a54cbe703"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56448,10 +47626,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56459,10 +47634,7 @@
"test/core/json/corpus/2df1dd2e2f5d57e7d9d4e60a756a86e603573225"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56470,10 +47642,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56481,10 +47650,7 @@
"test/core/json/corpus/2e32faacd3ea4461ec7aace297b4be6904d9a389"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56492,10 +47658,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56503,10 +47666,7 @@
"test/core/json/corpus/2e756d91759d7e74f5b776c0d2a1935292f576d1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56514,10 +47674,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56525,10 +47682,7 @@
"test/core/json/corpus/2f09b24f9f5fa0af2c29b604b4b0f97fa6163895"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56536,10 +47690,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56547,10 +47698,7 @@
"test/core/json/corpus/3027d901361162b38fcaf17f97ba7d9646e32495"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56558,10 +47706,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56569,10 +47714,7 @@
"test/core/json/corpus/30d4467ecb771ece9ed6c78a46adc299072d9db9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56580,10 +47722,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56591,10 +47730,7 @@
"test/core/json/corpus/311048bbf4c4bbabcde73607d7e76915cee9312e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56602,10 +47738,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56613,10 +47746,7 @@
"test/core/json/corpus/323b48969d7bf9a50aacf0912f1b5cb02119e2ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56624,10 +47754,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56635,10 +47762,7 @@
"test/core/json/corpus/33400a242baeb5c46ddb1578c28b10d32a9c3cd3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56646,10 +47770,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56657,10 +47778,7 @@
"test/core/json/corpus/356a192b7913b04c54574d18c28d46e6395428ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56668,10 +47786,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56679,10 +47794,7 @@
"test/core/json/corpus/35e995c107a71caeb833bb3b79f9f54781b33fa1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56690,10 +47802,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56701,10 +47810,7 @@
"test/core/json/corpus/373769c15c145472c8ec3bdde8fc84e85ec79211"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56712,10 +47818,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56723,10 +47826,7 @@
"test/core/json/corpus/3795d911970a1fd8416b93649051b418948e3edf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56734,10 +47834,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56745,10 +47842,7 @@
"test/core/json/corpus/37d3333e1e2a384c3ba14a52682ca29f061d1ac7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56756,10 +47850,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56767,10 +47858,7 @@
"test/core/json/corpus/38cd33bb390445e35b6514024b1317902cb7ba1b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56778,10 +47866,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56789,10 +47874,7 @@
"test/core/json/corpus/3a90c688f44447a78efc111872b061a001f04d2b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56800,10 +47882,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56811,10 +47890,7 @@
"test/core/json/corpus/3b1e7b56ad4465d126ea994d34d20dcecbb3a50a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56822,10 +47898,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56833,10 +47906,7 @@
"test/core/json/corpus/3c0a8d6c31edaca124714624eb64cb8ec0cbab13"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56844,10 +47914,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56855,10 +47922,7 @@
"test/core/json/corpus/3cc0c9adcf3882f01409c70391c3cd30588ef34c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56866,10 +47930,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56877,10 +47938,7 @@
"test/core/json/corpus/3d0d9878b812ce4634962ba3dd755c0953550200"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56888,10 +47946,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56899,10 +47954,7 @@
"test/core/json/corpus/3d4d5887a2fcdc5dd360b8a6f89dbce6500d8580"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56910,10 +47962,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56921,10 +47970,7 @@
"test/core/json/corpus/3efb5b7ff94c5b9d411c93da9a70e1cc547f4c59"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56932,10 +47978,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56943,10 +47986,7 @@
"test/core/json/corpus/421b7e8ea86e3c07474af16ab3ccef55d1857205"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56954,10 +47994,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56965,10 +48002,7 @@
"test/core/json/corpus/428d051e437dd260f2a2f7ed920d9734ca34dc90"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56976,10 +48010,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -56987,10 +48018,7 @@
"test/core/json/corpus/42adc281578ffb1b8684b78b47aa40a16d10b6e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -56998,10 +48026,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57009,10 +48034,7 @@
"test/core/json/corpus/43620ecd2e2fd58fe5650da2e9783f980f29ec07"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57020,10 +48042,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57031,10 +48050,7 @@
"test/core/json/corpus/43b1ffcda49477adb1632822202631990ed3a269"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57042,10 +48058,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57053,10 +48066,7 @@
"test/core/json/corpus/45279f85bf2f533a629073caf89403006279fab2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57064,10 +48074,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57075,10 +48082,7 @@
"test/core/json/corpus/455d9bb597f08bf698454157ecd86647b5dec4e0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57086,10 +48090,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57097,10 +48098,7 @@
"test/core/json/corpus/4561eb5c7e43cae048c06aaaad3d5f5218b376e9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57108,10 +48106,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57119,10 +48114,7 @@
"test/core/json/corpus/46417b001eeb87c32b642499fd5e1690d5d88c7f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57130,10 +48122,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57141,10 +48130,7 @@
"test/core/json/corpus/468af040024e96e9878ef33cc52755c5e7f5cbd5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57152,10 +48138,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57163,10 +48146,7 @@
"test/core/json/corpus/469e5ed2547e9e55a96e96eb832c615631e3b576"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57174,10 +48154,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57185,10 +48162,7 @@
"test/core/json/corpus/472b07b9fcf2c2451e8781e944bf5f77cd8457c8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57196,10 +48170,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57207,10 +48178,7 @@
"test/core/json/corpus/486da8aff04083c5e0fe112e733f2ae510e312a1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57218,10 +48186,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57229,10 +48194,7 @@
"test/core/json/corpus/488a5ed641e340ae51992e04ce6590bdec587218"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57240,10 +48202,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57251,10 +48210,7 @@
"test/core/json/corpus/4a0a19218e082a343a1b17e5333409af9d98f0f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57262,10 +48218,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57273,10 +48226,7 @@
"test/core/json/corpus/4a6644a1a3d5218f4bbd60220cab79c0b7bef45e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57284,10 +48234,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57295,10 +48242,7 @@
"test/core/json/corpus/4b39d4b8a9a04b9469e8fe4016322327fe540882"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57306,10 +48250,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57317,10 +48258,7 @@
"test/core/json/corpus/4bb0294e14946fb1f64213384097a676d3ef94f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57328,10 +48266,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57339,10 +48274,7 @@
"test/core/json/corpus/4cd66dfabbd964f8c6c4414b07cdb45dae692e19"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57350,10 +48282,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57361,10 +48290,7 @@
"test/core/json/corpus/4d134bc072212ace2df385dae143139da74ec0ef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57372,10 +48298,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57383,10 +48306,7 @@
"test/core/json/corpus/4efa35221b2088e785048d0ff8fd99b03d5316fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57394,10 +48314,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57405,10 +48322,7 @@
"test/core/json/corpus/4fa2a4a5a2f7dc4ddbdecae3ee85c787817b4cf8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57416,10 +48330,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57427,10 +48338,7 @@
"test/core/json/corpus/4fed4bf2dc6259d9de54e9fa7db4fd5a61f2535e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57438,10 +48346,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57449,10 +48354,7 @@
"test/core/json/corpus/4ff800de0863adb5851fa26935159aa53b11cba7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57460,10 +48362,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57471,10 +48370,7 @@
"test/core/json/corpus/4ff99a030518a132748c44bc1d836018e5b82cd0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57482,10 +48378,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57493,10 +48386,7 @@
"test/core/json/corpus/531c87b9772e54e3e183ef729f0a7d5a0d584f46"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57504,10 +48394,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57515,10 +48402,7 @@
"test/core/json/corpus/534d66e7b0709d1e7692faae9e7f7299c92bba4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57526,10 +48410,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57537,10 +48418,7 @@
"test/core/json/corpus/548775f9d7d13339dba3001f8238b84e9a457533"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57548,10 +48426,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57559,10 +48434,7 @@
"test/core/json/corpus/54ec3b2d8a9b7a6d8204712eb1b90da703cf8a79"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57570,10 +48442,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57581,10 +48450,7 @@
"test/core/json/corpus/552cfe1d8958e6d003ec8e883c4983dd67ef255e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57592,10 +48458,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57603,10 +48466,7 @@
"test/core/json/corpus/55f0c61d096a08506076489ded3b868db4086770"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57614,10 +48474,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57625,10 +48482,7 @@
"test/core/json/corpus/56cd60743c2cee939f5f357905bd36ec9363f441"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57636,10 +48490,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57647,10 +48498,7 @@
"test/core/json/corpus/56e5f35e3d08b4e17e3558cacddf9e5ed13a0159"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57658,10 +48506,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57669,10 +48514,7 @@
"test/core/json/corpus/580b03c49fba02bb8e399500eb66f2ff0482b22a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57680,10 +48522,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57691,10 +48530,7 @@
"test/core/json/corpus/5852643fbbcf92b0181327b69b4874c6ba6fa9f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57702,10 +48538,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57713,10 +48546,7 @@
"test/core/json/corpus/58f497e5efaf9f69080f9eef63b0b9dabcfdbc0d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57724,10 +48554,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57735,10 +48562,7 @@
"test/core/json/corpus/59129aacfb6cebbe2c52f30ef3424209f7252e82"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57746,10 +48570,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57757,10 +48578,7 @@
"test/core/json/corpus/598a287a3e56caae23ed63abc95d5f3457165eef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57768,10 +48586,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57779,10 +48594,7 @@
"test/core/json/corpus/5a37a26dd2482226f534f79d321d28e7a615ab72"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57790,10 +48602,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57801,10 +48610,7 @@
"test/core/json/corpus/5a710dcd4c78ca1a74ceb9fbfb011f7ac86a5f7b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57812,10 +48618,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57823,10 +48626,7 @@
"test/core/json/corpus/5ae7b87f5377d5ffc16fd3f69b4a4aa7be8b1184"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57834,10 +48634,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57845,10 +48642,7 @@
"test/core/json/corpus/5b3fe86d5a309a6ba745881bd220fe1100b271ce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57856,10 +48650,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57867,10 +48658,7 @@
"test/core/json/corpus/5c38b7da113ab4535dbc22777ce8a1480c1c9d1e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57878,10 +48666,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57889,10 +48674,7 @@
"test/core/json/corpus/5ca6c45a8d2e11c782806df43e7668beb4aba8f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57900,10 +48682,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57911,10 +48690,7 @@
"test/core/json/corpus/5da7b543313339f84fd52e96bacf3a73368a1d2c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57922,10 +48698,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57933,10 +48706,7 @@
"test/core/json/corpus/5e12ae9117668bcc22832640cc626315940aeba8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57944,10 +48714,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57955,10 +48722,7 @@
"test/core/json/corpus/5e397439a2680ed827c46704969c6711dabbda84"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57966,10 +48730,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57977,10 +48738,7 @@
"test/core/json/corpus/5e629dfb8b7533c7c2d173d4c3d587c88112cc29"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -57988,10 +48746,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -57999,10 +48754,7 @@
"test/core/json/corpus/5e785c7c26813577f3e30ef8f7e37ab2a9ffe39c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58010,10 +48762,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58021,10 +48770,7 @@
"test/core/json/corpus/5f3394f5058822cc044b92654837625897176480"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58032,10 +48778,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58043,10 +48786,7 @@
"test/core/json/corpus/5fb9bcbbb30a377209eab0541d144e44e71508d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58054,10 +48794,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58065,10 +48802,7 @@
"test/core/json/corpus/6008213a61d06b4382b223768530c3452968b7b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58076,10 +48810,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58087,10 +48818,7 @@
"test/core/json/corpus/60ba4b2daa4ed4d070fec06687e249e0e6f9ee45"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58098,10 +48826,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58109,10 +48834,7 @@
"test/core/json/corpus/625ed64c30c8ab2f0b3bc75690f9faa4270f0041"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58120,10 +48842,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58131,10 +48850,7 @@
"test/core/json/corpus/6314c2b304d04dc0108a95d29a93515e85e2b0b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58142,10 +48858,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58153,10 +48866,7 @@
"test/core/json/corpus/6462d8079d2ea921617e7d073b85cfab706800d3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58164,10 +48874,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58175,10 +48882,7 @@
"test/core/json/corpus/6474383282788e556aa86f57fc8650137ad264d0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58186,10 +48890,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58197,10 +48898,7 @@
"test/core/json/corpus/648c3f58ecc8fb4b8c779e6b11006ab5b1986dad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58208,10 +48906,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58219,10 +48914,7 @@
"test/core/json/corpus/66328e03a2ccd5e54dab23b816182786e6f518b6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58230,10 +48922,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58241,10 +48930,7 @@
"test/core/json/corpus/683e9045bc95e0cb5fc16ec64b118433475ba559"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58252,10 +48938,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58263,10 +48946,7 @@
"test/core/json/corpus/689f13680f4682303c8aa6828b67955959dc9669"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58274,10 +48954,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58285,10 +48962,7 @@
"test/core/json/corpus/68c6ba7f0602a5410d1fa3c5de24fe264436b993"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58296,10 +48970,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58307,10 +48978,7 @@
"test/core/json/corpus/699cafde80b1e1777306f781186d1253f018ab23"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58318,10 +48986,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58329,10 +48994,7 @@
"test/core/json/corpus/69ab053b59e235fd6af246c5180f15bd95295113"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58340,10 +49002,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58351,10 +49010,7 @@
"test/core/json/corpus/69afa12510b2e653b0af7c7030832647b2d63c37"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58362,10 +49018,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58373,10 +49026,7 @@
"test/core/json/corpus/6b75857f86be5c51b21a97f4a61e69e8bb6cd698"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58384,10 +49034,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58395,10 +49042,7 @@
"test/core/json/corpus/6c75e71ecde9f073a7bad89f4831c8cde0bc1830"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58406,10 +49050,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58417,10 +49058,7 @@
"test/core/json/corpus/6ce5170dc4f2eee3b31a875b6a41f2444959f3dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58428,10 +49066,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58439,10 +49074,7 @@
"test/core/json/corpus/6d2859436fbbee637f0a5981ca82e8f88a1d0d28"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58450,10 +49082,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58461,10 +49090,7 @@
"test/core/json/corpus/6d63e39f56d1d537bab9c2830303cabab3cd9035"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58472,10 +49098,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58483,10 +49106,7 @@
"test/core/json/corpus/6e05a0a240fe2974e14527bbe390d294564156e2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58494,10 +49114,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58505,10 +49122,7 @@
"test/core/json/corpus/6e6c9d301adb0f0ddffd79cdf3426a2de99bad48"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58516,10 +49130,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58527,10 +49138,7 @@
"test/core/json/corpus/6e989edf725ec64849377681ce02641c3d1870e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58538,10 +49146,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58549,10 +49154,7 @@
"test/core/json/corpus/70142f66475ae2fb33722d8d4750f386ecfefe7b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58560,10 +49162,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58571,10 +49170,7 @@
"test/core/json/corpus/719edbe667ce2729ac78a22dac29263c91144029"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58582,10 +49178,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58593,10 +49186,7 @@
"test/core/json/corpus/71f99ca2bda6ef2e15b965479a79587f9d794be0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58604,10 +49194,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58615,10 +49202,7 @@
"test/core/json/corpus/743e89b768af4bd591ea7228118550b1bfb8e7d1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58626,10 +49210,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58637,10 +49218,7 @@
"test/core/json/corpus/7714a1a32872442a2eaff472685f3ea69451a732"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58648,10 +49226,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58659,10 +49234,7 @@
"test/core/json/corpus/7719a1c782a1ba91c031a682a0a2f8658209adbf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58670,10 +49242,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58681,10 +49250,7 @@
"test/core/json/corpus/775e8ffda1f5d340dba472d06dc7c8bf8159e379"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58692,10 +49258,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58703,10 +49266,7 @@
"test/core/json/corpus/77de68daecd823babbb58edb1c8e14d7106e83bb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58714,10 +49274,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58725,10 +49282,7 @@
"test/core/json/corpus/7957dc9aac31e6a6783fb3a6ee073688fed6cf9d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58736,10 +49290,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58747,10 +49298,7 @@
"test/core/json/corpus/7ae893cbbf9b11ff411640b80985ce618907559c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58758,10 +49306,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58769,10 +49314,7 @@
"test/core/json/corpus/7b20ac50954063e3ad00813acab4a98b2bfdb858"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58780,10 +49322,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58791,10 +49330,7 @@
"test/core/json/corpus/7b6273145fb090de1c6163586f884a1da4b5cfbf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58802,10 +49338,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58813,10 +49346,7 @@
"test/core/json/corpus/7cf84b5a78281e6c6b5a9884110f3dbc6a40e310"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58824,10 +49354,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58835,10 +49362,7 @@
"test/core/json/corpus/7ef13b83e6bde582d9000be043e729cd3221c150"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58846,10 +49370,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58857,10 +49378,7 @@
"test/core/json/corpus/82059e250904b478f65daa0e647c1647ba6d6a3d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58868,10 +49386,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58879,10 +49394,7 @@
"test/core/json/corpus/8207fdf4bd302d6b6b1894990b353944a8716aa7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58890,10 +49402,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58901,10 +49410,7 @@
"test/core/json/corpus/831a49ad81b59025c241ac9e58bd88463fd798eb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58912,10 +49418,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58923,10 +49426,7 @@
"test/core/json/corpus/84582c1dbe026475319df14c19967d1dd0bf751f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58934,10 +49434,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58945,10 +49442,7 @@
"test/core/json/corpus/860d4ad0b7c026d1fcf51932b5e46500be7860a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58956,10 +49450,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58967,10 +49458,7 @@
"test/core/json/corpus/865c7cf36a4f4499a6242e51b77b58b868a7447b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -58978,10 +49466,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -58989,10 +49474,7 @@
"test/core/json/corpus/87a2b80f9272583517c0207af176fc40ea55022c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59000,10 +49482,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59011,10 +49490,7 @@
"test/core/json/corpus/887309d048beef83ad3eabf2a79a64a389ab1c9f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59022,10 +49498,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59033,10 +49506,7 @@
"test/core/json/corpus/88d89860ccaf21e5f0f002303a2cd853ecbb2acb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59044,10 +49514,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59055,10 +49522,7 @@
"test/core/json/corpus/88f658400b1870ddf081fb03020c3098b0b1e083"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59066,10 +49530,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59077,10 +49538,7 @@
"test/core/json/corpus/88f8b0984bb2f081918ad883c8f0ffacb5a8ff0a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59088,10 +49546,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59099,10 +49554,7 @@
"test/core/json/corpus/89304953495f060c7abd3584d83cb1c8e6d6653b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59110,10 +49562,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59121,10 +49570,7 @@
"test/core/json/corpus/8a5f6dc6873e3fd51fd866854d85258f8aa83a02"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59132,10 +49578,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59143,10 +49586,7 @@
"test/core/json/corpus/8a87261277c15667e2957dd52c5db6757ebc8e88"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59154,10 +49594,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59165,10 +49602,7 @@
"test/core/json/corpus/8aa61d8bd260942521bb1ba82cd4cce2324fdbee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59176,10 +49610,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59187,10 +49618,7 @@
"test/core/json/corpus/8d8874439569824e371a0284460440175cdb8a27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59198,10 +49626,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59209,10 +49634,7 @@
"test/core/json/corpus/8d952ec2e33b2a6a1c7876898719a610f5546388"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59220,10 +49642,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59231,10 +49650,7 @@
"test/core/json/corpus/8e6fec8a05b24f221b6e94fdfe205e5bf7709a2c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59242,10 +49658,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59253,10 +49666,7 @@
"test/core/json/corpus/8e7fda77644ff91578d25243fad51a3cd6d60860"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59264,10 +49674,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59275,10 +49682,7 @@
"test/core/json/corpus/8ea6295ff82bb119acd44a91b463b19fedafb226"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59286,10 +49690,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59297,10 +49698,7 @@
"test/core/json/corpus/8ee51caaa2c2f4ee2e5b4b7ef5a89db7df1068d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59308,10 +49706,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59319,10 +49714,7 @@
"test/core/json/corpus/8ef4dd9f2d0f9d770c937d9a43413d24df83f09b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59330,10 +49722,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59341,10 +49730,7 @@
"test/core/json/corpus/8efd86fb78a56a5145ed7739dcb00c78581c5375"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59352,10 +49738,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59363,10 +49746,7 @@
"test/core/json/corpus/8f0ba762c2fed0fc993feb91948902ac397b0919"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59374,10 +49754,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59385,10 +49762,7 @@
"test/core/json/corpus/8fe81e450694cac1eb4c4a5c966ffbc56ade3513"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59396,10 +49770,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59407,10 +49778,7 @@
"test/core/json/corpus/902ba3cda1883801594b6e1b452790cc53948fda"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59418,10 +49786,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59429,10 +49794,7 @@
"test/core/json/corpus/910a1528b28ebc6ff2f2a4fedb013c86de4103e2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59440,10 +49802,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59451,10 +49810,7 @@
"test/core/json/corpus/92049bf3d8a0ec93c2d1633631c0082e66ca69e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59462,10 +49818,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59473,10 +49826,7 @@
"test/core/json/corpus/920a3c318f3127b9c30ab02a077555c7dfbb6edb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59484,10 +49834,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59495,10 +49842,7 @@
"test/core/json/corpus/925fc05dd661aeb4a776dcbc5df3dcb2cefaf0a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59506,10 +49850,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59517,10 +49858,7 @@
"test/core/json/corpus/9367ba65affd5bf7aabf79c28e783cc5d93518e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59528,10 +49866,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59539,10 +49874,7 @@
"test/core/json/corpus/939f5049b1eefb91ccbd3fcecaed8cb21ea6b285"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59550,10 +49882,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59561,10 +49890,7 @@
"test/core/json/corpus/9405c2b00eaa5526f71cc78914dbd3ecaf093b6e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59572,10 +49898,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59583,10 +49906,7 @@
"test/core/json/corpus/94d3598751569d2a5be258e59665cbbf0692dfbe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59594,10 +49914,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59605,10 +49922,7 @@
"test/core/json/corpus/94f96d95d01e98fd2f04ce26c0913e5f9a882fb4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59616,10 +49930,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59627,10 +49938,7 @@
"test/core/json/corpus/95b54a84db75abab401d282fdb04440a879a9708"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59638,10 +49946,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59649,10 +49954,7 @@
"test/core/json/corpus/96189202e587ec951d5795da3e03062f2fb5d708"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59660,10 +49962,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59671,10 +49970,7 @@
"test/core/json/corpus/9711703428704ce2827a719eddb9d54be23a0cb7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59682,10 +49978,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59693,10 +49986,7 @@
"test/core/json/corpus/9734597e96eebe99b2243121a51d178a338ec46f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59704,10 +49994,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59715,10 +50002,7 @@
"test/core/json/corpus/9747c85a9510011bf87c23a80b029b9f2d04c37d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59726,10 +50010,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59737,10 +50018,7 @@
"test/core/json/corpus/97d170e1550eee4afc0af065b78cda302a97674c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59748,10 +50026,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59759,10 +50034,7 @@
"test/core/json/corpus/98e02e7fc96479e8d10ff2cc7610be772e2d6fba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59770,10 +50042,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59781,10 +50050,7 @@
"test/core/json/corpus/996156b191b619eff79b2fcbb7598518a09b06bc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59792,10 +50058,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59803,10 +50066,7 @@
"test/core/json/corpus/99667fcfa6d583a742fb5450527fc86dfb78ebbf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59814,10 +50074,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59825,10 +50082,7 @@
"test/core/json/corpus/9b1ead2dbeeb1a3e9a7bebcf6964c3cfbc7e8867"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59836,10 +50090,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59847,10 +50098,7 @@
"test/core/json/corpus/9b7669e201574bfb979d56110539a90da5aca2c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59858,10 +50106,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59869,10 +50114,7 @@
"test/core/json/corpus/9c24b456af3cb51a1ff2780c2d9cbdd7d93f6c76"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59880,10 +50122,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59891,10 +50130,7 @@
"test/core/json/corpus/9d0441f23ae7d5a3a5b1140497868ee6eeab656b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59902,10 +50138,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59913,10 +50146,7 @@
"test/core/json/corpus/9d890bd3139a8f9a44d435ff8edfbeb5b072ded0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59924,10 +50154,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59935,10 +50162,7 @@
"test/core/json/corpus/9e6a55b6b4563e652a23be9d623ca5055c356940"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59946,10 +50170,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59957,10 +50178,7 @@
"test/core/json/corpus/9ec88420ef0408642f6930996e35f5b9f18ec88c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59968,10 +50186,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -59979,10 +50194,7 @@
"test/core/json/corpus/9edd067c569315d5e93b0d14c7eac9fa6d81d3cd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -59990,10 +50202,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60001,10 +50210,7 @@
"test/core/json/corpus/9fbda4f714043d975389b536b4497c6d713452e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60012,10 +50218,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60023,10 +50226,7 @@
"test/core/json/corpus/9fc8cb8ab3b05e306e5e81d9d949e69f931244ea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60034,10 +50234,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60045,10 +50242,7 @@
"test/core/json/corpus/a02b857f2eff73e8e188f35529dd91f8144b23b9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60056,10 +50250,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60067,10 +50258,7 @@
"test/core/json/corpus/a060d5bfd1235cbbe4bcecf332fa3b03bc2282e3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60078,10 +50266,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60089,10 +50274,7 @@
"test/core/json/corpus/a0931fae1d43e7887c1cabde83fdfc52eaeedba8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60100,10 +50282,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60111,10 +50290,7 @@
"test/core/json/corpus/a0d4af29c6c223b48fe34d6a09b3a7466242f33c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60122,10 +50298,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60133,10 +50306,7 @@
"test/core/json/corpus/a1abe8a785030d475a7350438fd23a05c382c110"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60144,10 +50314,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60155,10 +50322,7 @@
"test/core/json/corpus/a1fb86293eac950c2b4f5182d9e4b5d9e0982ef6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60166,10 +50330,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60177,10 +50338,7 @@
"test/core/json/corpus/a2d4e3d6f5ba43c9199d5d2011678f82cfd55afc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60188,10 +50346,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60199,10 +50354,7 @@
"test/core/json/corpus/a39653cb3d97c58c44013197f4d7557577700177"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60210,10 +50362,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60221,10 +50370,7 @@
"test/core/json/corpus/a4c74ad56ae0e94e96101a8f2ce9b1e588df5e44"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60232,10 +50378,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60243,10 +50386,7 @@
"test/core/json/corpus/a6b34b06b00e9226f2bd961483f9da81d8de99a8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60254,10 +50394,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60265,10 +50402,7 @@
"test/core/json/corpus/a72c3b9cc71eb7f0e0e4dabcd2dcd2b997f21c07"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60276,10 +50410,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60287,10 +50418,7 @@
"test/core/json/corpus/a749d24bac55bc19465acc92b12244c56ca0f20d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60298,10 +50426,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60309,10 +50434,7 @@
"test/core/json/corpus/a78009ff8b3f4d722ee0eb84795e857e74a58aea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60320,10 +50442,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60331,10 +50450,7 @@
"test/core/json/corpus/a7ae4b16677806d78d0016c276b6722eba8eef3c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60342,10 +50458,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60353,10 +50466,7 @@
"test/core/json/corpus/a806f43dd48e35e75c27814c13a2a96c12449bd1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60364,10 +50474,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60375,10 +50482,7 @@
"test/core/json/corpus/a90a858013f90d2a94e0d62a7156ffd6848bf238"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60386,10 +50490,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60397,10 +50498,7 @@
"test/core/json/corpus/a94bfbfe16d026b52d7f73cf78fdf7d6a6c5c58b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60408,10 +50506,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60419,10 +50514,7 @@
"test/core/json/corpus/a9718f029d11a9335ef596cbd42794de5b0b18b5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60430,10 +50522,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60441,10 +50530,7 @@
"test/core/json/corpus/aa6e08a488d1ed00aa51f20c2477fc89e7b0a852"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60452,10 +50538,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60463,10 +50546,7 @@
"test/core/json/corpus/aaa038513c192fec501e4e7302156872ce2fde37"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60474,10 +50554,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60485,10 +50562,7 @@
"test/core/json/corpus/ac2686c095a5a1c92a1d4209a6c287778720c86d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60496,10 +50570,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60507,10 +50578,7 @@
"test/core/json/corpus/ac3478d69a3c81fa62e60f5c3696165a4e5e6ac4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60518,10 +50586,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60529,10 +50594,7 @@
"test/core/json/corpus/ac9231da4082430afe8f4d40127814c613648d8e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60540,10 +50602,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60551,10 +50610,7 @@
"test/core/json/corpus/adc83b19e793491b1c6ea0fd8b46cd9f32e592fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60562,10 +50618,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60573,10 +50626,7 @@
"test/core/json/corpus/aff25e569bd8c93157e08cd18ebcd896438e34c9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60584,10 +50634,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60595,10 +50642,7 @@
"test/core/json/corpus/affced8168ec801de89deac663f708f0c96cf1a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60606,10 +50650,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60617,10 +50658,7 @@
"test/core/json/corpus/b015dfc2f62b640d7c25adab7b38c5fcb5cb64c8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60628,10 +50666,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60639,10 +50674,7 @@
"test/core/json/corpus/b021dd7cd98b63092685ea092df0dc01c8f63334"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60650,10 +50682,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60661,10 +50690,7 @@
"test/core/json/corpus/b17485b8bdec8809b3819a83753ca893871df403"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60672,10 +50698,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60683,10 +50706,7 @@
"test/core/json/corpus/b32ef51eca9c6c658e6fb75fdf96bbba066404e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60694,10 +50714,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60705,10 +50722,7 @@
"test/core/json/corpus/b3f0c7f6bb763af1be91d9e74eabfeb199dc1f1f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60716,10 +50730,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60727,10 +50738,7 @@
"test/core/json/corpus/b45a1635ec526bcc890f9d735976704e516c5f19"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60738,10 +50746,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60749,10 +50754,7 @@
"test/core/json/corpus/b50ce51a7baa28cd298ebd05b4a3b9b70f9d4370"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60760,10 +50762,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60771,10 +50770,7 @@
"test/core/json/corpus/b5126721812b925426b30d283d2bb8b6969f230a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60782,10 +50778,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60793,10 +50786,7 @@
"test/core/json/corpus/b57af943a3ee411bffeaa3872eec9c6fb01569a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60804,10 +50794,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60815,10 +50802,7 @@
"test/core/json/corpus/b5abf6fd22ed0f852781de35d043059d0f86f3cd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60826,10 +50810,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60837,10 +50818,7 @@
"test/core/json/corpus/b6589fc6ab0dc82cf12099d1c2d40ab994e8410c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60848,10 +50826,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60859,10 +50834,7 @@
"test/core/json/corpus/b6f19238d2b04c5b86a17369093dafda34f332e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60870,10 +50842,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60881,10 +50850,7 @@
"test/core/json/corpus/b858cb282617fb0956d960215c8e84d1ccf909c6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60892,10 +50858,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60903,10 +50866,7 @@
"test/core/json/corpus/b9c38fad09c80db7781fefbe51039752de575ecc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60914,10 +50874,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60925,10 +50882,7 @@
"test/core/json/corpus/bb407c8992800444201dccfe744dac49c0295fde"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60936,10 +50890,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60947,10 +50898,7 @@
"test/core/json/corpus/bc335734f73502b92d2bd3587259ce915985f0ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60958,10 +50906,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60969,10 +50914,7 @@
"test/core/json/corpus/bd113c2c8a2328e3674c680c7cff829a6c8ab924"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -60980,10 +50922,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -60991,10 +50930,7 @@
"test/core/json/corpus/be051d58015d4af1977a5dfd14ef3fd070ecc9d2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61002,10 +50938,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61013,10 +50946,7 @@
"test/core/json/corpus/be461a0cd1fda052a69c3fd94f8cf5f6f86afa34"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61024,10 +50954,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61035,10 +50962,7 @@
"test/core/json/corpus/bef524502f8dbbc45af717ece01ec88edd7f903b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61046,10 +50970,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61057,10 +50978,7 @@
"test/core/json/corpus/bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61068,10 +50986,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61079,10 +50994,7 @@
"test/core/json/corpus/c0b6a90832b78ed5f6d129d3640c612540527c85"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61090,10 +51002,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61101,10 +51010,7 @@
"test/core/json/corpus/c18d315f0d35849b2aae4a47cab4608204b85d76"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61112,10 +51018,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61123,10 +51026,7 @@
"test/core/json/corpus/c257fd6bc9e5254a733378ab4ddd39629c4a3069"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61134,10 +51034,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61145,10 +51042,7 @@
"test/core/json/corpus/c2bf7f49d8f2e13a60af4473b3b3451b65b3aa9a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61156,10 +51050,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61167,10 +51058,7 @@
"test/core/json/corpus/c308517acf6f7088634d491a1608240f83a3ac95"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61178,10 +51066,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61189,10 +51074,7 @@
"test/core/json/corpus/c3badd71ef8a51b97ce93cbfe99f6778048f2128"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61200,10 +51082,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61211,10 +51090,7 @@
"test/core/json/corpus/c482a632702ae7f532d126e70149dda4fadc3cd7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61222,10 +51098,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61233,10 +51106,7 @@
"test/core/json/corpus/c541bb86e55b98e083b141114066f9c17d853374"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61244,10 +51114,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61255,10 +51122,7 @@
"test/core/json/corpus/c5b50b9015b6aaedd7eb1077b1204858f837b53c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61266,10 +51130,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61277,10 +51138,7 @@
"test/core/json/corpus/c62ef0dbd1350da9ea5a32e56672d385837643e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61288,10 +51146,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61299,10 +51154,7 @@
"test/core/json/corpus/c7a34d6d49e1da1ccd490350c2df3a168ed09ae8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61310,10 +51162,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61321,10 +51170,7 @@
"test/core/json/corpus/c88c4bec8d440c56d3ea7abce39276f0927dbe0a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61332,10 +51178,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61343,10 +51186,7 @@
"test/core/json/corpus/c92f147bfc034003ac42ed9e62a16c84102ab417"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61354,10 +51194,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61365,10 +51202,7 @@
"test/core/json/corpus/c96b0fe6034668edf37ef0f5f391d5107953dc06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61376,10 +51210,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61387,10 +51218,7 @@
"test/core/json/corpus/cac74aa5d7aab7fce0253f00c1a025980c1f9b7a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61398,10 +51226,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61409,10 +51234,7 @@
"test/core/json/corpus/caea0a0e6d8708cf682eaa446c344da56a7d5515"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61420,10 +51242,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61431,10 +51250,7 @@
"test/core/json/corpus/cc8a3dd2678d4b400ad630f402012b894e841b05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61442,10 +51258,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61453,10 +51266,7 @@
"test/core/json/corpus/cd851bec7adad52f79777fb9347d5fd2f9486aa7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61464,10 +51274,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61475,10 +51282,7 @@
"test/core/json/corpus/ce3899b62ba3efe00eb31ddad2861ffe16a30d06"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61486,10 +51290,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61497,10 +51298,7 @@
"test/core/json/corpus/ce8b76fdcdbf1c951afc2b115be9acc8a6358b32"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61508,10 +51306,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61519,10 +51314,7 @@
"test/core/json/corpus/cec87b67871fc7a59652bc3546fbbb68e4d31e28"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61530,10 +51322,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61541,10 +51330,7 @@
"test/core/json/corpus/cf32406111908544e504c84731147f072cdf2fbd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61552,10 +51338,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61563,10 +51346,7 @@
"test/core/json/corpus/cf35dc76bf9a2052636c1ecc92942161830dcdc3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61574,10 +51354,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61585,10 +51362,7 @@
"test/core/json/corpus/cf6a5e6bfe4f15b43e411dd2782e10f1670c9767"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61596,10 +51370,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61607,10 +51378,7 @@
"test/core/json/corpus/cfc45616f5f0e7c25df91f6984ff5f6f1648beab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61618,10 +51386,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61629,10 +51394,7 @@
"test/core/json/corpus/cff891e5858ae68d08ecc8470ca6a68c9438bfa3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61640,10 +51402,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61651,10 +51410,7 @@
"test/core/json/corpus/cfff4e9d08cba81b663dd1999710008342851e19"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61662,10 +51418,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61673,10 +51426,7 @@
"test/core/json/corpus/crash-f21867fe8b6df0b54c13e2e6e613dce871ecf0f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61684,10 +51434,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61695,10 +51442,7 @@
"test/core/json/corpus/d1db03c626fb16c3b9cd44cc38cf40ebd355a194"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61706,10 +51450,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61717,10 +51458,7 @@
"test/core/json/corpus/d85ca051da784c0441898c5affbf11a2ae8f56bc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61728,10 +51466,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61739,10 +51474,7 @@
"test/core/json/corpus/da03f536ceaf609972aa2a699687cc6f73ac0dcd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61750,10 +51482,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61761,10 +51490,7 @@
"test/core/json/corpus/da4b9237bacccdf19c0760cab7aec4a8359010b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61772,10 +51498,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61783,10 +51506,7 @@
"test/core/json/corpus/dcc45e405208d7a2db33d0b5b9da2a2f1b034957"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61794,10 +51514,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61805,10 +51522,7 @@
"test/core/json/corpus/dcc60d3aaa1fc4d00201a3512284fcb79b5b68ef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61816,10 +51530,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61827,10 +51538,7 @@
"test/core/json/corpus/dd0567ae57bf3cc85891a1ca988c2945d9186678"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61838,10 +51546,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61849,10 +51554,7 @@
"test/core/json/corpus/dd890a5a32e9f0489c6c77695f2155041f00fc9a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61860,10 +51562,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61871,10 +51570,7 @@
"test/core/json/corpus/df88e2baf7b76ffb2e94b9da57fd8d137f44b1ef"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61882,10 +51578,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61893,10 +51586,7 @@
"test/core/json/corpus/e00ee378c3f6e0b3cd89bd6e7517478d093f73dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61904,10 +51594,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61915,10 +51602,7 @@
"test/core/json/corpus/e0c124e90d068e2a70a3e148052869033453ec58"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61926,10 +51610,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61937,10 +51618,7 @@
"test/core/json/corpus/e0d87b1f3e54e5adc5c2205f9e14772822a25766"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61948,10 +51626,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61959,10 +51634,7 @@
"test/core/json/corpus/e1199df649697c570db5d6b2ea09d755eddd32b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61970,10 +51642,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -61981,10 +51650,7 @@
"test/core/json/corpus/e235f6f2a8b6a22117f1baa932fb6c69799e1136"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -61992,10 +51658,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62003,10 +51666,7 @@
"test/core/json/corpus/e3a654055a867ae62d8e68fa2c410228ac55cb6d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62014,10 +51674,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62025,10 +51682,7 @@
"test/core/json/corpus/e3c680aac46b9c46392e3b2c43ecdcc1547f2023"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62036,10 +51690,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62047,10 +51698,7 @@
"test/core/json/corpus/e3d134b35cc25a4861d90023c95988ec6103ddd5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62058,10 +51706,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62069,10 +51714,7 @@
"test/core/json/corpus/e3ff65de4b1622315c3b34b7a5e39bffb275489d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62080,10 +51722,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62091,10 +51730,7 @@
"test/core/json/corpus/e4a4085cc31476f5de9047422851d8ccf86339df"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62102,10 +51738,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62113,10 +51746,7 @@
"test/core/json/corpus/e4e3c69da200af932c8a79fa055d7aeea28eb1d1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62124,10 +51754,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62135,10 +51762,7 @@
"test/core/json/corpus/e6c3dd630428fd54834172b8fd2735fed9416da4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62146,10 +51770,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62157,10 +51778,7 @@
"test/core/json/corpus/e71eb37fca2070521e1e07c503c2bcd6445b35ea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62168,10 +51786,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62179,10 +51794,7 @@
"test/core/json/corpus/e760e6e22ae8cd1ea78fe28b5eb1f3d7b5fdc536"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62190,10 +51802,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62201,10 +51810,7 @@
"test/core/json/corpus/e95ff1142118a2ca5b84935612a8a64d55360e64"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62212,10 +51818,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62223,10 +51826,7 @@
"test/core/json/corpus/e9c5e2c67930513941753c2d54591c7098c82f6c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62234,10 +51834,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62245,10 +51842,7 @@
"test/core/json/corpus/eb26070d17ffa908204912e75cb4313835042038"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62256,10 +51850,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62267,10 +51858,7 @@
"test/core/json/corpus/ebc6aee49e5ae57722df86e7fa33c420f045a449"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62278,10 +51866,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62289,10 +51874,7 @@
"test/core/json/corpus/ed1dc11d713e7487de18ce8317b62916959206d0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62300,10 +51882,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62311,10 +51890,7 @@
"test/core/json/corpus/ede3f66106acd7796da8b3942d029fe213058286"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62322,10 +51898,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62333,10 +51906,7 @@
"test/core/json/corpus/eed7bd220cd511b6d42ce6553019266a22a3d56a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62344,10 +51914,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62355,10 +51922,7 @@
"test/core/json/corpus/f090932162756b798b1a050b05e3d36a3437c4fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62366,10 +51930,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62377,10 +51938,7 @@
"test/core/json/corpus/f1905eaa84ba6a3593ec6ac0486a5b42893c01f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62388,10 +51946,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62399,10 +51954,7 @@
"test/core/json/corpus/f4635fbbf765ead81a261ca152df02622e182d2c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62410,10 +51962,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62421,10 +51970,7 @@
"test/core/json/corpus/f46eeb1020c7c4153e742a50bc24c2c6939dab1e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62432,10 +51978,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62443,10 +51986,7 @@
"test/core/json/corpus/f473451610783521d51bc08cdd920ddd97f8a71f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62454,10 +51994,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62465,10 +52002,7 @@
"test/core/json/corpus/f63aa599600f6e7d648c4287905e16e8e6e479fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62476,10 +52010,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62487,10 +52018,7 @@
"test/core/json/corpus/f667dcf1c06e87db2dc49d86ea1c285e796f8f8c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62498,10 +52026,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62509,10 +52034,7 @@
"test/core/json/corpus/f8d0f85975e49b959799cc52847110cc940b9db1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62520,10 +52042,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62531,10 +52050,7 @@
"test/core/json/corpus/f92c47e35da42d79a48beff54b93cd28f55f05fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62542,10 +52058,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62553,10 +52066,7 @@
"test/core/json/corpus/f9a33bb8bd78d869fbafa402d9be58940ce2c318"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62564,10 +52074,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62575,10 +52082,7 @@
"test/core/json/corpus/fbf6f3156c1bd4bb701839bc0e26533bdccd1c9a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62586,10 +52090,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62597,10 +52098,7 @@
"test/core/json/corpus/fe2ef495a1152561572949784c16bf23abb28057"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62608,10 +52106,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62619,10 +52114,7 @@
"test/core/json/corpus/fe5dbbcea5ce7e2988b8c69bcfdfde8904aabc1f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62630,10 +52122,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62641,10 +52130,7 @@
"test/core/json/corpus/ff8fb34603c7f772768d61504954553e6bed173c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62652,10 +52138,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62663,10 +52146,7 @@
"test/core/json/corpus/test1.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62674,10 +52154,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62685,10 +52162,7 @@
"test/core/json/corpus/test2.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62696,10 +52170,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62707,10 +52178,7 @@
"test/core/json/corpus/test3.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62718,10 +52186,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62729,10 +52194,7 @@
"test/core/json/corpus/test4.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62740,10 +52202,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62751,10 +52210,7 @@
"test/core/json/corpus/test5.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62762,10 +52218,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62773,10 +52226,7 @@
"test/core/json/corpus/test6.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62784,10 +52234,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62795,10 +52242,7 @@
"test/core/json/corpus/test7.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62806,10 +52250,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62817,10 +52258,7 @@
"test/core/json/corpus/test8.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62828,10 +52266,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62839,10 +52274,7 @@
"test/core/json/corpus/test9.json"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62850,10 +52282,7 @@
"language": "c",
"name": "json_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62861,10 +52290,7 @@
"test/core/nanopb/corpus_response/0052f8fb6a7884ced8a6754aa13441be1f7dcd51"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62872,10 +52298,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62883,10 +52306,7 @@
"test/core/nanopb/corpus_response/0c35544f40d428d103e9c5b969ad9cd16767b110"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62894,10 +52314,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62905,10 +52322,7 @@
"test/core/nanopb/corpus_response/0c60ee9ed55c9af6190b132ef6636c1d2abe4540"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62916,10 +52330,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62927,10 +52338,7 @@
"test/core/nanopb/corpus_response/0ecb3e69889c036a86d21eb942077dc9abd649be"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62938,10 +52346,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62949,10 +52354,7 @@
"test/core/nanopb/corpus_response/1324c95dafe597fe05f9babe92fe6fbf181c1897"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62960,10 +52362,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62971,10 +52370,7 @@
"test/core/nanopb/corpus_response/14eb42f7423081b455820daa2c02b358315dc0fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -62982,10 +52378,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -62993,10 +52386,7 @@
"test/core/nanopb/corpus_response/23121c5f633db5d7c1a9f2225240754246fee513"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63004,10 +52394,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63015,10 +52402,7 @@
"test/core/nanopb/corpus_response/235548307ee9f2b0855fded42a871990d9ade956"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63026,10 +52410,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63037,10 +52418,7 @@
"test/core/nanopb/corpus_response/28ed3a797da3c48c309a4ef792147f3c56cfec40"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63048,10 +52426,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63059,10 +52434,7 @@
"test/core/nanopb/corpus_response/2bf123dbfa1d37a04493b5662a4b3b9c147485fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63070,10 +52442,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63081,10 +52450,7 @@
"test/core/nanopb/corpus_response/2d4c0908ecc0310ea234d10b6bdb4f4ca3c41dd1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63092,10 +52458,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63103,10 +52466,7 @@
"test/core/nanopb/corpus_response/304e8cdc9122b709ec2c063a5c8c38489a788033"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63114,10 +52474,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63125,10 +52482,7 @@
"test/core/nanopb/corpus_response/324d4a2aed8bc1840fee212fd38dadec80a72ea2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63136,10 +52490,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63147,10 +52498,7 @@
"test/core/nanopb/corpus_response/33353a0b011901a13d010c6b165074ccdaa717ac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63158,10 +52506,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63169,10 +52514,7 @@
"test/core/nanopb/corpus_response/37dfead09389fcd9b9d24ef817a0fed13d8ff2b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63180,10 +52522,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63191,10 +52530,7 @@
"test/core/nanopb/corpus_response/47879cc364be304754f6af15563ad6f9a538da41"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63202,10 +52538,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63213,10 +52546,7 @@
"test/core/nanopb/corpus_response/49a5cef4c730ecab22712b156ddba5106f165afd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63224,10 +52554,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63235,10 +52562,7 @@
"test/core/nanopb/corpus_response/4bbbbb794a098deeacff73b774c30f12c54ceacb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63246,10 +52570,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63257,10 +52578,7 @@
"test/core/nanopb/corpus_response/4c498ce69c8476f745693deb23272930e05cad60"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63268,10 +52586,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63279,10 +52594,7 @@
"test/core/nanopb/corpus_response/4fb5e3085c32e9bccac9e18343cca07017d037de"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63290,10 +52602,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63301,10 +52610,7 @@
"test/core/nanopb/corpus_response/4fe5e46c1299e7f3e8a41dde3ae1bf1b60b4a43c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63312,10 +52618,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63323,10 +52626,7 @@
"test/core/nanopb/corpus_response/670cc6bae958cb4f15e7297fe63959ac5799aa42"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63334,10 +52634,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63345,10 +52642,7 @@
"test/core/nanopb/corpus_response/675f3263af7d1bbb084872f2b23f6d363227e85d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63356,10 +52650,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63367,10 +52658,7 @@
"test/core/nanopb/corpus_response/67fe0d2acc727c8a39a707b92c6cebda9bd20986"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63378,10 +52666,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63389,10 +52674,7 @@
"test/core/nanopb/corpus_response/6995dd153f712ad257ab5a365e5a4b84dc676ed3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63400,10 +52682,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63411,10 +52690,7 @@
"test/core/nanopb/corpus_response/6d15065785eb8f4b5f17357a520cb4815a2cb355"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63422,10 +52698,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63433,10 +52706,7 @@
"test/core/nanopb/corpus_response/73285d7a70d73b517648067520d921e4477dbbfa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63444,10 +52714,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63455,10 +52722,7 @@
"test/core/nanopb/corpus_response/747d1ed8bee4c6f0438beaf88ae76d8ef9f63da2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63466,10 +52730,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63477,10 +52738,7 @@
"test/core/nanopb/corpus_response/763878a34b3adeb99a03b54d09768a4451617016"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63488,10 +52746,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63499,10 +52754,7 @@
"test/core/nanopb/corpus_response/7b4b0c2555178333ba15203a930c88ef7e7500e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63510,10 +52762,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63521,10 +52770,7 @@
"test/core/nanopb/corpus_response/7b8a91aa46e370eb61307b4998889dc89775462f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63532,10 +52778,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63543,10 +52786,7 @@
"test/core/nanopb/corpus_response/7cd11836c64f98742fa7beccec5c981ef4dd62ae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63554,10 +52794,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63565,10 +52802,7 @@
"test/core/nanopb/corpus_response/7d8f4f045e70e8a2cb45dc3c001504f5c2614b16"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63576,10 +52810,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63587,10 +52818,7 @@
"test/core/nanopb/corpus_response/7e9848558fb004e14795b3ebd3e1488dcde1db8c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63598,10 +52826,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63609,10 +52834,7 @@
"test/core/nanopb/corpus_response/89734c37ee267e69a6950c6d60ee541c1be5ccff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63620,10 +52842,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63631,10 +52850,7 @@
"test/core/nanopb/corpus_response/9034aaf45143996a2b14465c352ab0c6fa26b221"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63642,10 +52858,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63653,10 +52866,7 @@
"test/core/nanopb/corpus_response/91e3b6a3484ab4b95cdeecc5aefe1291824060e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63664,10 +52874,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63675,10 +52882,7 @@
"test/core/nanopb/corpus_response/95cd94c858e5e97f7df4a5eb7552e5e0d5ce1ec4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63686,10 +52890,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63697,10 +52898,7 @@
"test/core/nanopb/corpus_response/971f42d5a4d9816145ebc9dd28ba33ed3f5860b0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63708,10 +52906,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63719,10 +52914,7 @@
"test/core/nanopb/corpus_response/9db3a1854de87fd643b910aeab50553afc73e667"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63730,10 +52922,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63741,10 +52930,7 @@
"test/core/nanopb/corpus_response/a147873135c6c52d4da03c260a0165bc0ab1b979"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63752,10 +52938,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63763,10 +52946,7 @@
"test/core/nanopb/corpus_response/a710eead945dabbbffa213a980c75f9463a27398"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63774,10 +52954,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63785,10 +52962,7 @@
"test/core/nanopb/corpus_response/a72406e3ca06d941fe8e168bbf67da88a81c947b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63796,10 +52970,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63807,10 +52978,7 @@
"test/core/nanopb/corpus_response/a8a62a7ebb7d68b211ae319e082575935c07d188"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63818,10 +52986,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63829,10 +52994,7 @@
"test/core/nanopb/corpus_response/a8abd012eb59b862bf9bc1ea443d2f35a1a2e222"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63840,10 +53002,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63851,10 +53010,7 @@
"test/core/nanopb/corpus_response/aab56035a3533b5d83a32a439f179eb678250113"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63862,10 +53018,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63873,10 +53026,7 @@
"test/core/nanopb/corpus_response/ac174acef2c5da26fadc7270bab9c8c4e938c463"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63884,10 +53034,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63895,10 +53042,7 @@
"test/core/nanopb/corpus_response/acbbd60eeb76e41ce254d0fef353b92abe69c831"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63906,10 +53050,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63917,10 +53058,7 @@
"test/core/nanopb/corpus_response/c1eed32e1e353737987da851ad760312ea8e557c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63928,10 +53066,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63939,10 +53074,7 @@
"test/core/nanopb/corpus_response/c4214ace2c4bab24bb356f71aedca08544baad70"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63950,10 +53082,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63961,10 +53090,7 @@
"test/core/nanopb/corpus_response/c4f87a6290aee1acfc1f26083974ce94621fca64"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63972,10 +53098,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -63983,10 +53106,7 @@
"test/core/nanopb/corpus_response/d285d78d3ba966b4b199453d38ead1aa36a7484f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -63994,10 +53114,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64005,10 +53122,7 @@
"test/core/nanopb/corpus_response/df5200f371cff3cae0e1595cd86d641725f5d1ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64016,10 +53130,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64027,10 +53138,7 @@
"test/core/nanopb/corpus_response/dfc66cb172919102f3ba14f6816228aa46f78154"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64038,10 +53146,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64049,10 +53154,7 @@
"test/core/nanopb/corpus_response/e53e789a4c175c6a2c468472f1047d0fe8db1177"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64060,10 +53162,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64071,10 +53170,7 @@
"test/core/nanopb/corpus_response/e67fe6794e755ea801272980f2c272edb027f6dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64082,10 +53178,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64093,10 +53186,7 @@
"test/core/nanopb/corpus_response/ead61e86fedf118df8e44ed70ce002be651cf291"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64104,10 +53194,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64115,10 +53202,7 @@
"test/core/nanopb/corpus_response/eced8b29efbdc82eb8a1d0865c5f382f0ff78446"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64126,10 +53210,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64137,10 +53218,7 @@
"test/core/nanopb/corpus_response/f107c60f00da44a2c412c5b89c733efe5f9be4aa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64148,10 +53226,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64159,10 +53234,7 @@
"test/core/nanopb/corpus_response/f58a9135d07ea9a5e3e710f6b3bf6d48d5942dfd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64170,10 +53242,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64181,10 +53250,7 @@
"test/core/nanopb/corpus_response/f8c2c4ddd2f474b4839f13a9be862c00ab0ece77"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64192,10 +53258,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64203,10 +53266,7 @@
"test/core/nanopb/corpus_response/faa1781e1444bba5b8c677bc5e2a38d023a1ec65"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64214,10 +53274,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64225,10 +53282,7 @@
"test/core/nanopb/corpus_response/fccda587af845f0685275960649d8f4a45272a95"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64236,10 +53290,7 @@
"language": "c",
"name": "nanopb_fuzzer_response_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64247,10 +53298,7 @@
"test/core/nanopb/corpus_serverlist/000def12957806bb0d40005cb651d35b4cde7b4e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64258,10 +53306,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64269,10 +53314,7 @@
"test/core/nanopb/corpus_serverlist/0068af2acc3020f344ee84b2c8adfb90492354c3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64280,10 +53322,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64291,10 +53330,7 @@
"test/core/nanopb/corpus_serverlist/009132022c3a1660b701728ac92e26baf82e8eac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64302,10 +53338,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64313,10 +53346,7 @@
"test/core/nanopb/corpus_serverlist/00bf0233aa1155b34a3081e4a2b7a1c9cdf8ea1e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64324,10 +53354,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64335,10 +53362,7 @@
"test/core/nanopb/corpus_serverlist/013197cfb12b59755b807501c6d6615859f9cd3f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64346,10 +53370,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64357,10 +53378,7 @@
"test/core/nanopb/corpus_serverlist/018a4332eb19f2398162317cb6ad2e8cf700dfd6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64368,10 +53386,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64379,10 +53394,7 @@
"test/core/nanopb/corpus_serverlist/0273d3496bf5f4594e59083ac319f8f863a15be0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64390,10 +53402,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64401,10 +53410,7 @@
"test/core/nanopb/corpus_serverlist/0355002521e74dcdb3a0c633338bd02ab1d85312"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64412,10 +53418,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64423,10 +53426,7 @@
"test/core/nanopb/corpus_serverlist/053d8d6ceeba9453c97d0ee5374db863e6f77ad4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64434,10 +53434,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64445,10 +53442,7 @@
"test/core/nanopb/corpus_serverlist/0628c29e3ae264f8fa08652435bb3e61afe60883"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64456,10 +53450,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64467,10 +53458,7 @@
"test/core/nanopb/corpus_serverlist/065e91578e5359b70a668164310af6f0dd40e922"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64478,10 +53466,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64489,10 +53474,7 @@
"test/core/nanopb/corpus_serverlist/06b4b617d5937da8a7b58aed5341dc5ef6d1bcd7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64500,10 +53482,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64511,10 +53490,7 @@
"test/core/nanopb/corpus_serverlist/07216a4f5934890b89d845f6256546c2681350ce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64522,10 +53498,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64533,10 +53506,7 @@
"test/core/nanopb/corpus_serverlist/08584e8308b7f52f0fe380358800d7f585cba89c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64544,10 +53514,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64555,10 +53522,7 @@
"test/core/nanopb/corpus_serverlist/085a37568e99ec5855bd96affd259921515479e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64566,10 +53530,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64577,10 +53538,7 @@
"test/core/nanopb/corpus_serverlist/0903d1e9297179c18de6a3707b16f27d0d54ed67"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64588,10 +53546,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64599,10 +53554,7 @@
"test/core/nanopb/corpus_serverlist/0aa20a75bff4e8af10330c66d288e900146f1a39"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64610,10 +53562,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64621,10 +53570,7 @@
"test/core/nanopb/corpus_serverlist/0ae76e2b24ca999bd5e09e517aa4d88f5b5f58a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64632,10 +53578,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64643,10 +53586,7 @@
"test/core/nanopb/corpus_serverlist/0c3025fdfb008a6563ea2a2bb6cbc79b8ccbf8f3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64654,10 +53594,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64665,10 +53602,7 @@
"test/core/nanopb/corpus_serverlist/0d219165cd317142afa36b8b5476cc022c95c4e6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64676,10 +53610,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64687,10 +53618,7 @@
"test/core/nanopb/corpus_serverlist/0e053123dd6256de5aff55b0731f913de250c18e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64698,10 +53626,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64709,10 +53634,7 @@
"test/core/nanopb/corpus_serverlist/0e065f98325849ac05eed515865b33dba0264cd4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64720,10 +53642,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64731,10 +53650,7 @@
"test/core/nanopb/corpus_serverlist/0e4ff715d491c9f0b471c400b71804739b6d400a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64742,10 +53658,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64753,10 +53666,7 @@
"test/core/nanopb/corpus_serverlist/0ec94942046cd7e00bc058204c1d046075ca9531"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64764,10 +53674,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64775,10 +53682,7 @@
"test/core/nanopb/corpus_serverlist/0f0e8da530eb8c924cee6985d9c3dfd93274ef8c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64786,10 +53690,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64797,10 +53698,7 @@
"test/core/nanopb/corpus_serverlist/0ff365225c981d74b89499d1e708684ed4d0b570"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64808,10 +53706,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64819,10 +53714,7 @@
"test/core/nanopb/corpus_serverlist/113b1efff1677c1b9a24f89aec0c3ecc228ddf62"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64830,10 +53722,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64841,10 +53730,7 @@
"test/core/nanopb/corpus_serverlist/11697d621eab6743ba22715722d5b23830b79075"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64852,10 +53738,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64863,10 +53746,7 @@
"test/core/nanopb/corpus_serverlist/12463318b795c756f389bc0fb1cca9645eafef28"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64874,10 +53754,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64885,10 +53762,7 @@
"test/core/nanopb/corpus_serverlist/12784250cf16ec999529f601ae5c5798e853d34a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64896,10 +53770,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64907,10 +53778,7 @@
"test/core/nanopb/corpus_serverlist/13122d08c1cee0dae6434605917d4cc6d8ea8cc5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64918,10 +53786,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64929,10 +53794,7 @@
"test/core/nanopb/corpus_serverlist/148a1118649dd8aa9b4ed778efdf7c1611aa5d27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64940,10 +53802,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64951,10 +53810,7 @@
"test/core/nanopb/corpus_serverlist/15dea2bb5fb36a3dd5172796da66a821a32918e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64962,10 +53818,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64973,10 +53826,7 @@
"test/core/nanopb/corpus_serverlist/16488fe15a7e33cb41f2b7c159c99154464b3fd3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -64984,10 +53834,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -64995,10 +53842,7 @@
"test/core/nanopb/corpus_serverlist/1870a48a3c9c1dd9027cbd85beb503b43cff6e89"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65006,10 +53850,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65017,10 +53858,7 @@
"test/core/nanopb/corpus_serverlist/1900b6a9123667a79020319aa7fd54d230bc7073"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65028,10 +53866,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65039,10 +53874,7 @@
"test/core/nanopb/corpus_serverlist/1a000f1cbccd2ab6f7e623e015ed2e84284c9dbf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65050,10 +53882,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65061,10 +53890,7 @@
"test/core/nanopb/corpus_serverlist/1c1d403f6175d52ac4430d1ef2401b549761707e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65072,10 +53898,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65083,10 +53906,7 @@
"test/core/nanopb/corpus_serverlist/1c2ae0e1915e18dffc2215e9121f1afe0e4335c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65094,10 +53914,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65105,10 +53922,7 @@
"test/core/nanopb/corpus_serverlist/1c5d2eef52426db9d0842f3d57b27a219434c512"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65116,10 +53930,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65127,10 +53938,7 @@
"test/core/nanopb/corpus_serverlist/1d0676867c1ebce84531035fa7eb86ed00762df5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65138,10 +53946,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65149,10 +53954,7 @@
"test/core/nanopb/corpus_serverlist/1d92b263fa70450b0d0aeb81bf5d2f69eefbbd99"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65160,10 +53962,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65171,10 +53970,7 @@
"test/core/nanopb/corpus_serverlist/1e843ed4864d6a808b671dd6769ae191ac8a13ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65182,10 +53978,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65193,10 +53986,7 @@
"test/core/nanopb/corpus_serverlist/1eb06a34ee568d584c4b33472788889bc68af3f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65204,10 +53994,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65215,10 +54002,7 @@
"test/core/nanopb/corpus_serverlist/2169c2b4d560d74a5487df68b56f3af1d648f544"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65226,10 +54010,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65237,10 +54018,7 @@
"test/core/nanopb/corpus_serverlist/21f8f7583e58c1c81a3ac8237b5fa58071edf8a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65248,10 +54026,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65259,10 +54034,7 @@
"test/core/nanopb/corpus_serverlist/231e348407fdcb14412c691b0b20982940160ccd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65270,10 +54042,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65281,10 +54050,7 @@
"test/core/nanopb/corpus_serverlist/27b8f060e3296eaef77dcdd4c2cd11d5650604ac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65292,10 +54058,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65303,10 +54066,7 @@
"test/core/nanopb/corpus_serverlist/28ed3a797da3c48c309a4ef792147f3c56cfec40"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65314,10 +54074,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65325,10 +54082,7 @@
"test/core/nanopb/corpus_serverlist/291fcc6e043942638fa3c865c0a1be5e4dcc0e70"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65336,10 +54090,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65347,10 +54098,7 @@
"test/core/nanopb/corpus_serverlist/2a7f6c1f8fdc090b24ceb90ab4f3a7b331c06c86"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65358,10 +54106,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65369,10 +54114,7 @@
"test/core/nanopb/corpus_serverlist/2b85f180fe56f84925b274819ce10a8972a594e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65380,10 +54122,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65391,10 +54130,7 @@
"test/core/nanopb/corpus_serverlist/2dea73d7d10ba0dcfd103f7542bdf7458e772b2b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65402,10 +54138,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65413,10 +54146,7 @@
"test/core/nanopb/corpus_serverlist/2e9c19f98ef88b83ec2dea8b1b7f92b8337f757b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65424,10 +54154,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65435,10 +54162,7 @@
"test/core/nanopb/corpus_serverlist/2fbd59ffb74aba392b86f4fe2ff8067b6d45cce8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65446,10 +54170,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65457,10 +54178,7 @@
"test/core/nanopb/corpus_serverlist/31059c32ea28d37b7442f51b20e966665662783c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65468,10 +54186,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65479,10 +54194,7 @@
"test/core/nanopb/corpus_serverlist/31f78e35feb36037864df5f8f47136f8e6e4768a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65490,10 +54202,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65501,10 +54210,7 @@
"test/core/nanopb/corpus_serverlist/326d322d1aa31696a14518830e544770f12146ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65512,10 +54218,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65523,10 +54226,7 @@
"test/core/nanopb/corpus_serverlist/337df26552e0884ff133cc1be8e72020be38f457"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65534,10 +54234,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65545,10 +54242,7 @@
"test/core/nanopb/corpus_serverlist/33a2a0aa86956097e034b5ee16aeceacee7efc34"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65556,10 +54250,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65567,10 +54258,7 @@
"test/core/nanopb/corpus_serverlist/33d175d1ecb3a85be7dd93d24efc3ddda0a85ad6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65578,10 +54266,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65589,10 +54274,7 @@
"test/core/nanopb/corpus_serverlist/3718a1b790db16bcfc4ec30691fab24ea7bb0b74"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65600,10 +54282,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65611,10 +54290,7 @@
"test/core/nanopb/corpus_serverlist/37aa3946054035b712102a62b71c94747dfd1491"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65622,10 +54298,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65633,10 +54306,7 @@
"test/core/nanopb/corpus_serverlist/37b697adc0708ad12e4ed7355f3f8fdf1b7919ca"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65644,10 +54314,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65655,10 +54322,7 @@
"test/core/nanopb/corpus_serverlist/37bf4642c5e5a806e2042cdf5ead9bf3c97b9ac1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65666,10 +54330,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65677,10 +54338,7 @@
"test/core/nanopb/corpus_serverlist/37d94ca6a20303389b35404f3dfd20aaa9ff0851"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65688,10 +54346,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65699,10 +54354,7 @@
"test/core/nanopb/corpus_serverlist/39278604f6a1102366464bbe769ae846e542bc56"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65710,10 +54362,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65721,10 +54370,7 @@
"test/core/nanopb/corpus_serverlist/396b57d9a11a1b135e36ad266e155cc0c3b77d21"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65732,10 +54378,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65743,10 +54386,7 @@
"test/core/nanopb/corpus_serverlist/39a49db120a807fe4e80c502254a5009625c7599"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65754,10 +54394,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65765,10 +54402,7 @@
"test/core/nanopb/corpus_serverlist/39f04d1c6d4beefa3e3d6eae3a5317d969787055"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65776,10 +54410,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65787,10 +54418,7 @@
"test/core/nanopb/corpus_serverlist/3b199b80209fa0b8ffedba4381019f8729cc09d6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65798,10 +54426,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65809,10 +54434,7 @@
"test/core/nanopb/corpus_serverlist/3ccf7ffb96c3e4789409db33cc12bfd8ddc24c1a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65820,10 +54442,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65831,10 +54450,7 @@
"test/core/nanopb/corpus_serverlist/3d04382d1fe11ff3b717100aece7f9eff2d04b9b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65842,10 +54458,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65853,10 +54466,7 @@
"test/core/nanopb/corpus_serverlist/3d4eb9f836bb40cf4c734073bcba8b73e4cc93ae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65864,10 +54474,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65875,10 +54482,7 @@
"test/core/nanopb/corpus_serverlist/41dc8c55e41d32c30865f9761931ddd4c5b740f8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65886,10 +54490,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65897,10 +54498,7 @@
"test/core/nanopb/corpus_serverlist/41ef7b74d212f8f7f6681edcffd0db719030d31d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65908,10 +54506,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65919,10 +54514,7 @@
"test/core/nanopb/corpus_serverlist/431187b5926fa7d0823305a9f87635616ea3ef27"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65930,10 +54522,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65941,10 +54530,7 @@
"test/core/nanopb/corpus_serverlist/44c6da04b8378986721f7225e70a1514695c176c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65952,10 +54538,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65963,10 +54546,7 @@
"test/core/nanopb/corpus_serverlist/450161236e37a1dfc0da6398c4876df82ff640ac"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65974,10 +54554,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -65985,10 +54562,7 @@
"test/core/nanopb/corpus_serverlist/45257a176ca6a05ec65a6df430bbb6b85d0a676f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -65996,10 +54570,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66007,10 +54578,7 @@
"test/core/nanopb/corpus_serverlist/46d1c2f2edcc9cdc0d1698fa0c8853cb19a6e7d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66018,10 +54586,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66029,10 +54594,7 @@
"test/core/nanopb/corpus_serverlist/4764bd4297bf0c405348d2bb87b8fbc02beadcb8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66040,10 +54602,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66051,10 +54610,7 @@
"test/core/nanopb/corpus_serverlist/48199bfd0e2c160f56d03e881bb5dfe276eec462"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66062,10 +54618,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66073,10 +54626,7 @@
"test/core/nanopb/corpus_serverlist/48e865c56e8db13640d6ecbfc0f2486eb77e07d1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66084,10 +54634,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66095,10 +54642,7 @@
"test/core/nanopb/corpus_serverlist/499b003b8b98edd9dbe2668c8c6af948769d7e87"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66106,10 +54650,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66117,10 +54658,7 @@
"test/core/nanopb/corpus_serverlist/4a55591c4b390c5a36cecc6f1b6f5105300b546b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66128,10 +54666,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66139,10 +54674,7 @@
"test/core/nanopb/corpus_serverlist/4d33f97ec69c64e14dcf205be36a6319ddb8a20d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66150,10 +54682,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66161,10 +54690,7 @@
"test/core/nanopb/corpus_serverlist/4dbfb08904739928e19c2f459040b35ac410f699"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66172,10 +54698,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66183,10 +54706,7 @@
"test/core/nanopb/corpus_serverlist/501bd6fe1de2719cf8d2c517a071e5d883fbe766"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66194,10 +54714,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66205,10 +54722,7 @@
"test/core/nanopb/corpus_serverlist/5208871ea8948223b64b304336cea41ac3240244"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66216,10 +54730,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66227,10 +54738,7 @@
"test/core/nanopb/corpus_serverlist/5348c71be34967458403bd4b58bb2a8a744d35ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66238,10 +54746,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66249,10 +54754,7 @@
"test/core/nanopb/corpus_serverlist/54362c2f6965268d0835a992c3ba656171b8f044"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66260,10 +54762,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66271,10 +54770,7 @@
"test/core/nanopb/corpus_serverlist/54411aa13f6d9118028171935322bbbc74c15329"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66282,10 +54778,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66293,10 +54786,7 @@
"test/core/nanopb/corpus_serverlist/54c50af22d147f192918499b4b3819eb389468a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66304,10 +54794,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66315,10 +54802,7 @@
"test/core/nanopb/corpus_serverlist/55441aac903d96b36bf8a11bc804234bcf0c04da"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66326,10 +54810,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66337,10 +54818,7 @@
"test/core/nanopb/corpus_serverlist/56e1a7c279482a57fcbca43468df96a791ee22b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66348,10 +54826,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66359,10 +54834,7 @@
"test/core/nanopb/corpus_serverlist/57cbea7c563d5c4b6b290271b0009c3f348d92da"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66370,10 +54842,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66381,10 +54850,7 @@
"test/core/nanopb/corpus_serverlist/57e11c7a62f0fc807d7b51bb1ef0f0e22f43795b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66392,10 +54858,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66403,10 +54866,7 @@
"test/core/nanopb/corpus_serverlist/585183c1a240df6926689fe1bd8cb434664db4d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66414,10 +54874,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66425,10 +54882,7 @@
"test/core/nanopb/corpus_serverlist/5b2ee8ca40508bf108a729dcb228191670ec34d6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66436,10 +54890,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66447,10 +54898,7 @@
"test/core/nanopb/corpus_serverlist/5b47eabaf74479348fd0318f174d649dbe96e7d2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66458,10 +54906,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66469,10 +54914,7 @@
"test/core/nanopb/corpus_serverlist/5ba93c9db0cff93f52b521d7420e43f6eda2784f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66480,10 +54922,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66491,10 +54930,7 @@
"test/core/nanopb/corpus_serverlist/5cc827e33932ccf8c72c6a839074e856d93463d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66502,10 +54938,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66513,10 +54946,7 @@
"test/core/nanopb/corpus_serverlist/5cc89bbf687f94ff87241a8f935905e1c441de33"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66524,10 +54954,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66535,10 +54962,7 @@
"test/core/nanopb/corpus_serverlist/5ec6596f12462fe9f36924c262f97408b54bbba8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66546,10 +54970,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66557,10 +54978,7 @@
"test/core/nanopb/corpus_serverlist/5f8f3af69295223fb04c37d28035bb75b4cbd705"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66568,10 +54986,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66579,10 +54994,7 @@
"test/core/nanopb/corpus_serverlist/5fd76d48b9fefecbdabd4511decc161b25db79dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66590,10 +55002,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66601,10 +55010,7 @@
"test/core/nanopb/corpus_serverlist/614cf839ccac2d896d61a0ba0ab1f42b2fabafea"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66612,10 +55018,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66623,10 +55026,7 @@
"test/core/nanopb/corpus_serverlist/618305cc2d3d3814d78b77ffbf421b769bd862cf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66634,10 +55034,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66645,10 +55042,7 @@
"test/core/nanopb/corpus_serverlist/61dfcd913c4f0a8d005bd089c34e95d8dbbf1897"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66656,10 +55050,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66667,10 +55058,7 @@
"test/core/nanopb/corpus_serverlist/65a89e10aab00039680e1f7d014737b634c74d8d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66678,10 +55066,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66689,10 +55074,7 @@
"test/core/nanopb/corpus_serverlist/66a273dbf5e37410efd45518a42b06a65cffe1f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66700,10 +55082,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66711,10 +55090,7 @@
"test/core/nanopb/corpus_serverlist/673ff0de0702e8098892060a5365c175d8ef18fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66722,10 +55098,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66733,10 +55106,7 @@
"test/core/nanopb/corpus_serverlist/68465c782c37bfdd98ac493b0458444bb94336e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66744,10 +55114,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66755,10 +55122,7 @@
"test/core/nanopb/corpus_serverlist/688451dee13d0be420598c6e205a3bc419173e18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66766,10 +55130,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66777,10 +55138,7 @@
"test/core/nanopb/corpus_serverlist/68a1d9150e1380c219e0a1deb3993f321e000ecd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66788,10 +55146,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66799,10 +55154,7 @@
"test/core/nanopb/corpus_serverlist/69f49bf7ae8886f5b4c6296fdb1c570256919604"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66810,10 +55162,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66821,10 +55170,7 @@
"test/core/nanopb/corpus_serverlist/6a425f414cd69ffffdbaa34d03eb43841b432e11"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66832,10 +55178,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66843,10 +55186,7 @@
"test/core/nanopb/corpus_serverlist/6ca9e6e85f9b007a0920b0112decbd1403d506da"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66854,10 +55194,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66865,10 +55202,7 @@
"test/core/nanopb/corpus_serverlist/6cd62e3d67b4154639adbe753115bfdd770edddb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66876,10 +55210,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66887,10 +55218,7 @@
"test/core/nanopb/corpus_serverlist/6d4f2de4cc427417d6335ff5396ea2588509bb5b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66898,10 +55226,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66909,10 +55234,7 @@
"test/core/nanopb/corpus_serverlist/6ea84030dd0b5b03e4720c244ea8b4ec65e1f236"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66920,10 +55242,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66931,10 +55250,7 @@
"test/core/nanopb/corpus_serverlist/710c1fc8cf7dc1386312c34de5057933fcf868b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66942,10 +55258,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66953,10 +55266,7 @@
"test/core/nanopb/corpus_serverlist/720e81dcaf83f867288a90293c5de3b088d5c556"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66964,10 +55274,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66975,10 +55282,7 @@
"test/core/nanopb/corpus_serverlist/72cdc8f78ab5237f96ed354264c726ac79ec429c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -66986,10 +55290,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -66997,10 +55298,7 @@
"test/core/nanopb/corpus_serverlist/73535a4f7af7e4c6aa23556cacd63f6929ac33fe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67008,10 +55306,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67019,10 +55314,7 @@
"test/core/nanopb/corpus_serverlist/73d7b933a5673a4d6f5905006ef6266dda1e4fba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67030,10 +55322,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67041,10 +55330,7 @@
"test/core/nanopb/corpus_serverlist/753aea13c82d1f8841c2bd4309b1b55d0ae2ba8d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67052,10 +55338,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67063,10 +55346,7 @@
"test/core/nanopb/corpus_serverlist/754428e00e8a1d0471e00bd9e8f060ab88ab640e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67074,10 +55354,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67085,10 +55362,7 @@
"test/core/nanopb/corpus_serverlist/761c29151b23b4d14ce6261626641df1182f7a96"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67096,10 +55370,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67107,10 +55378,7 @@
"test/core/nanopb/corpus_serverlist/7658451dd805f277a5b1c3d4065d752d2d8de5f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67118,10 +55386,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67129,10 +55394,7 @@
"test/core/nanopb/corpus_serverlist/767e91cedcd9bc1bdac882acc34a53cc23cf4d02"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67140,10 +55402,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67151,10 +55410,7 @@
"test/core/nanopb/corpus_serverlist/77d3754bdd4ea358369c936ed36b974b4181f6ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67162,10 +55418,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67173,10 +55426,7 @@
"test/core/nanopb/corpus_serverlist/7a95295bebe6237f65deb15ffeccab22716d574d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67184,10 +55434,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67195,10 +55442,7 @@
"test/core/nanopb/corpus_serverlist/7ad88b82e87fbfb3d4bddaa2f6e201a151e3a007"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67206,10 +55450,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67217,10 +55458,7 @@
"test/core/nanopb/corpus_serverlist/7b1010cc012e34af1d03e8845868ff0e1db3a601"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67228,10 +55466,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67239,10 +55474,7 @@
"test/core/nanopb/corpus_serverlist/7d3ddbd11e82807321c9a53835ea897cf43aa7f2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67250,10 +55482,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67261,10 +55490,7 @@
"test/core/nanopb/corpus_serverlist/7da9c5ab5f049da297b0f4c1322edd696202d02a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67272,10 +55498,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67283,10 +55506,7 @@
"test/core/nanopb/corpus_serverlist/7e265a019c02e5d089152849ac00bb005fa644f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67294,10 +55514,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67305,10 +55522,7 @@
"test/core/nanopb/corpus_serverlist/7f33bff4f740eb898b908374b0c1badd47566947"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67316,10 +55530,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67327,10 +55538,7 @@
"test/core/nanopb/corpus_serverlist/81f13b9b65891f2bfce77cb183a06045c461fee6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67338,10 +55546,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67349,10 +55554,7 @@
"test/core/nanopb/corpus_serverlist/846a14a480ffa1ad0f6333f3ecf2be3057ce6aed"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67360,10 +55562,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67371,10 +55570,7 @@
"test/core/nanopb/corpus_serverlist/87373a7f89feba2d50591b433f69877044155af2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67382,10 +55578,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67393,10 +55586,7 @@
"test/core/nanopb/corpus_serverlist/8833ba4c780c94fc6c3c466f849c0387acefdb20"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67404,10 +55594,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67415,10 +55602,7 @@
"test/core/nanopb/corpus_serverlist/8c23a5ecd20db4da2c061f3463254e9de104c8b9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67426,10 +55610,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67437,10 +55618,7 @@
"test/core/nanopb/corpus_serverlist/8d883f1577ca8c334b7c6d75ccb71209d71ced13"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67448,10 +55626,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67459,10 +55634,7 @@
"test/core/nanopb/corpus_serverlist/8dc80bd5f5d1fea64412203e304432edcf5f52c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67470,10 +55642,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67481,10 +55650,7 @@
"test/core/nanopb/corpus_serverlist/8fc9a9ea6ad7d6d51e770076eaddacad9f970c6f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67492,10 +55658,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67503,10 +55666,7 @@
"test/core/nanopb/corpus_serverlist/8fd167de17534776ef57aba2f27675789a11b8db"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67514,10 +55674,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67525,10 +55682,7 @@
"test/core/nanopb/corpus_serverlist/9117d3e51560813b3ce4615dced18fa0e4d0a25a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67536,10 +55690,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67547,10 +55698,7 @@
"test/core/nanopb/corpus_serverlist/921c68eaa8776f7544e195ae52224355d08a2d4d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67558,10 +55706,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67569,10 +55714,7 @@
"test/core/nanopb/corpus_serverlist/9293945411fca2dc81fc34b36b575a384e6d489e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67580,10 +55722,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67591,10 +55730,7 @@
"test/core/nanopb/corpus_serverlist/933287d66c3ff3f0a21f2c583c763f2f65872ef8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67602,10 +55738,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67613,10 +55746,7 @@
"test/core/nanopb/corpus_serverlist/933d1d91283403f0a56571f533f482e9744eb735"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67624,10 +55754,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67635,10 +55762,7 @@
"test/core/nanopb/corpus_serverlist/93855fc41b3e3004ca6ba85f34b985042d4c9869"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67646,10 +55770,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67657,10 +55778,7 @@
"test/core/nanopb/corpus_serverlist/9544f445c39470f05785b52cfc31bb73bda22659"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67668,10 +55786,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67679,10 +55794,7 @@
"test/core/nanopb/corpus_serverlist/97757217fde05ff4fc15c864bf29e9f560fd1c62"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67690,10 +55802,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67701,10 +55810,7 @@
"test/core/nanopb/corpus_serverlist/9877c0f2d40dd43878bb0209bbc4b5fa93bec55a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67712,10 +55818,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67723,10 +55826,7 @@
"test/core/nanopb/corpus_serverlist/98bc5065f79dd9d20cdac14ba28f0cf39908cb5f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67734,10 +55834,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67745,10 +55842,7 @@
"test/core/nanopb/corpus_serverlist/992860817f7fb0e49423607355dab973aa7ab815"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67756,10 +55850,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67767,10 +55858,7 @@
"test/core/nanopb/corpus_serverlist/995ee3d74bc6042fd6a8908c9df5a4cb530378d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67778,10 +55866,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67789,10 +55874,7 @@
"test/core/nanopb/corpus_serverlist/9a38c24a6e87e99a72a3a4f007b117ec191a1705"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67800,10 +55882,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67811,10 +55890,7 @@
"test/core/nanopb/corpus_serverlist/9aa97a0ffcdc37a8ef487355fb7271eb6891deaa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67822,10 +55898,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67833,10 +55906,7 @@
"test/core/nanopb/corpus_serverlist/9b9fddc17ed7bc05a81c18f01e800a4e9efd0c8d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67844,10 +55914,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67855,10 +55922,7 @@
"test/core/nanopb/corpus_serverlist/a0d4cb9a5a30bb01e8e4f68d636fb173632ed29d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67866,10 +55930,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67877,10 +55938,7 @@
"test/core/nanopb/corpus_serverlist/a1e070288ec564d10a8c59779aa07fa771fa1d4f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67888,10 +55946,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67899,10 +55954,7 @@
"test/core/nanopb/corpus_serverlist/a23d10723415d20f4ef1ed9b14d9dc24494856a0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67910,10 +55962,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67921,10 +55970,7 @@
"test/core/nanopb/corpus_serverlist/a245750cfe4212dca7bfde918de85f64eb053232"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67932,10 +55978,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67943,10 +55986,7 @@
"test/core/nanopb/corpus_serverlist/a24bbe3600f4dfd61bb8415c6a291e0521e4f267"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67954,10 +55994,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67965,10 +56002,7 @@
"test/core/nanopb/corpus_serverlist/a25104d039a549c8d457ecea3b55369ed312f086"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67976,10 +56010,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -67987,10 +56018,7 @@
"test/core/nanopb/corpus_serverlist/a33c4fcabe6aebe012cd01c8cb851a9ab0a12098"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -67998,10 +56026,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68009,10 +56034,7 @@
"test/core/nanopb/corpus_serverlist/a393e1727b0decca9f193179765c3a83d7096437"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68020,10 +56042,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68031,10 +56050,7 @@
"test/core/nanopb/corpus_serverlist/a5507f06be4735a3a9e416ea986d52c1a6a20909"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68042,10 +56058,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68053,10 +56066,7 @@
"test/core/nanopb/corpus_serverlist/a5adf028c902d17dd6a7ddeadabbed2b36420313"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68064,10 +56074,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68075,10 +56082,7 @@
"test/core/nanopb/corpus_serverlist/a6aa1237a282ee3a93f2544bb6bb7704e565209e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68086,10 +56090,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68097,10 +56098,7 @@
"test/core/nanopb/corpus_serverlist/a871185cabce7b96c9e2f6ffb40d9901c774b335"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68108,10 +56106,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68119,10 +56114,7 @@
"test/core/nanopb/corpus_serverlist/a89d0e67bf53e22533a635f103d1fd400969ad56"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68130,10 +56122,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68141,10 +56130,7 @@
"test/core/nanopb/corpus_serverlist/a8d1b4e5672a501d7a6cd14b2929297f3a82e035"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68152,10 +56138,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68163,10 +56146,7 @@
"test/core/nanopb/corpus_serverlist/aa614cc8d05a3a58c30a890c10b9a0c1d609b228"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68174,10 +56154,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68185,10 +56162,7 @@
"test/core/nanopb/corpus_serverlist/aa65320376f63805cc82b247612b2e05b87bdbee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68196,10 +56170,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68207,10 +56178,7 @@
"test/core/nanopb/corpus_serverlist/abd3f6e2cc8887942de20e1c257427b825aed0ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68218,10 +56186,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68229,10 +56194,7 @@
"test/core/nanopb/corpus_serverlist/ad0653a3a63675a7ce797e69b4673866b88ace33"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68240,10 +56202,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68251,10 +56210,7 @@
"test/core/nanopb/corpus_serverlist/ae2ce27806f67312e0d0e29a492db9ab9cb9bf4e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68262,10 +56218,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68273,10 +56226,7 @@
"test/core/nanopb/corpus_serverlist/ae4c0e671bd004165a1e7877d9c67249a165d2df"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68284,10 +56234,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68295,10 +56242,7 @@
"test/core/nanopb/corpus_serverlist/af75c24dff7e22948ed141c763a1309e6f540bcc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68306,10 +56250,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68317,10 +56258,7 @@
"test/core/nanopb/corpus_serverlist/b0f228c6d0cbbc9f10117f344d5aae6f001d00fa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68328,10 +56266,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68339,10 +56274,7 @@
"test/core/nanopb/corpus_serverlist/b2c6eab05580b85cda591093d3f05c44bf453fce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68350,10 +56282,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68361,10 +56290,7 @@
"test/core/nanopb/corpus_serverlist/b35281c0aae174d1ddc8999d97b9713f8004f285"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68372,10 +56298,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68383,10 +56306,7 @@
"test/core/nanopb/corpus_serverlist/b484ae40795cf9730ba94d5a4ca40aa47b88eacb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68394,10 +56314,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68405,10 +56322,7 @@
"test/core/nanopb/corpus_serverlist/b49c2fed1417a981ba29b32be73ee1700bea7ec9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68416,10 +56330,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68427,10 +56338,7 @@
"test/core/nanopb/corpus_serverlist/b68542373c05c0ed25231d09955b2c699d37c45b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68438,10 +56346,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68449,10 +56354,7 @@
"test/core/nanopb/corpus_serverlist/b6d42cbe913f7275b574a71f0768781bdb6f45b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68460,10 +56362,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68471,10 +56370,7 @@
"test/core/nanopb/corpus_serverlist/b80b6c2cae83c2097c7e4c1fb181d47cb8fd0519"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68482,10 +56378,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68493,10 +56386,7 @@
"test/core/nanopb/corpus_serverlist/b90ab62d8591182fd90cd21cdb893178d97f7e0e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68504,10 +56394,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68515,10 +56402,7 @@
"test/core/nanopb/corpus_serverlist/ba45c93ee6b8b286798d8791ec049207c448f7cd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68526,10 +56410,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68537,10 +56418,7 @@
"test/core/nanopb/corpus_serverlist/ba67e81ef0f9a14bf5a1ca228bff87c681e83a44"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68548,10 +56426,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68559,10 +56434,7 @@
"test/core/nanopb/corpus_serverlist/bbd1f06ddee4fbbd0e5c9c915889862e5df34f9c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68570,10 +56442,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68581,10 +56450,7 @@
"test/core/nanopb/corpus_serverlist/bd982feb5dd4362e6bd9746ed216c25ce2749df4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68592,10 +56458,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68603,10 +56466,7 @@
"test/core/nanopb/corpus_serverlist/be77053335e6496288fcf8b6c4d0b4abf86493ff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68614,10 +56474,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68625,10 +56482,7 @@
"test/core/nanopb/corpus_serverlist/bfb53203499969fac4f4be48e1bcd9235c2fa101"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68636,10 +56490,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68647,10 +56498,7 @@
"test/core/nanopb/corpus_serverlist/c143576bdb5b34ad89fa3319507ae382a721f587"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68658,10 +56506,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68669,10 +56514,7 @@
"test/core/nanopb/corpus_serverlist/c1ac502a15c53a90a1934f4a31d30f93db36dc8a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68680,10 +56522,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68691,10 +56530,7 @@
"test/core/nanopb/corpus_serverlist/c1b29883768551fa5aadc38ba6eaad8007b9b85b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68702,10 +56538,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68713,10 +56546,7 @@
"test/core/nanopb/corpus_serverlist/c2331fe0660ab5e411f6d38968c706aed390d8f6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68724,10 +56554,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68735,10 +56562,7 @@
"test/core/nanopb/corpus_serverlist/c32647119c244cc018bb1863853d5c7bd37090df"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68746,10 +56570,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68757,10 +56578,7 @@
"test/core/nanopb/corpus_serverlist/c4098733900c27861bbf74a71afcbbd93d62f8ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68768,10 +56586,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68779,10 +56594,7 @@
"test/core/nanopb/corpus_serverlist/c4f5769bf3b4f2a55c006b4cf5a3bba44b347241"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68790,10 +56602,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68801,10 +56610,7 @@
"test/core/nanopb/corpus_serverlist/c6ea7b2d47402a458d5d03235bb042b61e05b2e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68812,10 +56618,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68823,10 +56626,7 @@
"test/core/nanopb/corpus_serverlist/c7255dc48b42d44f6c0676d6009051b7e1aa885b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68834,10 +56634,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68845,10 +56642,7 @@
"test/core/nanopb/corpus_serverlist/c7d77af55176ae0ae5e59f46e48e1e6ea108d799"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68856,10 +56650,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68867,10 +56658,7 @@
"test/core/nanopb/corpus_serverlist/c80827341dcdf1c21b303b82ec7e6df7eaf63f3d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68878,10 +56666,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68889,10 +56674,7 @@
"test/core/nanopb/corpus_serverlist/c9501031a75c067b6602e2831f03421b87be4496"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68900,10 +56682,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68911,10 +56690,7 @@
"test/core/nanopb/corpus_serverlist/c98f88d962dfbc2a83e08bfbd8a87b0cc5a8b330"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68922,10 +56698,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68933,10 +56706,7 @@
"test/core/nanopb/corpus_serverlist/ccd33fa22b2983978f9617b3cde76ea05b683c2c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68944,10 +56714,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68955,10 +56722,7 @@
"test/core/nanopb/corpus_serverlist/cd0e7701fd79879c56f680817a0d2705751b1f44"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68966,10 +56730,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68977,10 +56738,7 @@
"test/core/nanopb/corpus_serverlist/cd1c2b5c2684d831aab5265e9cd6f1ee045dab9b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -68988,10 +56746,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -68999,10 +56754,7 @@
"test/core/nanopb/corpus_serverlist/cf98e8b01e7a759f28a9c5f59c896317d74ac47c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69010,10 +56762,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69021,10 +56770,7 @@
"test/core/nanopb/corpus_serverlist/d1d171589e035be85dc347278f0735151a342d68"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69032,10 +56778,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69043,10 +56786,7 @@
"test/core/nanopb/corpus_serverlist/d243143bf9b8adf6be92a157428ec6cbfd785423"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69054,10 +56794,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69065,10 +56802,7 @@
"test/core/nanopb/corpus_serverlist/d2cd278979f2842ebd890f1d84712750273ad0fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69076,10 +56810,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69087,10 +56818,7 @@
"test/core/nanopb/corpus_serverlist/d2e96eb2699c7dd4a183f13d3a063a1aa9c192fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69098,10 +56826,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69109,10 +56834,7 @@
"test/core/nanopb/corpus_serverlist/d3178f8b0d26275667c27bb8533a61643213e4d8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69120,10 +56842,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69131,10 +56850,7 @@
"test/core/nanopb/corpus_serverlist/d46f536ea4b601c0ff313a5eb5b47e2b55aa9eb0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69142,10 +56858,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69153,10 +56866,7 @@
"test/core/nanopb/corpus_serverlist/d4be3038631eac422022ee23f43b47905a15b2b5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69164,10 +56874,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69175,10 +56882,7 @@
"test/core/nanopb/corpus_serverlist/d56b30a2d1b5a2a13ae00392bcb4ca72085310d9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69186,10 +56890,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69197,10 +56898,7 @@
"test/core/nanopb/corpus_serverlist/d67f85948143218d11e2fb7936a119741036045d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69208,10 +56906,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69219,10 +56914,7 @@
"test/core/nanopb/corpus_serverlist/d6930ea81dfd91856a06a0c16483e47616642b4b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69230,10 +56922,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69241,10 +56930,7 @@
"test/core/nanopb/corpus_serverlist/d737c10038a92add90e2ebea5c174ed249de8018"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69252,10 +56938,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69263,10 +56946,7 @@
"test/core/nanopb/corpus_serverlist/d758a67f018b176dfc7d29630cf8cb587f5b2a6b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69274,10 +56954,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69285,10 +56962,7 @@
"test/core/nanopb/corpus_serverlist/dc7139105787f3ba67d7971d80796e9cf5786a91"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69296,10 +56970,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69307,10 +56978,7 @@
"test/core/nanopb/corpus_serverlist/dc8ec35f43e994b9c4ac61275d6b934990d42181"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69318,10 +56986,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69329,10 +56994,7 @@
"test/core/nanopb/corpus_serverlist/dd2694fe12a018bc6af6f288b5c22a030eec8049"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69340,10 +57002,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69351,10 +57010,7 @@
"test/core/nanopb/corpus_serverlist/de7424f44508582a953f137195533b7a0191eda7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69362,10 +57018,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69373,10 +57026,7 @@
"test/core/nanopb/corpus_serverlist/de91a02040d792dfcb71a4cb5aa4c1c006201273"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69384,10 +57034,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69395,10 +57042,7 @@
"test/core/nanopb/corpus_serverlist/deb576067b11f6e2a3a39b0f2ef38ddae5c67b18"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69406,10 +57050,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69417,10 +57058,7 @@
"test/core/nanopb/corpus_serverlist/df58248c414f342c81e056b40bee12d17a08bf61"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69428,10 +57066,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69439,10 +57074,7 @@
"test/core/nanopb/corpus_serverlist/e076020b2826abd3a4b960fb33a35fd7d0606dd8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69450,10 +57082,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69461,10 +57090,7 @@
"test/core/nanopb/corpus_serverlist/e0bcf682342967c002621acd2563a2157826d156"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69472,10 +57098,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69483,10 +57106,7 @@
"test/core/nanopb/corpus_serverlist/e1edca08a7654b42a64647abb0e773eddddb580b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69494,10 +57114,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69505,10 +57122,7 @@
"test/core/nanopb/corpus_serverlist/e2fa528289b5971f5b40b3687a2a6f0d17348de6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69516,10 +57130,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69527,10 +57138,7 @@
"test/core/nanopb/corpus_serverlist/e52af0ba8750572b98f3a8968de77811ddff0893"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69538,10 +57146,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69549,10 +57154,7 @@
"test/core/nanopb/corpus_serverlist/e5a0f40647f805b5001645ce2d94505e72fa64f3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69560,10 +57162,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69571,10 +57170,7 @@
"test/core/nanopb/corpus_serverlist/e69762f0c6a2750c0b03503a6aec90ffc94bcb72"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69582,10 +57178,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69593,10 +57186,7 @@
"test/core/nanopb/corpus_serverlist/e7064f0b80f61dbc65915311032d27baa569ae2a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69604,10 +57194,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69615,10 +57202,7 @@
"test/core/nanopb/corpus_serverlist/e863a4420854c36168d2b8dd39ce474ebe11cd26"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69626,10 +57210,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69637,10 +57218,7 @@
"test/core/nanopb/corpus_serverlist/e8993f97bb9c83f87c64cfc429095eeaccf32953"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69648,10 +57226,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69659,10 +57234,7 @@
"test/core/nanopb/corpus_serverlist/e9875d9a54b3ebc57df4da886cd30a39252ac666"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69670,10 +57242,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69681,10 +57250,7 @@
"test/core/nanopb/corpus_serverlist/e98a9d92bbbac9b1e64c0641e967adebd681b2aa"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69692,10 +57258,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69703,10 +57266,7 @@
"test/core/nanopb/corpus_serverlist/eb7c31f48c77b742fa29126ac78a2c06c41208e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69714,10 +57274,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69725,10 +57282,7 @@
"test/core/nanopb/corpus_serverlist/ec174492517f988010ed3ddbd003cb388f477bb6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69736,10 +57290,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69747,10 +57298,7 @@
"test/core/nanopb/corpus_serverlist/ec4d6a393be7ec80ccb8c531337a7fc3ef140e66"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69758,10 +57306,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69769,10 +57314,7 @@
"test/core/nanopb/corpus_serverlist/ecd40909ab5e2c61841d9fb95b8aacc87651100c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69780,10 +57322,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69791,10 +57330,7 @@
"test/core/nanopb/corpus_serverlist/ed17c8ddb6cc8a0b653dc87aca999d31e80c781a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69802,10 +57338,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69813,10 +57346,7 @@
"test/core/nanopb/corpus_serverlist/ee0b476126bb1c2249b299323718ecef1250645e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69824,10 +57354,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69835,10 +57362,7 @@
"test/core/nanopb/corpus_serverlist/ee1fb6a0b4139c07f1cf6bce850eaac9a2db29ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69846,10 +57370,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69857,10 +57378,7 @@
"test/core/nanopb/corpus_serverlist/eeac145c017ed35305f0ae69f820fc41e26e7997"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69868,10 +57386,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69879,10 +57394,7 @@
"test/core/nanopb/corpus_serverlist/efac7390c6e3a653d3ce93c3d6902f2f1c281ce0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69890,10 +57402,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69901,10 +57410,7 @@
"test/core/nanopb/corpus_serverlist/f0f0dace93d51cd8e045aeacca89424fc836eebc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69912,10 +57418,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69923,10 +57426,7 @@
"test/core/nanopb/corpus_serverlist/f3341b8cc55c0bb6e2d0a1f7f06d68e4f04057f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69934,10 +57434,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69945,10 +57442,7 @@
"test/core/nanopb/corpus_serverlist/f59ff56e341b94f2bddfd718b48ae9ab1692d720"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69956,10 +57450,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69967,10 +57458,7 @@
"test/core/nanopb/corpus_serverlist/f5a1824b9fd9f124df8097017607bcfa00eccfce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -69978,10 +57466,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -69989,10 +57474,7 @@
"test/core/nanopb/corpus_serverlist/f5b92b69853a5d123bffdc6b0ab093f767ec30ad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70000,10 +57482,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70011,10 +57490,7 @@
"test/core/nanopb/corpus_serverlist/f6aea4c380e41ddef2489ee581ab35e17fa3e8dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70022,10 +57498,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70033,10 +57506,7 @@
"test/core/nanopb/corpus_serverlist/f7b7254a3af7c41cb86e4b23bb93c5a6d55e2583"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70044,10 +57514,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70055,10 +57522,7 @@
"test/core/nanopb/corpus_serverlist/f7bdc1b174f53a49c6ef8f8cdb9b8e74e0a5d4ab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70066,10 +57530,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70077,10 +57538,7 @@
"test/core/nanopb/corpus_serverlist/f98c78c028baf22f39c77faf6e70edb86ac1d927"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70088,10 +57546,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70099,10 +57554,7 @@
"test/core/nanopb/corpus_serverlist/fb440171bca6ff922727e9ff2a4ac40d8d7905ff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70110,10 +57562,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70121,10 +57570,7 @@
"test/core/nanopb/corpus_serverlist/fc76cc4030b422e4cb5c145c3e8ed122e242acf0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70132,10 +57578,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70143,10 +57586,7 @@
"test/core/nanopb/corpus_serverlist/fcab3b80624b431e464dc12d3b6da1cf538bd15e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70154,10 +57594,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70165,10 +57602,7 @@
"test/core/nanopb/corpus_serverlist/fdb3a9b59798d7e851d9074db69422b1d2df38dd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70176,10 +57610,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70187,10 +57618,7 @@
"test/core/nanopb/corpus_serverlist/fe5de5f387e31b029d589d9b1777fd0d6b3e47b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70198,10 +57626,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70209,10 +57634,7 @@
"test/core/nanopb/corpus_serverlist/ff52d938aaa10c08b2eb0830fc0066c3b57e040f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70220,10 +57642,7 @@
"language": "c",
"name": "nanopb_fuzzer_serverlist_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70231,10 +57650,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/01c008fa.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70242,10 +57658,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70253,10 +57666,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/021ec59f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70264,10 +57674,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70275,10 +57682,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/02918e4ad9e8928845f232c0cb043057add3c9a9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70286,10 +57690,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70297,10 +57698,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0336e1ff71939de9e2007fdb4aba891e35a37488"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70308,10 +57706,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70319,10 +57714,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/033dd2f6.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70330,10 +57722,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70341,10 +57730,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0384345c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70352,10 +57738,39 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/03a304b82629155af693978c2b53439e553f6450"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/03a72675e1969f836094f1ecfec2a7b34418e306"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -70363,10 +57778,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/03b9be1fa172dff5d1543be079b9c64fa2c9a278"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70374,10 +57786,39 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/0416afd6875d9ba55f1e5f86a6456a5445d5e576"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/052c8f28e5884bb48f0d504461272cd3a5893215"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -70385,10 +57826,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/05c3a0390d0f52d241728926fa901599a47e4606"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70396,10 +57834,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70407,10 +57842,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/05efe6d81ce606557691432634e81f61e68b0b81"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70418,10 +57850,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70429,10 +57858,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/06bd2f82fefb9943787d63ea359f9b77072380c2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70440,10 +57866,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70451,10 +57874,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0766afc7c27c06ea18d896083470d587a380de3c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70462,10 +57882,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70473,10 +57890,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/07ad7e0ea2aaecba37f2429a64e946fc6e2556f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70484,10 +57898,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70495,10 +57906,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/07c96c06eddbed5a3ce050436bc805f6821cbc9b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70506,10 +57914,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70517,10 +57922,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/081e56ce6f6b1c57adb806fbc5baa9f93f87513a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70528,10 +57930,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70539,10 +57938,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/08492d3d0994005206d1d3213b8747d1026ae1eb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70550,10 +57946,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/08c42ef29eff83052c5887855f2fa3e07ebe470c"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -70561,10 +57970,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/09938e3256d06a8e168eb038d8a58b8462f7f697"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70572,10 +57978,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70583,10 +57986,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0aa599e20761777c2cb9b41cd89e5c2e18f82d9e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70594,10 +57994,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70605,10 +58002,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0aa7b949.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70616,10 +58010,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70627,10 +58018,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0abd533e.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70638,10 +58026,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70649,10 +58034,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0b275a7f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70660,10 +58042,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70671,10 +58050,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0c413d2b361b2221585026d42f3046ff4135d2ff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70682,10 +58058,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70693,10 +58066,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0d10bb63.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70704,10 +58074,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70715,10 +58082,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0e349b8762703d080b3a696600e21d64c23a2ed3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70726,10 +58090,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70737,10 +58098,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0f700e05.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70748,10 +58106,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70759,10 +58114,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/0ff4d220.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70770,10 +58122,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70781,10 +58130,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/10724098.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70792,10 +58138,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70803,10 +58146,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/108e270a272e312fc97ec23004b80fdc7bad3906"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70814,10 +58154,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70825,10 +58162,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/11516d58.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70836,10 +58170,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70847,10 +58178,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/11cda3f70be4b507ea936bca93af9ce5aaab3be7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70858,10 +58186,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70869,10 +58194,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/13501419f349b7855d2e94060bd08b28923d1f37"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70880,10 +58202,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70891,10 +58210,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1421a8e9f045ac65a0f6938fae93fece1060c41d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70902,10 +58218,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70913,10 +58226,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/146b7d66ad932c4b623eec8004e286d3705697d3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70924,10 +58234,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70935,10 +58242,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/14f9a0cda0d64590430218aaf6dedd9be2a3533f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70946,10 +58250,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70957,10 +58258,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/15ae78a8543a4794a27e6c79b0d34540322b97fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70968,10 +58266,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -70979,10 +58274,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/15afdcf2cadb93f56dbe36233d8cd7ea9d2bd6fe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -70990,10 +58282,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71001,10 +58290,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1650b19093c56a1e86ee192bd9cd8d2266a9e353"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71012,10 +58298,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71023,10 +58306,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/16753235697083ecc45c117287f1d8ce6ad1ad1a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71034,10 +58314,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71045,10 +58322,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/17d7c718ec2597353a5dd2c78d6717a3d6aabfae"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71056,10 +58330,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71067,10 +58338,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/18d8d274aa7c163fd6d0084d5c25c8623e10c541"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71078,10 +58346,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71089,10 +58354,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/18f00b5f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71100,10 +58362,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71111,10 +58370,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1939a9021aba59ea2e49d3d0909e6fdf86ac3f9e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71122,10 +58378,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71133,10 +58386,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1a69d5fc.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71144,10 +58394,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71155,10 +58402,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1aa6897b6eebb8c68c972cc5025b39c7e60c17fe"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71166,10 +58410,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/1ba889ea1543297824e99e641e6ca8b91f45732e"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -71177,10 +58434,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1cf17783de9e662f3720847f2d83d86dcdcab500"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71188,10 +58442,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71199,10 +58450,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1cfdde7a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71210,10 +58458,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71221,10 +58466,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1d614f3d6b826f844178a77094bedb534748a362"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71232,10 +58474,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71243,10 +58482,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1e92aaa5.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71254,10 +58490,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71265,10 +58498,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1ea5651f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71276,10 +58506,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71287,10 +58514,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/1f992057.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71298,10 +58522,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71309,10 +58530,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/20fd12d3670571283dc0c5dbb3fc139a8e943790"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71320,10 +58538,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71331,10 +58546,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/21475569.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71342,10 +58554,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71353,10 +58562,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/218c1b123428a07622570947e9b7cdb48c310ca5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71364,10 +58570,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71375,10 +58578,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/21a2dcda.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71386,10 +58586,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71397,10 +58594,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/22ad891a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71408,10 +58602,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71419,10 +58610,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2463aea879c5ab49f8409d0e5c062c7e086b034b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71430,10 +58618,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71441,10 +58626,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/24ed80095e58199c52997f174046272f61ce4a8d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71452,10 +58634,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71463,10 +58642,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/25ab638f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71474,10 +58650,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71485,10 +58658,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/26048c58bd5f2a94843f6fd1e4ab0be04b232636"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71496,10 +58666,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71507,10 +58674,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/26870785fd0564f552af4e0ca418738a85b21086"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71518,10 +58682,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71529,10 +58690,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2701d1669c2996c097a74c5255d569615357b916"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71540,10 +58698,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71551,10 +58706,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/27ac2ae2.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71562,10 +58714,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71573,10 +58722,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2814d70c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71584,10 +58730,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71595,10 +58738,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/282b6585.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71606,10 +58746,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71617,10 +58754,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2a688fd507072e1cfa2e3bc58652a7cd82dface3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71628,10 +58762,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71639,10 +58770,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2abe64b96e5e72adcf2dcc43444a69d0fb664b66"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71650,10 +58778,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71661,10 +58786,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2ad6cedd32cd646ba8e25226c7c13a107c1d6447"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71672,10 +58794,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71683,10 +58802,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2b14c6e618ec95754ea7e24fe6bc5a3a97df6897"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71694,10 +58810,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71705,10 +58818,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2b40aa21723c7e67e92e74a3083df008461d591c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71716,10 +58826,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71727,10 +58834,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2bf69fe6b40734cc3f0abdd765757809b14b0b88"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71738,10 +58842,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/2c4c7e2ed6d977ec119b040b328ad09808909a70"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -71749,10 +58866,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2c6660ba.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71760,10 +58874,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71771,10 +58882,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2cc6d1f3ee8933518e91b8410781fa6e105b3a15"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71782,10 +58890,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71793,10 +58898,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2e4805c3.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71804,10 +58906,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71815,10 +58914,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2f20e2decd09b6f211a5469c67efbada355e6c04"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71826,10 +58922,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71837,10 +58930,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2f3b1cd6780fe475f76f17e9e36541963d993165"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71848,10 +58938,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71859,10 +58946,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/2fb017cd4c34f4af183d03c4a219d2bb36ee2dd6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71870,10 +58954,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71881,10 +58962,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/30bba77d0f420c4f454011476f3c94e31c50c161"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71892,10 +58970,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71903,10 +58978,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3224e6cd.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71914,10 +58986,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71925,10 +58994,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/326ec4d5.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71936,10 +59002,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71947,10 +59010,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3292129aa7f6eba86b70fff64408f18fff895c12"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71958,10 +59018,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71969,10 +59026,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/32b11997.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -71980,10 +59034,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -71991,10 +59042,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/32cecacca27b249bd764f852168036c5f962bd16"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72002,10 +59050,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72013,10 +59058,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/330ad4b6.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72024,10 +59066,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72035,10 +59074,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/33b4cf1ac251f0ba0c014005ef8207afe1dea623"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72046,10 +59082,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72057,10 +59090,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/33e2ecd5c9bbc1f1dcab29d00195e0ab6d04642d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72068,10 +59098,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72079,10 +59106,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/340b032d39e2b212828a2bd1a97e2b6b81dcd41b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72090,10 +59114,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72101,10 +59122,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/34bba9e4.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72112,10 +59130,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72123,10 +59138,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/374262a5acf9cde1f480e7b7254c788e1936a4de"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72134,10 +59146,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72145,10 +59154,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/37ec9df8.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72156,10 +59162,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72167,10 +59170,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/38df7e63181cbd045e5af9dbee463360c8254618"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72178,10 +59178,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72189,10 +59186,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/39ea47bb.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72200,10 +59194,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72211,10 +59202,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3aa82376296ab5a33f2921d7705b75b78b683c2d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72222,10 +59210,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/3b09bf453c6f93983c24c4d5481e55d66213f93a"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -72233,10 +59234,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3ca5da2f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72244,10 +59242,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72255,10 +59250,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3d7ef8c7b05f26e914c479dedb1bef5e378d2d94"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72266,10 +59258,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72277,10 +59266,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3dc665f93db294b9ccb8fcec94bcc2a91f3a04e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72288,10 +59274,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72299,10 +59282,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3de41f3f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72310,10 +59290,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72321,10 +59298,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3e2077a4fd2def7b11e618d46245d0aa85824317"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72332,10 +59306,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72343,10 +59314,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3e3ae35a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72354,10 +59322,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72365,10 +59330,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3e787760.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72376,10 +59338,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72387,10 +59346,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/3f3069cf26f761366f947e025f7049254d555e7f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72398,10 +59354,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72409,10 +59362,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/407607d2.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72420,10 +59370,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72431,10 +59378,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/40af8d589c76d7912bec06c2ae1f2466065018e7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72442,10 +59386,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72453,10 +59394,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/418f392319c44d06a018ce4c62569d527829177a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72464,10 +59402,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72475,10 +59410,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/41b31ef0.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72486,10 +59418,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72497,10 +59426,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/422708b4.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72508,10 +59434,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72519,10 +59442,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/422fa704.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72530,10 +59450,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72541,10 +59458,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4271fbb36e03cee79b21a4a5a65f37ceef58a8cd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72552,10 +59466,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72563,10 +59474,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/42b0afca.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72574,10 +59482,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72585,10 +59490,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/43fc6abab9840be5ee614211f17395b5966f6070"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72596,10 +59498,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72607,10 +59506,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/44516839d35af9ccaf8a2c62f3ce6a723482445e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72618,10 +59514,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72629,10 +59522,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/44f342a6.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72640,10 +59530,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72651,10 +59538,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4558ddeb.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72662,10 +59546,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72673,10 +59554,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/459c0bf6.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72684,10 +59562,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72695,10 +59570,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/468cf8bf3e31e1013c7c6d2288baac47ff90aa63"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72706,10 +59578,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/49cb33cbb60f041e8e99dd718993acd2c3354416"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -72717,10 +59602,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4aa883d0.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72728,10 +59610,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72739,10 +59618,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4b7bcb4ae6c0222a1a24d1fb1a5d96519750ca5e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72750,10 +59626,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72761,10 +59634,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4c412cc1a775cea041fa270483d610afb72f463b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72772,10 +59642,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72783,10 +59650,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4d55d5ae.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72794,10 +59658,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/4d982c41efad2242f8c06630c23c68146153b47b"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -72805,10 +59682,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4db3d4075ed27f2a2311f85dd1d6df028cc5d083"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72816,10 +59690,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72827,10 +59698,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4eb269c3.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72838,10 +59706,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72849,10 +59714,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4ecfe1be695df0d2489dddb52da8bcdeb6ed779d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72860,10 +59722,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72871,10 +59730,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4f97bd97ab5dc6b4c0f62f8459be8a9593dc83b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72882,10 +59738,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72893,10 +59746,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/4ff50e49865768323f94116bd98d2314455273cc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72904,10 +59754,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72915,10 +59762,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/508def44e4d60f237f18a40d7058e58a752a74e1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72926,10 +59770,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72937,10 +59778,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/51a1abd1.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72948,10 +59786,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72959,10 +59794,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/52b5478161de7b2eba0f7bfbc29aea985c8d9ee7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72970,10 +59802,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -72981,10 +59810,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/52ecfedca3b2b26e6999b6afc846f3dbd5d35130"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -72992,10 +59818,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73003,10 +59826,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/53d18398c0d484de00afd8d583fe802d55d4da44"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73014,10 +59834,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73025,10 +59842,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/53de507f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73036,10 +59850,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73047,10 +59858,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/540ada69.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73058,10 +59866,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73069,10 +59874,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5413b531fe06923ddf2c9e3eb958769374bc2445"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73080,10 +59882,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73091,10 +59890,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5429f0da.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73102,10 +59898,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73113,10 +59906,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5435005f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73124,10 +59914,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73135,10 +59922,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/546367bfdd2b9464fbfe5d74f55d8cd220accbab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73146,10 +59930,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73157,10 +59938,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/54d0fc6c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73168,10 +59946,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73179,10 +59954,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/55af20415ead0ddd417f37fa91a4c767b749ee34"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73190,10 +59962,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73201,10 +59970,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/55f6fb1a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73212,10 +59978,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73223,10 +59986,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5780565e.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73234,10 +59994,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73245,10 +60002,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/57918260.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73256,10 +60010,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73267,10 +60018,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5841d898d2cd804f2d6373538e341dfba8a4dfab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73278,10 +60026,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73289,10 +60034,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/58b88a24.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73300,10 +60042,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/59743fe120be6ae1aed1c02230ee1bb460f621ee"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -73311,10 +60066,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/597fdab5.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73322,10 +60074,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73333,10 +60082,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/59ce7091c00075943d79e857c01ad1af5f38c78e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73344,10 +60090,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73355,10 +60098,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/59d0b24d1acd01c749fb4bd6802a5f4dd003ce75"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73366,10 +60106,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73377,10 +60114,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/59dcfde4.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73388,10 +60122,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73399,10 +60130,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5ac92c4a7fb476393f8275fe4b79a2b13e3bcad9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73410,10 +60138,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73421,10 +60146,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5d43ac923d7607a16e3d7bf8b838f52622871251"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73432,10 +60154,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73443,10 +60162,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5d817877.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73454,10 +60170,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73465,10 +60178,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5e2508e15c79fbe9c2e6c1a393b490356a17efbc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73476,10 +60186,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73487,10 +60194,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5f758756.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73498,10 +60202,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73509,10 +60210,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/5f820fa8d44229219d0b7c4724e3e40a2ace97f4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73520,10 +60218,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73531,10 +60226,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/61e798bdd49b339983fea4ccfe18efe44afbd69b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73542,10 +60234,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73553,10 +60242,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/62d05f336176a10a2c339c04d818f23b6e9a2637"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73564,10 +60250,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73575,10 +60258,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6499e2db.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73586,10 +60266,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73597,10 +60274,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/64cdbb31d5eda779d07885fa7881812db7800c05"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73608,10 +60282,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73619,10 +60290,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/65077d2946cfb822cf92c9dfc44517a34589f277"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73630,10 +60298,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73641,10 +60306,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/65099066.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73652,10 +60314,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73663,10 +60322,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/652bfdce.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73674,10 +60330,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73685,10 +60338,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/65d5ae42e6acb429459a1e1a5fb35f09c0f95de2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73696,10 +60346,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73707,10 +60354,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/65fd6cb3058ee0baae854cc7859b7c0c1e1c1166"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73718,10 +60362,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73729,10 +60370,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6652f7be83a876214affc3f230040757f7db4ea8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73740,10 +60378,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73751,10 +60386,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/67b04816.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73762,10 +60394,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73773,10 +60402,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/67ebf074c7f928c4fe32fef44e5c958cf441c93c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73784,10 +60410,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73795,10 +60418,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/68f564fd8064233897ff704b5955b33a2e29293a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73806,10 +60426,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73817,10 +60434,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/69891e9f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73828,10 +60442,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73839,10 +60450,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6c5bb78b51cf5006c92258292de19550985c00ba"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73850,10 +60458,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73861,10 +60466,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6dc4455c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73872,10 +60474,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73883,10 +60482,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6e050e98.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73894,10 +60490,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73905,10 +60498,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6f3bd9f33ca05bebe3811f7b3ae6ed112e1e45b9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73916,10 +60506,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73927,10 +60514,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/6f9d75e1af7ae7010d32872da888a582a25fddb4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73938,10 +60522,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73949,10 +60530,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/70ebe7f32c63ca8940017eb83e6db4d8b39ee03c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73960,10 +60538,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73971,10 +60546,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/712300b98afdb5f0d15c657c13cea76841164b13"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -73982,10 +60554,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -73993,10 +60562,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/71ab07577909ca4b766f8ea0c6b8ec2bc395fc66"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74004,10 +60570,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74015,10 +60578,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/72296cf9e1052ced4b60e2053aba9f1a569144e9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74026,10 +60586,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74037,10 +60594,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/7342b3febb07521e39abdf4ee976d16199d51239"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74048,10 +60602,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74059,10 +60610,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/746715fe.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74070,10 +60618,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74081,10 +60626,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/76294f12a5974e9f87d8f092d0df5429cf6c0466"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74092,10 +60634,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74103,10 +60642,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/769f5d079151d1b5cab388c47a74f3c297c18d58"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74114,10 +60650,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74125,10 +60658,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/7839f12a8410a73d66e191cb5183d36d09a375e8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74136,10 +60666,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74147,10 +60674,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/7b453adcb9c4bf31dbc448ff32c2bc90ebcbdf0f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74158,10 +60682,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74169,10 +60690,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/7ddfac7d7845b424bf670070781ca6ff8586c63b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74180,10 +60698,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74191,10 +60706,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/7f15bbce.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74202,10 +60714,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74213,10 +60722,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/7ffd05db.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74224,10 +60730,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74235,10 +60738,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8164d3c4af043c47cfd6966873bccd2353d072bf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74246,10 +60746,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74257,10 +60754,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/81fb19dfcb3c3a18fd9e7c177356479503e75e6f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74268,10 +60762,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74279,10 +60770,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/82dda42ddde662192ebaa96788945b7673bb486b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74290,10 +60778,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/830e3f794c53f7b284eb5c635b2943db9ee9aaee"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -74301,10 +60802,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8338ebee.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74312,10 +60810,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74323,10 +60818,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/84a3c6cf853ff318ae163231ce295171a59d5871"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74334,10 +60826,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74345,10 +60834,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/86a19d13cc65790696299c819cac17b14e337647"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74356,10 +60842,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74367,10 +60850,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/86e6dbf2.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74378,10 +60858,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74389,10 +60866,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/88017b0894db1e6f4e3a6640ffe2876d31a54723"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74400,10 +60874,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74411,10 +60882,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8846918f967dd6513040c6d382fcd68ff7099873"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74422,10 +60890,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74433,10 +60898,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/885fe25a0b441ef46ab176b88771c133e530cb73"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74444,10 +60906,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74455,10 +60914,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/88e1329b.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74466,10 +60922,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74477,10 +60930,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8b186384.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74488,10 +60938,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74499,10 +60946,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8c04817a75fddd71f13779f2ad5b994f45c333a2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74510,10 +60954,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74521,10 +60962,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8c72c3f35e9b9fd168ad9024c953a703f33ae3c1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74532,10 +60970,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74543,10 +60978,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8c760938a2a72fa92b27e00e05005e2e4c429359"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74554,10 +60986,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74565,10 +60994,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8da521d9.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74576,10 +61002,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74587,10 +61010,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8de81717.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74598,10 +61018,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74609,10 +61026,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/8ec00f45afb097066f47d0bad256a8b856b1efe8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74620,10 +61034,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74631,10 +61042,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/90224b8e.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74642,10 +61050,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74653,10 +61058,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/90240c7c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74664,10 +61066,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74675,10 +61074,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9099ac4e83f6460c80b5557c87f653e4c65aa091"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74686,10 +61082,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74697,10 +61090,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/914ed07570b6441365a3636d05850f7316c7f2a8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74708,10 +61098,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74719,10 +61106,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/916b825da0ffc46fdb6120b1044e98ae158fce70"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74730,10 +61114,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74741,10 +61122,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/93beeba2.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74752,10 +61130,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74763,10 +61138,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/93c3ffcb7e3bcb5ed7e37a5b3dfb97b43ca42718"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74774,10 +61146,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74785,10 +61154,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9540d3ad3fa75bfb95c0d57cefd737611c7069a5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74796,10 +61162,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74807,10 +61170,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/954337ef.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74818,10 +61178,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74829,10 +61186,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/95d25ba2e190fafa2b3ca1e1c467b9ef64868962"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74840,10 +61194,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74851,10 +61202,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9764015f89a0b7a59f3b5359b0a037b38d6e39d7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74862,10 +61210,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74873,10 +61218,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/97aed4bd.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74884,10 +61226,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74895,10 +61234,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/986c9ca7db83b2cddbae2a0db2dca87f52277074"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74906,10 +61242,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74917,10 +61250,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9953eb28aa1ed661612a4710a9d16a15de4ae353"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74928,10 +61258,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74939,10 +61266,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9a176b6f7e0dc5f681a1788d8954f76fabd08cad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74950,10 +61274,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74961,10 +61282,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9a6963b0d0fcb0e91a31748c47c6f0e1e842fea9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74972,10 +61290,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -74983,10 +61298,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9bf7553a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -74994,10 +61306,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75005,10 +61314,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/9d2d18fce18c790035d8f67ed798703bdda0a949"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75016,10 +61322,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75027,10 +61330,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a112d484b70e778835fcd478fd651828720791e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75038,10 +61338,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75049,10 +61346,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a24bf2dc.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75060,10 +61354,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75071,10 +61362,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a32be0653ccc65463445b4aaf24a7a1164d5c642"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75082,10 +61370,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75093,10 +61378,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a357658d.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75104,10 +61386,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75115,10 +61394,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a3a2b1af.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75126,10 +61402,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75137,10 +61410,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a5348197.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75148,10 +61418,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75159,10 +61426,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a5b529754606b96a8c801615ac12a1f6ee5c3f54"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75170,10 +61434,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75181,10 +61442,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a5cc3762cb2b2cac316c60ddee794016057fb4ff"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75192,10 +61450,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/a5ccb8f124d8ddb5350b90bc0d6b96db280cb7c9"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -75203,10 +61474,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a7e64803.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75214,10 +61482,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/a7fac1265a384fe9e45a9ee3d708b79c4e80505e"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -75225,10 +61506,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a8d229374635fa6f2a75ca1669892e1bc244e719"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75236,10 +61514,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75247,10 +61522,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a8f2345b2c949e9e32a434c99accf771f405eb65"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75258,10 +61530,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75269,10 +61538,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a9463428cdc47d37efb6e3c5633d1e5e78911f16"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75280,10 +61546,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75291,10 +61554,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a9966f7181d08f6a9ff8158736ad77a285d743a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75302,10 +61562,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75313,10 +61570,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/a9e22d93.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75324,10 +61578,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75335,10 +61586,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/aa3c8974.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75346,10 +61594,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75357,10 +61602,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/aa825693.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75368,10 +61610,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75379,10 +61618,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/aa8729d7.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75390,10 +61626,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75401,10 +61634,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/aaafca90a7f59184f3d768a1d6f9093e8f737b8a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75412,10 +61642,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/aaf049720c707d4e14e47e7eb31d6a2dda60e66a"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -75423,10 +61666,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/ad810f7f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75434,10 +61674,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75445,10 +61682,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/aedefcd9bd7fc10b7bf60372da54c43e953523bd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75456,10 +61690,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75467,10 +61698,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/aefcbc29f2caea5038cda4dbc927cdadd9b844c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75478,10 +61706,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75489,10 +61714,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b06ce623.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75500,10 +61722,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75511,10 +61730,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b1128694.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75522,10 +61738,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75533,10 +61746,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b220d23a13d98d4815b1f7a3e4fe7dd8672b1c83"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75544,10 +61754,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75555,10 +61762,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b28959dd.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75566,10 +61770,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75577,10 +61778,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b431df13.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75588,10 +61786,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75599,10 +61794,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b5acaa52.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75610,10 +61802,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75621,10 +61810,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b7ce4a4f6eea20c0b83d9f7fa8406a0730ee0040"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75632,10 +61818,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75643,10 +61826,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b829143b.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75654,10 +61834,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75665,10 +61842,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b887097732b9c30719f6c7ea7a7cbac531512a31"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75676,10 +61850,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75687,10 +61858,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/b924c842.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75698,10 +61866,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75709,10 +61874,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/bad4f467.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75720,10 +61882,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75731,10 +61890,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/bc9545cebdcb3af82406a5f0c1b286d28f9d4f5a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75742,10 +61898,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75753,10 +61906,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/bd63e44a3b004e7ed471c2367c3efae2c58a676d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75764,10 +61914,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75775,10 +61922,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/be9b6e78.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75786,10 +61930,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75797,10 +61938,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/bf5e21c32becb5839deeb81e9174cf6478a25473"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75808,10 +61946,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75819,10 +61954,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/bfb55acd5b66521eb5bd8ce6b57b3b6895883675"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75830,10 +61962,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75841,10 +61970,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/bfcbffa9.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75852,10 +61978,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75863,10 +61986,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c004455e9d60bc2fff094e79cd0b38507023e018"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75874,10 +61994,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75885,10 +62002,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c039ac9a5a570f8fd9064df9320890b885edf9c3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75896,10 +62010,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75907,10 +62018,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c1188b44.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75918,10 +62026,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75929,10 +62034,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c12835aa9f3513d3f7179ee4f9976292713f7cb9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75940,10 +62042,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75951,10 +62050,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c13188118af1634061b6a3947b81618891aeb6a3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75962,10 +62058,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75973,10 +62066,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c35968bf.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -75984,10 +62074,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -75995,10 +62082,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c43d97f2.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76006,10 +62090,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76017,10 +62098,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c4534867.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76028,10 +62106,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76039,10 +62114,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c4a71cdd29759b51f9cc54175ad69c44b4ab6eb6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76050,10 +62122,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/c4e4c7572e005e18d56eac407033da058737a5ab"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -76061,10 +62146,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c559f565.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76072,10 +62154,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76083,10 +62162,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c56fada76f5c198232201a608072a1a63e3d3785"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76094,10 +62170,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76105,10 +62178,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c5ff50ae447ac7a0c8fb3363b2458824d405e64c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76116,10 +62186,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76127,10 +62194,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c66e84d1.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76138,10 +62202,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76149,10 +62210,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c6a1d2cc8935808b6e317a69baec1c3cb87cac94"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76160,10 +62218,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76171,10 +62226,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c7c44b98faa21c8f0645a818a65b60d956d15952"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76182,10 +62234,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76193,10 +62242,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c8073f5f41970fab4738215e42ec97a4383855e5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76204,10 +62250,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76215,10 +62258,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c81dec02.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76226,10 +62266,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76237,10 +62274,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/c8812dc8a1ab1592a2d7b71300e1a0a5da6a6382"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76248,10 +62282,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76259,10 +62290,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/ca843c66c4c4807ccb1615b472c79bc459e5c6cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76270,10 +62298,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76281,10 +62306,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/cbb04be69714f81f5cd09e36e8ea4e69ea73d618"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76292,10 +62314,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76303,10 +62322,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/cc97ece92b72cc2a4d045e16c0e2f2021bc014f8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76314,10 +62330,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76325,10 +62338,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/cca29902.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76336,10 +62346,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76347,10 +62354,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/cdba6c45.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76358,10 +62362,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76369,10 +62370,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/crash-0f4b135c0242669ce425d2662168e9440f8a628d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76380,10 +62378,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76391,10 +62386,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/crash-239cc27a23827ea53b60ccbaee0ecc64dad2bff0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76402,10 +62394,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76413,10 +62402,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/crash-41ab0e868e84612275f77118f9e832bc94ff45c5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76424,10 +62410,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76435,10 +62418,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/crash-7af5da2a8da23d197d9336e32da72c9ff64c15b3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76446,10 +62426,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76457,10 +62434,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/crash-7e121dd3be057176369bea160d873040b32a03dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76468,10 +62442,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/crash-dae0f07934a527989f23f06e630710ff6ca8c809"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -76479,10 +62466,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/crash-e34b0a9a428001cb4094a9ebca76329f578811a4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76490,10 +62474,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76501,10 +62482,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d0f7eebc.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76512,10 +62490,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76523,10 +62498,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d2031009d3783fcf083963fa30bb493f7f935541"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76534,10 +62506,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76545,10 +62514,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d28155c6c92642c61dfb097f7b2eb1d6ced272c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76556,10 +62522,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76567,10 +62530,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d6979f0f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76578,10 +62538,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76589,10 +62546,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d8a1d141a9e3876b71c7decbe6e3affccf6de397"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76600,10 +62554,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76611,10 +62562,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d9074e68.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76622,10 +62570,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76633,10 +62578,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d95556cac07e720909aaf2ac09d876106420463f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76644,10 +62586,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76655,10 +62594,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/d96da249094db51ea92b1413907abfd27a4f2426"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76666,10 +62602,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76677,10 +62610,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/da7e44a9.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76688,10 +62618,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76699,10 +62626,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/dab172ff.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76710,10 +62634,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76721,10 +62642,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/dad922e2daf84cf039f50cf8636eaa9dbd01ff83"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76732,10 +62650,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76743,10 +62658,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/db33559d4afb4c32e68525c000fde16a4c3300f5"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76754,10 +62666,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76765,10 +62674,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/dcabac1ef8b197ef39b188bcf5dc470f9749e903"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76776,10 +62682,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76787,10 +62690,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/df5d3cf5f05eab65ef9d385e263780ae73c42b19"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76798,10 +62698,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76809,10 +62706,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e0d9a9a7.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76820,10 +62714,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76831,10 +62722,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e2652fbb.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76842,10 +62730,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76853,10 +62738,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e2c954e1.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76864,10 +62746,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76875,10 +62754,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e3bab014.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76886,10 +62762,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76897,10 +62770,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e7ad0c4b7d0f289c90a3988309e9e03b78f7eea3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76908,10 +62778,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/e96ad9c17795e52edc810a08d4fc61fe8790002a"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -76919,10 +62802,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e9bbe2fe47b7b9c2683e7f17f4a33625c6ffbd8c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76930,10 +62810,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76941,10 +62818,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/e9d96662.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76952,10 +62826,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76963,10 +62834,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/eb66106b.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76974,10 +62842,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -76985,10 +62850,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/eba8472a.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -76996,10 +62858,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77007,10 +62866,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/ed8da77f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77018,10 +62874,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77029,10 +62882,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/ee64e1ba4897bfd7c6baa1fb72d4c5f83b5654e4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77040,10 +62890,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77051,10 +62898,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f0387dfdd6b8c925d958113e669ec4a1897034b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77062,10 +62906,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77073,10 +62914,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f1121b952e75463cc71137683dc2528f9cbc19b7"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77084,10 +62922,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77095,10 +62930,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f3220426.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77106,10 +62938,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77117,10 +62946,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f3d084cf20b92a5f026fe7cc6e5af49bde28693d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77128,10 +62954,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77139,10 +62962,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f4024b01.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77150,10 +62970,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77161,10 +62978,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f541d27e.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77172,10 +62986,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77183,10 +62994,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f5424a9d7bd14317b6de7b15587df28bfde8362d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77194,10 +63002,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77205,10 +63010,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f5c877c4.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77216,10 +63018,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77227,10 +63026,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f5f0615030439dda162e8862b6bbd09f81f14d81"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77238,10 +63034,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77249,10 +63042,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f74b9428.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77260,10 +63050,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77271,10 +63058,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f7bf0d7bb0dd6e1866ccef9fafc3cb295db2f07f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77282,10 +63066,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77293,10 +63074,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f826100f.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77304,10 +63082,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77315,10 +63090,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f88ffb7f3066f2706cfcd9be077595e07834cc15"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77326,10 +63098,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77337,10 +63106,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/f8b46e92c7ceb4c2f2cdcb3452a6d8c58768eaa2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77348,10 +63114,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/fa202a5f51cd49f8ea5af60c5f403f797c01c504"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -77359,10 +63138,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fa36b4280d9e28edd81c5e4d192d1a5c2765e5e4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77370,10 +63146,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77381,10 +63154,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fb3b0d80.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77392,10 +63162,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77403,10 +63170,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fb84edfa9e8cbddba26a7184e7fdc219bde556c0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77414,10 +63178,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77425,10 +63186,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fd14bea45ecaf13af0053900edb2f17b71a0bf09"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77436,10 +63194,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77447,10 +63202,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fd26e0a6.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77458,10 +63210,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77469,10 +63218,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fd943e69304dffebf47e1e40b0849e12abeee287"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77480,10 +63226,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77491,10 +63234,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fdf67df81857577361d319e76559c5e85a257b07"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77502,10 +63242,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77513,10 +63250,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fe1957b9bc7c6bf9d8b6089c422d72a0f444da6e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77524,10 +63258,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77535,10 +63266,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fe66893c.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77546,10 +63274,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77557,10 +63282,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/fe69ddfa5827dd560bb0b5d4da7d982273f17ef9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77568,10 +63290,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77579,10 +63298,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/ff227015.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77590,10 +63306,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77601,10 +63314,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/ff898c08.bin"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77612,10 +63322,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77623,10 +63330,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-082763e16153cb6b8f3f5308cd060e822f475e5a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77634,10 +63338,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-0aa52e00ddd54f8e129430852c2da95650c354b0"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -77645,10 +63362,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-13501419f349b7855d2e94060bd08b28923d1f37"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77656,10 +63370,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77667,10 +63378,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-14862768a1fe076896fd37e2543ddd23192a9e3c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77678,10 +63386,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77689,10 +63394,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-1a3ebf8f8bb0b5a0109a5ef44734cc64170377f9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77700,10 +63402,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77711,10 +63410,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-1ae0ed17a042aab8a3c3199c83a809b0243d1424"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77722,10 +63418,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77733,10 +63426,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-1b6c4b5c1949adae3efd5e3264bb32a40eea524e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77744,10 +63434,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77755,10 +63442,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-3991c873ba814d0cd03a67d25fff0c8fe8713aca"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77766,10 +63450,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-3cec540a680b108dda1e0a8e0bfb2d44e5a4a4e8"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -77777,10 +63474,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-4c6da955e4c101b81a62b2f8e934d94a62ae534b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77788,10 +63482,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77799,10 +63490,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-58f116dfba8d428a01ca596174fca63f4ac523f0"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77810,10 +63498,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77821,10 +63506,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-59f6edc7cf4aeed49b4dc024052db4846d5d7fc8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77832,10 +63514,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77843,10 +63522,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-63ebf780ee6c2003eba622686a4bf94c503ad96e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77854,10 +63530,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77865,10 +63538,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-68ed2d33c9d32f73343c097303c3d5a6a3467c83"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77876,10 +63546,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77887,10 +63554,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-6d37c5e6d7efee56319b1316725fdc5aee5a52c3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77898,10 +63562,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77909,10 +63570,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-6e980a9d12c392175b5f66683e608626ae983276"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77920,10 +63578,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77931,10 +63586,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-7233d53f94386b0339b2c2b01ef2d348f5862f1f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77942,10 +63594,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77953,10 +63602,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-7281d9eaed0d20b0b6b5e7709c57e78fefe9c315"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77964,10 +63610,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -77975,10 +63618,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-73e0a41066bc09c8e3fbd0dd7628445bcdaabb4a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -77986,10 +63626,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-84f22ffca68c6e1590a44aa9f6dd0cef1f680c77"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -77997,10 +63650,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-93cd6b3f9786ee107a0e2d135b40d13f96e652ed"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78008,10 +63658,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78019,10 +63666,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-9a176b6f7e0dc5f681a1788d8954f76fabd08cad"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78030,10 +63674,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78041,10 +63682,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-9de2e92150e54982d4e502b18f374f8cd8fd453b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78052,10 +63690,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78063,10 +63698,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-a61a28cf78149518466b87e5463ec5c771dc504e"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78074,10 +63706,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78085,10 +63714,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-aa23c18f6badd88a7bec65e8b04f7801ba624ec6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78096,10 +63722,71 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-adaac86cf1aa1e98e95240c5f92c3708456c3624"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-b281f018cc919301131cf3ed28449cfbd24b6bbf"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba0016a62a8576a57f000b90c364847ef6b12dcc"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba17346b8e46e6a05aaa7342a959a7c5ab0f1471"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -78107,10 +63794,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ba2b1fde90cc70d9abae22c4c4cb051aae8aa148"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78118,10 +63802,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78129,10 +63810,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-bda43d420a3e5d5228a5f5130207a1f11fc1c81f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78140,10 +63818,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78151,10 +63826,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-c05c239719a7beeca2c126b7e5ef7251fa615b54"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78162,10 +63834,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78173,10 +63842,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-c151762e5f37e233142059c1b269ce55434cf6a6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78184,10 +63850,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78195,10 +63858,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-cacd0e0c5f7d4169085735400100da4d36397185"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78206,10 +63866,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ccafab6afdc6474610023b47bd7b3e1b9ea4647b"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -78217,10 +63890,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-d3c3cba3897fafec97665411ea1f94a89bb4de7b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78228,10 +63898,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78239,10 +63906,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-d3fcd80cd6f1bb05f5e5084ebb2ee801067863fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78250,10 +63914,23 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-dc57e96cd02ba32fa4a99c97b6490e9879d30be5"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -78261,10 +63938,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-ddfe613d8791b2d377e14fbdffb18b84a89d49b6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78272,10 +63946,7 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78283,10 +63954,7 @@
"test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f67be653815f6c2c10eea55c8009e1167ac9c20b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78294,10 +63962,39 @@
"language": "c",
"name": "server_fuzzer_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f6c1042f96e15183dcc13b9658d971cc29426d53"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
+ ]
+ },
+ {
+ "args": [
+ "test/core/end2end/fuzzers/server_fuzzer_corpus/slow-unit-f9a2773d6502fd4b1ffa73df3c550b0da63af833"
+ ],
+ "ci_platforms": [
+ "linux"
+ ],
+ "cpu_cost": 0.1,
+ "exclude_configs": [],
+ "flaky": false,
+ "language": "c",
+ "name": "server_fuzzer_one_entry",
+ "platforms": [
+ "linux"
]
},
{
@@ -78305,10 +64002,7 @@
"test/core/client_config/uri_corpus/02d156dc5e6f2c11c90c2e06fcee04adf036a342"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78316,10 +64010,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78327,10 +64018,7 @@
"test/core/client_config/uri_corpus/042dc4512fa3d391c5170cf3aa61e6a638f84342"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78338,10 +64026,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78349,10 +64034,7 @@
"test/core/client_config/uri_corpus/0e9bbe975f2027e8c39c89f85f667530368e7d11"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78360,10 +64042,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78371,10 +64050,7 @@
"test/core/client_config/uri_corpus/1155aa6ea7ef262a81a63692513ea395f84dad6f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78382,10 +64058,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78393,10 +64066,7 @@
"test/core/client_config/uri_corpus/13856a5569ffd085a4d5c07af5f8e9310835a118"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78404,10 +64074,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78415,10 +64082,7 @@
"test/core/client_config/uri_corpus/14b57bcbf1e17b1db1de491ef2ba3768f704b7dc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78426,10 +64090,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78437,10 +64098,7 @@
"test/core/client_config/uri_corpus/1794310671a060eead6e5ee66ac978a18ec7e84f"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78448,10 +64106,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78459,10 +64114,7 @@
"test/core/client_config/uri_corpus/1d30b2a79afbaf2828ff42b9a9647e942ba1ab80"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78470,10 +64122,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78481,10 +64130,7 @@
"test/core/client_config/uri_corpus/1fcf5d9c333b70596cf5ba04d1f7affdf445b971"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78492,10 +64138,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78503,10 +64146,7 @@
"test/core/client_config/uri_corpus/23162c8a8936e20b195404c21337ee734d02a6bc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78514,10 +64154,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78525,10 +64162,7 @@
"test/core/client_config/uri_corpus/23f3198b815ca60bdadcaae682b9f965dda387f1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78536,10 +64170,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78547,10 +64178,7 @@
"test/core/client_config/uri_corpus/2ef3893b43f1f60b77b59ce06a6bce9815d78eaf"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78558,10 +64186,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78569,10 +64194,7 @@
"test/core/client_config/uri_corpus/356c3c129e203b5c74550b4209764d74b9caefce"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78580,10 +64202,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78591,10 +64210,7 @@
"test/core/client_config/uri_corpus/396568fc41c8ccb31ec925b4a862e4d29ead1327"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78602,10 +64218,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78613,10 +64226,7 @@
"test/core/client_config/uri_corpus/3b1e7526a99918006b87e499d2beb6c4ac9c3c0c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78624,10 +64234,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78635,10 +64242,7 @@
"test/core/client_config/uri_corpus/3b58860f3451d3e7aad99690a8d39782ca5116fc"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78646,10 +64250,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78657,10 +64258,7 @@
"test/core/client_config/uri_corpus/41963cc10752f70c3af7e3d85868efb097a0ea9c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78668,10 +64266,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78679,10 +64274,7 @@
"test/core/client_config/uri_corpus/47b5228404451fc9d4071fa69192514bb4ce33c1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78690,10 +64282,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78701,10 +64290,7 @@
"test/core/client_config/uri_corpus/56a2da4b2e6fb795243901023ed8d0aa083d1aab"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78712,10 +64298,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78723,10 +64306,7 @@
"test/core/client_config/uri_corpus/574c2f13858a9a6d724654bd913ede9ae3abf822"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78734,10 +64314,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78745,10 +64322,7 @@
"test/core/client_config/uri_corpus/582f789c19033a152094cbf8565f14154a778ddb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78756,10 +64330,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78767,10 +64338,7 @@
"test/core/client_config/uri_corpus/636c5606fc23713a1bae88c8899c0541cfad4fd8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78778,10 +64346,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78789,10 +64354,7 @@
"test/core/client_config/uri_corpus/63fe493b270b17426d77a27cbf3abac5b2c2794a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78800,10 +64362,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78811,10 +64370,7 @@
"test/core/client_config/uri_corpus/655300a902b62662296a8e46bfb04fbcb07182cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78822,10 +64378,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78833,10 +64386,7 @@
"test/core/client_config/uri_corpus/6ae3acd9d8507b61bf235748026080a4138dba58"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78844,10 +64394,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78855,10 +64402,7 @@
"test/core/client_config/uri_corpus/6b70979a70a038ff6607d6cf85485ee95baf58e6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78866,10 +64410,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78877,10 +64418,7 @@
"test/core/client_config/uri_corpus/7314ab3545a7535a26e0e8aad67caea5534d68b1"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78888,10 +64426,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78899,10 +64434,7 @@
"test/core/client_config/uri_corpus/7ff4d8b8d1ffd0d42c48bbb91e5856a9ec31aecb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78910,10 +64442,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78921,10 +64450,7 @@
"test/core/client_config/uri_corpus/87daa131e0973b77a232a870ed749ef29cf58e6d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78932,10 +64458,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78943,10 +64466,7 @@
"test/core/client_config/uri_corpus/884dcaee2908ffe5f12b65b8eba81016099c4266"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78954,10 +64474,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78965,10 +64482,7 @@
"test/core/client_config/uri_corpus/8d7e944fd5d0ede94097fcc98b47b09a3f9c76cb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78976,10 +64490,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -78987,10 +64498,7 @@
"test/core/client_config/uri_corpus/9671149af0b444f59bbdf71340d3441dadd8a7b4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -78998,10 +64506,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79009,10 +64514,7 @@
"test/core/client_config/uri_corpus/96c8d266b7dc037288ef305c996608270f72e7fb"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79020,10 +64522,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79031,10 +64530,7 @@
"test/core/client_config/uri_corpus/975536c71ade4800415a7e9c2f1b45c35a6d5ea8"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79042,10 +64538,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79053,10 +64546,7 @@
"test/core/client_config/uri_corpus/99750aa67d30beaea8af565c829d4999aa8cb91b"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79064,10 +64554,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79075,10 +64562,7 @@
"test/core/client_config/uri_corpus/a1140f3f8b5cffc1010221b9a4084a25fb75c1f6"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79086,10 +64570,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79097,10 +64578,7 @@
"test/core/client_config/uri_corpus/a1f0f9b75bb354eb063d7cba4fcfa2d0b88d63de"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79108,10 +64586,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79119,10 +64594,7 @@
"test/core/client_config/uri_corpus/a296eb3d1d436ed7df7195b10aa3c4de3896f98d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79130,10 +64602,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79141,10 +64610,7 @@
"test/core/client_config/uri_corpus/a8b8e66050b424f1b8c07d46f868199fb7f60e38"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79152,10 +64618,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79163,10 +64626,7 @@
"test/core/client_config/uri_corpus/aba1472880406a318ce207ee79815b7acf087757"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79174,10 +64634,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79185,10 +64642,7 @@
"test/core/client_config/uri_corpus/af55baf8c8855e563befdf1eefbcbd46c5ddb8d2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79196,10 +64650,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79207,10 +64658,7 @@
"test/core/client_config/uri_corpus/b3c0bf66c2bf5d24ef1daf4cc5a9d6d5bd0e8bfd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79218,10 +64666,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79229,10 +64674,7 @@
"test/core/client_config/uri_corpus/c28a47409cf5d95bb372238d01e73d8b831408e4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79240,10 +64682,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79251,10 +64690,7 @@
"test/core/client_config/uri_corpus/c3ef1d41888063a08700c3add1e4465aabcf8807"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79262,10 +64698,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79273,10 +64706,7 @@
"test/core/client_config/uri_corpus/c550a76af21f9b9cc92a386d5c8998b26f8f2e4d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79284,10 +64714,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79295,10 +64722,7 @@
"test/core/client_config/uri_corpus/c79721406d0ab80495f186fd88e37fba98637ae9"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79306,10 +64730,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79317,10 +64738,7 @@
"test/core/client_config/uri_corpus/ceb4e2264ba7a8d5be47d276b37ec09489e00245"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79328,10 +64746,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79339,10 +64754,7 @@
"test/core/client_config/uri_corpus/cf4395958f5bfb46fd6f535a39657d016c75114c"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79350,10 +64762,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79361,10 +64770,7 @@
"test/core/client_config/uri_corpus/d46668372b7e20154a89409a7430a28e642afdca"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79372,10 +64778,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79383,10 +64786,7 @@
"test/core/client_config/uri_corpus/d6fe7412a0a1d1c733160246f3fa425f4f97682a"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79394,10 +64794,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79405,10 +64802,7 @@
"test/core/client_config/uri_corpus/dns.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79416,10 +64810,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79427,10 +64818,7 @@
"test/core/client_config/uri_corpus/e241f29957b0e30ec11aaaf91b2339f7015fa5fd"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79438,10 +64826,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79449,10 +64834,7 @@
"test/core/client_config/uri_corpus/ea02d9fea9bad5b89cf353a0169238f584177e71"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79460,10 +64842,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79471,10 +64850,7 @@
"test/core/client_config/uri_corpus/ec4731dddf94ed3ea92ae4d5a71f145ab6e3f6ee"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79482,10 +64858,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79493,10 +64866,7 @@
"test/core/client_config/uri_corpus/ed2f78646f19fc47dd85ff0877c232b71913ece2"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79504,10 +64874,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79515,10 +64882,7 @@
"test/core/client_config/uri_corpus/f6889f4a6350fea1596a3adea5cdac02bd5d1ff3"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79526,10 +64890,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79537,10 +64898,7 @@
"test/core/client_config/uri_corpus/f6f3bd030f0d321efe7c51ca3f057de23509af67"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79548,10 +64906,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79559,10 +64914,7 @@
"test/core/client_config/uri_corpus/f97598cff03306af3c70400608fec47268b5075d"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79570,10 +64922,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79581,10 +64930,7 @@
"test/core/client_config/uri_corpus/f9e1ec1fc642b575bc9955618b7065747f56b101"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79592,10 +64938,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79603,10 +64946,7 @@
"test/core/client_config/uri_corpus/fe0630a3aeed2ec6f474f362e4c839478290d5c4"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79614,10 +64954,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79625,10 +64962,7 @@
"test/core/client_config/uri_corpus/ipv4.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79636,10 +64970,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79647,10 +64978,7 @@
"test/core/client_config/uri_corpus/ipv6.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79658,10 +64986,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
},
{
@@ -79669,10 +64994,7 @@
"test/core/client_config/uri_corpus/unix.txt"
],
"ci_platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
],
"cpu_cost": 0.1,
"exclude_configs": [],
@@ -79680,10 +65002,7 @@
"language": "c",
"name": "uri_fuzzer_test_one_entry",
"platforms": [
- "linux",
- "mac",
- "windows",
- "posix"
+ "linux"
]
}
]
diff --git a/tox.ini b/tox.ini
index a655935219..66b74a32db 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,7 +1,7 @@
# GRPC Python tox (test environment) settings
[tox]
skipsdist = true
-envlist = py27
+envlist = py27,py34
[testenv]
setenv =
diff --git a/vsprojects/grpc_protoc_plugins.sln b/vsprojects/grpc_protoc_plugins.sln
index ef1cbb8e57..ace295daea 100644
--- a/vsprojects/grpc_protoc_plugins.sln
+++ b/vsprojects/grpc_protoc_plugins.sln
@@ -24,6 +24,14 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_csharp_plugin", "vcxpr
{B6E81D84-2ACB-41B8-8781-493A944C7817} = {B6E81D84-2ACB-41B8-8781-493A944C7817}
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_node_plugin", "vcxproj\.\grpc_node_plugin\grpc_node_plugin.vcxproj", "{57ABD9A2-CE8E-CCA7-5171-35C4534F3595}"
+ ProjectSection(myProperties) = preProject
+ lib = "False"
+ EndProjectSection
+ ProjectSection(ProjectDependencies) = postProject
+ {B6E81D84-2ACB-41B8-8781-493A944C7817} = {B6E81D84-2ACB-41B8-8781-493A944C7817}
+ EndProjectSection
+EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "grpc_objective_c_plugin", "vcxproj\.\grpc_objective_c_plugin\grpc_objective_c_plugin.vcxproj", "{19564640-CEE6-4921-ABA5-676ED79A36F6}"
ProjectSection(myProperties) = preProject
lib = "False"
@@ -80,6 +88,14 @@ Global
{3C813052-A49A-4662-B90A-1ADBEC7EE453}.Debug|x64.Build.0 = Debug|x64
{3C813052-A49A-4662-B90A-1ADBEC7EE453}.Release|Win32.Build.0 = Release|Win32
{3C813052-A49A-4662-B90A-1ADBEC7EE453}.Release|x64.Build.0 = Release|x64
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Debug|Win32.ActiveCfg = Debug|Win32
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Debug|x64.ActiveCfg = Debug|x64
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Release|Win32.ActiveCfg = Release|Win32
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Release|x64.ActiveCfg = Release|x64
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Debug|Win32.Build.0 = Debug|Win32
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Debug|x64.Build.0 = Debug|x64
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Release|Win32.Build.0 = Release|Win32
+ {57ABD9A2-CE8E-CCA7-5171-35C4534F3595}.Release|x64.Build.0 = Release|x64
{19564640-CEE6-4921-ABA5-676ED79A36F6}.Debug|Win32.ActiveCfg = Debug|Win32
{19564640-CEE6-4921-ABA5-676ED79A36F6}.Debug|x64.ActiveCfg = Debug|x64
{19564640-CEE6-4921-ABA5-676ED79A36F6}.Release|Win32.ActiveCfg = Release|Win32
diff --git a/vsprojects/vcxproj/gpr/gpr.vcxproj b/vsprojects/vcxproj/gpr/gpr.vcxproj
index cdb128e48e..26195bb541 100644
--- a/vsprojects/vcxproj/gpr/gpr.vcxproj
+++ b/vsprojects/vcxproj/gpr/gpr.vcxproj
@@ -259,6 +259,8 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\string_posix.c">
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\lib\support\string_util_win32.c">
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\string_win32.c">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\subprocess_posix.c">
@@ -287,6 +289,8 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tls_pthread.c">
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tmpfile_msys.c">
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tmpfile_posix.c">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tmpfile_win32.c">
diff --git a/vsprojects/vcxproj/gpr/gpr.vcxproj.filters b/vsprojects/vcxproj/gpr/gpr.vcxproj.filters
index 8af6fdd44c..be15391b09 100644
--- a/vsprojects/vcxproj/gpr/gpr.vcxproj.filters
+++ b/vsprojects/vcxproj/gpr/gpr.vcxproj.filters
@@ -82,6 +82,9 @@
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\string_posix.c">
<Filter>src\core\lib\support</Filter>
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\lib\support\string_util_win32.c">
+ <Filter>src\core\lib\support</Filter>
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\string_win32.c">
<Filter>src\core\lib\support</Filter>
</ClCompile>
@@ -124,6 +127,9 @@
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tls_pthread.c">
<Filter>src\core\lib\support</Filter>
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tmpfile_msys.c">
+ <Filter>src\core\lib\support</Filter>
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\core\lib\support\tmpfile_posix.c">
<Filter>src\core\lib\support</Filter>
</ClCompile>
diff --git a/vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj b/vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj
new file mode 100644
index 0000000000..faf93fd136
--- /dev/null
+++ b/vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{57ABD9A2-CE8E-CCA7-5171-35C4534F3595}</ProjectGuid>
+ <IgnoreWarnIntDirInTempDetected>true</IgnoreWarnIntDirInTempDetected>
+ <IntDir>$(SolutionDir)IntDir\$(MSBuildProjectName)\</IntDir>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '10.0'" Label="Configuration">
+ <PlatformToolset>v100</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '11.0'" Label="Configuration">
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '12.0'" Label="Configuration">
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '14.0'" Label="Configuration">
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="$(SolutionDir)\..\vsprojects\global.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\protobuf.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\protoc.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)'=='Debug'">
+ <TargetName>grpc_node_plugin</TargetName>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Release'">
+ <TargetName>grpc_node_plugin</TargetName>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemGroup>
+ <ClCompile Include="$(SolutionDir)\..\src\compiler\node_plugin.cc">
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="$(SolutionDir)\..\vsprojects\vcxproj\.\grpc_plugin_support\grpc_plugin_support.vcxproj">
+ <Project>{B6E81D84-2ACB-41B8-8781-493A944C7817}</Project>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+ <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
+ <PropertyGroup>
+ <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
+ </PropertyGroup>
+ </Target>
+</Project>
+
diff --git a/vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj.filters b/vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj.filters
new file mode 100644
index 0000000000..28b197f6f3
--- /dev/null
+++ b/vsprojects/vcxproj/grpc_node_plugin/grpc_node_plugin.vcxproj.filters
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <ClCompile Include="$(SolutionDir)\..\src\compiler\node_plugin.cc">
+ <Filter>src\compiler</Filter>
+ </ClCompile>
+ </ItemGroup>
+
+ <ItemGroup>
+ <Filter Include="src">
+ <UniqueIdentifier>{089d5d6b-d438-dc98-b30f-bd608e3bbb78}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\compiler">
+ <UniqueIdentifier>{1cc34440-c001-7578-c4d3-78f5d98fb602}</UniqueIdentifier>
+ </Filter>
+ </ItemGroup>
+</Project>
+
diff --git a/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj b/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj
index 4c80226cba..a81d31768d 100644
--- a/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj
+++ b/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj
@@ -160,6 +160,8 @@
<ClInclude Include="$(SolutionDir)\..\src\compiler\csharp_generator.h" />
<ClInclude Include="$(SolutionDir)\..\src\compiler\csharp_generator_helpers.h" />
<ClInclude Include="$(SolutionDir)\..\src\compiler\generator_helpers.h" />
+ <ClInclude Include="$(SolutionDir)\..\src\compiler\node_generator.h" />
+ <ClInclude Include="$(SolutionDir)\..\src\compiler\node_generator_helpers.h" />
<ClInclude Include="$(SolutionDir)\..\src\compiler\objective_c_generator.h" />
<ClInclude Include="$(SolutionDir)\..\src\compiler\objective_c_generator_helpers.h" />
<ClInclude Include="$(SolutionDir)\..\src\compiler\python_generator.h" />
@@ -173,6 +175,8 @@
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\compiler\csharp_generator.cc">
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\compiler\node_generator.cc">
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\compiler\objective_c_generator.cc">
</ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\compiler\python_generator.cc">
diff --git a/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj.filters b/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj.filters
index fc125d911e..b3d2dc2f3d 100644
--- a/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj.filters
+++ b/vsprojects/vcxproj/grpc_plugin_support/grpc_plugin_support.vcxproj.filters
@@ -7,6 +7,9 @@
<ClCompile Include="$(SolutionDir)\..\src\compiler\csharp_generator.cc">
<Filter>src\compiler</Filter>
</ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\src\compiler\node_generator.cc">
+ <Filter>src\compiler</Filter>
+ </ClCompile>
<ClCompile Include="$(SolutionDir)\..\src\compiler\objective_c_generator.cc">
<Filter>src\compiler</Filter>
</ClCompile>
@@ -50,6 +53,12 @@
<ClInclude Include="$(SolutionDir)\..\src\compiler\generator_helpers.h">
<Filter>src\compiler</Filter>
</ClInclude>
+ <ClInclude Include="$(SolutionDir)\..\src\compiler\node_generator.h">
+ <Filter>src\compiler</Filter>
+ </ClInclude>
+ <ClInclude Include="$(SolutionDir)\..\src\compiler\node_generator_helpers.h">
+ <Filter>src\compiler</Filter>
+ </ClInclude>
<ClInclude Include="$(SolutionDir)\..\src\compiler\objective_c_generator.h">
<Filter>src\compiler</Filter>
</ClInclude>
diff --git a/vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj b/vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj
new file mode 100644
index 0000000000..e9802773d8
--- /dev/null
+++ b/vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies.openssl.props" Condition="Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\1.0.204.1.props')" />
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{0ECDE365-D634-4E15-099F-40A38E151C65}</ProjectGuid>
+ <IgnoreWarnIntDirInTempDetected>true</IgnoreWarnIntDirInTempDetected>
+ <IntDir>$(SolutionDir)IntDir\$(MSBuildProjectName)\</IntDir>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '10.0'" Label="Configuration">
+ <PlatformToolset>v100</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '11.0'" Label="Configuration">
+ <PlatformToolset>v110</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '12.0'" Label="Configuration">
+ <PlatformToolset>v120</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(VisualStudioVersion)' == '14.0'" Label="Configuration">
+ <PlatformToolset>v140</PlatformToolset>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ <Import Project="$(SolutionDir)\..\vsprojects\cpptest.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\global.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\openssl.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\protobuf.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\winsock.props" />
+ <Import Project="$(SolutionDir)\..\vsprojects\zlib.props" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup Condition="'$(Configuration)'=='Debug'">
+ <TargetName>golden_file_test</TargetName>
+ <Linkage-grpc_dependencies_zlib>static</Linkage-grpc_dependencies_zlib>
+ <Configuration-grpc_dependencies_zlib>Debug</Configuration-grpc_dependencies_zlib>
+ <Linkage-grpc_dependencies_openssl>static</Linkage-grpc_dependencies_openssl>
+ <Configuration-grpc_dependencies_openssl>Debug</Configuration-grpc_dependencies_openssl>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)'=='Release'">
+ <TargetName>golden_file_test</TargetName>
+ <Linkage-grpc_dependencies_zlib>static</Linkage-grpc_dependencies_zlib>
+ <Configuration-grpc_dependencies_zlib>Release</Configuration-grpc_dependencies_zlib>
+ <Linkage-grpc_dependencies_openssl>static</Linkage-grpc_dependencies_openssl>
+ <Configuration-grpc_dependencies_openssl>Release</Configuration-grpc_dependencies_openssl>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>Disabled</Optimization>
+ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <PrecompiledHeader>NotUsing</PrecompiledHeader>
+ <WarningLevel>Level3</WarningLevel>
+ <Optimization>MaxSpeed</Optimization>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+ <TreatWarningAsError>true</TreatWarningAsError>
+ <DebugInformationFormat Condition="$(Jenkins)">None</DebugInformationFormat>
+ <MinimalRebuild Condition="$(Jenkins)">false</MinimalRebuild>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation Condition="!$(Jenkins)">true</GenerateDebugInformation>
+ <GenerateDebugInformation Condition="$(Jenkins)">false</GenerateDebugInformation>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ </Link>
+ </ItemDefinitionGroup>
+
+ <ItemGroup>
+ <ClCompile Include="$(SolutionDir)\..\src\proto\grpc\testing\compiler_test.pb.cc">
+ </ClCompile>
+ <ClInclude Include="$(SolutionDir)\..\src\proto\grpc\testing\compiler_test.pb.h">
+ </ClInclude>
+ <ClCompile Include="$(SolutionDir)\..\src\proto\grpc\testing\compiler_test.grpc.pb.cc">
+ </ClCompile>
+ <ClInclude Include="$(SolutionDir)\..\src\proto\grpc\testing\compiler_test.grpc.pb.h">
+ </ClInclude>
+ <ClCompile Include="$(SolutionDir)\..\test\cpp\codegen\golden_file_test.cc">
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="$(SolutionDir)\..\vsprojects\vcxproj\.\grpc++\grpc++.vcxproj">
+ <Project>{C187A093-A0FE-489D-A40A-6E33DE0F9FEB}</Project>
+ </ProjectReference>
+ <ProjectReference Include="$(SolutionDir)\..\vsprojects\vcxproj\.\grpc\grpc.vcxproj">
+ <Project>{29D16885-7228-4C31-81ED-5F9187C7F2A9}</Project>
+ </ProjectReference>
+ <ProjectReference Include="$(SolutionDir)\..\vsprojects\vcxproj\.\gpr\gpr.vcxproj">
+ <Project>{B23D3D1A-9438-4EDA-BEB6-9A0A03D17792}</Project>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="packages.config" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ <Import Project="$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.redist.1.2.8.10\build\native\grpc.dependencies.zlib.redist.targets" Condition="Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.redist.1.2.8.10\build\native\grpc.dependencies\grpc.dependencies.zlib.targets')" />
+ <Import Project="$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.1.2.8.10\build\native\grpc.dependencies.zlib.targets" Condition="Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.1.2.8.10\build\native\grpc.dependencies\grpc.dependencies.zlib.targets')" />
+ <Import Project="$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.redist.1.0.204.1\build\native\grpc.dependencies.openssl.redist.targets" Condition="Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.redist.1.0.204.1\build\native\grpc.dependencies\grpc.dependencies.openssl.targets')" />
+ <Import Project="$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies.openssl.targets" Condition="Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies\grpc.dependencies.openssl.targets')" />
+ </ImportGroup>
+ <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
+ <PropertyGroup>
+ <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
+ </PropertyGroup>
+ <Error Condition="!Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.redist.1.2.8.10\build\native\grpc.dependencies.zlib.redist.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.redist.1.2.8.10\build\native\grpc.dependencies.zlib.redist.targets')" />
+ <Error Condition="!Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.1.2.8.10\build\native\grpc.dependencies.zlib.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.zlib.1.2.8.10\build\native\grpc.dependencies.zlib.targets')" />
+ <Error Condition="!Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.redist.1.0.204.1\build\native\grpc.dependencies.openssl.redist.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.redist.1.0.204.1\build\native\grpc.dependencies.openssl.redist.targets')" />
+ <Error Condition="!Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies.openssl.props')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies.openssl.props')" />
+ <Error Condition="!Exists('$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies.openssl.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\..\vsprojects\packages\grpc.dependencies.openssl.1.0.204.1\build\native\grpc.dependencies.openssl.targets')" />
+ </Target>
+</Project>
+
diff --git a/vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj.filters b/vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj.filters
new file mode 100644
index 0000000000..c329e4da5c
--- /dev/null
+++ b/vsprojects/vcxproj/test/golden_file_test/golden_file_test.vcxproj.filters
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <ClCompile Include="$(SolutionDir)\..\src\proto\grpc\testing\compiler_test.proto">
+ <Filter>src\proto\grpc\testing</Filter>
+ </ClCompile>
+ <ClCompile Include="$(SolutionDir)\..\test\cpp\codegen\golden_file_test.cc">
+ <Filter>test\cpp\codegen</Filter>
+ </ClCompile>
+ </ItemGroup>
+
+ <ItemGroup>
+ <Filter Include="src">
+ <UniqueIdentifier>{cd916cf8-bce0-7051-b6d4-e1cd0bf3894c}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\proto">
+ <UniqueIdentifier>{a2d414fe-b561-a38e-58a9-40d8bc68a107}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\proto\grpc">
+ <UniqueIdentifier>{edbc155a-ceb8-62b4-2b73-37228e5fa736}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="src\proto\grpc\testing">
+ <UniqueIdentifier>{761a3503-8934-4ee6-8bf1-77ba1385baa7}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="test">
+ <UniqueIdentifier>{4f08cfc5-a59d-7cb4-9ef5-a603b2025936}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="test\cpp">
+ <UniqueIdentifier>{af281cac-e23b-109b-8e63-c7cff85c81f4}</UniqueIdentifier>
+ </Filter>
+ <Filter Include="test\cpp\codegen">
+ <UniqueIdentifier>{e105f656-566f-3d70-fbe5-e03fee8e612d}</UniqueIdentifier>
+ </Filter>
+ </ItemGroup>
+</Project>
+