Release 1.8.0
Please see the notes for the previous releases here: https://github.com/grpc/grpc/releases. Also please see https://grpc.io/ for all information regarding this product.
This is the 1.8.0 release of gRPC.
General
- The
third_party/protobuf
submodule has been upgraded to 3.5.0, which results in the 1.8.0 tools packages across languages to generate code that should be used with Protocol Buffers 3.5.0. Protocol Buffers 3.5.0 has a subtle breaking change in how it deals with unknown fields, which used to by default discarded when usingproto3
syntax, are now preserved unless explicitly discarded by calling the respective API in each language.
C-core
- Several LB policies fixes (grpclb and pick_first).
- Made backoff code comply with the spec (#13121)
- Fixed subchannel sharing (#12767)
- Assorted bugfixes: (#13036, #13119, #13256)
Python
- More strict enforcement of type-correctness of metadata values. (#13672)
- Experimental support for client and server interceptors. (#13722)
- Introduces
ServicerContext.abort
for terminating RPCs with non-OK status. (#13667) grpcio
Python package now depends onprotobuf
3.5.0, which includes the behavior change explained above in the general section. To discard unknown fields, usemessage.DiscardUnknownFields()
inprotobuf
Python API.
Ruby
- Bug fixes