[focal/core20][python3.7+] staging conflicts when multiple python parts have the same python dependencies
Metadata
Current evaluation
Overlapping Python dependencies generate nondeterministic bytecode, RECORD, and venv artifacts that block staging; confirmed to affect multiple users, with workarounds but no complete fix.
Suggested action: keep open
Reason: The bug was explicitly marked Confirmed after maintainers noted that it affects multiple users. Although a maintainer said it would be fixed in 4.1, the reporter showed that SOURCE_DATE_EPOCH alone was insufficient because pip embeds temporary extraction paths in code objects, and the current codebase has no SOURCE_DATE_EPOCH or bytecode-deduplication handling. A robust design must address bytecode, RECORD files, and venv metadata while preserving deterministic builds.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha |
Impact:
65
Quick Win:
11
Complexity:
75
Confidence:
88
Actionability:
65
|
keep open | Overlapping Python dependencies generate nondeterministic bytecode, RECORD, and venv artifacts that block staging; confirmed to affect multiple users, with workarounds but no complete fix. | |
| stealth/space-bunny-alpha |
Impact:
64
Quick Win:
14
Complexity:
72
Confidence:
93
Actionability:
79
|
keep open | Confirmed staging failure when Python parts install identical dependencies: nondeterministic .pyc, RECORD, and venv files collide. Workarounds exist, but the report remains unresolved. | |
| stealth/space-bunny-alpha |
Impact:
56
Quick Win:
16
Complexity:
62
Confidence:
89
Actionability:
74
|
keep open | Identical Python dependencies produce nondeterministic .pyc, RECORD, and venv files that block staging; confirmed with workarounds but no verified complete fix. | |
| qwen/qwen3.6-35b-a3b |
Impact:
70
Quick Win:
39
Complexity:
30
Confidence:
60
Actionability:
80
|
keep open | Snapcraft staging conflicts occur when multiple Python parts share dependencies due to non-deterministic .pyc file generation in Python 3.7+. Issue is open, unlabelled, and lacks maintainer response. | |
| qwen/qwen3.8-27b |
Impact:
40
Quick Win:
18
Staleness:
90
Complexity:
55
Confidence:
60
Support Request:
15
|
needs triage | Staging conflicts when multiple python parts share identical dependencies: Python 3.7+ .pyc files embed source timestamps, so identical sources produce different .pyc/RECORD hashes across parts. Reported for focal/core20, no maintainer response, 0 comments, open ~6 years. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
98
Complexity:
45
Confidence:
90
Support Request:
15
|
close stale | Staging conflicts arise when multiple Python parts share dependencies due to differing .pyc hashes from Python 3.7+ timestamp behavior. Reported six years ago with no maintainer response, targeting outdated Ubuntu releases. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
95
Complexity:
45
Confidence:
85
Support Request:
15
|
close stale | Snapcraft staging conflicts occur when multiple Python parts share dependencies due to Python 3.7+ .pyc timestamp hashing. Untriaged, inactive for ~2.7 years, no maintainer response. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
95
Complexity:
65
Confidence:
85
Support Request:
5
|
close stale | Snapcraft staging conflicts occur when multiple Python parts share identical dependencies due to differing .pyc file hashes in Python 3.7+. Issue is unlabelled, has zero comments, and has been inactive for over six years. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Blocked By:
pip#8414
(confidence 99%)
The issue explicitly identifies this upstream pip behavior as preventing SOURCE_DATE_EPOCH from producing identical bytecode across runs.
-
Related To:
snapcraft (launchpad)#2080356
(confidence 98%)
A later core22 report describes overlapping Python parts and setuptools staging conflicts.
-
Related To:
snapcraft (launchpad)#1502105
(confidence 90%)
An earlier report covers staging conflicts caused by differing .pyc files from two Python 3 parts.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2080356 Two python3 parts using setuptools are always conflicting on core22 | snapcraft (launchpad) | open | Two python plugin parts always collide on core22 because each part's venv embeds its own install path in bin/activate*, __pycache__ and RECORD; only workaround is manual stage exclusions. No maintainer response. |