python-poetry / python-poetry/poetry
Make poetry.masonry.api plugin-aware
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 34.3k
- Forks
- 2.5k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 30
Description
- I have searched the issues of this repo and believe that this is not a duplicate.
- I have searched the documentation and believe that my question is not covered.
Feature Request
Currently, poetry.masonry.api just re-exports some items from Poetry Core, which means they're not plugin-aware:
from poetry.core.masonry.api import build_sdist
...
__all__ = [
"build_sdist",
...
]
Would it be feasible to wrap these so that they support plugins? My use case is poetry-dynamic-versioning-plugin, which computes a version from VCS info. However, a PEP 517-based pip install --no-clean git+ssh://git@github.com/org/repo.git@v1.0.0-pre won't activate the plugin, even with the following build-system configuration:
[build-system]
requires = ["poetry>=1.2.0b1", "poetry-dynamic-versioning-plugin"]
build-backend = "poetry.masonry.api"
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with src/poetry/masonry/api.py and the referenced Poetry Core exports, then reproduce the PEP 517 installation scenario described in the issue. Determine the required plugin-aware behavior for the shown build-system configuration; the work is done when that configuration activates the plugin during the build backend invocation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100