grpc 1.21.0 → 1.22.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +422 -62
  3. data/include/grpc/grpc_security.h +61 -5
  4. data/include/grpc/grpc_security_constants.h +1 -1
  5. data/include/grpc/impl/codegen/gpr_types.h +1 -1
  6. data/include/grpc/slice.h +2 -2
  7. data/src/core/ext/filters/client_channel/backup_poller.cc +2 -3
  8. data/src/core/ext/filters/client_channel/backup_poller.h +5 -2
  9. data/src/core/ext/filters/client_channel/client_channel.cc +260 -122
  10. data/src/core/ext/filters/client_channel/client_channel.h +0 -8
  11. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +3 -84
  12. data/src/core/ext/filters/client_channel/client_channel_channelz.h +2 -28
  13. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +2 -8
  14. data/src/core/ext/filters/client_channel/health/health_check_client.cc +5 -4
  15. data/src/core/ext/filters/client_channel/lb_policy.cc +16 -2
  16. data/src/core/ext/filters/client_channel/lb_policy.h +92 -98
  17. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +63 -87
  18. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +6 -2
  19. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +35 -87
  20. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +18 -74
  21. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +167 -217
  22. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.cc +216 -190
  23. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.cc +6 -2
  24. data/src/core/ext/filters/client_channel/lb_policy_factory.h +1 -1
  25. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +1 -1
  26. data/src/core/ext/filters/client_channel/lb_policy_registry.h +1 -1
  27. data/src/core/ext/filters/client_channel/resolver.h +1 -1
  28. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +6 -3
  29. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +0 -1
  30. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +2 -0
  31. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +8 -8
  32. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +7 -7
  33. data/src/core/ext/filters/client_channel/resolving_lb_policy.cc +28 -64
  34. data/src/core/ext/filters/client_channel/resolving_lb_policy.h +4 -12
  35. data/src/core/ext/filters/client_channel/server_address.cc +4 -6
  36. data/src/core/ext/filters/client_channel/server_address.h +1 -3
  37. data/src/core/ext/filters/client_channel/service_config.cc +20 -22
  38. data/src/core/ext/filters/client_channel/service_config.h +26 -28
  39. data/src/core/ext/filters/client_channel/subchannel.cc +261 -160
  40. data/src/core/ext/filters/client_channel/subchannel.h +97 -23
  41. data/src/core/ext/filters/client_channel/subchannel_interface.h +113 -0
  42. data/src/core/ext/filters/message_size/message_size_filter.cc +12 -12
  43. data/src/core/ext/filters/message_size/message_size_filter.h +2 -2
  44. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +50 -2
  45. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +2 -2
  46. data/src/core/ext/transport/chttp2/transport/frame_data.cc +31 -36
  47. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +3 -2
  48. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +71 -52
  49. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +18 -3
  50. data/src/core/ext/transport/chttp2/transport/hpack_table.cc +5 -12
  51. data/src/core/ext/transport/chttp2/transport/hpack_table.h +10 -1
  52. data/src/core/ext/transport/chttp2/transport/internal.h +3 -3
  53. data/src/core/ext/transport/chttp2/transport/parsing.cc +39 -57
  54. data/src/core/lib/channel/channelz.cc +136 -19
  55. data/src/core/lib/channel/channelz.h +36 -40
  56. data/src/core/lib/channel/channelz_registry.cc +74 -106
  57. data/src/core/lib/channel/channelz_registry.h +10 -28
  58. data/src/core/lib/channel/context.h +1 -1
  59. data/src/core/lib/channel/handshaker.cc +6 -0
  60. data/src/core/lib/compression/compression.cc +13 -8
  61. data/src/core/lib/compression/compression_internal.cc +14 -10
  62. data/src/core/lib/compression/compression_internal.h +1 -1
  63. data/src/core/lib/compression/stream_compression.cc +3 -2
  64. data/src/core/lib/compression/stream_compression.h +2 -2
  65. data/src/core/lib/compression/stream_compression_gzip.cc +9 -9
  66. data/src/core/lib/gpr/env.h +1 -1
  67. data/src/core/lib/gpr/string.cc +8 -1
  68. data/src/core/lib/gpr/string.h +6 -1
  69. data/src/core/lib/gprpp/fork.cc +1 -1
  70. data/src/core/lib/gprpp/fork.h +5 -1
  71. data/src/core/lib/gprpp/global_config.h +9 -0
  72. data/src/core/lib/gprpp/global_config_custom.h +1 -1
  73. data/src/core/lib/gprpp/inlined_vector.h +8 -0
  74. data/src/core/lib/gprpp/map.h +38 -21
  75. data/src/core/lib/gprpp/memory.h +2 -2
  76. data/src/core/lib/gprpp/orphanable.h +1 -1
  77. data/src/core/lib/gprpp/ref_counted.h +9 -4
  78. data/src/core/lib/http/httpcli.cc +3 -3
  79. data/src/core/lib/iomgr/buffer_list.h +1 -1
  80. data/src/core/lib/iomgr/call_combiner.cc +1 -1
  81. data/src/core/lib/iomgr/call_combiner.h +1 -1
  82. data/src/core/lib/iomgr/cfstream_handle.cc +3 -2
  83. data/src/core/lib/iomgr/cfstream_handle.h +4 -0
  84. data/src/core/lib/iomgr/error.cc +3 -3
  85. data/src/core/lib/iomgr/error.h +9 -3
  86. data/src/core/lib/iomgr/error_internal.h +1 -1
  87. data/src/core/lib/iomgr/ev_epoll1_linux.cc +1 -1
  88. data/src/core/lib/iomgr/ev_posix.cc +3 -3
  89. data/src/core/lib/iomgr/ev_posix.h +3 -2
  90. data/src/core/lib/iomgr/ev_windows.cc +2 -2
  91. data/src/core/lib/iomgr/iomgr.cc +4 -4
  92. data/src/core/lib/iomgr/lockfree_event.cc +1 -1
  93. data/src/core/lib/iomgr/port.h +5 -1
  94. data/src/core/lib/iomgr/tcp_posix.cc +1 -3
  95. data/src/core/lib/iomgr/tcp_server.cc +5 -0
  96. data/src/core/lib/iomgr/tcp_server.h +24 -0
  97. data/src/core/lib/iomgr/tcp_server_custom.cc +11 -9
  98. data/src/core/lib/iomgr/tcp_server_posix.cc +72 -11
  99. data/src/core/lib/iomgr/tcp_server_utils_posix.h +3 -0
  100. data/src/core/lib/iomgr/tcp_server_windows.cc +11 -9
  101. data/src/core/lib/iomgr/tcp_uv.cc +5 -6
  102. data/src/core/lib/iomgr/timer.h +2 -1
  103. data/src/core/lib/iomgr/udp_server.cc +2 -2
  104. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +1 -1
  105. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +20 -2
  106. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +2 -2
  107. data/src/core/lib/security/security_connector/security_connector.h +1 -1
  108. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +1 -1
  109. data/src/core/lib/security/transport/auth_filters.h +3 -0
  110. data/src/core/lib/security/transport/client_auth_filter.cc +13 -0
  111. data/src/core/lib/security/transport/security_handshaker.cc +7 -7
  112. data/src/core/lib/slice/b64.h +2 -2
  113. data/src/core/lib/slice/slice.cc +82 -10
  114. data/src/core/lib/slice/slice_buffer.cc +49 -21
  115. data/src/core/lib/slice/slice_hash_table.h +2 -2
  116. data/src/core/lib/slice/slice_intern.cc +15 -16
  117. data/src/core/lib/slice/slice_internal.h +52 -0
  118. data/src/core/lib/slice/slice_string_helpers.cc +10 -1
  119. data/src/core/lib/slice/slice_string_helpers.h +3 -1
  120. data/src/core/lib/slice/slice_utils.h +50 -0
  121. data/src/core/lib/slice/slice_weak_hash_table.h +2 -2
  122. data/src/core/lib/surface/call.cc +14 -8
  123. data/src/core/lib/surface/channel.cc +89 -97
  124. data/src/core/lib/surface/channel.h +60 -6
  125. data/src/core/lib/surface/completion_queue.cc +49 -36
  126. data/src/core/lib/surface/completion_queue.h +2 -1
  127. data/src/core/lib/surface/server.cc +8 -8
  128. data/src/core/lib/surface/validate_metadata.cc +14 -8
  129. data/src/core/lib/surface/validate_metadata.h +13 -2
  130. data/src/core/lib/surface/version.cc +1 -1
  131. data/src/core/lib/transport/metadata.cc +56 -26
  132. data/src/core/lib/transport/metadata.h +91 -75
  133. data/src/core/lib/transport/static_metadata.cc +262 -176
  134. data/src/core/lib/transport/static_metadata.h +272 -180
  135. data/src/core/lib/transport/transport.cc +1 -1
  136. data/src/core/lib/transport/transport.h +8 -2
  137. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +1 -1
  138. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +2 -0
  139. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +5 -2
  140. data/src/ruby/lib/grpc/version.rb +1 -1
  141. metadata +33 -31
