Migrating to aiohttp v3.13.4
Version v3.13.4 introduces 1 breaking change. This guide details how to update your code.
Released: 3/28/2026
⚠️ Check Your Code
If you use any of these symbols, you need to read this guide:
aiohttp.TCPConnectoraiohttp.GunicornWebWorkeraiohttp.GunicornUVLoopWebWorkerasyncio.loop.start_tlsaiohttp.BodyPartReader.decodeaiohttp.BodyPartReader.decode_iterClientTimeoutTransferEncodingErrorDeprecationWarningClientConnectorCertificateErrorHostContent-TypeContent-LengthConnectionWebSocketResponse.receiveBreaking Changes
●Issue #1
The `aiohttp.BodyPartReader.decode` method was inadvertently changed to async in 3.13.3. It has been restored as a synchronous method for backward compatibility. A new `aiohttp.BodyPartReader.decode_iter` method is available for non-blocking decompression of large payloads using an async generator.
Migration Steps
- 1If you were relying on the asynchronous nature of `aiohttp.BodyPartReader.decode` in versions 3.13.3, use the new `aiohttp.BodyPartReader.decode_iter` method instead for non-blocking decompression of large payloads.
Release Summary
This release introduces a `max_headers` parameter for response header limits and a `dns_cache_max_size` for `TCPConnector`. It also includes numerous bug fixes, including addressing server hangs, DST issues, Gunicorn worker errors, and parser inconsistencies.
Need More Details?
View the full release notes and all changes for aiohttp v3.13.4.
View Full Changelog