commit 9c1d66be67008604206e336a0433c5cdf824b837
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Wed Feb 14 01:47:12 2018 +0100

    release

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

commit 86fb783d0f00a49ea7e66ad73be7e150eb0162db
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Wed Feb 14 02:07:13 2018 +0100

    Fix make distcheck

 tests/Makefile.am | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit 618ccf06ad75bc481dec59b7da86a550571968c5
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Wed Feb 14 01:34:02 2018 +0100

    setup.py: cache pkg-config calls

    This saves 300ms for a noop build_tests command

 setup.py | 29 +++++++++++++++++------------
 1 file changed, 17 insertions(+), 12 deletions(-)

commit ad9fc2d9cd8d9a0f3fd07a46e7056a182f18d399
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Wed Feb 14 01:29:09 2018 +0100

    gitlab-ci: Install pytest-faulthandler

    This makes pytest print a Python stack trace in case of a crash.

 .gitlab-ci/test-docker.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0d3fbc2a8d10c9eea4e3eef905d52c946f8ab7e9
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Wed Feb 14 01:16:51 2018 +0100

    setup.py: set the same env vars for testing as autotools

    Also don't print a Python stack trace of the calling process on
    error, just return the error status.

 setup.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 0fcd57846b0053319dc5a28503d3eab173927fc6
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Wed Feb 14 00:56:47 2018 +0100

    tests: add a test for Gio.DBusNodeInfo.new_for_xml, see #164

    This was fixed by the recent reverts

 tests/test_gdbus.py | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

commit a506d5e3c64321c43a4ce7c2a72ca8d36e985999
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Tue Feb 13 23:26:21 2018 +0100

    Revert "Revert "Refactor boxed wrapper memory management strategy""

    This reverts commit daefdfa3e4dc97b4ae38250358d722f09764cc9b.

 gi/gimodule.c            |  6 +++-
 gi/overrides/GLib.py     |  4 ---
 gi/overrides/GObject.py  |  3 ++
 gi/pygi-boxed.c          | 32 +++++++++++++++-----
 gi/pygi-boxed.h          |  4 +--
 gi/pygi-property.c       |  6 +---
 gi/pygi-source.c         |  6 ++--
 gi/pygi-struct-marshal.c | 78
 ++++++++++++++++++++++++++++++++++++++++++++----
 tests/test_gi.py         |  1 -
 tests/test_source.py     |  8 +++--
 10 files changed, 119 insertions(+), 29 deletions(-)

commit 700c785367975995d24a8ffd00b2aa028ccf77e8
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Tue Feb 13 23:26:15 2018 +0100

    Revert "pygi-boxed: make in-place copy safer"

    This reverts commit 9d96df1ea3ad533885fbcae4de693a3cd81e765a.

 gi/pygi-boxed.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

commit fa555767464fbe551b14cfbc121febc5290b1371
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Tue Feb 13 23:26:03 2018 +0100

    Revert "to python marshalling: collect cleanup data"

    This reverts commit 80eab029ce4e181624d7b845a4b517051797080d.

 gi/pygi-array.c               | 24 ++++++------------------
 gi/pygi-basictype.c           |  8 +++-----
 gi/pygi-basictype.h           |  3 +--
 gi/pygi-cache.h               | 13 +++----------
 gi/pygi-closure.c             |  9 ++-------
 gi/pygi-enum-marshal.c        |  6 ++----
 gi/pygi-error.c               |  3 +--
 gi/pygi-hashtable.c           | 13 ++++---------
 gi/pygi-invoke-state-struct.h |  3 ---
 gi/pygi-invoke.c              | 17 ++++-------------
 gi/pygi-list.c                | 38 +++++++-------------------------------
 gi/pygi-marshal-cleanup.c     | 13 +++++--------
 gi/pygi-object.c              |  8 +++-----
 gi/pygi-struct-marshal.c      |  5 ++---
 14 files changed, 43 insertions(+), 120 deletions(-)

commit 10c062001ddd948b0a70545cbf613b38ed6fa46c
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Tue Feb 13 23:09:49 2018 +0100

    Revert "to python struct marshalling: copy boxed during cleanup"

    This reverts commit 7ed8191818733b9130bce84f782dc6f8f734abf7.

 gi/pygi-struct-marshal.c | 34 +++++++---------------------------
 tests/test_gi.py         |  1 +
 2 files changed, 8 insertions(+), 27 deletions(-)

commit e427d1a3a44e882c998543bb2c189700409df873
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Mon Feb 12 20:35:09 2018 +0100

    tests: Fix tests under Wayland. Fixes #163

    These tests try to test Gdk.Atom with the exsting API in libgdk
    but under Wayland they either don't return Gdk.Atom or block.

    Since they are disabled on other platforms just change them to only
    run under X11.

 tests/test_atoms.py | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

commit 3e91df3dca3691635b978d1dc661506213e0efe3
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Mon Feb 12 15:39:41 2018 +0100

    docs: fix build with sphinx 1.7.0

    1.7.0 no longer allows non-class references as param types

 docs/guide/api/signals.rst | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 5a25c98cb6d387791e41c7dc240c55814988519a
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Sun Feb 11 18:08:07 2018 +0100

    tests: Make it possible to use pytest directly

    pytest will just import the files passed to it and try to run tests.
    Since we need to run some setup code convert the tests directory to
    a Python package and do the initialization in __init__.py. This makes
    the init code (env vars, typelib search path, dbus) always run when
    something from the package gets imported.

        python3 setup.py build_tests  # build pygobject and tests
        py.test-3 tests/test_gi.py  # run tests in test_gi.py only

 docs/devguide/building_testing.rst |   6 ++
 setup.py                           |  10 +--
 tests/Makefile.am                  |   8 ++-
 tests/__init__.py                  | 102 ++++++++++++++++++++++++++
 tests/helper.py                    |   4 +-
 tests/runtests.py                  | 143
 +++++++------------------------------
 tests/test_atoms.py                |   4 +-
 tests/test_cairo.py                |   6 +-
 tests/test_docstring.py            |   2 +
 tests/test_error.py                |   6 +-
 tests/test_everything.py           |   6 +-
 tests/test_fields.py               |   2 +
 tests/test_gdbus.py                |   2 +
 tests/test_generictreemodel.py     |   5 +-
 tests/test_gi.py                   |   6 +-
 tests/test_gio.py                  |   4 +-
 tests/test_glib.py                 |   2 +
 tests/test_gobject.py              |   8 +--
 tests/test_gtype.py                |   2 +
 tests/test_import_machinery.py     |   2 +
 tests/test_interface.py            |   4 +-
 tests/test_internal_api.py         |  10 ++-
 tests/test_iochannel.py            |   6 +-
 tests/test_mainloop.py             |   2 +
 tests/test_object_marshaling.py    |   2 +
 tests/test_option.py               |   2 +
 tests/test_ossig.py                |   2 +
 tests/test_overrides_gdk.py        |   4 +-
 tests/test_overrides_glib.py       |   4 +-
 tests/test_overrides_gtk.py        |   4 +-
 tests/test_overrides_pango.py      |   2 +
 tests/test_properties.py           |  10 ++-
 tests/test_pygtkcompat.py          |   4 +-
 tests/test_repository.py           |   8 +--
 tests/test_resulttuple.py          |   2 +
 tests/test_signal.py               |  13 ++--
 tests/test_source.py               |   8 +--
 tests/test_subprocess.py           |   2 +
 tests/test_thread.py               |   5 +-
 tests/test_typeclass.py            |   6 +-
 tests/test_unknown.py              |   5 +-
 tests/testmodule.py                |   2 +
 42 files changed, 244 insertions(+), 193 deletions(-)

commit 21cee6cc4fbc7fb1a28a15840924b0da52b49fca
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Sun Feb 11 16:08:18 2018 +0100

    tests: Make patching in pygtkcompat reversible

    Record all the attribute and sys.modules changes and add an API
    for reverting them after tests are completed.

    This allows us to run the pygtkcompat tests in the same test process
    as other tests.

 pygtkcompat/pygtkcompat.py                         | 273
 ++++++++++++---------
 setup.py                                           |   7 -
 tests/Makefile.am                                  |   4 +-
 tests/runtests.py                                  |   2 +-
 .../{compat_test_pygtk.py => test_pygtkcompat.py}  |  96 ++++++--
 5 files changed, 237 insertions(+), 145 deletions(-)

commit 7f5aedb6e1f317b33a96d0c77641b95f182b2a47
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Sat Feb 10 13:31:23 2018 +0100

    version bump

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)