Changes between Initial Version and Version 1 of Ticket #36656


Ignore:
Timestamp:
Oct 10, 2025, 11:11:08 AM (4 hours ago)
Author:
Adam Johnson
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #36656

    • Property Summary `GZipMiddleware` drops content from async streaming responsesGZipMiddleware drops content from async streaming responses
  • Ticket #36656 – Description

    initial v1  
    1 0bd2c0c9015b53c41394a1c0989afbfd94dc2830 (#33735) expanded `GzipMiddleware` to support async streaming responses. But it does so with a faulty `gzip_wrapper()` that compresses chunks as individual files, rather than as a continuous stream. As a result, only the first chunk is decompressible, and browsers drop the rest of the response, even as they stay connected and download all the data.
     10bd2c0c9015b53c41394a1c0989afbfd94dc2830 (#33735) expanded `GZipMiddleware` to support async streaming responses. But it does so with a faulty `gzip_wrapper()` that compresses chunks as individual files, rather than as a continuous stream. As a result, only the first chunk is decompressible, and browsers drop the rest of the response, even as they stay connected and download all the data.
    22
    33The solution is to use a streaming approach with `GzipFile`, as is already done for sync responses in `compress_sequence()`.
Back to Top