This is a repository of libraries designed to be useful for writing MicroPython applications.
 
 
Go to file
Paul Sokolovsky 2ff5940d92 all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
__future__ all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
_libc all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
_markupbase all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
abc all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
argparse argparse: Release 0.4. 2018-02-02 01:22:59 +02:00
array all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
asyncio all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
asyncio_slow asyncio_slow: Rename examples as such. 2017-09-30 18:40:23 +03:00
base64 all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
binascii all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
binhex all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
bisect
calendar all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
cgi all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
cmd all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
code all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
codecs all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
codeop all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
collections all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
collections.defaultdict all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
collections.deque all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
concurrent.futures all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
contextlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
copy all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
cpython-uasyncio all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
csv all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
curses all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
curses.ascii all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
datetime all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
dbm all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
decimal all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
difflib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
dis all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
dummy_threading all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.charset all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.encoders all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.errors all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.feedparser all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.header all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.internal all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.message all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.parser all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
email.utils all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
errno all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
fcntl all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
ffilib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
fnmatch all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
formatter all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
fractions all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
ftplib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
functools all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
getopt all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
getpass all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
gettext all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
glob all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
gzip all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
hashlib hashlib: Release 2.4.0-4. 2018-01-20 11:51:02 +02:00
heapq all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
hmac all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
html all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
html.entities all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
html.parser all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
http.client all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
imaplib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
imp all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
importlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
inspect all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
io all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
ipaddress all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
itertools all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
json
keyword
linecache all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
locale all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
logging all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
machine all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
mailbox all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
mailcap all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
math all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
mimetypes all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
multiprocessing all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
nntplib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
numbers all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
operator all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
optparse all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
os all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
os.path all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pathlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pdb all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pickle pickle: Release 0.1. 2018-01-21 14:51:45 +02:00
pickletools all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pkg_resources all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pkgutil all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
platform all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
poplib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
posixpath all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pprint all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
profile all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pty all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pwd all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pyb
pystone all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
pystone_lowmem all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
queue all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
quopri all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
random all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
re-pcre all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
readline all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
reprlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
runpy all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
sched all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
select all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
selectors all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
shelve all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
shlex all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
shutil all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
signal all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
smtplib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
socket all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
socketserver all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
sqlite3 all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
ssl ssl: Release 0.1. 2018-01-10 00:13:04 +02:00
stat all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
statistics all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
string all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
stringprep all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
struct all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
subprocess all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
sys all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
tarfile all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
telnetlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
tempfile all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
test test: test_pep380.py: Update to pass on MicroPython. 2015-07-08 00:07:48 +03:00
test.pystone all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
test.support all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
textwrap all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
threading all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
time all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
timeit all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
trace all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
traceback all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
tty all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
types
typing all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uaiohttpclient uaiohttpclient: Release 0.5.1. 2018-01-14 11:51:59 +02:00
uasyncio uasyncio: Release 1.4.1. 2018-01-23 23:23:19 +02:00
uasyncio.core all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uasyncio.queues all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uasyncio.synchro all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uasyncio.udp all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uasyncio.websocket.server uasyncio.websocket.server: Add echo server example. 2018-02-02 01:35:11 +02:00
ucontextlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
ucurses all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
udnspkt all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
umqtt.robust all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
umqtt.simple all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
unicodedata all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
unittest all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
upip upip: Release 1.2.3. 2018-01-27 13:22:59 +02:00
upysh all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
urequests urequests: Release 0.6. 2018-01-23 00:25:30 +02:00
urllib
urllib.parse all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
urllib.urequest urllib.urequest: Release 0.6. 2018-01-23 00:27:06 +02:00
utarfile all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uu all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
uuid all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
venv all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
warnings all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
weakref all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
xmltok all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
zipfile all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
zlib all: setup.py: Consistently update author and maintainer fields. 2018-02-02 20:25:27 +02:00
.gitignore
CONTRIBUTING.md CONTRIBUTING.md: Add file with a link to Contributor Guidelines. 2015-05-03 21:07:17 +03:00
LICENSE
Makefile
README.md README: Mention that some modules may require pfalcon's fork. 2018-01-07 16:04:59 +02:00
make_metadata.py make_metadata: Support multi-level packages. 2018-02-02 20:19:18 +02:00
optimize_upip.py optimize_upip.py: Rework inclusion/exclusion logic. 2017-05-05 13:01:54 +03:00
sdist_upip.py sdist_upip: Don't treat files at the toplevel dir as resources. 2017-12-15 00:20:59 +02:00

README.md

micropython-lib

micropython-lib is a project to develop a non-monolothic standard library for "advanced" MicroPython fork (https://github.com/pfalcon/micropython). Each module or package is available as a separate distribution package from PyPI. Each module comes from one of the following sources (and thus each module has its own licensing terms):

  • written from scratch specifically for MicroPython
  • ported from CPython
  • ported from some other Python implementation, e.g. PyPy
  • some modules actually aren't implemented yet and are dummy

Note that the main target of micropython-lib is a "Unix" port of the aforementioned fork of MicroPython. Actual system requirements vary per module. Majority of modules are compatible with the upstream MicroPython, though some may require additional functionality/optimizations present in the "advanced" fork. Modules not related to I/O may also work without problems on bare-metal ports, not just on "Unix" port (e.g. pyboard).

Usage

micropython-lib packages are published on PyPI (Python Package Index), the standard Python community package repository: http://pypi.python.org/ . On PyPI, you can search for MicroPython related packages and read additional package information. By convention, all micropython-lib package names are prefixed with "micropython-" (the reverse is not true - some package starting with "micropython-" aren't part of micropython-lib and were released by 3rd parties).

Browse available packages via this URL.

To install packages from PyPI for usage on your local system, use the upip tool, which is MicroPython's native package manager, similar to pip, which is used to install packages for CPython. upip is bundled with MicroPython "Unix" port (i.e. if you build "Unix" port, you automatically have upip tool). Following examples assume that micropython binary is available on your PATH:

$ micropython -m upip install micropython-pystone
...
$ micropython
>>> import pystone
>>> pystone.main()
Pystone(1.2) time for 50000 passes = 0.534
This machine benchmarks at 93633 pystones/second

Run micropython -m upip --help for more information about upip.

Development

To install modules during development, use make install. By default, all available packages will be installed. To install a specific module, add the MOD=<module> parameter to the end of the make install command.

If you would like to trace evolution of MicroPython packaging support, you may find following links useful (note that they may contain outdated information):

Guidelines for packaging MicroPython modules for PyPI: