Skip to content

Releases: d5h-foss/grpc-interceptor

Fix async bug with missing method

16 Nov 01:37
d866a1b
Compare
Choose a tag to compare

What’s Changed

  • Skip interceptor for methods that are not registered in the server (#48) @anuraaga
  • Replace poetry with poetry-core (#44) @tjni
  • fix: update some types and add symmetry between the sync and async server interceptors (#45) @jeffsawatzky

Use context.abort status code

15 Aug 22:28
25edf03
Compare
Choose a tag to compare

What’s Changed

  • Fix wrong status code if context.abort has been called (#43) @thangtp
  • Update release workflow (#38) @d5h

Async context type bug fix

18 May 19:49
f1b49a4
Compare
Choose a tag to compare

What’s Changed

  • Fix the type for the context in the async exception to status interceptor (#37) @jeffsawatzky

v0.15.1: Bug fix and maintenance

13 Apr 23:59
9540840
Compare
Choose a tag to compare

What’s Changed

  • Use TCP instead of UDS for tests. Fixes a compatibility issue with OpenTelemetry (#35) thanks @jenstroeger
  • Run tests for Python 3.10 and 3.11 (#34) @d5h
  • Drop 3.6 support; remove "safety" check in Github Actions (#28) @d5h
  • Add missing word in docs (#24) @robertimpeysp
  • Add missing "context" arg (#21) @metasyn

There are no functionality changes, just a bug fix, doc improvements, and some maintenance.

v0.15.0: Support async server interceptors

23 Jul 21:24
de55225
Compare
Choose a tag to compare

What’s Changed

Adds:

  • AsyncServerInterceptor
  • AsyncExceptionToStatusInterceptor
  • Updated documentation (notably streaming and async)
  • Async mode for existing tests where applicable
  • More tests, especially around streaming

Requirement changes in order to support async:

  • Python 3.6.1
  • grpcio >= 1.32.0

Python 3.6.0 and grpcio < 1.32.0 won't get this, or future, updates. Async requires newer versions of these.

Notes:

  • This doesn't add support for async client interceptors
  • The read() / write() API for async streaming has tests, but mainly just that the interceptors can, in theory, operate with them. They require special handling (described in the docs), and getting access to the streaming request & response objects would require extra additional work by the end user (e.g., wrapping context).

v0.14.2: Fix issue with newer versions of protobuf using older generated code

21 Jun 23:37
84eb8ed
Compare
Choose a tag to compare

v0.14.1: Support older versions of dependencies

25 Apr 00:03
8ecd259
Compare
Choose a tag to compare

What’s Changed

  • Add tests with minimum versions of dependencies, and fix a few issues (#16)

This release doesn't add any new functionality, but adds tests with older versions of dependencies. In doing this, a couple issues were found and fixed.

There's one change which could conceivably break existing code, but only if people are depending on internals that weren't documented. Specifically, MethodName used to be a NamedTuple, which means it could be iterated over or compared to a tuple. Apparently, Python 3.6.0 doesn't allow @property attributes on a subclass of NamedTuple, so it's been changed to a normal class. There's no API changes, but if you had code that depended on the implementation detail of MethodName being a tuple, then it will break. If you are only using it as documented, then it should continue to work the same way.

v0.14.0: Make ExceptionToStatusInterceptor more extensible

17 Apr 00:22
33016b0
Compare
Choose a tag to compare

What’s Changed

v0.13.12: Fix bug with exception to status code interceptor when streaming responses

09 Apr 22:13
07ec507
Compare
Choose a tag to compare

What’s Changed

  • ExceptionToStatusInterceptor: Fix streaming responses (#11) @craigds

v0.13.1: Merge pull request #9 from mahlberg/fix-unserviced-rpc

30 Jan 01:08
6537c14
Compare
Choose a tag to compare

What’s Changed

Added

  • Run tests on Python 3.9 and default to that for linting, etc.

Fixed

  • Raise UNIMPLEMENTED instead of UNKNOWN when no handler is found for a method (#9) @mahlberg