A few days ago Olav Vitters announced the GNOME 3.8 goal of porting to Python 3. This has been discussed on desktop-devel-list@ in the past days, and the foundations for this are now ready: pygobject now has a –with-python option. (commit) JHBuild now defaults to building pygobject for Python 3, but introduces a “pygobject-python2” project for the transition phase which provides pygobject built for Python 2. (commit) All dependencies to “pygobject” were changed to “pygobject-python2” to avoid breaking modules. ... Read More
For writing tests for GVFS (current tests, proposed improvements) I want to run Samba as normal user, so that we can test gvfs’ smb backend without root privileges and thus can run them safely and conveniently in a “make check” environment for developers and in JHBuild for continuous integration testing. Before these tests could only run under gvfs-testbed, which needs root. Unlike other servers such as ssh or ftp, this turned out surprisingly non-obvious and hard, so I want to document it in this blog post for posterity’s benefit. ... Read More

PyGObject 3.4.1 released
15 October 2012

I just released PyGObject 3.4.1, in time for the GNOME 3.6.1 release on Wednesday. This version provides a nice set of bug fixes. no API changes. Thanks to all contributors! Complete list of changes: Skip Regress tests with –disable-cairo (Martin Pitt) (#685094) _pygi_marshal_from_py_uint64: Re-fix check of negative values (Martin Pitt) (#685000) Fix leak with python callables as closure argument. (Simon Feltman) (#685598) Gio overrides: Handle setting GSettings enum keys (Martin Pitt) (#685947) tests: Check reading GSettings enums in Gio overrides (Martin Pitt) Fix unsigned values in GArray/GList/GSList/GHash (Martin Pitt) (#685860) build: Fix srcdir ! ... Read More
I found it surprisingly hard to determine in tearDown() whether or not the test that currently ran succeeded or not. I am writing some tests for gnome-settings-daemon and want to show the log output of the daemon if a test failed. I now cobbled together the following hack, but I wonder if there’s a more elegant way? The interwebs don’t seem to have a good solution for this either. def tearDown(self): [. ... Read More
I was working on writing tests for gnome-settings-daemon a week or so ago, and finally got blocked on being unable to set up upower/ConsoleKit/etc. the way I need them. Also, doing so needs root privileges, I don’t want my test suite to actually suspend my machine, and using the real service is generally not suitable for test suites that are supposed to run during “make check”, in jhbuild, and the like — these do not have the polkit privileges to do all that, and may not even have a system D-Bus running in the first place. ... Read More

PyGObject 3.3.92 released
17 September 2012

I just released PyGObject 3.3.92, for GNOME 3.5.92. There is nothing too exciting in this release; a couple of small bug fixes and a lot of new test cases. See the detailled list of changes below. Thanks to all contributors! Changes: release-news: Generate HTML changelog (Martin Pitt) [API add] Add ObjectInfo.get_abstract method (Simon Feltman) (#675581) Add deprecation warning when setting gpointers to anything other than int. (Simon Feltman) (#683599) test_properties: Test accessing a property from a superclass (Martin Pitt) (#684058) test_properties. ... Read More
PostgreSQL 9.2 has just been released, after a series of betas and a release candidate. See for yourself what’s new, and try it out! Packages are available in Debian experimental as well as my PostgreSQL backports PPA for Ubuntu 10.04 to 12.10, as usual. Please note that 9.2 will not land any more in the feature frozen Debian Wheezy and Ubuntu Quantal (12.10) releases, as none of the server-side extensions are packaged for 9. ... Read More

PyGObject 3.3.91 released
3 September 2012

I just released PyGObject 3.3.91, for GNOME 3.5.91. The big new feature in this release (thanks to the release team for granting an exception) is Simon Feltman’s new Signal helper class, which makes defining custom signals a whole lot simpler and more obvious. In the past, you had to do class C(GObject.GObject): __gsignals__ = { 'my_signal': (GObject.SIGNAL_RUN_FIRST, GObject.TYPE_NONE, (GObject.TYPE_INT,)) } def do_my_signal(self, arg): print("my_signal called with %i" % arg) whereas now this looks like ... Read More
The unstoppable PostgreSQL team just announced the first release candidate of 9.2, with several bug fixes since the Beta 4. If you haven’t tested 9.2 yet, now is the time! Remember that you can run a copy of your 8.4 or 9.2 cluster in parallel for testing with pg_upgradecluster. If you use Debian, 9.2rc1 will be available in experimental in a few hours. For Ubuntu, you can get packages for all supported releases from my PostgreSQL backports PPA as usual. ... Read More
I just released Apport 2.5 with a bunch of new features and some bug fixes. By default you cannot report bugs and crashes to packages from PPAs, as they are not Ubuntu packages. Some packages like Unity or UbuntuOne define their own crash database which reports bugs against the project instead. This has been a bit cumbersome in the past, as these packages needed to ship a /etc/apport/crashdb.conf.d/ snippet. This has become much easier, package hooks can define a new crash database directly now (#551330): ... Read More