Paul Sokolovsky
aea501add6
uasyncio.core: Import utime unconditionally, uasyncio depends on MicroPython.
2017-05-01 16:09:34 +03:00
Paul Sokolovsky
b2f69eb23b
uasyncio.core: Add set_debug() method, don't import logging if not called.
2017-05-01 16:04:28 +03:00
Paul Sokolovsky
0a02e2dfff
urequests: Subscript getaddrinfo() result with -1.
2017-05-01 15:28:56 +03:00
Paul Sokolovsky
0496643afb
upip: Release 1.1.6.
2017-05-01 00:02:51 +03:00
Paul Sokolovsky
aa02e41056
upip: Allow to have commented packages in requirements.txt.
2017-05-01 00:02:33 +03:00
Paul Sokolovsky
9b1f0105a5
os: Release 0.6.
2017-04-29 19:43:00 +03:00
Paul Sokolovsky
43ce994fa6
os: listdir: Fix bytes vs str comparison warning.
2017-04-29 19:39:26 +03:00
Paul Sokolovsky
94f1584e48
umqtt.simple: Release 1.3.3.
2017-04-27 17:53:14 +03:00
Damien Mascord
2164c88483
umqtt.simple: Handle CONNECT messages longer than 127 bytes.
2017-04-27 17:52:00 +03:00
Paul Sokolovsky
30c2ac5601
itertools: Release 0.2.3.
2017-04-24 22:08:49 +03:00
stijn
45ff04ac75
itertools: Add accumulate function
2017-04-24 16:00:30 +02:00
Paul Sokolovsky
5cf6600e5e
uasyncio.core: Release 1.2.
2017-04-20 21:32:07 +03:00
Paul Sokolovsky
bb3057ffed
uasyncio.core: Fix scheduling in the presense of I/O completion callbacks.
...
wait() may finish prematurely due to I/O completion, and schedule new,
earlier than before tasks to run. So, after call to wait(), we need to
check current time and time of head task, and continue to wait if needed.
Recently introduced provisional utimeq.peektime() is used to optimize
querying time of a head task.
2017-04-08 01:34:57 +03:00
Paul Sokolovsky
c440f8466e
urequests: Release 0.4.3.
2017-03-25 17:47:27 +03:00
jens persson
6ce081133c
urequests: A Location-header with a 2XX status is not a redirect.
...
When using the POST method you get the Location of the new
object in a Location header but it's not a redirect.
For details see for example RFC2616 10.2.2 and 10.2.3
2017-03-25 17:45:51 +03:00
Paul Sokolovsky
53193ba2e7
uasyncio: benchmark: Modern browsers produce requests more than 256 bytes.
...
So, not all of the request was read, and a browser would report than
connection was reset.
2017-03-16 01:55:32 +03:00
Paul Sokolovsky
a355801fb1
uasyncio: wait: Remove no longer needed "if", artifact of epoll impl.
2017-03-13 00:44:58 +03:00
Paul Sokolovsky
4fc72c6032
uasyncio: Remove "epoll" references from previous Linux-only implementation.
2017-03-12 16:42:02 +03:00
Paul Sokolovsky
aa9bbe839e
uasyncio.core: Add test for full wait for a time-scheduled coro.
...
Specifically, that a coroutine scheduled to run at some time (after some
delay) waits requested time before it's run and not run prematurely in
case an I/O completion happens before it.
2017-03-12 16:02:06 +03:00
Paul Sokolovsky
48ead94116
uasyncio.core: Add test for fair scheduling.
2017-03-06 12:16:34 +01:00
Paul Sokolovsky
aba6935892
uasyncio: Release 1.1.1.
2017-02-16 00:04:39 +03:00
Paul Sokolovsky
853535802f
uasyncio.core: Release 1.1.1.
2017-02-15 23:49:39 +03:00
Paul Sokolovsky
67445f3334
uasyncio: benchmark: Rename test runners to correspond to underlying tests.
2017-02-15 11:19:10 +03:00
Paul Sokolovsky
6a4973331a
uasyncio: benchmark: Set higher queue length for "medium" test.
...
Following setting the default conservatively low in the module.
Surprisingly, heavy test appears to work with new default length
of 42.
2017-02-15 11:17:02 +03:00
Paul Sokolovsky
e3dac1d693
uasyncio: Allow to override queue length, while setting low default.
...
The default queue length is set to take under 0.5K RAM on 32-bit system.
A queue length can be passed to get_event_loop() to override it. This
change follows similar change in uasyncio.core.
2017-02-15 11:14:53 +03:00
Paul Sokolovsky
55b4161512
uasyncio.core: Set lower default queue len and allow to override it.
...
The default is set to be under 0.5K on 32-bit system. A queue length
can be passed to get_event_loop() to override it.
2017-02-15 03:27:59 +03:00
Paul Sokolovsky
12da3a81a6
copy: Use standard metadata, release is 3.3.3-2.
2017-02-08 01:23:00 +03:00
Paul Sokolovsky
d59af2da7b
upip: Release 1.1.5.
2017-02-08 01:15:58 +03:00
Paul Sokolovsky
1f91189e04
upip: Be sure to close socket if we abort with error early.
...
Need to close properly in more places.
2017-02-08 01:14:56 +03:00
Paul Sokolovsky
a86e7cf5a7
upip: Report host name resolve error in user friendly manner.
2017-02-08 01:12:45 +03:00
Paul Sokolovsky
068988085e
upip: Report package not found and similar errors with less noise.
...
While still allow to get full backtrace with --debug.
2017-02-08 00:39:47 +03:00
Paul Sokolovsky
f6668aae28
uasyncio: Release 1.1.
2017-01-28 01:58:05 +03:00
Paul Sokolovsky
1bf1c74ae5
uasyncio: Use builtin uerrno module.
2017-01-28 01:55:40 +03:00
Paul Sokolovsky
7043ee0702
uasyncio: Implement StreamReader.readexactly().
...
With a unit test.
2017-01-28 01:04:21 +03:00
Paul Sokolovsky
ec7b4b948b
uasyncio: StreamReader.readline: Handle partial reads.
...
Now it will return a complete line regardless if it may take several
partial reads to do that. Test included.
2017-01-27 01:09:19 +03:00
Paul Sokolovsky
a8d85e28d0
uasyncio: Fix partial reads in StreamReader.read/readline() methods.
...
If None (no data, would block) is received, need to wait for more data,
not just read it again immediately.
2017-01-26 22:20:29 +03:00
Paul Sokolovsky
f5fdebed34
collections.defaultdict: Release 0.3.
2017-01-26 01:35:10 +03:00
Paul Sokolovsky
69b65efd7e
collections.defaultdict: Implement __contains__.
...
Otherwise, "in" operation uses list protocol (enumeration using
__getitem__, which adds a key/value pair to teh underlying dict)
and ends with memory overflow.
2017-01-26 01:26:40 +03:00
Paul Sokolovsky
56dd0f94e9
uasyncio: Rename examples as such.
2017-01-04 18:01:05 +03:00
Paul Sokolovsky
3e37bdda56
uasyncio: Move test_call_soon.py to uasyncio.core, as it needs only it.
...
Also, rename as example.
2017-01-04 18:01:05 +03:00
Daniel Mizyrycki
4bc5ab902b
uasyncio: Add echo test
2017-01-01 19:06:54 -08:00
Daniel Mizyrycki
0f5d5cead7
uasyncio: Add minimum esp8266 support
2017-01-01 18:17:17 -08:00
Paul Sokolovsky
6256ad69c0
uasyncio: Release 1.0.1.
2016-12-30 22:32:26 +03:00
Paul Sokolovsky
f7c5fe1aea
uasyncio.core: Release 1.1.
2016-12-30 22:29:19 +03:00
Paul Sokolovsky
5403e0f710
uasyncio: Use DEBUG variable as imported from uasyncio.core.
...
Avoids heap allocation to render disabled debug logging strings.
2016-12-29 11:37:41 +03:00
Paul Sokolovsky
f29be360c0
uasyncio: wait: Add workaround against heap alloc on empty iteration.
...
"for a in ():" unconditionally allocates heap so far, per
https://github.com/micropython/micropython/issues/2716 . So, test for
empty result before iterating over it.
2016-12-28 10:25:31 +03:00
Paul Sokolovsky
9d5919dd1c
uasyncio.core: Implement sleep_ms as an awaitable object instead of coro.
...
This allows to await it without heap allocation.
2016-12-26 19:51:11 +03:00
Paul Sokolovsky
793bc05be5
uasyncio.core: Report unknown syscalls.
2016-12-26 19:11:38 +03:00
Paul Sokolovsky
24125191ce
uasyncio.core: Convert Sleep syscall arg (seconds) to milliseconds.
2016-12-23 00:35:42 +03:00
Paul Sokolovsky
222758f0c2
uasyncio.core: Switch to dedicated utimeq class.
...
Allows zero-allocation scheduling of tasks. As long as tasks don't use
await/yield from with coroutines, and don't allocate memory themselves,
there will be no allocation and GC.
2016-12-22 13:04:09 +03:00