Poetry integration
Metadata
Current evaluation
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.
Resolution: closed resolved
Reason: After chipaca's initial 2020 refusal, the request was reopened in 2021 and delivered in a different form: PR #1899 (commit 8b748f3e, "feat: add Python and Poetry plugins") added charmcraft/parts/plugins/_poetry.py and _python.py, registered in charmcraft/parts/__init__.py under get_app_plugins(), with follow-up fixes in #1968, #2044 and #2835 and migration docs (docs/howto/migrate-plugins/charm-to-poetry.rst).
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | 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. | |
| stealth/space-bunny-alpha | — | closed resolved | Poetry support shipped through Charmcraft-specific Python and Poetry plugins in canonical/charmcraft#1899, commit 8b748f3e. | |
| stealth/space-bunny-alpha | — | closed resolved | Poetry support was delivered through Python and Poetry plugins in merged PR #1899 (commit 8b748f3e), providing the requested dependency workflow. | |
| qwen/qwen3.6-35b-a3b | — | — | Maintainers rejected native Poetry integration due to maintenance overhead. A workaround using poetry export to generate requirements.txt was suggested. The feature request remains unimplemented and the issue is closed. | |
| qwen/qwen3.6-35b-a3b | — | — | Rejected due to maintenance burden and project scope. A workaround exporting Poetry dependencies to requirements.txt was proposed but never implemented. The issue remains closed and abandoned. | |
| qwen/qwen3.6-35b-a3b | — | — | Rejected. Maintainers declined implementing Poetry integration due to high maintenance burden and a need to keep the project narrowly focused. The suggested workaround to export Poetry dependencies to requirements.txt was not adopted, and the feature remains unimplemented. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Rejected due to maintenance overhead. A contributor suggested using poetry export to generate requirements.txt as a workaround. The issue was closed without implementation, and later attempts to reopen it failed. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/charmcraft#1899
(confidence 95%)
Merged PR adding Charmcraft-specific Python and Poetry plugins (commit 8b748f3e).
-
Related To:
canonical/charmcraft#1873
(confidence 88%)
Tracking issue for creating Charmcraft-specific python/poetry plugins, implemented by #1899.
-
Superseded By:
canonical/charmcraft#1840
(confidence 70%)
Experimental Poetry plugin PR closed unmerged in favour of #1899.
-
Related To:
canonical/charmcraft#2044
(confidence 60%)
Later fix to the poetry plugin (commit 0db15c18) using params instead of env vars.
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. | |
| #1873 Create charmcraft-specific versions of the upstream `python` and `poetry` plugins | charmcraft | closed | Charmcraft-specific Python and Poetry plugins were added by merged PR #1899 (commit 8b748f3e), replacing the experimental work in #1840. | |
| #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. | |
| #1843 Add charmcraft-specific versions of upstream python plugins | charmcraft | open | Request to add charmcraft-specific python/poetry plugins. Implemented by commit 8b748f3e (PR #1899) alongside #1873; the plugins are registered as 'python'/'poetry' in get_app_plugins() and have received later fixes (#1968, #2044, #2835). | |
| #701 Enable the poetry plugin | rockcraft | closed | Poetry support was implemented by merged PR #717 (commit 422a2e9b), adding a Rockcraft-specific Poetry plugin and shared Python behavior for release 1.6.0. | |
| #2025 Poetry plugin: use parameters rather than env vars | charmcraft | closed | Implemented parameter-based Poetry pip options in charmcraft#2044 (commit 0db15c18); the issue was later closed without a maintainer explanation. | |
| #820 feat(plugin): add poetry plugin | craft-parts | merged | Merged Poetry plugin support in commit 8b0d76c8, adding first-class build-system handling via poetry install and resolving #707. | |
| #1940 feat(docs): add python and poetry plugin docs | charmcraft | merged | PR #1940 merged as commit 408650c8, adding Python and Poetry plugin documentation (+144 lines, 6 files). Builds on #1939 (craft-parts common docs) and required craft-parts#872 anchors; merged despite12 unresolved review comments. | |
| #5025 Enable the poetry plugin | snapcraft | closed | Poetry source support delivered by merged PR canonical/snapcraft#5090 (commit 5a42f0aa5), adding a Snapcraft-specific Poetry plugin for core22/core24, closing the request. Tracked internally as CRAFT-3363. | |
| #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. |