I am pleased to announce version 2.26.0 of the Python bindings for GObject.  

Including the stable improvements in the base pygobject modules this is the 
first stable release to include the Introspection modules.  These new modules 
are considered beta quality and we don't guarantee API compatibility with 
future versions yet.

Python 3 support, limited to the base and Introspection modules, also ships for 
the first time in this release.  To build with Python 3 support set the PYTHON 
env variable to your Python 3 executable during the configure stage:

$ PYTHON=python3 ./configure 

The new release is available from ftp.gnome.org as and its mirrors as soon as 
its synced correctly:

       http://download.gnome.org/sources/pygobject/2.26/

What's new since PyGObject 2.21.5?
        - Wrap g_get_system_{config,data}_dirs () (John Strowers)
        - fixed make check and make dist (John (J5) Palmieri)
        - Disable GI tests when introspection disabled (John Stowers)
        - Wrap g_uri_list_extract_uris. Fixes bug #584431 (Tomeu Vizoso)
        - Fix a few uses of TRUE and FALSE in the docs (Paul Bolle)
        - pygi: always free the invocation_state struct (Damien Caliste)
        - Start implementing something equivalent to g_variant_new (Tomeu 
Vizoso)
        - fixed typo - missing comma in glib.option module (John (J5) Palmieri)
        - add checks so we can compile under python 3 by setting PYTHON=python3 
(John (J5) Palmieri)
        - Rename static methods as functions (Tomeu Vizoso)
        - fix a couple of compiler warnings (John (J5) Palmieri)
        - remove unused code (John (J5) Palmieri)
        - Check the type of the instance object (John (J5) Palmieri)
        - include the correct pycairo version (John (J5) Palmieri)
        - Use PyMapping_Keys to determine if an object is a dict (py3k fix) 
(John (J5) Palmieri)
        - fix handling of UINT64 and INT64 arguments in py3k (John (J5) 
Palmieri)
        - properly handle ulongs properties in py3k (John (J5) Palmieri)
        - Specify encoding of tests/test_gi.py (Tomeu Vizoso)
        - use actual unicode in the tests on py3k, not the byte representation 
(John (J5) Palmieri)
        - s/METH_KEYWORDS/METH_VARARGS|METH_KEYWORDS/ when defining object 
methods (John (J5) Palmieri)
        - fix subclassing PyLong by calling __new__ correctly (John (J5) 
Palmieri)
        - minor py3k fixups for python modules (John (J5) Palmieri)
        - minor fixes in tests for py3k compat (John (J5) Palmieri)
        - compilation: Fix syntax error (Colin Walters)
        - Add missing file (Tomeu Vizoso)
        - Add override for GLib.Variant.new_tuple (Tomeu Vizoso)
        - fix for changes in the gi test libraries (John (J5) Palmieri)
        - Gtk.DialogFlags.NO_SEPARATOR has been removed in Gtk 3.0 (John (J5) 
Palmieri)
        - no need to offset arg positions when is_method is true (John (J5) 
Palmieri)
        - gi: Add support for more property types (Tomeu Vizoso)
        - use PyObject_SetAttrString, not PyDict_SetItemString when setting 
__gtype__ (John (J5) Palmieri)
        - Rename GArgument to GIArgument (Tomeu Vizoso)
        - fix up tests so they run in py3k (John (J5) Palmieri)
        - tests: Port to new introspection tests (Colin Walters)
        - we need to specify tp_hash since we overide tp_richcompare (John (J5) 
Palmieri)
        - working enum/flags/pid subclasses of long (John Ehresman)
        - make vfuncs work in py3k (John (J5) Palmieri)
        - make cairo module compile in py3k (John (J5) Palmieri)
        - fix exceptions so they work in python 3.x (John (J5) Palmieri)
        - make the gi module compile under 3.x (John (J5) Palmieri)
        - fix up testshelper module so it compiles in python 3.x (John (J5) 
Palmieri)
        - convert to using PYGLIB_DEFINE_TYPE for module objects (John (J5) 
Palmieri)
        - some more p3k PyString and PyInt eradication in GI (John (J5) 
Palmieri)
        - pyglib: Fix typo (Leo Singer) (Tomeu Vizoso)
        - Add defines for size_t and ssize_t conversion functions (Gustavo 
Noronha Silva)
        - pyglib: Fix a compiler warning (Colin Walters)
        - Don't force gtk 2.0 (Tomeu Vizoso)
        - Fix some ref leaks in hook_up_vfunc_implementation() (Steve 
Frécinaux)
        - handle strings correctly in gio (John (J5) Palmieri)
        - make giomodule compile under py3k (John (J5) Palmieri)
        - for py3k we need to do some more processing to get bytes from a 
