poetry-plugin-export
poetry-plugin-export copied to clipboard
Circular dependency between poetry and poetry-plugin-export
Note:
- poetry depends on poetry-plugin-export https://github.com/python-poetry/poetry/blob/master/pyproject.toml#L36
- poetry-plugin-export depends on poetry https://github.com/python-poetry/poetry-plugin-export/blob/main/pyproject.toml#L21
This prevents bazel, which is circular-dependency-phobic, from building targets which depend on poetry. I believe the motivation for the dependencies are that
- Its nice if everyone who installs poetry just gets this export functionality. plugin-export makes poetry better
- Who would install plugin-export and not poetry? This dependency makes pip install do something reasonable.
I see three possible remediations: A) Inline poetry-plugin-export since its not too much python and is always installed now anyway B) Break the plugin-export dependency on poetry. This may add friction but the error messages should be obvious about whats going on. C) Break the poetry dependency on plugin-export. This would probably require some code change so that poetry would discover if the extra package was present.
I think B is the easiest, but I'm really not sure. Would love to hear your thoughts.
See python-poetry/poetry#5980 and python-poetry/poetry#6441 for some discussion.
of those three B is the one that is definitely wrong! the plugin definitely does depend on poetry.