Tentatively mention Python 2.6 support
Avoid execfile() in setup.py
Make the tests compatible with Python 3
You cannot sort dict views in Python 3
The ConfigParser module was renamed in Python 3
Avoid print statements
Avoid calling file(), also use with to close it
Avoid NamedTemporaryFile

It exists on Python 3, but we get into str/unicode confusion territory
when we try to use it there.
Filelike.write() returns a number on Python 3
Don't sort lists containing None
Python 3 syntax fixes for main.py
Unicode/str differences

GTimeLog now runs on Python 3.  CSV reporting is buggy, but everything
else appears to work.
Fix CSV on Python 3
Declare Python 3.3 support

Python 3.2 won't work as it doesn't support unicode literals.

I'm not sure I need those, actually.  In the bad old PyGTK days when
I didn't understand Unicode as much as I understand it now, all the
strings in memory were UTF-8 encoded, and

  '%-70s %s' % (title, duration)

would align the durations incorrectly in the presence of multibyte
characters.

The fix I applied back then (commit 599da6f7024df777d12e) changed those
to

  u'%-70s %s' % (title, duration)

which, as I now understand, caused the title to be converted from UTF-8
str into unicode (without triggering UnicodeDecodeErrors due to PyGTK's
"helpful" implicit sys.setglobalencoding('UTF-8')).

Nowadays all the strings in memory are already unicode, so we shouldn't
need unicode literals.

Except where we're currently using '{0}'.format(some_unicode), since
that's a latent crash waiting to happen.  Hm.
Explicitly use /usr/bin/python for the wrapper script

Reason: you cannot pip install pygobject into a virtualenv, so you must
use the system Python.

And, hey, with the new Python 3 compat code this should work even for
Arch users.