@@ -90,7 +90,7 @@ void grpc_stream_ref_init(grpc_stream_refcount* refcount, int initial_refs,
90
90
  #endif
91
91
  GRPC_CLOSURE_INIT(&refcount->destroy, cb, cb_arg, grpc_schedule_on_exec_ctx);
92
92
 
93
- new (&refcount->refs) grpc_core::RefCount();
93
+ new (&refcount->refs) grpc_core::RefCount(1, &grpc_trace_stream_refcount);
94
94
  new (&refcount->slice_refcount) grpc_slice_refcount(
95
95
  grpc_slice_refcount::Type::REGULAR, &refcount->refs, slice_stream_destroy,
96
96
  refcount, &refcount->slice_refcount);
@@ -80,11 +80,13 @@ inline void grpc_stream_ref(grpc_stream_refcount* refcount,
80
80
  gpr_log(GPR_DEBUG, "%s %p:%p REF %s", refcount->object_type, refcount,
81
81
  refcount->destroy.cb_arg, reason);
82
82
  }
83
+ refcount->refs.RefNonZero(DEBUG_LOCATION, reason);
84
+ }
83
85
  #else
84
86
  inline void grpc_stream_ref(grpc_stream_refcount* refcount) {
85
- #endif
86
87
  refcount->refs.RefNonZero();
87
88
  }
