Skip to content

Poetry Versioning

Identifier

poetry

References

Ranges/Constraints

✅ Ranges are supported.

Valid rangeStrategy values are: bump, widen, pin, replace

Description

Poetry versioning is a little like a mix of PEP440 and SemVer.

Currently Renovate's implementation is based off npm versioning. This works by parsing versions using the same patterns and similar normalization rules as Poetry, passing them to the npm versioning implementation, and then reversing the normalizations. This allows Renovate to meaningfully compare the SemVer-style versions allowed in pyproject.toml to the PEP440 representations used on PyPI. These are equivalent for major.minor.patch releases, but different for pre-, post-, and dev releases.


Open items

The below list of features and bugs were current when this page was generated on December 22, 2024.

Feature requests

  • Support poetry range syntax with non-semver versions #28514

Bug reports

  • poetry: ^1.2.3.0 (caret with four components) are not detected #26940