diff --git a/extmod/asyncio/manifest.py b/extmod/asyncio/manifest.py index 0aba5b185..e8dc76432 100644 --- a/extmod/asyncio/manifest.py +++ b/extmod/asyncio/manifest.py @@ -13,3 +13,6 @@ package( base_path="..", opt=3, ) + +# Backwards-compatible uasyncio module. +module("uasyncio.py", opt=3) diff --git a/extmod/asyncio/uasyncio.py b/extmod/asyncio/uasyncio.py new file mode 100644 index 000000000..67e6ddcfa --- /dev/null +++ b/extmod/asyncio/uasyncio.py @@ -0,0 +1,8 @@ +# This module just allows `import uasyncio` to work. It lazy-loads from +# `asyncio` without duplicating its globals dict. + + +def __getattr__(attr): + import asyncio + + return getattr(asyncio, attr) diff --git a/tests/extmod/asyncio_as_uasyncio.py b/tests/extmod/asyncio_as_uasyncio.py new file mode 100644 index 000000000..612292299 --- /dev/null +++ b/tests/extmod/asyncio_as_uasyncio.py @@ -0,0 +1,12 @@ +try: + import uasyncio + import asyncio +except ImportError: + print("SKIP") + raise SystemExit + +x = set(dir(uasyncio)) +y = set(dir(asyncio)) - set(["event", "lock", "stream", "funcs"]) + +print(x - y) +print(y - x) diff --git a/tests/extmod/asyncio_as_uasyncio.py.exp b/tests/extmod/asyncio_as_uasyncio.py.exp new file mode 100644 index 000000000..9405b8010 --- /dev/null +++ b/tests/extmod/asyncio_as_uasyncio.py.exp @@ -0,0 +1,2 @@ +set() +set()