Skip to main content

Micropython stdlib is a reduced and augmented copy of typeshed's stdlib for use by MicroPython stub packages

Project description

micropython-stdlib-stubs

A limited size copy of typesheds stdlib directory. https://github.com/python/typeshed/tree/main/stdlib

This is used as a dependency in the micropython-*-stub packages to allow overriding of some of the stdlib modules with MicroPython specific implementations.

MicroPython specific updates to:

  • collections

If you have suggestions or find any issues with the stubs, please report them in the MicroPython-stubs Discussions

For an overview of Micropython Stubs please see: https://micropython-stubs.readthedocs.io/en/main/

Building

This is a short description of the steps taken to create or update the stubs for the micropython-stdlib-stubs distribution. this package is built using uv build and published using uv publish.

There are two possible reasons to rebuild

  1. Rebuild in order to update from the reference-stubs or ducument-stubs. This will use the same typeshed stubs, and infuse or enrich them with new information from MicroPython.
  2. Rebuild in order to update to a newer version of theof the typeshedrepo.for this you will need to manually advance the typeset repo to a newer version. Perhaps the newest versionand then rerun the update script it might be that due to the changes in the base 5 stubs that you'll need to make updates to the updatescript in order to accommodate for that.

Steps

  • clone the typeshed repository

    cd repos
    git clone https://github.com/python/typeshed.git
    cd typeshed
    git checkout <commit-hash>
    
  • update the version in pyproject toml to the new version ( .postnn)

  • from the publish/micropython-stdlib-stubs directory

    • run python build.py
  • update and publish the micropython-stdlib-stubs package

    uv publish
    
  • commit the changes to the micropython-stdlib-stubs repository

asyncio notes

asyncio

  • no _asyncio.pyi stubs to avoid conflict with stdlib re-use

  • Generators are not values - but are always callables, or coroutines so rewrite open_connection: Generator ## = <generator> to async def open_connection () -> Callable[..., Awaitable[Tuple[StreamReader, StreamWriter]]] or similar

Publish to PyPi

Publish using uv publish.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

micropython_stdlib_stubs-1.28.0.post4-py3-none-any.whl (149.0 kB view details)

Uploaded Python 3

File details

Details for the file micropython_stdlib_stubs-1.28.0.post4-py3-none-any.whl.

File metadata

  • Download URL: micropython_stdlib_stubs-1.28.0.post4-py3-none-any.whl
  • Upload date:
  • Size: 149.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for micropython_stdlib_stubs-1.28.0.post4-py3-none-any.whl
Algorithm Hash digest
SHA256 e43714c7562e93b7b309ace202ca1b7a4b2afbdb6a6b10f51e4d91af5ddcbbb5
MD5 11a94f64da1c2fa1f16788f7bd09980b
BLAKE2b-256 aa742e618ae24f03d5127e7fdc66cc27de73c896ad6b1604c05618736ef4b2ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page