Skip to content

Releases: grpc/grpc-dart

package:grpc v3.2.3

13 Jul 10:06
c7e07a0

Choose a tag to compare

  • Add const constructor to GrpcError fixing #606.
  • Make GrpcError non-final to allow implementations.
  • Only send keepalive pings on open connections.
  • Fix interop tests.

package:grpc v3.2.0

13 Jun 13:45
ceb879d

Choose a tag to compare

  • ChannelOptions now exposes connectTimeout, which is used on the
    socket connect. This is used to specify the maximum allowed time to wait
    for a connection to be established. If connectTime is longer than the system
    level timeout duration, a timeout may occur sooner than specified in
    connectTimeout. On timeout, a SocketException is thrown.
  • Require Dart 2.17 or greater.
  • Fix issue #51, add support for custom error handling.
  • Expose client IP address to server
  • Add a channelShutdownHandler argument to ClientChannel and the subclasses.
    This callback can be used to react to channel shutdown or termination.
  • Export the Code protobuf enum from the grpc.dart library.
  • Require Dart 3.0.0 or greater.

package:grpc v3.2.0

13 Jun 10:48
3894d5a

Choose a tag to compare

  • ChannelOptions now exposes connectTimeout, which is used on the
    socket connect. This is used to specify the maximum allowed time to wait
    for a connection to be established. If connectTime is longer than the system
    level timeout duration, a timeout may occur sooner than specified in
    connectTimeout. On timeout, a SocketException is thrown.
  • Require Dart 2.17 or greater.
  • Fix issue #51, add support for custom error handling.
  • Expose client IP address to server
  • Add a channelShutdownHandler argument to ClientChannel and the subclasses.
    This callback can be used to react to channel shutdown or termination.
  • Export the Code protobuf enum from the grpc.dart library.
  • Require Dart 3.0.0 or greater.

3.1.0

27 Oct 11:56
e97711a

Choose a tag to compare

  • Expose a stream for connection state changes on ClientChannel to address
    #428.
    This allows users to react to state changes in the connection.
  • Fix #576: set default
    :authority value for UDS connections to localhost instead of using
    UDS path. Using path triggers checks in HTTP2 servers which
    attempt to validate :authority value.

3.0.2

16 Aug 12:53
7cced92

Choose a tag to compare

  • Fix compilation on the Web with DDC.

3.0.1

10 Aug 10:04
c2fb47c

Choose a tag to compare

  • Require package:googleapis_auth ^1.1.0
  • Fix issues #421 and #458. Validate responses according to gRPC/gRPC-Web protocol specifications: require 200 HTTP status and a supported Content-Type header to be present, as well
    as grpc-status: 0 header. When handling malformed responses make effort to translate HTTP statuses into gRPC statuses.
  • Add GrpcOrGrpcWebClientChannel which uses gRPC on all platforms except web, on which it uses gRPC-web.
  • GrpcError now exposes response trailers via GrpcError.trailers.

3.0.0

10 Aug 10:06
def1a19

Choose a tag to compare

  • Migrate library and tests to null safety.
  • Require Dart 2.12 or greater.

2.9.0

28 Jan 12:19
d3f0ec7

Choose a tag to compare

  • Added support for compression/decompression, which can be configured through
    ChannelOptions constructor's codecRegistry parameter or adding the
    grpc-accept-encoding to metadata parameter of CallOptions on the client
    side and codecRegistry parameter to Server on the server side.
    Outgoing rpc can be compressed using the compression parameter on the
    CallOptions.
  • Fix issue #206. Prevent an
    exception to be thrown when a web connection stream is closed.
  • Add XHR raw response to the GrpcError for a better debugging
    (PR #423).

Note: this is the last release supporting SDK < 2.12. Next release will
be nullsafe and thus require SDK >= 2.12.

2.8.0

12 Nov 11:54
5b0e942

Choose a tag to compare

  • Added support for client interceptors, which can be configured through
    Client constructor's interceptors parameter. Interceptors will be
    executed by Client.$createStreamingCall and Client.$createUnaryCall.
    Using interceptors requires regenerating client stubs using version 19.2.0 or
    newer of protobuf compiler plugin.
  • Client.$createCall is deprecated because it does not invoke client
    interceptors.
  • Fix issue #380 causing
    incorrect duplicated headers in gRPC-Web requests.
  • Change minimum required Dart SDK to 2.8 to enable access to Unix domain sockets.
  • Add support for Unix domain sockets in Socket.serve and ClientChannel.
  • Fix issue #331 causing
    an exception in GrpcWebClientChannel.terminate().

2.7.0

30 Oct 11:05
0589503

Choose a tag to compare

2.7.0

  • Added decoding/parsing of grpc-status-details-bin to pass all response
    exception details to the GrpcError thrown in Dart, via
    #349.
  • Dart SDK constraint is bumped to >=2.3.0 <3.0.0 due to language version
    in the generated protobuf code.

2.6.0

  • Create gRPC servers and clients with [Server|Client]TransportConnnection.
    This allows callers to propvide their own transport configuration, such
    as their own implementation of streams and sinks instead of sockets.

2.5.0

  • Expose a validateClient method for server credentials so gRPC server
    users may know when clients are loopback addresses.

2.4.1

  • Plumb stacktraces through request / response stream error handlers.
  • Catch and forward any errors decoding the response.

2.4.0

  • Add the ability to bypass CORS preflight requests.