How does '--implementation' option of pip install work?

I’m experimenting with creating separate wheels for MicroPython. I created a regular wheel, unpacked it, changed the first part of the tag from py3 to micropython and packed it into a wheel with “micropython-none-any” tag. The upload to PyPI was successful (minipip · PyPI, not actually relevant for this projectj, ust a test), but I don’t know how to install it.

Tried

pip install --target temp_dir --implementation micropython minipip --only-binary=:all:

but the regular py wheel was downloaded.

The implementation is used in conjunction with --python-version (because different interpreter versions are considered different implementations), so you’ll need to upload your wheels using the implementation name like micropython1 and use --implementation micropython --python-version 1.

Yes, this is unintuitive (and we shouldn’t assume every interpreter implementation has major versions like this), but we haven’t figure out a better design for this yet. Sorry about that.

Thank you! With your suggestion I got it working.