NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #543 most downloaded on pub.dev
Dart implementation of gRPC, a high performance, open-source universal RPC framework.
Last release 10 months ago
09 Dec 2025
Release timing varies
gaps range from 2 weeks to 10 months
Nearly every release is documented
notes for 55 of 55 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
56 releases · first in 2017
Added protos.dart library. Require protobuf:6.0.0 .
protos.dart library.protobuf:6.0.0.Upgrading protos with new googleapis and protobuf versions.
googleapis and protobuf versions.One column per quarter.
Downgrade meta dependency to 1.16.0
meta dependency to 1.16.0Require package:protobuf version 5.0.0
package:protobuf version 5.0.0Export a protobuf generated symbol ( Any )
Any)ResponseFuture (no longer have a private class in theAdd a serverInterceptors argument to ConnectionServer . These interceptors are acting as middleware, wrapping a ServiceMethod invocation.
serverInterceptors argument to ConnectionServer. These interceptors are actingServiceMethod invocation.CallOptions.mergeWith is symmetric: given WebCallOptionsWebCallOptions.Allow the latest package:googleapis_auth .
package:googleapis_auth.Widen package:protobuf constraint to allow version 4.0.0.
package:protobuf constraint to allow version 4.0.0.Internal optimization to client code.
timeline_test.dart.package:lints version 5.0.0 and Dart SDK version 3.5.0.example/grpc-web code.package:web to get HttpStatus.package:web deprecations.Fixes #727
Fixes #727
Set compressed flag correctly for grpc-encoding = identity. Fixes #669
package:archive.codec.dart.Forward internal GrpcError on when throwing while sending a request.
GrpcError on when throwing while sending a request.ServerHandlers from tracking list.Add const constructor to GrpcError fixing #606.
GrpcError fixing #606.GrpcError non-final to allow implementations.Remove base qualifier on ResponseStream.
base qualifier on ResponseStream.package:http now supports more versions: >=0.13.0 <2.0.0.
package:http now supports more versions: >=0.13.0 <2.0.0.package:protobuf new supports more versions: >=2.0.0 <4.0.0.ChannelOptions now exposes connectTimeout, which is used on the socket connect. This is used to specify the maximum allowed time to wait for a connect
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.channelShutdownHandler argument to ClientChannel and the subclasses.
This callback can be used to react to channel shutdown or termination.Code protobuf enum from the grpc.dart library.Expose a stream for connection state changes on ClientChannel to address #428. This allows users to react to state changes in the connection.
: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.Fix compilation on the Web with DDC.
Require package:googleapis_auth ^1.1.0
package:googleapis_auth ^1.1.0Content-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.GrpcError now exposes response trailers via GrpcError.trailers.Migrate library and tests to null safety.
Nothing published for this version
Added support for compression/decompression, which can be configured through ChannelOptions constructor's codecRegistry parameter or adding the grpc-a
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.Note: this is the last release supporting SDK < 2.12. Next release will be nullsafe and thus require SDK >= 2.12.
Client.$createCall is deprecated because it does not invoke client interceptors.
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.Socket.serve and ClientChannel.GrpcWebClientChannel.terminate().Added decoding/parsing of grpc-status-details-bin to pass all response exception details to the GrpcError thrown in Dart, via #349.
grpc-status-details-bin to pass all response
exception details to the GrpcError thrown in Dart, via
#349.>=2.3.0 <3.0.0 due to language version
in the generated protobuf code.Revert PR #287, which allowed using gRPC-web in native environments but also broke streaming.
Added applicationDefaultCredentialsAuthenticator function for creating an authenticator using Application Default Credentials.
applicationDefaultCredentialsAuthenticator function for creating an
authenticator using Application Default Credentials.tcpNoDelay option for sockets.Fix bug in grpc-web when receiving an empty trailer.
Fix bug introduced in 2.1.1 where the port would be added to the default authority when making a secure connection.
Fix bug introduced in 2.1.0 where an explicit authority would not be used when making a secure connection.
authority would not be used when making a secure
connection.Do a health check of the http2-connection before making request.
ChannelOptions.connectionLimit the longest time a single connection is used for new
requests.ServerSettings to Server.serve.GrpcError now implements Exception to indicate it can be reasonably handled.
Fix computation of the audience given to metadata providers to include the scheme.
Breaking: grpc.dart no longer exposes the deprecated ServerHandler. It was supposed to be an internal abstraction.
example/grpc-web for an example of this working.grpc.dart no longer exposes ClientConnection. It was supposed to be an internal
abstraction.grpc.dart no longer exposes the deprecated ServerHandler.
It was supposed to be an internal abstraction.service_api.dart no longer exports Server - it has never been used by the generated code.Fix imports to ensure grpc_web.dart has no accidental transitive dependencies on dart:io.
grpc_web.dart has no accidental transitive dependencies on dart:io.Allow custom user agent with a userAgent argument for ChannelOptions().
userAgent argument for ChannelOptions().authority for ChannelCredentials.insecure().userAgent as an optional named argument for clientConnection.createCallHeaders().Fix bug where the server would crash if the client would break the connection.
Add service_api.dart that only contains the minimal imports needed by the code generated by protoc_plugin.
service_api.dart that only contains the minimal imports needed by the code generated by
protoc_plugin.* Graduate package to 1.0.
* Support package:http2 1.0.0.
Calling terminate() or shutdown() on a channel doesn't throw error if the channel is not yet open.
terminate() or shutdown() on a channel doesn't throw error if the
channel is not yet open.Removes stray files that where published by accident in version 0.6.8.
Support package:http >=0.11.3+17 <0.13.0.
package:http >=0.11.3+17 <0.13.0.package:googleapis_auth to ^0.2.5+3.* Interceptors are now async.
Update dependencies to be compatible with Dart 2.
More fixes to update to Dart 2 core library APIs.
Dart SDK upper constraint raised to declare compatibility with Dart 2.0 stable.
Updated implementation to use new Dart 2 APIs using dart2_fix.
Breaking change: The package now exclusively supports Dart 2.
* Fixes for supporting Dart 2.
Moved TLS credentials for server into a separate class.
Split out TLS credentials to a separate class.
Added authentication metadata providers, optimized for use with Google Cloud.
Updated generated code in examples using latest protoc compiler plugin.
Implemented support for per-RPC metadata providers. This can be used for authentication providers which may need to obtain or refresh a token before t
Core gRPC functionality is implemented and passes gRPC compliance tests.
The API is shaping up, but may still change as more advanced features are implemented.
This package is in a very early and experimental state. We do not recommend using it for anything but experiments.
This package is in a very early and experimental state. We do not recommend using it for anything but experiments.
Your coding agent can read these notes before it upgrades. Set up the MCP server →