Skip to content

python-ecosys/aiohttp: Fix partial reads. #1034

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

FuNK3Y
Copy link

@FuNK3Y FuNK3Y commented Jul 19, 2025

This one has been inspired by #1012 and should solve it

This problem does not only affect websockets. I experienced similar troubles when reading a JSON payload of ~6.5k from an ESP32.

@Carglglz
Copy link
Contributor

I think it may be better to use readexactly stream method? e.g.

 async def read(self, sz=-1):
+        if sz > 0:
+            return self._decode(await self.content.readexactly(sz))
         return self._decode(await self.content.read(sz))

@FuNK3Y
Copy link
Author

FuNK3Y commented Jul 28, 2025

Hooo yes ! This is will clearly make the whole module more robust. I did the changes and did some testing and everything looks good so far

Copy link
Member

@dpgeorge dpgeorge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks.

Fixes issue micropython#1012.

Signed-off-by: FuNK3Y <fun__key@hotmail.com>
@dpgeorge dpgeorge force-pushed the python-ecosys/aiohttp--Fix-partial-reads- branch from 1517738 to b95ca24 Compare July 31, 2025 14:28
@dpgeorge dpgeorge merged commit b95ca24 into micropython:master Jul 31, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants