[Piglit] [PATCH] Revert "python: change she-bang to python2"

Kenneth Graunke kenneth at whitecape.org
Tue Jun 24 08:53:10 PDT 2014


On Tuesday, June 24, 2014 11:27:13 AM Ilia Mirkin wrote:
> On Tue, Jun 24, 2014 at 11:20 AM, Kenneth Graunke <kenneth at whitecape.org> 
wrote:
> > On Friday, June 20, 2014 12:04:01 AM Dylan Baker wrote:
> >> This reverts commit 40b5d5288991fec2cc76ea4af7050555be467126.
> >>
> >> The patch to be reverted breaks users of *BSD, solaris, and OSX which
> >> don't provide a python2 symlink, making it a regression.
> >>
> >> The patch however, fixes python for arch users whos python executable
> >> incorrectly is python3. This is a bug that Arch is not willing to fix.
> >>
> >> bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=80261
> >
> > I for one was happy to see the change to /usr/bin/python2, as it makes 
things
> > easier for Arch Linux users.  There are a lot of Piglit users running Arch
> > Linux, and AFAICT only a couple using BSD/Solaris/OSX.
> >
> > Recently, a bunch of my coworkers who are Debian/Fedora/Gentoo users have
> > tried to use my Arch Linux box, and didn't realize they needed to work 
around
> > this issue.  They were horribly confused until I explained how to fix it.
> >
> > Let's look at the two failure modes:
> >
> > 1. Arch Linux with #! /usr/bin/env python
> >
> > $ ./piglit-run.py tests/gpu results
> > Traceback (most recent call last):
> >   File "./piglit-run.py", line 30, in <module>
> >     from framework.programs.run import run
> >   File "/home/kwg/Projects/piglit/framework/programs/run.py", line 30, in
> > <module>
> >     import framework.core as core
> >   File "/home/kwg/Projects/piglit/framework/core.py", line 32, in <module>
> >     import ConfigParser
> > ImportError: No module named 'ConfigParser'
> >
> > This failure mode is incredibly cryptic.  The workaround is easy:
> > run "python2 piglit-run.py tests/gpu results".  But it's not obvious.
> 
> Easy enough to throw in a test into __init__.py checking the python
> version... if it's != 2, abort, telling them that their system is
> broken.

Yeah, that would be nice.  Maybe that's the solution.

> > 2. BSD/OSX/Solaris with #! /usr/bin/env python2
> >
> > $ ./piglit-run.py tests/gpu results
> > /usr/bin/env: python2: No such file or directory
> >
> > This is incredibly clear, at least.  The workaround is both easy and 
obvious:
> > put a python2 -> python symlink anywhere in your path.  It doesn't even 
have
> > to be installed system-wide - you can put it in ~/bin if you like.
> >
> > For the record, I dislike that Arch has installed Python 3 as 
/usr/bin/python.
> > It's incompatible and has caused no end of headaches for upstreams.  But,
> > there's not a lot we can do about that.
> 
> Isn't there? Refuse to go along with the idiocy until Arch fixes it or
> people stop using it...
> 
>   -ilia

The "idiocy" has been going on for 4 years now - if they had any intention of 
changing back, they would've done it by now.  People aren't likely to change 
their whole Linux distribution over a single symlink, either.  Boycotting 
isn't a solution.

I still think that this patch makes Piglit more convenient for a wider cross-
section of our users, even if it is a stupid problem.

--Ken
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20140624/a2122009/attachment-0001.sig>


More information about the Piglit mailing list