-
Notifications
You must be signed in to change notification settings - Fork 1
feat: Publish individual drivers to PyPI as micropython-steami-* packages. #340
Copy link
Copy link
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Description
Publish each driver as a separate PyPI package so developers can `pip install micropython-steami-bme280` into their venv for IDE autocompletion and type checking.
Context
While `mip` (#338) is the primary on-device distribution channel, PyPI is useful for:
- IDE autocompletion (Pylance, Pyright) without manual stub setup
- CI/CD pipelines that need to lint or test against driver APIs
- Discoverability in the broader Python ecosystem
Naming convention
`micropython-steami-` (standard `micropython-` prefix + `steami-` namespace)
Examples: `micropython-steami-bme280`, `micropython-steami-ism330dl`, `micropython-steami-ssd1327`
Tasks
- Create `lib//pyproject.toml` for each driver with PyPI metadata
- Add `Programming Language :: Python :: Implementation :: MicroPython` classifier
- Create PyPI account/organization for the project
- Add PyPI API token as GitHub Actions secret
- Add publish job to `.github/workflows/release.yml` that builds and uploads wheels after semantic-release
- Update version sync (ci: Sync driver versions on release via semantic-release. #339) to include per-driver `pyproject.toml`
- Test: `pip install micropython-steami-bme280` → `from bme280 import BME280` works
Depends on
- feat: Add mip package.json for all drivers. #338 (mip package.json — do this first)
- ci: Sync driver versions on release via semantic-release. #339 (version sync)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request