micropython-lib/unix-ffi
Jim Mussared 796a5986cd unittest: Move back to python-stdlib.
In order to make this more suitable for non-unix ports, the discovery
functionality is moved to a separate 'extension' module which can be
optionally installed.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2022-09-13 09:57:04 +10:00
..
_libc all: Replace metadata.txt with manifest.py. 2022-09-05 17:50:28 +10:00
_markupbase unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
cgi unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.charset unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.encoders unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.errors unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.feedparser unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.header unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.internal unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.message unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.parser unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
email.utils unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
fcntl unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
ffilib all: Replace metadata.txt with manifest.py. 2022-09-05 17:50:28 +10:00
getopt unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
gettext unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
glob unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
html.entities unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
html.parser unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
http.client unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
machine unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
multiprocessing unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
os unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
pwd unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
pyb all: Run black over all code. 2021-05-27 15:50:04 +10:00
re unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
select unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
signal unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
socket unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
sqlite3 unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
test.support unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
time unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
timeit unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
tty all: Replace metadata.txt with manifest.py. 2022-09-05 17:50:28 +10:00
ucurses unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
urllib.parse unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
README.md unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00

README.md

Unix-specific libraries

These are libraries that will only run on the Unix port of MicroPython, or are too big to be used on microcontrollers. There is some limited support for the Windows port too.

Note: This directory is unmaintained.

Background

The libraries in this directory provide additional CPython compatibility using the host operating system's native libraries.

This is implemented either by accessing the libraries directly via libffi, or by using built-in modules that are only available on the Unix port.

In theory, this allows you to use MicroPython as a more complete drop-in replacement for CPython.

Usage

To use a unix-specific library, pass unix_ffi=True to require() in your manifest file.

require("os", unix_ffi=True) # Use the unix-ffi version instead of python-stdlib.