Can't have two python3 parts using setuptools
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Snapcraft |
Fix Released
|
Low
|
Sergio Schvezov |
Bug Description
If two python3 parts use setuptools, building a snap will fail since some common files have different contents:
Error: parts treac and pysmbus have the following file paths in common which have different contents:
usr/
usr/
usr/
The latter two are intermittent. They don't always conflict. But the first one will always conflict.
An example of a snapcraft.yaml that produces this error:
name: treac
version: 0
vendor: Bjorn Tillenius <email address hidden>
binaries:
treacd:
exec: usr/bin/treac
summary: TREAC - The Treadmill Controller
description: Provides an API for controlling a treadmill on a Raspberry Pi
icon: icon.png
parts:
treac:
plugin: python3
source: git://github.
pysmbus:
plugin: python3
source: git://github.
Changed in snapcraft: | |
status: | New → Incomplete |
Changed in snapcraft: | |
milestone: | 2.16 → 2.17 |
Changed in snapcraft: | |
milestone: | 2.17 → 2.18 |
Changed in snapcraft: | |
milestone: | 2.18 → 2.19 |
I'm not sure there's a way for the python3 plugin to intelligently determine whether or not to include those files. Which one's files should be included? There's no good way for it to know, as far as I can see. You need to tell it by using the `stage:` keyword and exclude those files from one of the parts.