python-poetry / python-poetry/poetry-plugin-export
Include "via" information, like "pip-compile"
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 335
- Forks
- 57
- Avg merge
- 1h 23m
- Merged PRs (30d)
- 3
Description
When pip-compile creates a requirements.txt, it will include a "via" line for each requirement: this line defines the rationale for why the requirement was included, such as "via -r requirements.in" or "via requests"
poetry has access to this information, it would be cool if it could be propagated to the exported requirements.txt file.
Example from pip-compile:
#
# This file is autogenerated by pip-compile with python 3.10
# To update, run:
#
# pip-compile
#
certifi==2021.10.8
# via requests
charset-normalizer==2.0.12
# via requests
idna==3.3
# via requests
requests==2.27.1
# via -r requirements.in
urllib3==1.26.9
# via requests
This would provide two benefits:
- It could make it easier to port from
pip-compile, since generatedrequirements.txtfiles between it andpoetry-plugin-exportwould be more similar- Selfishly, I'm mostly looking for this for my
pip-compile-cross-platformproject :)
- Selfishly, I'm mostly looking for this for my
- It removes a step from debugging: the associated
poetry.lockfile doesn't have to be located and perused, as the information is all available in the onerequirements.txtfile.
Contributor guide
No contributing guide indexed for this repository
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 by tracing the poetry-plugin-export path that produces requirements.txt and compare its output with pip-compile's "via" comments. Review how dependency relationships are represented in poetry.lock, then verify that exported requirements include rationale comments such as "via requests" and "via -r requirements.in" without changing dependency versions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100