micropython-lib/unix-ffi
Jim Mussared 8fc9edabf3 all: Standardise x.y.z versioning for all packages.
- For packages that were just x.y, update to x.y.0.
- For that were x.y.z-n, update to x.y.(z+1)

From now on we'll apply semver rules:
- MAJOR version when you make incompatible API changes
- MINOR version when you add functionality in a backward compatible manner
- PATCH version when you make backward compatible bug fixes

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2023-07-23 11:48:57 +10:00
..
_libc all: Replace metadata.txt with manifest.py. 2022-09-05 17:50:28 +10:00
_markupbase all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
cgi all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +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 top: Update Python formatting to black "2023 stable style". 2023-02-03 17:12:38 +11: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 all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +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 all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
gettext all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
glob glob: Fix require of os-path. 2023-02-01 12:07:28 +11:00
html.entities all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
html.parser all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
http.client top: Update Python formatting to black "2023 stable style". 2023-02-03 17:12:38 +11:00
machine top: Update Python formatting to black "2023 stable style". 2023-02-03 17:12:38 +11:00
multiprocessing unix-ffi: Move more unix-only packages to unix-ffi. 2022-09-05 17:50:42 +10:00
os all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
pwd all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +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 all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +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 all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +10:00
timeit all: Standardise x.y.z versioning for all packages. 2023-07-23 11:48:57 +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 top: Update Python formatting to black "2023 stable style". 2023-02-03 17:12:38 +11:00
README.md top: Update top-level docs. 2022-12-16 17:16:03 +11:00

README.md

Unix-specific packages

These are packages 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 packages 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.