Create charmcraft-specific versions of the upstream `python` and `poetry` plugins
Metadata
Current evaluation
Charmcraft-specific Python and Poetry plugins were added by merged PR #1899 (commit 8b748f3e), replacing the experimental work in #1840.
Resolution: closed resolved
Reason: PR #1899 was merged into main as commit 8b748f3e, adding Charmcraft-specific Python and Poetry plugins with charm-oriented installation, strict dependency, and source-build defaults.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
Basically the plugin work done in https://github.com/canonical/charmcraft/pull/1840 needs to be tested and expanded to the `python` plugin too.
### Why it needs to get done
Decoupling from the charm plugin.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Charmcraft-specific Python and Poetry plugins were added by merged PR #1899 (commit 8b748f3e), replacing the experimental work in #1840. | |
| stealth/space-bunny-alpha | — | closed resolved | Charmcraft-specific Python and Poetry plugins were added by merged PR #1899 (8b748f3), superseding experimental PR #1840 and implementing the plugin work requested here. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without implementation. The request to develop charmcraft-specific python and poetry plugins with strict dependencies and source builds was deferred. No fix or merge occurred, indicating the task was abandoned or superseded. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation and deferred to Jira ticket CRAFT-3361. Requirements specify strict dependencies and source builds. No merge or resolution details are provided. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. Development of charmcraft-specific python and poetry plugins with strict dependencies and source builds was not pursued and the request appears abandoned. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed and deferred to internal Jira ticket CRAFT-3361. No implementation or merge occurred. The task to create decoupled charmcraft-specific python and poetry plugins with strict dependencies and source builds remains unaddressed. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/charmcraft#1899
(confidence 100%)
Merged implementation adding the requested Python and Poetry plugins.
-
Related To:
canonical/charmcraft#1840
(confidence 96%)
Experimental plugin work that PR #1899 tested, expanded, and superseded.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #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). | |
| #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. | |
| #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. | |
| #1140 Reconsider python package dependency management | charmcraft | closed | Legacy charm-plugin dependency redesign was superseded by dedicated Python and Poetry plugins, added in Charmcraft 3.3.0 by PR #1899 (8b748f3e). | |
| #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. | |
| #1913 Document the `python` and `poetry` plugins | charmcraft | closed | Python and Poetry plugin docs were merged in #1940 (408650c8), with charm-to-Python/Poetry migration guides added in #1967 (ff00a899). | |
| #1077 Charms can import packages not installed in `venv` | charmcraft | closed | Charm-plugin behavior remains unchanged; Python and Poetry plugins add venv isolation, available in Charmcraft 3.3 via #1899 (8b748f3e). | |
| #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. | |
| #1994 Allow changing the charm entrypoint with the `python` and `poetry` plugins | charmcraft | open | Python and Poetry plugins do not support custom charm entrypoints; dispatch generation expects src/charm.py. Maintainers acknowledge the limitation and are tracking a clearer warning. | |
| #2835 fix(plugins): use part_build_subdir for charm source copy | charmcraft | merged | Merged as charmcraft#2835 (4dd1ae35), fixing #2839 by using part_build_subdir for charm source and library copying in the Python, Poetry, and uv plugins. |