parts,charm_builder: add charm-python-packages plugin property (CRAFT-552)
Metadata
Current evaluation
Merged PR #553 added charm-python-packages, installing listed Python packages before requirements dependencies; implementation landed in commit 4b2d291b.
Resolution: closed resolved
Reason: PR #553 was approved and merged, implementing the new plugin property in commit 4b2d291b. The maintainer confirmed it was landing and would be available in edge.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Packages listed in the `charm-python-packages` property are installed
before dependencies listed in the requirements file. This mirrors
`python-packages` that exists in the python plugin.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #553 added charm-python-packages, installing listed Python packages before requirements dependencies; implementation landed in commit 4b2d291b. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #553, adding charm-python-packages to install selected Python packages before requirements dependencies; implementation landed as 4b2d291b and was scheduled for edge. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #553 (CRAFT-552) in commit ccec8b7e, adding charm-python-packages so listed Python packages install before requirements dependencies. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged addition of the charm-python-packages plugin property, installing listed Python packages before requirements file dependencies. Mirrors standard python plugin behavior. Approved, passed CI, and merged by maintainer. Available in edge snap. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged charm-python-packages plugin property to charm_builder. Installs specified packages before requirements.txt dependencies, supports platform conditionals for OS-specific needs, and resolves setuptools version issues. Deployed to edge snap. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1664 `charm-python-packages` does not guarantee these packages are installed before packages in `requirements.txt` | charmcraft | closed | Fixed in Charmcraft 3.2 by merged PR #1727 (commit 51a55f73), which installs charm-python-packages before requirements and charm libraries. | |
| #696 Allow for modifications to build environment of "charmcraft build" to accomodate for extra prerequisites | charmcraft | closed | Closed as already supported: charm-python-packages installs Python prerequisites before charm requirements. Ordering was later made explicit in Charmcraft 3.2 by PR #1727. | |
| #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). | |
| #551 [charmcraft 1.3]: Cannot pack a charm with Jinja2 as dependency | charmcraft | closed | Jinja2 pack failure in charmcraft 1.3 was traced to old setuptools in the build venv. Resolved by merged PR #553 (ccec8b7e, commit 4b2d291b) adding a charm-python-packages charm plugin property, letting charms preinstall setuptools. | |
| #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). | |
| #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. |