Poetry StickyWheel Plugin
A poetry plugin to pin version dependencies when building packages with local folder dependencies.
🛠 Installing
poetry self add poetry-stickywheel-plugin
📚 Help
This plugin will rewrite folder dependencies in your poetry projects dependencies with version dependencies.
The version will be extracted from the dependencies pyproject.toml and applied as a semver match.
Assuming a pyproject.toml
such as:
[tool.poetry]
name = "a"
version = "0.1.0"
description = ""
authors = []
readme = "README.md"
[tool.poetry.dependencies]
b = {path = "../b", develop = true}
and the dependency pyproject.toml
[tool.poetry]
name = "b"
version = "1.2.3"
description = ""
authors = []
readme = "README.md"
the dependency will be rewritten as if it had been defined as:
b = "^1.2.3"
Configuration
You can define a section in your pyproject.toml
file named tool.stickywheel
, to configure various options.
Dependency constraint strategy
The default strategy is semver
(described in the "Help" section above), but there are other choices:
strategy | version | result |
---|
semver | 1.2.3 | ^1.2.3 |
minimum | 1.2.3 | >=1.2.3 |
exact | 1.2.3 | 1.2.3 |
To override the default, add strategy
to the configuration. For example:
[tool.stickywheel]
strategy = "exact"
⚖️ Licence
This project is licensed under the MIT licence.
All documentation and images are licenced under the
Creative Commons Attribution-ShareAlike 4.0 International License.
📝 Meta
This project uses Semantic Versioning.