The issue is present on unix and esp32 running 1.9.3, it's not just triggered by the special TLS limitations of ESP8266. There don't seem to be any notes about this kind of failure being expected as far as I can see, e.g. in http://docs.micropython.org/en/latest/e ... imitations there is recognition that records can be too long for micros to handle, but I don't think that explains the form of failure experienced.
The reference code for stream creation I am using can be found mostly in https://github.com/ShrimpingIt/medea/bl ... a/https.py but the test example I've been using to prove the issue is documented by https://github.com/ShrimpingIt/medea/bl ... DumpAll.py
The example accesses a single recent trump tweet from the Twitter API serving a total of 3881 bytes of JSON cruft, (including the tweet id and tweet text I actually need for my application). Running in CPython, the full complement of JSON bytes are successfully dumped to the console. However, running in Micropython, the stream mystifyingly halts at 3584 bytes every time.
I have been invoking it from the medea repository root folder like...
Code: Select all
python3 -m examples.scripts.twitterDumpAll
Code: Select all
micropython -m examples.scripts.twitterDumpAll
I'm posting in case there is something blindingly obvious or well-known in terms of limitations on HTTPS-style socket use across platforms in micropython which would trivially cause this issue.