89
+ #endif
88
90
 
89
91
  void grpc_stream_destroy(grpc_stream_refcount* refcount);
90
92
 
@@ -95,13 +97,17 @@ inline void grpc_stream_unref(grpc_stream_refcount* refcount,
95
97
  gpr_log(GPR_DEBUG, "%s %p:%p UNREF %s", refcount->object_type, refcount,
96
98
  refcount->destroy.cb_arg, reason);
97
99
  }
100
+ if (GPR_UNLIKELY(refcount->refs.Unref(DEBUG_LOCATION, reason))) {
101
+ grpc_stream_destroy(refcount);
102
+ }
103
+ }
98
104
  #else
99
105
  inline void grpc_stream_unref(grpc_stream_refcount* refcount) {
100
- #endif
101
106
  if (GPR_UNLIKELY(refcount->refs.Unref())) {
102
107
  grpc_stream_destroy(refcount);
103
108
  }
104
109
  }
110
+ #endif
105
111
 
106
112
  /* Wrap a buffer that is owned by some stream object into a slice that shares
107
113
  the same refcount */
@@ -48,7 +48,7 @@ alts_shared_resource_dedicated* grpc_alts_get_shared_resource_dedicated(void);
48
48
 
49
49
  /**
50
50
  * This method destroys the alts_shared_resource_dedicated object
51
- * shared by all TSI handshakes. The applicaiton is responsible for
51
+ * shared by all TSI handshakes. The application is responsible for
52
52
  * invoking the API before calling grpc_shutdown().
53
53
  */
54
54
  void grpc_alts_shared_resource_dedicated_shutdown();
@@ -124,6 +124,7 @@ grpc_channel_credentials_release_type grpc_channel_credentials_release_import;
124
124
  grpc_google_default_credentials_create_type grpc_google_default_credentials_create_import;
