Skip to content

Release 1.10.0

Choose a tag to compare

@menghanl menghanl released this 15 Feb 22:33
· 4 commits to v1.10.x since this release

API Changes

  • Revert "Add WithResolverUserOptions for custom resolver build options" (#1839)

Behavior Changes

  • streams: Stop cleaning up after orphaned streams (#1854)
  • credentials: return Unavailable instead of Internal for per-RPC creds errors (#1776)

New Features

  • status: add status.Convert convenience function (#1848)
  • transport: support stats.Handler in serverHandlerTransport (#1840)
  • encoding: Introduce new method for registering and choosing codecs (#1813)
  • metadata: add new method for appending outgoing metadata efficiently (#1794)

Performance Improvements

  • metadata: avoid copying headers/trailers in unary RPCs unless requested by CallOptions (#1775)

Bug Fixes

  • transport: fix race causing flow control discrepancy when sending messages over server limit (#1859)
  • stream: fix bug when using a service config timeout where streams would report "context canceled" before deadline (#1838)
  • client: send RST_STREAM on client-side errors to prevent server from blocking (#1823)
  • stats: Fix bug causing trailers-only responses to be reported as headers (#1817)
  • transport: Fix a data race when headers are received while the stream is being closed (#1814)
  • transport: Fix bug preventing stream.Send() from receiving io.EOF after end of stream (#1792)
  • client: Fix race when dialing that could lead to disconnects after 20 seconds (#1779)

Documentation

  • Fix connection drain error message (#1844)
  • gzip: add Name const to avoid typos in usage (#1804)
  • Explain target format in DialContext's documentation (#1785)
  • Document that all errors from RPCs are status errors (#1782)