Skip to content

mip-installable version of microdot #67

@jimmo

Description

@jimmo

Thanks @miguelgrinberg for this fantastic library. I have lost count of how many times I have recommended it in the MicroPython forums and Discord!

The MicroPython project has recently implemented a long-standing TODO which is to upgrade our package manager and downloadable package index (formerly upip, now mip). See https://docs.micropython.org/en/latest/reference/packages.html

It would be great to be able to say to people "just run >>> mip.install("microdot") (or more usefully, per-implementation targets, e.g. "microdot-async", "microdot-thread" etc). And similarly mpremote mip install microdot for installation from a PC.

In the short term, it would be straightforward to take advantage of the "install-from-github" functionality of mip. See https://github.com/jimmo/micropython-mlx90640 for an example. You could provide a .json file for each of the implementations. The disadvantage of this approach is that the files would not be bytecode compiled, but I am happy to send a PR for this if you're interested.

I suspect that moving microdot into micropython-lib probably isn't what you want, but just in case that does work for you, then that would be an easy solution to just getting it into the index and providing bytecode-compiled versions. This would also immediately enable it to work via require() in a frozen manifest.

We can also investigate a way of adding third-party projects into the index... I'm not super keen on setting a precedent of submodules, but maybe we can come up with something. I'm not sure mirroring the project there is a good idea, but would also work. Maybe we can have a way to have a microdot package that just contains a manifest.py that forwards to here (and make require() able to handle this).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions