commit 5bcdb56433d0ba2976f05946c6c5b6ffe3e84901
Author: Martin Pitt <martinpitt@gnome.org>
Date:   Mon Oct 28 15:59:51 2013 +0100

    release 3.11.1

 NEWS | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

commit 65b8f7bd77474e361c80905ec23de6dbde27970c
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Sun Oct 27 22:09:27 2013 -0700

    Fix toggleref safety problems by always enabling the GIL

    Call PyEval_InitThreads for the base gi module import. This forces the
    Python internals create the GIL and always support threading with the
    various thread state enter/exit funcs. This is needed since we cannot
    predict which GI repositories might accept Python callbacks and run
    them in
    non-Python threads or trigger toggle ref notifications in a thread
    other
    than main.

    https://bugzilla.gnome.org/show_bug.cgi?id=709223

 gi/__init__.py       |  2 --
 gi/gimodule.c        | 18 +++++++-----------
 gi/overrides/GLib.py |  8 ++------
 3 files changed, 9 insertions(+), 19 deletions(-)

commit 57195c9c864bc25521bb3cb98286e6d6f0645652
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Sun Oct 27 16:02:13 2013 -0700

    Add consistent GLib.MainLoop SIGINT cleanup

    Remove auto cleanup of SIGINT source handling by returning True
    from the
    signal callback. This gives the __del__ method consistent cleanup
    semantics
    regardless of whether or not a SIGINT occurred.

    https://bugzilla.gnome.org/show_bug.cgi?id=710978

 gi/overrides/GLib.py | 4 ++++
 1 file changed, 4 insertions(+)

commit 1c03ebba9598e7b6d5293889f46b015bfac3611c
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Sun Oct 27 15:16:09 2013 -0700

    tests: Fix source testing to handle critical with non-existing sources

    Silence new critical coming from g_source_remove on non-existing
    sources.
    This function still returns False, but we need to silence the new
    critical
    so the test suite doesn't fail. See bug 710724.

    https://bugzilla.gnome.org/show_bug.cgi?id=710978

 tests/test_source.py | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

commit ac776da7e56b78a2fa422487f0ef0d8771bcb78f
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Sun Jul 28 00:01:35 2013 -0700

    docs: Add a keyword value of None for allow-none annotations

    Update documentation generator for allow-none arguments and
    user_data arguments to show a keyword value of None.
    Add skip for GDestroyNotify closure arguments.

    https://bugzilla.gnome.org/show_bug.cgi?id=640812

 gi/docstring.py         | 20 +++++++++++++++++---
 tests/test_docstring.py | 10 ++++++++++
 2 files changed, 27 insertions(+), 3 deletions(-)

commit e1bf9c069644ea0bff0c6a7efa72a285e122a414
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Sat Oct 19 19:03:12 2013 -0700

    Remove overrides for supporting pre-3.10 GObject signal functions

    Remove GObject override code for supporting pre-3.10 signal functions
    which
    annotate the object argument as "gpointer". With PyGObject 3.11
    having a
    dependency on GObject 3.10, clear the special case overrides out.

 gi/overrides/GObject.py | 76
 ++++++-------------------------------------------
 1 file changed, 9 insertions(+), 67 deletions(-)

commit 0c308de528c402f67808b13760ca30d55d4c99d7
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Fri Oct 18 17:15:06 2013 -0700

    Add threads_init back as a requirement for non-Python threaded repos

    Re-add a "threads_init" function to gi for explicit intialization
    of Python
    threading support. This was marked as deprecated in the previous cycle
    because using Python threads already initializes everything.
    However, we still need an explicit initalization when using
    repositories
    with non-Python threads which may interact with Python callbacks
    (GStreamer).

    https://bugzilla.gnome.org/show_bug.cgi?id=710447

 gi/__init__.py       |  2 ++
 gi/gimodule.c        | 10 ++++++++++
 gi/overrides/GLib.py | 11 +++++++----
 3 files changed, 19 insertions(+), 4 deletions(-)

commit a2fa531b4dee73c193cac92fa3e870808688b5d7
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Mon Oct 14 20:38:13 2013 -0700

    Add dir method to GObject props accessor

    Remove special case __members__ attribute from the props accessor
    objects getattr method. This has been deprecated since Python 2.3 and
    removed in Python 3. Replace this with a __dir__ method making use
    of the
    old members list building code. Additionally fix error where the
    GObjectClass was being unref'd too many times when using
    dir(Object.props),
    causing a GLib critical.

    https://bugzilla.gnome.org/show_bug.cgi?id=705754

 gi/_gobject/pygobject.c | 29 +++++++++++++++++++++--------
 tests/test_gi.py        | 14 ++++++++++++++
 2 files changed, 35 insertions(+), 8 deletions(-)

commit 799989ada2f6b1d729f078f204445651c808a2c7
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Fri May 3 04:37:13 2013 -0700

    Remove PyGObjectWeakRef now that g_binding_unbind exists

    Remove the static code for managing GBinding weak references now
    that GLib
    has a method (unbind) for clearing out bindings.

    https://bugzilla.gnome.org/show_bug.cgi?id=699571

 gi/_gobject/pygobject.c | 59
 +------------------------------------------------
 gi/overrides/GObject.py | 19 ++++++++++++++++
 tests/test_gobject.py   | 41 ++++++++++++++++++++--------------
 3 files changed, 44 insertions(+), 75 deletions(-)

commit fe217e0afbd63f05285e59628533f351896377d9
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Wed Oct 9 00:34:37 2013 -0700

    Fix GArray, GList, GSList, and GHashTable marshaling leaks

    Remove calling of cleanup code for transfer-everything modes by
    ensuring
    cleanup_data is set to NULL in from_py marshalers. Use array and hash
    table ref/unref functions for container transfer mode to ensure we
    have a
    valid container ref after invoke and during from_py cleanup of
    contents.
    Rework restrictions with to_py marshaling cleanup so we always
    unref the
    container for transfer-everything and transfer-container modes.

    https://bugzilla.gnome.org/show_bug.cgi?id=693402

 gi/pygi-marshal-cleanup.c | 54 +++++++++++----------------------
 gi/pygi-marshal-from-py.c | 77
 ++++++++++++++++++++++++++++++++++++++++-------
 2 files changed, 84 insertions(+), 47 deletions(-)

commit 7407367f424595c2780a2d6a47d936ad0bd91735
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Mon Oct 7 14:11:39 2013 -0700

    Add cleanup_data argument used for Python to C marshaler cleanup

    Add a new output argument to all from_py marshalers which is used for
    keeping track of marshaling data that later needs cleanup. Previously
    most
    marshalers would rely on the GIArgument->v_pointer as the means
    for data
    cleanup. However, this pointer would get clobbered in the case of
    bi-directional arguments (inout) and the memory lost.
    Use the new cleanup_data for storing temporarily wrapped C arrays
    so we
    don't need to re-calculate the length argument during cleanup.

    Additionally delay the from_py marshaling cleanup function until after
    _invoke_marshal_out_args is called. This gives inout arguments
    which don't
    modify the pointer sufficient time to exist until they marshaled
    back to
    Python (gi_marshalling_tests_gvalue_inout).

    https://bugzilla.gnome.org/show_bug.cgi?id=693402

 gi/pygi-argument.c            |   4 +-
 gi/pygi-cache.h               |   3 +-
 gi/pygi-invoke-state-struct.h |   7 +-
 gi/pygi-invoke.c              |  20 +++---
 gi/pygi-marshal-cleanup.c     |  43 +++++-------
 gi/pygi-marshal-from-py.c     | 160
 ++++++++++++++++++++++++++++--------------
 gi/pygi-marshal-from-py.h     |  45 ++++++++----
 7 files changed, 177 insertions(+), 105 deletions(-)

commit 9456e83233a927f1f01c6ffcb1f07c62b491a1df
Author: Simon Feltman <sfeltman@src.gnome.org>
Date:   Wed Aug 7 12:08:15 2013 -0700

    Add support for variable user data arguments

    Support a variable number of user data arguments for all callback
    connection function where the user data is the last explicit argument.
    This adds convience as well as consistency with the rest of PyGObject.
    Cleanup overrides for GLib.idle_add, timeout_add, timeout_add_seconds,
    io_add_watch, and child_watch_add which manually implemented this
    feature.

    https://bugzilla.gnome.org/show_bug.cgi?id=640812

 gi/overrides/GLib.py      | 75
 +++++++++++++++--------------------------------
 gi/pygi-cache.c           | 14 +++++++++
 gi/pygi-cache.h           |  3 ++
 gi/pygi-closure.c         | 37 +++++++++++++++--------
 gi/pygi-invoke.c          | 71
 +++++++++++++++++++++++++++++++-------------
 gi/pygi-marshal-from-py.c |  5 ++++
 tests/test_everything.py  | 32 ++++++++++++++++++++
 tests/test_glib.py        | 21 +++++++++++++
 tests/test_subprocess.py  |  8 ++---
 9 files changed, 177 insertions(+), 89 deletions(-)

commit ba4a0a65bf9ec44c3b9449f63d63035bff75d8df
Author: Martin Pitt <martinpitt@gnome.org>
Date:   Mon Oct 14 12:57:04 2013 +0200

    Bump glib and g-i dependencies to latest stable.

    glib 2.38 and g-i 1.38 are from stable GNOME 3.10 which we now
    assume as
    minimal version.

    Drop @unittest.skipUnless tags from tests which didn't work with
    g-i 1.36.

 README           | 3 ++-
 configure.ac     | 6 +++---
 tests/test_gi.py | 2 --
 3 files changed, 5 insertions(+), 6 deletions(-)

commit 2a5ad2af6bc91b187a2f07fc8d001ec7ad618adf