unicode string (John (J5) Palmieri)
        - use Bytes instead of Unicode when reading io (John (J5) Palmieri)
        - prefix compat macros with PYGLIB (John (J5) Palmieri)
        - Gtk.Button unit tests (John (J5) Palmieri)
        - [Gtk] Add overrides for Button (Johan Dahlin)
        - Make Cairo an optional dependency (Simon van der Linden)
        - Don't import again PyGObject (John Ralls) (Tomeu Vizoso)
        - move to using richcompare slot instead of compare (John (J5) Palmieri)
        - Replace autogen.sh by a newer version (Simon van der Linden)
        - Fix some warnings (Simon van der Linden)
        - Fix caller-allocates emergency free. (Simon van der Linden)
        - Remove useless checks. (Simon van der Linden)
        - Call valgrind with G_SLICE=always-malloc G_DEBUG=gc-friendly (Tomeu 
Vizoso)
        - Fix some warnings. (Ignacio Casal Quinteiro)
        - Add myself as a maintainer (Simon van der Linden)
        - Properly allocate boxed structs that are (caller-allocates) (Tomeu 
Vizoso)
        - override gdk.Event to return attribute from the proper event object 
(Toms Baugis)
        - check if z# needs an int or Py_ssize_t (John (J5) Palmieri)
        - make sure we parse parameters to python object vars not glib vars 
(John (J5) Palmieri)
        - Make an example and a demo work out of the box (Paul Bolle)
        - make sure caller allocated structs are freed when they go out of 
scope (John (J5) Palmieri)
        - Revert "override gdk.Event to return attribute from the proper event 
object." (Tomeu Vizoso)
        - PyGI: properly quit cairo-demo (Paul Bolle)
        - override gdk.Event to return attribute from the proper event object. 
(Toms Baugis)
        - Clean and improve the test infrastructure (Simon van der Linden)
        - Add some more transformations to pygi-convert.sh (Tomeu Vizoso)
        - Adapt to API changes: g_irepository_enumerate_versions (Tomeu Vizoso)
        - Add GValue<->GArgument marshalling for some more types (Tomeu Vizoso)
        - Chain up with the non-introspection implementation for properties if 
needed (Tomeu Vizoso)
        - Improve error reporting for missing attributes in introspection 
modules (Tomeu Vizoso)
        - Implement getting and setting properties using introspection 
information. (Tomeu Vizoso)
        - Readd Gdk.Rectangle override for Gtk-2.0 (Tomeu Vizoso)
        - Allow specifying a version when loading a typelib (Tomeu Vizoso)
        - treat GFreeFunc as equivalent to GDestroyNotify when scanning 
callbacks (Jonathan Matthew)
        - Don't use == to compare doubles, use <= and =>. (Simon van der Linden)
        - Allow passing ints as enum args (Tomeu Vizoso)
        - Make error message less ambiguous (Tomeu Vizoso)
        - fix passing in type names as a GType and add gtype unit tests (John 
(J5) Palmieri)
        - Increase a bit verbosity of tests so people know which test failed 
(Tomeu Vizoso)
        - Actually add the files for GVariant foreign structs (Tomeu Vizoso)
        - Add foreign struct support for GVariant (Tomeu Vizoso)

Blurb:

GObject is a object system library used by GTK+ and GStreamer.

PyGObject provides a convenient wrapper for the GObject library for use in 
Python programs, and takes care of many of the boring details such as managing 
memory and type casting.  When combined with PyGTK, PyORBit and gnome-python, 
it can be used to write full featured Gnome applications.

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 requires glib >= 2.22.4 and Python >= 2.5.1 to build.
GIO bindings require glib >= 2.22.4.

The Introspection module is the next generation Python GObject library 
bindings.  Instead of statically wrapping every GObject based library we can 
now dynamically accesses any of those libraries using GObject Introspection.  
It replaces the need for separate modules such as PyGTK, GIO and python-gnome 
to build a full GNOME application.  Once new functionality is added to gobject 
library it is instantly available as a Python API without the need for an 
intermediate Python module.

Introspection/Python 2 bindings requires gobject-introspection >=  0.9.5 and 
pycairo >=1.0.2 or py2cairo >=1.8.10 
Introspection/Python 3 bindings requires gobject-introspection >=  0.9.5, 
pycairo >=1.8.10 and Python >= 3.1

gobject-introspection bugs are being fixed at a rapid pace so it is recommend 
to use the latest version in git when filing bugs against the Introspection 
module.

-- 
John (J5) Palmieri
GNOME Foundation member
jo...@redhat.com
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

        Support the Python Software Foundation:
        http://www.python.org/psf/donations/

Reply via email to