125
125
  grpc_set_ssl_roots_override_callback_type grpc_set_ssl_roots_override_callback_import;
126
126
  grpc_ssl_credentials_create_type grpc_ssl_credentials_create_import;
127
+ grpc_ssl_credentials_create_ex_type grpc_ssl_credentials_create_ex_import;
127
128
  grpc_call_credentials_release_type grpc_call_credentials_release_import;
128
129
  grpc_composite_channel_credentials_create_type grpc_composite_channel_credentials_create_import;
129
130
  grpc_composite_call_credentials_create_type grpc_composite_call_credentials_create_import;
@@ -393,6 +394,7 @@ void grpc_rb_load_imports(HMODULE library) {
393
394
  grpc_google_default_credentials_create_import = (grpc_google_default_credentials_create_type) GetProcAddress(library, "grpc_google_default_credentials_create");
394
395
  grpc_set_ssl_roots_override_callback_import = (grpc_set_ssl_roots_override_callback_type) GetProcAddress(library, "grpc_set_ssl_roots_override_callback");
395
396
  grpc_ssl_credentials_create_import = (grpc_ssl_credentials_create_type) GetProcAddress(library, "grpc_ssl_credentials_create");
397
+ grpc_ssl_credentials_create_ex_import = (grpc_ssl_credentials_create_ex_type) GetProcAddress(library, "grpc_ssl_credentials_create_ex");
396
398
  grpc_call_credentials_release_import = (grpc_call_credentials_release_type) GetProcAddress(library, "grpc_call_credentials_release");
397
399
  grpc_composite_channel_credentials_create_import = (grpc_composite_channel_credentials_create_type) GetProcAddress(library, "grpc_composite_channel_credentials_create");
398
400
  grpc_composite_call_credentials_create_import = (grpc_composite_call_credentials_create_type) GetProcAddress(library, "grpc_composite_call_credentials_create");
@@ -347,6 +347,9 @@ extern grpc_set_ssl_roots_override_callback_type grpc_set_ssl_roots_override_cal
347
347
  typedef grpc_channel_credentials*(*grpc_ssl_credentials_create_type)(const char* pem_root_certs, grpc_ssl_pem_key_cert_pair* pem_key_cert_pair, const verify_peer_options* verify_options, void* reserved);
348
348
  extern grpc_ssl_credentials_create_type grpc_ssl_credentials_create_import;
349
349
  #define grpc_ssl_credentials_create grpc_ssl_credentials_create_import
350
+ typedef grpc_channel_credentials*(*grpc_ssl_credentials_create_ex_type)(const char* pem_root_certs, grpc_ssl_pem_key_cert_pair* pem_key_cert_pair, const grpc_ssl_verify_peer_options* verify_options, void* reserved);
351
+ extern grpc_ssl_credentials_create_ex_type grpc_ssl_credentials_create_ex_import;
352
+ #define grpc_ssl_credentials_create_ex grpc_ssl_credentials_create_ex_import
350
353
  typedef void(*grpc_call_credentials_release_type)(grpc_call_credentials* creds);
351
354
  extern grpc_call_credentials_release_type grpc_call_credentials_release_import;
352
355
  #define grpc_call_credentials_release grpc_call_credentials_release_import
@@ -440,7 +443,7 @@ extern grpc_local_credentials_create_type grpc_local_credentials_create_import;
440
443
  typedef grpc_server_credentials*(*grpc_local_server_credentials_create_type)(grpc_local_connect_type type);
441
444
  extern grpc_local_server_credentials_create_type grpc_local_server_credentials_create_import;
442
445
  #define grpc_local_server_credentials_create grpc_local_server_credentials_create_import
443
- typedef grpc_tls_credentials_options*(*grpc_tls_credentials_options_create_type)();
446
+ typedef grpc_tls_credentials_options*(*grpc_tls_credentials_options_create_type)(void);
444
447
  extern grpc_tls_credentials_options_create_type grpc_tls_credentials_options_create_import;
445
448
  #define grpc_tls_credentials_options_create grpc_tls_credentials_options_create_import
446
449
  typedef int(*grpc_tls_credentials_options_set_cert_request_type_type)(grpc_tls_credentials_options* options, grpc_ssl_client_certificate_request_type type);
@@ -455,7 +458,7 @@ extern grpc_tls_credentials_options_set_credential_reload_config_type grpc_tls_c
455
458
  typedef int(*grpc_tls_credentials_options_set_server_authorization_check_config_type)(grpc_tls_credentials_options* options, grpc_tls_server_authorization_check_config* config);
456
459
  extern grpc_tls_credentials_options_set_server_authorization_check_config_type grpc_tls_credentials_options_set_server_authorization_check_config_import;
457
460
  #define grpc_tls_credentials_options_set_server_authorization_check_config grpc_tls_credentials_options_set_server_authorization_check_config_import
458
- typedef grpc_tls_key_materials_config*(*grpc_tls_key_materials_config_create_type)();
461
+ typedef grpc_tls_key_materials_config*(*grpc_tls_key_materials_config_create_type)(void);
459
462
  extern grpc_tls_key_materials_config_create_type grpc_tls_key_materials_config_create_import;
460
463
  #define grpc_tls_key_materials_config_create grpc_tls_key_materials_config_create_import
461
464
  typedef int(*grpc_tls_key_materials_config_set_key_materials_type)(grpc_tls_key_materials_config* config, const char* pem_root_certs, const grpc_ssl_pem_key_cert_pair** pem_key_cert_pairs, size_t num_key_cert_pairs);
@@ -14,5 +14,5 @@
14
14
 
15
15
  # GRPC contains the General RPC module.
16
16
  module GRPC
17
- VERSION = '1.21.0'
17
+ VERSION = '1.22.0'
18
18
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grpc
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.21.0
4
+ version: 1.22.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - gRPC Authors
8
8
  autorequire:
9
9
  bindir: src/ruby/bin
10
10
  cert_chain: []
11
- date: 2019-05-21 00:00:00.000000000 Z
11
+ date: 2019-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-protobuf
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.7'
19
+ version: '3.8'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '3.7'
26
+ version: '3.8'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: googleapis-common-protos-types
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -362,6 +362,7 @@ files:
362
362
  - src/core/ext/filters/client_channel/service_config.h
363
363
  - src/core/ext/filters/client_channel/subchannel.cc
364
364
  - src/core/ext/filters/client_channel/subchannel.h
365
+ - src/core/ext/filters/client_channel/subchannel_interface.h
365
366
  - src/core/ext/filters/client_channel/subchannel_pool_interface.cc
366
367
  - src/core/ext/filters/client_channel/subchannel_pool_interface.h
367
368
  - src/core/ext/filters/deadline/deadline_filter.cc
@@ -825,6 +826,7 @@ files:
825
826
  - src/core/lib/slice/slice_internal.h
826
827
  - src/core/lib/slice/slice_string_helpers.cc
827
828
  - src/core/lib/slice/slice_string_helpers.h
829
+ - src/core/lib/slice/slice_utils.h
828
830
  - src/core/lib/slice/slice_weak_hash_table.h
829
831
  - src/core/lib/surface/api_trace.cc
830
832
  - src/core/lib/surface/api_trace.h
@@ -1611,51 +1613,51 @@ required_ruby_version: !ruby/object:Gem::Requirement
1611
1613
  requirements:
1612
1614
  - - ">="
1613
1615
  - !ruby/object:Gem::Version
1614
- version: 2.0.0
1616
+ version: 2.3.0
1615
1617
  required_rubygems_version: !ruby/object:Gem::Requirement
1616
1618
  requirements:
1617
1619
  - - ">="
1618
1620
  - !ruby/object:Gem::Version
1619
1621
  version: '0'
1620
1622
  requirements: []
1621
- rubygems_version: 3.0.3
1623
+ rubygems_version: 3.0.4
1622
1624
  signing_key:
1623
1625
  specification_version: 4
1624
1626
  summary: GRPC system in Ruby
1625
1627
  test_files:
1626
- - src/ruby/spec/client_auth_spec.rb
1627
1628
  - src/ruby/spec/error_sanity_spec.rb
1629
+ - src/ruby/spec/channel_spec.rb
1628
1630
  - src/ruby/spec/server_spec.rb
1629
- - src/ruby/spec/generic/rpc_server_pool_spec.rb
1630
- - src/ruby/spec/generic/interceptor_registry_spec.rb
1631
- - src/ruby/spec/generic/active_call_spec.rb
1632
- - src/ruby/spec/generic/server_interceptors_spec.rb
1633
- - src/ruby/spec/generic/rpc_desc_spec.rb
1634
- - src/ruby/spec/generic/rpc_server_spec.rb
1635
- - src/ruby/spec/generic/client_stub_spec.rb
1636
- - src/ruby/spec/generic/client_interceptors_spec.rb
1637
- - src/ruby/spec/generic/service_spec.rb
1638
1631
  - src/ruby/spec/client_server_spec.rb
1639
- - src/ruby/spec/channel_spec.rb
1640
- - src/ruby/spec/time_consts_spec.rb
1641
- - src/ruby/spec/errors_spec.rb
1642
- - src/ruby/spec/google_rpc_status_utils_spec.rb
1643
- - src/ruby/spec/call_credentials_spec.rb
1644
- - src/ruby/spec/pb/codegen/grpc/testing/package_options.proto
1645
- - src/ruby/spec/pb/codegen/package_option_spec.rb
1646
1632
  - src/ruby/spec/pb/health/checker_spec.rb
1633
+ - src/ruby/spec/pb/codegen/package_option_spec.rb
1634
+ - src/ruby/spec/pb/codegen/grpc/testing/package_options.proto
1647
1635
  - src/ruby/spec/pb/duplicate/codegen_spec.rb
1648
- - src/ruby/spec/call_spec.rb
1636
+ - src/ruby/spec/call_credentials_spec.rb
1637
+ - src/ruby/spec/support/helpers.rb
1638
+ - src/ruby/spec/support/services.rb
1639
+ - src/ruby/spec/errors_spec.rb
1640
+ - src/ruby/spec/google_rpc_status_utils_spec.rb
1649
1641
  - src/ruby/spec/server_credentials_spec.rb
1650
- - src/ruby/spec/channel_connection_spec.rb
1651
- - src/ruby/spec/channel_credentials_spec.rb
1652
- - src/ruby/spec/testdata/ca.pem
1642
+ - src/ruby/spec/compression_options_spec.rb
1643
+ - src/ruby/spec/client_auth_spec.rb
1644
+ - src/ruby/spec/call_spec.rb
1653
1645
  - src/ruby/spec/testdata/README
1654
- - src/ruby/spec/testdata/server1.key
1655
1646
  - src/ruby/spec/testdata/client.pem
1647
+ - src/ruby/spec/testdata/server1.key
1648
+ - src/ruby/spec/testdata/ca.pem
1656
1649
  - src/ruby/spec/testdata/client.key
1657
1650
  - src/ruby/spec/testdata/server1.pem
1658
- - src/ruby/spec/support/helpers.rb
1659
- - src/ruby/spec/support/services.rb
1660
- - src/ruby/spec/compression_options_spec.rb
1651
+ - src/ruby/spec/channel_connection_spec.rb
1661
1652
  - src/ruby/spec/spec_helper.rb
1653
+ - src/ruby/spec/time_consts_spec.rb
1654
+ - src/ruby/spec/channel_credentials_spec.rb
1655
+ - src/ruby/spec/generic/rpc_server_pool_spec.rb
1656
+ - src/ruby/spec/generic/client_interceptors_spec.rb
1657
+ - src/ruby/spec/generic/server_interceptors_spec.rb
1658
+ - src/ruby/spec/generic/rpc_server_spec.rb
1659
+ - src/ruby/spec/generic/service_spec.rb
1660
+ - src/ruby/spec/generic/client_stub_spec.rb
1661
+ - src/ruby/spec/generic/interceptor_registry_spec.rb
1662
+ - src/ruby/spec/generic/rpc_desc_spec.rb
1663
+ - src/ruby/spec/generic/active_call_spec.rb