Poetry plugin: use parameters rather than env vars
Metadata
Current evaluation
Implemented parameter-based Poetry pip options in charmcraft#2044 (commit 0db15c18); the issue was later closed without a maintainer explanation.
Resolution: closed resolved
Reason: Merged commit 0db15c18 passed pip options as arguments, and current code uses poetry_pip_extra_args rather than relying on environment variables. The issue closure itself has no explanatory comment or linked reference.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
The Charmcraft version of the poetry plugin uses environment variables to set pip options rather than parameters. With https://github.com/canonical/craft-parts/issues/932 it makes better sense to put this in parameters. This needs to be done before the Charmcraft 3.3 release since it breaks those plugins
### Why it needs to get done
Requested by data platform team
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Implemented parameter-based Poetry pip options in charmcraft#2044 (commit 0db15c18); the issue was later closed without a maintainer explanation. | |
| stealth/space-bunny-alpha | — | closed resolved | Fixed by #2044 (commit 0db15c18): the Poetry plugin now passes --no-binary=:all: as a pip parameter instead of setting PIP_NO_BINARY in the build environment. | |
| stealth/space-bunny-alpha | — | closed stale | Poetry plugin parameterization request was closed without a linked PR or commit after about 646 days without a maintainer explanation or recorded resolution. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without a linked resolution or merge. The Charmcraft poetry plugin parameterization request was closed, likely abandoned or completed externally. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without a code change. The request to replace environment variables with parameters in the Charmcraft poetry plugin was deferred and tracked externally via Jira tickets CRAFT-3794 and CRAFT-3795. No fix or merge was applied. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation or merge. Only automated Jira sync comments exist, indicating the request was tracked internally but never resolved or merged. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without implementation. The request to replace environment variables with parameters in the Poetry plugin was not addressed, indicating it was likely abandoned or superseded. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/craft-parts#932
(confidence 100%)
The issue cites this craft-parts change as the reason to move Poetry pip configuration from environment variables to parameters.
-
Likely Fixed By:
canonical/charmcraft#2044
(confidence 96%)
Commit 0db15c18 changed the Poetry plugin to set --no-binary=:all: as a pip argument and use pip extra-argument parameters.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1840 [EXPERIMENTAL]: poetry plugin | charmcraft | closed | Experimental Poetry plugin PR closed unmerged in favour of charmcraft#1899, merged as commit 8b748f3e, adding charmcraft/parts/plugins/_poetry.py and _python.py with charm-oriented defaults. | |
| #18 Poetry integration | charmcraft | closed | Poetry support was ultimately delivered as Charmcraft-specific python/poetry craft-parts plugins, added in PR #1899 (commit 8b748f3e, 2023), superseding the older build.py requirements.txt idea; issue closed once shipped. | |
| #2044 fix(plugins/poetry): set --no-binary=:all: by param | charmcraft | merged | Merged charmcraft PR #2044 to pass Poetry's --no-binary=:all: as a parameter, making pip option ordering deterministic; fixes #2025 and relies on craft-parts PR #940. | |
| #940 feat(plugins/poetry): add poetry and pip extra args | craft-parts | merged | Merged into main as commit e55d6bcd. PR #940 added poetry-export-extra-args and poetry-pip-extra-args properties to the Poetry plugin for advanced users, with docs and unit tests. | |
| #2026 Change poetry plugin keep bins default to True | charmcraft | closed | Superseded by charmcraft#2036, merged as craft-parts commit 7fa20644; Python and Poetry charms now always retain a portable venv/bin/activate without Python binaries. | |
| #2053 docs: fix poetry-with description | charmcraft | merged | Merged into main via charmcraft#2053 (commit 455880a4), clarifying that Poetry's --with is required for optional and non-optional dependencies. | |
| #1899 feat: add Python and Poetry plugins | charmcraft | merged | Merged into main via commit 8b748f3e, adding Charmcraft-specific Python and Poetry plugins with charm-oriented venv, pip, source-copy, and binary defaults. |