Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers
grpcurl
images, or via Brew, please use the release v1.9.1.protoreflect
v1.15.2 and grpc
v1.57.0 (#406)grpc.reflection.v1.ServerReflection
(#407)grpcurl
would accept proto source files that could not actually be compiled with protoc
. The converse could also happen: grpcurl
could reject some proto source files that could successfully be compiled with protoc
. More details can be found in the release notes for the changes to the protoparse
library, versions v1.10.2 and v1.10.3.grpcurl
. These extra files, if not returned in a particular order, would cause grpcurl
to report an error that the service or method to be invoked could be not be resolved. The reflection client in grpcurl
is now more robust to this condition and can handle responses with file descriptors in any order, so it should be interoperable with a larger variety of servers.google.protobuf.Value
and a value for that field that was a JSON array, grpcurl
would incorrectly interpret the JSON array as if it were a single atomic value, the last value that was in the array. This has been fixed.grpcurl
. This has been fixed.This is the first release that includes binaries for linux/s390x. This is also the first release that includes Docker images for arm platforms (we hope to add Docker images for s390x in the future).
grpcurl
would accept proto source files that could not actually be compiled with protoc
. The converse could also happen: grpcurl
could reject some proto source files that could successfully be compiled with protoc
. More details can be found in the release notes for the changes to the protoparse
library, versions v1.10.0 and v1.10.1.grpcurl
to "panic", where the tool aborts with a stack dump. These could be induced by providing proto source files with certain unusually high unicode code points (which would not actually be valid protobuf source). It could also be induced by unlucky timing of connectivity failure to RPC server when making a client-streaming or bidi-streaming RPC.SSLKEYLOGFILE
, which indicates a file name. When set and using TLS for a connection, grpcurl
will log the TLS key used, so that an external tool such as Wireshark can use the key to decrypt and inspect network packets.grpcurl.InvokeRPC
could panic when calling client-streaming and bidi-streaming methods, if the stream could not be created (such as a connectivity issue). This panic has been fixed and an error will be returned instead.This was a failed release attempt. Please ignore this tag. A v1.8.5 will be provided soon.
This was a failed release attempt. Please ignore this tag and the next. A v1.8.5 will be provided soon.
grpcurl
would accept proto source files that could not actually be compiled with protoc
. This release links in the newer version of that library.grpcurl.BlockingDial
can now supply the dial option grpc.FailOnNonTempDialError(false)
, to prevent the fast-fail behavior for certain kinds of errors (such as "connection refused"). Previously, even if this option were provided, it would be ignored/overwritten by other options that BlockingDial
uses.