J5’s Blog

September 19, 2011

PyGObject 3.0 stable released

Filed under: Gnome, Python — J5 @ 2:49 pm

PyGObject 3.0 has been released!!! This is the stable release we have all been waiting for.  3.0 has been stabilizing for some time.  This marks a huge improvement over the 2.28 branch in terms of speed, stability and GObject API coverage.  With  this release PyGObject remains the most complete language bindings for developing application with GObject Introspection.

I want to thank everyone who has been a part of this release, from those who reported bugs to those who submitted large patches, and also those who cheered us on from the sidelines or gave us support in other areas.  At this point in the project they are just too many to list so I won’t, in fear that I may accidentally leave people out.

Highlights Since 2.28

  • New rewritten invoker is twice as fast and easier to extend and debug
  • Complete break from static bindings so we may improve the core without breaking legacy APIs
  • Better type handling
  • Parallel installable with PyGObject 2.28 for legacy binding support (2.28 must be compiled with –disable-introspection)
  • Support for function calling using keyword arguments
  • Support for multiple arrays referencing a single length parameter (e.g. Clutter.Actor.animatev)
  • Once again we support Windows builds with some caveats

Going Forward

As we move into another unstable cycle there are a number of goals we will strive for the next major release.

  • Documentation – we jump started this at the Desktop Summit but a lot of work is needed to get this to the quality currently exhibited by the PyGTK bindings.
  • Full Gtk subclassing – We are almost there but we still need support for calling C callbacks in Python to support overriding interfaces such as Gtk.Widget.for_all()
  • Getting rid of all legacy marshallers – currently they are still being used for marshalling vfuncs and signals
  • Cutting out the middle man – We should get rid of our dependency on GArguments and marshal directly to FFI
  • Moving away from a Gtk+ focus – Clutter and GStreamer 1.0 are just as important to fully support
  • Full Gio support – right now dealing with byte streams isn’t completely introspectable
ChangeLog

http://download.gnome.org/sources/pygobject/3.0/pygobject-3.0.0.changes  (1.34K)

Download

http://download.gnome.org/sources/pygobject/3.0/pygobject-3.0.0.tar.xz  (530K)
  sha256sum: ef6735792b0d44287126a6a3b181c85559849063d770506fe06848adb87ce815

http://download.gnome.org/sources/pygobject/3.0/pygobject-3.0.0.tar.bz2 (629K)
  sha256sum: 5682603c58be67e336e8cfaf19d6321158425797a7da12f646cc8706508ab95c

About PyGObject

GObject is a object system used by GTK+, GStreamer and other libraries.

PyGObject provides a convenient wrapper for use in Python programs when accessing GObject libraries.

Like the GObject library itself PyGObject is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full featured applications.

PyGObject now dynamically accesses any GObject libraries that uses GObject Introspection. It replaces the need for separate modules such as PyGTK, GIO and python-gnome to build a full GNOME 3.0 application. Once new functionality is added to gobject library it is instantly available as a Python API without the need for intermediate Python glue.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

September 15, 2011

PyGObject 2.90.4 released

Filed under: Gnome, Python — J5 @ 6:48 pm

PyGObject 2.90.4 has been released. This is an unstable release leading up to the PyGObject 3.0 release coming soon.

Highlights

  • Various deprecated API that was only needed for the static bindings have been removed which means you must recompile anything that links to PyGObject (currently libpeas and glade)
  • Overrides directory variable was taken out of pygobject-3.0.pc and moved to the gi._overridesdir attribute to avoid having multiple .pc files for each version of Python.  This means third parties who install overrides need to import gi from their install scripts with the version of python they are installing for.
  • Multiple arrays referencing a single length parameter are now supported along with flat GValue arrays.  This allows APIs such as Clutter.Actor.animatev to be bindable.
  • Refcount crasher bug triggered when using GObject.new was fixed so glade can now import custom Python  GtkWidgets.
  • Build system now works with MinGW environment in Windows.
  • Python 3 now checks instance types again.
  • Documents disabled since they aren’t useful yet and present parallel install issues.
  • Demos were fixed up to better reflect the preferred way of using PyGObject.
ChangeLog

http://download.gnome.org/sources/pygobject/2.90/pygobject-2.90.4.changes  (20.2K)

Download

http://download.gnome.org/sources/pygobject/2.90/pygobject-2.90.4.tar.xz  (529K)
  sha256sum: 8407b6997181bbca4783798e21d7d63ca41708a6c05a3b08c953d64e7b97b2a1

http://download.gnome.org/sources/pygobject/2.90/pygobject-2.90.4.tar.bz2 (629K)
  sha256sum: 467eb39f06664fb8bbb9ab407a15b8d56a63a92ac2f0914afc8518aedd765c43

About PyGObject

GObject is a object system used by GTK+, GStreamer and other libraries.

PyGObject provides a convenient wrapper for use in Python programs when accessing GObject libraries.

Like the GObject library itself PyGObject is licensed under the GNU LGPL, so is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single purpose scripts up to large full featured applications.

PyGObject now dynamically accesses any GObject libraries that uses GObject Introspection. It replaces the need for separate modules such as PyGTK, GIO and python-gnome to build a full GNOME 3.0 application. Once new functionality is added to gobject library it is instantly available as a Python API without the need for intermediate Python glue.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

September 13, 2011

PyGObject release comming soon

Filed under: Gnome, Python — J5 @ 7:14 pm

I’ve been tracking down some crashers and refcount issues as well as cleaning up the Python 3 support.  Next release will also remove all of the file conflicts associated with PyGObject-2.28 parallel installs.  We also have support for compiling under windows using MinGW thanks to Dieter Verfaillie. If you have a bug you care about now is the time to ping me in #python on irc.gnome.org.

[read this post in: ar de es fr it ja ko pt ru zh-CN ]

Powered by WordPress