[charmcraft 1.3]: Cannot pack a charm with Jinja2 as dependency
Metadata
Current evaluation
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.
Resolution: closed resolved
Reason: PR #553 "parts,charm_builder: add charm-python-packages plugin property (CRAFT-552)" was merged as ccec8b7e, adding charm-python-packages; maintainer cmatsuoka closed the issue noting the Jinja2 pack issue is fixed by using `charm-python-packages: [setuptools]`.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | 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. | |
| stealth/space-bunny-alpha | — | closed resolved | Jinja2 build failure in charmcraft 1.3 traced to outdated setuptools; fixed by merged PR #553 (commit4b2d291b, merge ccec8b7e) adding charm-python-packages, letting charms preinstall setuptools/pip. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #553 (ccec8b7e) added charm-python-packages, enabling setuptools to be preinstalled and restoring Jinja2 charm packing with charmcraft 1.3. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Charmcraft 1.3 failed to pack charms with Jinja2 due to dependency issues. Closed with a setuptools workaround. Resolved via PR #553, which adds a charm-python-packages property to pre-install dependencies before requirements. | |
| qwen/qwen3.6-35b-a3b | — | — | charmcraft 1.3 failed to pack charms with Jinja2 due to missing markupsafe. Resolved via PR #553, which adds a charm-python-packages property to pre-install dependencies like setuptools, fixing the build failure. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed. Charmcraft 1.3 failed to pack charms with Jinja2 due to missing markupsafe. Workaround: add setuptools via charm-python-packages. PR 553 proposes a new charm-python-packages property to install dependencies before requirements, addressing the root cause. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/charmcraft#553
(confidence 95%)
Merged PR adding charm-python-packages property so setuptools can be installed before requirements.
-
Related To:
jinja#1496
(confidence 60%)
Upstream Jinja issue about older Jinja versions failing to install, referenced by maintainer facundobatista.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #639 Can't build charm: Failed to build charm for bases index '0' | charmcraft | closed | Closed as a dependency/configuration issue: adding setuptools fixed Jinja2 packing, while Tempita required setuptools <58. A later build recovered after charmcraft clean. | |
| #738 Crash with `charmcraft pack` | charmcraft | closed | Closed as an upstream Jinja2/setuptools packaging interaction; removing Jinja2 or preinstalling newer pip and setuptools through charm-python-packages restored packing. | |
| #566 Error when building with charmcraft from edge | charmcraft | closed | Closed by facundobatista as a duplicate of #551 (Jinja2/setuptools packing failure in 1.3 edge). Resolved via merged PR #553 (ccec8b7e, commit 4b2d291b) adding charm-python-packages; workaround is adding setuptools/pip. | |
| #922 Unable to pack charms on a GCP instance | charmcraft | closed | Closed as not a Charmcraft bug: Focal's old setuptools broke pip's wheel installation. Preinstalling setuptools via charm-python-packages works around it; #923 tracked the same regression. | |
| #632 Cant build charm with charmhelpers - missing markupsafe | charmcraft | closed | Charmhelpers-based charm build failed with missing markupsafe via Jinja2/setuptools 58+ vs Tempita 2to3 conflict. cmatsuoka diagnosed it and the reporter confirmed the workaround works; maintainer closed the issue as solved without a charmcraft code change. | |
| #1781 charmcraft `3.1.1` "successfully" packs charm, but python packages are missing in the venv | charmcraft | closed | Strict-dependency packing now runs pip check and rejects inconsistent venvs; fixed in PR #1784 (fd21df24) and backported to 3.1 via PR #1794 (1ac1aa59). | |
| #553 parts,charm_builder: add charm-python-packages plugin property (CRAFT-552) | charmcraft | merged | Merged PR #553 added charm-python-packages, installing listed Python packages before requirements dependencies; implementation landed in commit 4b2d291b. |