mirror of
https://github.com/esphome/esphome.git
synced 2026-07-10 17:05:36 +00:00
24a3c2202f
`requests.Response.content` reads the body lazily, so chunked-decode, gzip-decode, and mid-stream connection drops all surface as RequestException subclasses on first access -- not from requests.get itself. The previous code accessed `.content` outside the surrounding try/except, so any of those (rare but real) errors would propagate out of download_content instead of falling back to the cached file or raising the user-friendly cv.Invalid. Move `data = req.content` inside the try block so the existing error path handles it. Two new tests cover the with-cache and no-cache branches using a `ChunkedEncodingError` injected on `.content`.