- moves the client/server behaviour to pb/test
- deprecate current bin/interop/interop_{client,server}.rb
- adds executable endpoints to bin
- grpc_ruby_interop_{client, server}
- these will be added to the ruby bin path when the grpc gem
gem is installed, making them easier to execute
- Updates the code generated for the interop service
- Moves the generated interop service/client from bin to pb
Also
- removes an empty file from the health pb directories
- adds the code-generated health service classes to the pb along with
a README explaining how to regenerate the generated code
- adds an implementation of the Health Checker Service along with unit
tests and an integration test
Also:
- adds a pb folder
: in a follow-up PR, all ruby pbs + generated code will be moved to it
Corrects some other issues
- fixes status return when calls fail by always returning the status
- resolves bidi_call client's failure to return an exception on bad
status by swapping the wait for status to the read thread
* this also improves the cancel_after_first_response test
Also
- adds a unit test that verifies that a bidi call will time out.
- timeout has been a default arg till now
- this switches it to a keyword arg with the same behavior
- in addition, it adds deadline as distinct keyword arg, allowing users
the choice of the idiomatic(timeout) or the aligned(deadline)
Adds the initial reference implementation for health-checking in gRPC
Python as a separate project (but within the same grpc package to keep
namespaces consistent). Only installs the package to test the
build-proto-modules custom command introduced in the health-checking
project.