Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 12, 2025

This PR contains the following updates:

Package Change Age Confidence
micropython-stubber ==1.23.2==1.26.3 age confidence

Release Notes

Josverl/micropython-stubber (micropython-stubber)

v1.26.3

Compare Source

v1.26.2

What's Changed

  • fixes handling rst files with a toc in the middle of the file by @​Josverl in #​673
  • feat: make stubs depend on same majorminor stdlib-stubs by @​Josverl in #​677
  • Feat: Implement literal docstring merging from documentation into stub files with comprehensive test coverage by @​Copilot in #​680
  • Refactor _info() god function to improve code maintainability by @​Copilot in #​687
  • Replace black with ruff format for Python code formatting by @​Copilot in #​678

Documentation

  • Add comprehensive GitHub Copilot instructions for micropython-stubber development by @​Copilot in #​684
  • Fix installation procedure guide issues with version validation, error messages, and unified fallback lists by @​Copilot in #​681
  • Add comprehensive documentation and CLI enhancements for custom MicroPython builds with full test coverage by @​Copilot in #​682
  • Fix Sphinx build failure in Read the Docs due to myst-parser version incompatibility by @​Copilot in #​689

Dependencies:

Full Changelog: Josverl/micropython-stubber@v1.25.1...v1.26.2

v1.25.1

What's Changed

  • add support for @​mp_available decorator and related functionality
  • Improve post-processing function parameters
  • Make detection of CONSTANT during merge more robust.
  • Add support for custom stdlib stubs and enhance function handling by @​Josverl in #​658
  • fix: source_stubs in database were never checked or updated
  • build(deps-dev): bump jinja2 from 3.1.5 to 3.1.6 by @​dependabot in #​659
  • fix: update mpflash version and improve version test assertion by @​Josverl in #​662
  • build(deps): bump h11 from 0.14.0 to 0.16.0 by @​dependabot in #​664
  • build(deps-dev): bump setuptools from 75.8.2 to 78.1.1 by @​dependabot in #​666

Full Changelog: Josverl/micropython-stubber@v1.24.4...v1.25.1

v1.24.1

Compare Source

v1.24.0: Revise stub merge architecture to provide detailed parameter type hints and return types

The main change is a refactor of the docstub merging process, which now makes use of a set of reference stubs with parameter type information that is missing from , or only avaialble in the description, the micropython documentation.

The new build-chain follows the following steps and logic:

The subber tool is used to :

  1. switch to a specific version of the micropython library documentation.
    stubber clone
    stubber switch stable

  2. Generate docstubs from the micropython library documentation.
    This part has recieved significant updates , and makes use of new additions to the code-refactoring and merging logic that has received significant updates.
    tghis allows to enrich the doc-stubs with return and parameter type information from the reference stubs.
    The result has the docstrings based on the micropython documentation, and the parameter and return types are based on the reference-stubs.
    This also allows for methods or classes that are not mentioned or missing in the MicroPython documentation to be included in the docstubs.
    stubber docstubs --enrich

  3. Optionally: update micropython-stdlib-stubs with the new docstubs.
    Updating the docstubs also takes advantage of the new functionality to enrich the target with the parameter and return type information from the reference-stubs.
    (also see the stdlib section below)
    python build.py (in stubs-repo: publish\micropython-stdlib-stubs)

  4. Generate stubs for the frozen modules for the specific version of micropython. [can be done out-of-sequence]
    This retrieves the frozen modules for all ports and boards from the micropython repository, and generates the stubs for them.
    These stubs are enriched with the parameter and return type information from the doc-stubs.
    stubber frozen --version {version}

  5. Create firmware-stubs for a specific MCU and firmware. [can be done out-of-sequence]
    The firmware shouild be flashed to the MCU, and it should be conencted via USB or serial.
    stubber MCU

  6. The MCU-stubs are merged with the docstubs.
    stubber merge --port {port} --board {board} --version {version}

  7. During this step the distribution packages are built by combining files from the merged-stubs, the frozen-stubs , and a few micropython-core files.
    Only a few chages have been done to this part of the build-chain.
    All package information is now stored in a SQLite database for change detection.
    stubber build --port {port} --board {board} --version {version}

  8. Publish the distribution packages to pypi , and update the database with the relevant hashes for change detection.
    Only a few chages have been done to this part of the build-chain.
    All package information is now stored in a SQLite database for change detection.
    stubber publish --port {port} --board {board} --version {version}

Docstub Merges & Enrichment

Refactors docstub merging, adds type details, and streamlines overload handling.

  • stubber: Merge @ overload (series of commits 1–5)
    Add functionality to merge source and target containing @ overload decorators, where the the source-stub can have multiple decoroators.
  • Added ability to merge only the parameter type info, without overwriting existing docstrings.
  • Updated algorithm to match the source and destination candidates to avoid applying the same source to multiple destinations and other forms of duplication
  • Reduced the number of module specific configurations that were part of stubber.rst.lookup ( can now be done directly in the reference-stubs)
  • Merge TypeAliases / TypeVars
    With the additional type information in the reference-stubs, the docstubs can now be enriched with the parameter and return type information from the reference-stubs. For this more TypeAliases and TypeVars have been added to the reference-stubs, that also need to be taken into account during the merge.
    The merge process has been updated to handle these cases.

What's Changed

Full Changelog: Josverl/micropython-stubber@v1.23.1...v1.24.0

v1.23.1

Compare Source

v1.20.0

Compare Source

v1.17.2

Compare Source

v1.17.0

Compare Source


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Dec 12, 2025
@renovate renovate bot enabled auto-merge (squash) December 12, 2025 04:47
@renovate
Copy link
Contributor Author

renovate bot commented Dec 12, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: poetry.lock
Updating dependencies
Resolving dependencies...


The current project's supported Python range (>=3.9,<3.12) is not compatible with some of the required packages Python requirement:
  - micropython-stubber requires Python <4.0,>=3.9.2, so it will not be satisfied for Python >=3.9,<3.9.2

Because micropy-cli depends on micropython-stubber (1.26.3) which requires Python <4.0,>=3.9.2, version solving failed.

  • Check your dependencies Python requirement: The Python requirement can be specified via the `python` or `markers` properties
    
    For micropython-stubber, a possible solution would be to set the `python` property to ">=3.9.2,<3.12"

    https://python-poetry.org/docs/dependency-specification/#python-restricted-dependencies,
    https://python-poetry.org/docs/dependency-specification/#using-environment-markers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants