it's not possible to have two python parts

Bug #1663739 reported by Leo Arias
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Snapcraft
Fix Released
Critical
Leo Arias

Bug Description

With the recent fix for python in classic [1], now each python part installs packages using parts/{part}/install/usr/bin/python. This causes the RECORD files to differ between the parts, and a conflict is caused when trying to put the two parts in the same snap.

To reproduce:

$ git clone https://github.com/snapcore/snapcraft /tmp/snapcraft
$ cd /tmp
$ mkdir bug
$ cd bug
Make in this directory a snapcraft.yaml with two parts that only have:
source: .
plugin: python
(there is one attached)
$ /tmp/snapcraft/bin/snapcraft

Parts 'p1' and 'p2' have the following file paths in common which have different contents:
    lib/python3.5/site-packages/pip-9.0.1.dist-info/RECORD
    lib/python3.5/site-packages/setuptools-34.1.1.dist-info/RECORD
    lib/python3.5/site-packages/wheel-0.29.0.dist-info/RECORD

Snapcraft offers some capabilities to solve this by use of the following keywords:
    - `filesets`
    - `stage`
    - `snap`
    - `organize`

Learn more about these part keywords by running `snapcraft help plugins`

[1] https://github.com/snapcore/snapcraft/pull/1093/files

Revision history for this message
Leo Arias (elopio) wrote :
Revision history for this message
Leo Arias (elopio) wrote :
Changed in snapcraft:
status: New → In Progress
importance: Undecided → Critical
assignee: nobody → Leo Arias (elopio)
milestone: none → 2.27
Changed in snapcraft:
status: In Progress → Fix Committed
Changed in snapcraft:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.