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
).