fix(python,poetry): remove duplicate files in the charm
Metadata
Current evaluation
PR #1968 by lengau merged (commit dd636296), adding venv cleanup that removes the lib64 symlink so python/poetry charms no longer pack duplicate files; closes issue #1966.
Resolution: closed resolved
Reason: The PR was merged with2 approving reviewers and landed as commit dd636296, adding `get_venv_cleanup_commands` logic in charmcraft/utils/parts.py that removes the venv's lib64 symlink (verified in current source and covered by unit/integration tests). It fixes issue #1966, which is now closed.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Fixes #1966
The lib64 directory exists as a symbolic link in virtual environments for historic reasons, but is not necessary.
This prevents the charm from packing it twice (due to Python's inability to put symlinks into zip files).
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | PR #1968 by lengau merged (commit dd636296), adding venv cleanup that removes the lib64 symlink so python/poetry charms no longer pack duplicate files; closes issue #1966. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #1968 (commit dd636296), fixing #1966 by excluding the virtual-environment lib64 symlink so Python and Poetry charms no longer contain duplicate files. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged to resolve #1966 by removing the redundant lib64 symlink from charm packaging. This prevents duplicate file inclusion caused by Python's inability to archive symlinks. Approved by two reviewers across six changed files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix for duplicate file packing in the charm. Removed the lib64 directory, a historic virtual environment symlink that Python cannot zip, which caused duplication. Resolves #1966. |
Update history
No update history recorded yet.
Related work
-
Duplicate Of:
canonical/charmcraft#1966
(confidence 95%)
Issue #1966 (lib64 symlink shipped as a second venv copy) was closed by this PR; note the fix in charmcraft/utils/parts.py also later applied to the uv plugin.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1966 `python` and `poetry` plugins include `lib64` symlink as a second copy of the venv | charmcraft | closed | Fixed by merged PR #1968 (commit dd636296): get_venv_cleanup_commands() in charmcraft/utils/parts.py now removes the venv lib64 symlink if it is a symlink, leaving real dirs intact. Integration and unit tests added. |