Skip to content

v1.15.0

Compare
Choose a tag to compare
@jhump jhump released this 16 Feb 22:19
· 27 commits to main since this release
51a33b8

What's Changed

Since the last release, we have been significantly increasing coverage of our conformance suite. This has identified several inconsistencies with other Connect, gRPC, and gRPC-Web implementations. This release includes several fixes that will help align this implementation with others, behavior that can be verified by the conformance tests going forward. The fixes are backward-compatible with gRPC and Connect clients and servers. They fix some aspects of the wire representation and edge-case handling of spurious requests and responses, and they may affect users directly inspecting HTTP requests and responses.

Governance

Enhancements

  • Add transport-level retry support for RPCs with unary and server-stream RPCs. This also improves efficiency by eliminating a goroutine and a message copy. By @emcfarlane in #649
  • Prefer "application/grpc" over "application/grpc+proto" content-type when issuing gRPC calls. This accommodates Google Cloud Platform servers, which don't fully implement the gRPC specification. By @lrewega in #655
  • Small efficiency gains in on all outbound HTTP requests and unary Connect response validation by @mattrobenolt in #682, #683
  • Improve efficiency handling gRPC-Web and Connect end-of-stream messages by @jhump in #678

Bugfixes

  • Fix HTTP status to Code mapping by @emcfarlane in #673
  • Client should verify response content-type by @jhump in #679
  • Omit erroneous @type attribute from Connect error detail debug string by @jhump in #688
  • Use context to correctly classify some errors with Canceled or DeadlineExceeded code by @emcfarlane in #659
  • Fix trailers-only response handling and some gRPC error coding by @jhump in #677, #690

Full Changelog: v1.14.0...v1.15.0