micropython-lib/python-stdlib
Andrew Leech 8eced76f3e tokenize: Add minimal stub to support linecache. 2025-06-11 09:16:51 +10:00
..
__future__ __future__: Add "annotations". 2023-10-04 12:53:52 +11:00
abc
argparse all: Use non-u versions of built-in modules. 2024-06-14 10:35:06 +10:00
base64 base64: Remove struct dependency from manifest. 2024-09-23 11:27:36 +10:00
bdb bdb: Add bdb (debugging) module from cpython 3.10. 2025-06-11 09:16:51 +10:00
binascii all: Use non-u versions of built-in modules. 2024-06-14 10:35:06 +10:00
bisect
cmd
collections collections: Remove micropython-lib Python implementation of deque. 2024-05-15 14:12:14 +10:00
collections-defaultdict
contextlib contextlib: Use a list instead of deque for exit callbacks. 2024-06-17 11:18:48 +10:00
copy all: Use non-u versions of built-in modules. 2024-06-14 10:35:06 +10:00
curses.ascii
datetime datetime: Skip tests that require the host to be in UTC timezone. 2024-06-17 11:20:11 +10:00
errno errno: Add ENOTCONN constant. 2025-06-05 16:59:50 +10:00
fnmatch fnmatch: Don't require test.support, which no longer exists. 2024-06-17 11:20:34 +10:00
functools
gzip gzip: Fix recursion error in open() function. 2024-02-29 14:54:24 +11:00
hashlib hashlib: Only import pure Python hashlib when running test. 2024-06-17 11:20:42 +10:00
hashlib-core
hashlib-sha224
hashlib-sha256
hashlib-sha384
hashlib-sha512
heapq
hmac hmac: Fix passing in a string for digestmod argument. 2024-02-07 12:45:03 +11:00
html
inspect inspect: Implement iscoroutinefunction and iscoroutine. 2025-04-14 10:26:38 +10:00
io
itertools
keyword
linecache linecache: Add module from cpython 3.11. 2025-06-11 09:16:51 +10:00
locale
logging logging: Allow logging.exception helper to handle tracebacks. 2025-06-06 11:46:43 +10:00
operator
os stdlib/os: Provide namedtuple response for os.stat(). 2025-06-11 09:16:51 +10:00
os-path os-path: Implement os.path.isfile(). 2023-12-20 14:46:57 +11:00
pathlib pathlib: Add __rtruediv__ magic method to pathlib.Path. 2024-05-24 18:32:25 +10:00
pickle
pkg_resources all: Use non-u versions of built-in modules. 2024-06-14 10:35:06 +10:00
pkgutil
pprint
quopri quopri: Remove dependency on test.support and subprocess in unit test. 2024-06-17 11:18:05 +10:00
random
shutil
ssl ssl: Use "from tls import *" to be compatible with axtls. 2024-03-28 17:44:37 +11:00
stat
string
struct
tarfile
tarfile-write tarfile-write: Fix permissions when adding to archive. 2024-02-09 10:43:05 +11:00
tempfile
textwrap
threading
time time: Add README to explain the purpose of the time extension library. 2023-12-20 12:05:35 +11:00
tokenize tokenize: Add minimal stub to support linecache. 2025-06-11 09:16:51 +10:00
traceback
types
unittest unittest: Always use "raise" with an argument. 2024-11-18 12:00:38 +11:00
unittest-discover unittest-discover: Avoid adding test parent dir to sys.path. 2024-07-03 16:53:49 +10:00
uu
venv
warnings
zlib zlib: Add zlib module. 2023-07-25 18:19:51 +10:00
README.md

README.md

CPython Standard Library

The packages in this directory aim to provide compatible implementations of modules from the Python Standard Library, with the goal of allowing existing Python code to run un-modified on MicroPython.

Implementation

Many packages are implemented in pure Python, often based on the original CPython implementation. (e.g. collections.defaultdict)

Some packages are based on or extend from the built-in "micro" modules in the MicroPython firmware, providing additional functionality that didn't need to be written in C (e.g. collections, socket, struct).

Future plans (ideas for contributors):

  • Add README.md to each library explaining compatibility and limitations.