← Back to team overview

compiz team mailing list archive

[Bug 1004592] Re: Compiz fails to build ~ looks like finding python ver. doesn't work properly (Archlinux)


Hi.  I've landed here because of LP: #1310794.  In order to drop Python
2 from the Ubuntu touch image, we need to port all autopilot tests to
Python 3.  One of the current blockers is unity7, which uses the python-
compizconfig package to access the Python level `compizconfig.Context`

This is problematic because the compiz Python bindings are provided by a
pyrex module, compizconfig.pyx.  Pyrex itself is essentially dead
upstream, the last release happening in 2011 afaict.  It also doesn't
support Python 3 afaict.  So porting python-compizconfig to Python 3 is
going to be a major PITA.  I don't even know if it's worth it, if say
unity7 is deprecated in 'U'.

Let's say it *is* worth it, there are a few options.  The Python
bindings could be hand-coded, or we could use ctypes, but in both those
cases, the entire module would have to be ported.  Are there enough
tests so that we know when we're done and have a high quality port?

The other option is to try to port just what's needed for unity7's
autopilot tests.  That may be just as big a task though, depending on
how much of the compizconfig API the tests require.

As for Python 2/3 on Ubuntu, we would like Python 3 to be "the default"
in the sense that all system scripts and services written in Python
should be Python 3.  However, we'll never change /usr/bin/python like
Arch did.  As inherited from Debian, /usr/bin/python will *always* be
Python 2 (unless and until PEP 394 changes that recommendation, but
don't hold your breath).  /usr/bin/python3 is what you need to use, but
as is pointed out, most distros will heed PEP 394 and provide a
/usr/bin/python2 symlink too.  Ubuntu and Debian do.

Any guidance you can provide on helping us get enough of compizconfig
exposed to Python 3 would be very helpful.

You received this bug notification because you are a member of compiz
packagers, which is subscribed to compiz in Ubuntu.

  Compiz fails to build ~ looks like finding python ver. doesn't work
  properly (Archlinux)

To manage notifications about this bug go to: