Releases: d5h-foss/grpc-interceptor
Fix async bug with missing method
Use context.abort status code
Async context type bug fix
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
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
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., wrappingcontext
).
v0.14.2: Fix issue with newer versions of protobuf using older generated code
What’s Changed
- Rebuild protobuf using protoc 3.19 (#18) @xiao-chen
v0.14.1: Support older versions of dependencies
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
What’s Changed
- Make ExceptionToStatusInterceptor more extensible (#12) @jeffsawatzky