Release 1.1
Please see the notes for the previous releases here: https://github.com/grpc/grpc/releases. Also please see http://grpc.io/ for all information regarding this product.
This is 1.1 release of gRPC.
C-core:
- Added support for HTTP CONNECT proxies
- Fixed many bugs related to handshaking
- Added channel arg for max send message length
C++:
- Allow selecting load-balancing policy via client API
Python:
- Fixed bug with time_remaining() API (#9420)
- Iterable validation on streaming API (#8686)
- Add server channel arguments parameter (#8137)
Ruby:
- Return unavailable on EPIPE fix #8745M
- Bugfixes: PR’s #9183, #9191, #8833, #8632
- Ruby-tools on windows fix #8304
- BadStatus subclass API added: PR #8879
- Ruby 2.4 support
- The Grpc-Ruby 1.1.0 release was postponed. The 1.1.2 release has been published, which includes the changes noted here.
PHP:
- Proto3 support #8179
C#:
- Fix: Throw RpcException instead of InvalidOperationException from
requestStream.WriteAsync()
on error: #8084 - Public C# benchmarks have been switched to CoreCLR
- Huge C# throughput improvements (#8396, #8444, #8472). For best performance, use the Server GC mode
"System.GC.Server": true
- Started collecting basic performance numbers on Windows.
- Basic server reflection implementation available in
Grpc.Reflection
NuGet package (#8857) - Codegen improvements: #9060, #9061, #8297, 8619
- Other bugfixes: #8594
Objective-c:
- Bug fixes for better Cronet support
Node:
- Add support for Node 7
- Add support for Electron (Following the instructions at http://electron.atom.io/docs/tutorial/using-native-node-modules/ is necessary to install on electron. The
export npm_config_build_from_source=true
line may be omitted) - Drop support for two versions of Node that are no longer maintained: Node 0.12 and io.js 1.0
- Fix bug where serialization errors would not be surfaced (#8882)
- Fix bug where events (specifically status and error) could be emitted in a different order depending on method type (#7705)
- Fix bug where end events could be omitted even when a readable stream failed with an error (#8954).
- KNOWN ISSUE: DNS resolution fails in the client when a hostname is provided without a port number (#9518).