← Back to issue list

fix(python,poetry): remove duplicate files in the charm

View original Github issue

Metadata

Project
charmcraft
Number
#1968
Type
pull request
State
merged
Author
lengau
Labels
—
Created
Updated
Closed

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.
76%