What's Changed
Important
This release adds a security-related feature for servers. The new handler option WithRequestGate runs after the request headers are available and before any message is received. Use this new option to register checks (e.g. authentication) that should happen before the request is decompressed or unmarshaled, and before any interceptors are run. See the documentation for details.
Governance
Enhancements
- Add WithRequestGate handler option by @emcfarlane in #962
- Create release binary for protoc-gen-connect-go by @emcfarlane in #966
Bugfixes
- Fix issue with user-agent getting inappropriately injected into request headers by @jhump in #934
- Fix client streaming operations blocking indefinitely after context cancellation by @haru0017 in #937
- Fix flaky HTTP2 testcase assertion by @emcfarlane in #940
- Fix data race and connection leak in duplexHTTPCall by @emcfarlane in #938
- Fix off-by-one in WithHTTPGetMaxURLSize URL length check by @fchimpan in #955
- Fix connect.WithGRPC typo in the missing client option error by @NotAFlightRisk in #956
- Only send a 304 when the request was a GET by @NotAFlightRisk in #957
- Fix panic in stream Spec and Peer when client construction failed by @NotAFlightRisk in #959
- Fix dropped headers on errStreamingClientConn by @mohit-bhandari45 in #964
New Contributors
- @haru0017 made their first contribution in #937
- @dongjiang1989 made their first contribution in #945
- @fchimpan made their first contribution in #955
- @NotAFlightRisk made their first contribution in #956
- @mohit-bhandari45 made their first contribution in #964
Full Changelog: v1.20.0...v1.21.0