Two python3 parts using setuptools are always conflicting on core22
Metadata
Current evaluation
Multiple python3 parts in core22 conflict on venv and __pycache__ files; untriaged feature request for better handling
Suggested action: needs triage
Reason: The issue has no labels, no maintainer response, and no assignee after 723 days. While the bug report is clear with reproduction steps and a workaround, it has not been assessed or prioritized by maintainers. The reporter identifies a legitimate conflict between multiple python3 parts using setuptools in core22, suggesting the python plugin should handle this better.
Impact:
55
Quick Win:
30.25
Staleness:
85
Complexity:
45
Confidence:
55
Support Request:
25
Issue body
Two python3 parts using setuptools are always conflicting.
This is due to the venv files as well as the __pycache__ files that are based on different paths.
It seems basic to embed two projects in one snapcraft.yaml, but is not possible without having to play with the stage keyword.
Starting from the basic example of the doc and adding a hello world found on GH gives:
snapcraft.yaml:
name: liquidctl
base: core22
summary: a status and control utility to for power, cooling and LED components
description: |
...
adopt-info: liquidctl
grade: stable
confinement: strict
apps:
liquidctl:
command: bin/liquidctl
plugs:
- raw-usb
- uhid
- hardware-observe
parts:
liquidctl:
plugin: python
source-type: git
source: https://github.com/liquidctl/liquidctl
override-pull: |
snapcraftctl pull
snapcraftctl set-version \
"$(git describe --long --tags --always --match=v*.*.* | sed 's/v//')"
stage-packages:
- python3-usb
hello-world:
plugin: python
source-type: git
source: https://github.com/buildbot/hello-world
Building this snap fails due to "parts 'liquidctl' and 'hello-world' list the following files, but with different contents or permissions" regarding the following files:
bin/activate
bin/activate.fish
bin/activate.csh
A lot of the __pycache__/*.pyc files
some .dist-info/RECORD files
All of that is due to the fact that both parts have virtual environment located in different path.
Only solution I could find is using
stage:
- -bin/activate*
- -**/__pycache__/*
- -**/RECORD
Additionally, specifying a SNAPCRAFT_PYTHON_VENV_ARGS in one of the part will result in an additional conflict.
Maybe such behaviour could be handled nicely by the python plugin.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen3.6-35b-a3b-mtp-q6 |
Impact:
55
Quick Win:
30.25
Staleness:
85
Complexity:
45
Confidence:
55
Support Request:
25
|
needs triage | Multiple python3 parts in core22 conflict on venv and __pycache__ files; untriaged feature request for better handling | |
| qwen/qwen3.6-35b-a3b |
Staleness:
92
Complexity:
65
Confidence:
85
Support Request:
20
|
needs triage | Two Python parts using setuptools conflict on core22 due to differing venv and pycache paths. Unlabelled, zero maintainer comments, inactive for 680 days. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
92
Complexity:
70
Confidence:
75
Support Request:
10
|
needs triage | Technical bug report detailing path conflicts when packaging two Python setuptools parts in Snapcraft. Issue remains unlabelled and unassessed by maintainers after 1.8 years of inactivity. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
92
Complexity:
60
Confidence:
75
Support Request:
20
|
needs triage | Two python3 parts using the snapcraft python plugin conflict on core22 due to overlapping venv, pycache, and dist-info files. Untriaged, inactive for over 1.8 years, no maintainer response. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
90
Complexity:
45
Confidence:
75
Support Request:
10
|
close stale | Two python3 parts using setuptools conflict on core22 due to differing venv and pycache paths. Unlabelled, 0 comments, inactive for 1.8 years. Suggests plugin improvement. |
Update history
No update history recorded yet.
Related issues
No related issues found above the similarity threshold.