aiohttp 3.3.0 release
The main change is introducing new client timeouts.
The release has many new improvements and bugfixes as well.
Changes
Features
- Raise
ConnectionResetError
instead ofCancelledError
on trying to
write to a closed stream. #2499 - Implement
ClientTimeout
class and support socket read timeout. #2768 - Enable logging when
aiohttp.web
is used as a program #2956 - Add canonical property to resources #2968
- Forbid reading response BODY after release #2983
- Implement base protocol class to avoid a dependency from internal
asyncio.streams.FlowControlMixin
#2986 - Cythonize
@helpers.reify
, 5% boost on macro benchmark #2995 - Optimize HTTP parser #3015
- Implement
runner.addresses
property. #3036 - Use
bytearray
instead of a list ofbytes
in websocket reader. It
improves websocket message reading a little. #3039 - Remove heartbeat on closing connection on keepalive timeout. The used hack
violates HTTP protocol. #3041 - Limit websocket message size on reading to 4 MB by default. #3045
Bugfixes
- Don't reuse a connection with the same URL but different proxy/TLS settings
#2981 - When parsing the Forwarded header, the optional port number is now preserved.
#3009
Improved Documentation
- Make Change Log more visible in docs #3029
- Make style and grammar improvements on the FAQ page. #3030- Document that signal handlers should be async functions since aiohttp 3.0
#3032
Deprecations and Removals
- Deprecate custom application's router. #3021