python-pexpect 4.0.1-0~ppatrusty2 from ubuntu-make ppa fails to install

Bug #1507871 reported by ԜаӀtеr Ⅼарсһуnѕkі
52
This bug affects 9 people
Affects Status Importance Assigned to Milestone
ubuntu-make (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

STEPS TO REPRODUCE
 1. Make sure ppa:ubuntu-desktop/ubuntu-make repository is added
 2. Make sure version <4.0.1-0~ppatrusty2 of python-pexpect is installed
 3. dist-upgrade

EXPECTED RESULTS
 * Clean install with no errors.

ACTUAL RESULTS
 * Attached syntax error occurs in line 16 of /usr/lib/python2.7/dist-packages/pexpect/async.py.

AFFECTS
 * Lubuntu 14.04 with python-expect 3.1-1ubuntu0.1 installed

NOTES
 * The error points to using "yield from" which is a Python 3 feature whereas python-pexpect depends upon python << 2.8. This explains why python3-pexpect installs with no problems.
 * The Python 3 version of this file that python3-expect installs is in a separate directory, so it appears the appropriate solution would be to rewrite async.py to be Python2 compatible (for instead of from)

Revision history for this message
ԜаӀtеr Ⅼарсһуnѕkі (wxl) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ubuntu-make (Ubuntu):
status: New → Confirmed
Revision history for this message
Silviu C. (silviucc) wrote :

Yeah I got this problem as well. Worst part is that I can't even remove the ppa with ppa-purge.

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Hey,

Sorry for the trouble, I've got the same this moring. I did raised that issue on https://github.com/pexpect/pexpect/issues/220 as even if the file isn't used in python2, our postinst precompiler is trying to turn it into .pyc, hence the failure, you are seeing.

I've thus removed the package from the ppa (and it's not available anymore). For people being broken, the easiest path right now would be to revert to trusty's pexpect version with:

$ apt-get install python-pexpect/trusty python3-pexpect/trusty

(you may have to dpkg -P python-pexpect to remove the one in error first).

Do not hesitate if you need any help, sorry again for that issue :)

Changed in ubuntu-make (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Silviu C. (silviucc) wrote :

That does not work :/

-----
 sudo dpkg --purge python-pexpect
dpkg: dependency problems prevent removal of python-pexpect:
 hplip depends on python-pexpect.

dpkg: error processing package python-pexpect (--purge):
 dependency problems - not removing
Errors were encountered while processing:
----

Revision history for this message
Silviu C. (silviucc) wrote :

Fixed it by doing:

sudo dpkg --purge --force-depends python-pexpect

sudo apt-get update

sudo apt-get install python-pexpect/trusty python3-pexpect/trusty

Revision history for this message
ԜаӀtеr Ⅼарсһуnѕkі (wxl) wrote : Re: [Bug 1507871] Re: python-pexpect 4.0.1-0~ppatrusty2 from ubuntu-make ppa fails to install

Without doing the purge first (which I don't recommend since it can lead to
other dependency issues), I downgraded with:

$ sudo apt-get -y --force-yes install python-pexpect/trusty-updates
python3-pexpect/trusty-updates

Using trusty didn't work for me (perhaps the version was too old?) and the
force-yes was required to deal with the previous errors.

Afterwards, an update/upgrade did not provide a new version, so the ppa is
not providing me the erroneous package.

Changed in ubuntu-make (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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