- Fixed a bug that prevented replaying empty gRPC messages #105.
- Fixed a bug that prevented google.protobuf.Any fields being dumped #96.
- Added grpc-proxy options
WithServerOptions
andWithDialOptions
, deprecatedWithOptions
#71. - Added a new command-line option,
--interface
to allow choosing which network interfacegrpc-proxy
listens on #81.
- Added a new command-line option,
--tls_secrets_file
, to write the TLS master secrets file to the specified path. This can be used later with different application, such as Wireshark, to decrypt the gRPC traffic #63. - (Issue #43) Dumping response header and trailer metadata #63.
- Fixed bug where HTTP/2 traffic was not intercepted correctly #63.
- Some linter recommendations #63.
- Added a defer-recover handler so that any panics in the
grpc-proxy
interceptor do not kill the proxy #53. - Added a new command-line option,
--system_proxy
, to automatically enable grpc-dump/grpc-fixture as the system proxy on MacOS #55.
- Improved behaviour and logging when a message fails to be decoded #51.
- Fixed bug where
grpc-dump
would not forward errors from server to client #45. grpc-proxy
now will transparently forward all non-HTTP traffic to the original destination #28.- When the
--proto_roots
or--proto_descriptors
flags are used,grpc-replay
andgrpc-fixture
will marshall messages from the human readable form instead of using the raw message.
- Added proxy loop detection so that misconfiguration (e.g. missing/incorrent
--destination
flag) do not cause infinite loops and connection exhaustion. grpc-proxy
now supports requests with gzip compression (however requests are still proxied uncompressed).grpc-dump
now includes a timestamp along with each message sent/received.- Breaking Change:
grpc-dump
now reports RPC error codes as their human-readable string form instead of a raw integer code.
- Fixed bug where the
--destination
flag didn't work (issue #13).
- Added automatic detection of mkcert certificates in the current directory.
- Added grpc-dump, grpc-fixture, grpc-replay.