commit 0d69e553fd29766f75e15fc4e217c92d772bcffb
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jan 8 14:25:17 2018 -0500

    Fix the build

    autogen was failing due to this variable being
    defined multiple times.

 win32/vs15/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7a2cc0f6074caee35688c6748fbebd2c4c2fedd6
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jan 8 14:00:44 2018 -0500

    Updates for 2.55.1

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

commit ef65c160dcbe704cf67ebdfa16afa2986895aab1
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Fri Jan 5 02:21:32 2018 +0200

    gbookmarkfile: fix up annotations

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

 glib/gbookmarkfile.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit a55bfeee418c9feea734dc7b1063c065be01de15
Author: Florian Müllner <fmuellner@gnome.org>
Date:   Sun Jan 7 12:14:46 2018 +0100

    gdesktopappinfo: Add g_desktop_app_info_get_locale_string()

    Custom desktop file fields may be translated, but there is currently
    no non-hacky way to look up the localized value; fill get gap with
    a small wrapper around g_key_file_get_locale_string().

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

 docs/reference/gio/gio-sections.txt |  1 +
 gio/gdesktopappinfo.c               | 27 +++++++++++++++++++++++++++
 gio/gdesktopappinfo.h               |  3 +++
 gio/tests/appinfo-test.desktop      |  2 ++
 gio/tests/desktop-app-info.c        | 21 +++++++++++++++++++++
 5 files changed, 54 insertions(+)

commit 84350cb5666feb1cd459562e438d50cca08c6405
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Dec 18 19:05:57 2017 +0000

    gopenuriportal: Fix mismatched types in callback

    The source object for this asynchronous operation is the GXdpOpenURI,
    not a GDBusConnection. This was causing crashes in method calls on the
    connection, unsurprisingly.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/gopenuriportal.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit eba53aa07e86f300ff6a5df68d32caf8a2752d27
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 8 12:05:21 2018 +0000

    build: Add missing test GSchema XML file to dist list

    This was introduced in bug #742997, but not added to the Makefile.am,
    so
    it’s missing from tarballs.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>
    Reviewed-by: nobody

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

 gio/tests/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit e42ff0105d19be382f6c4e460c46ac9e18f92b25
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 8 12:00:39 2018 +0000

    docs: Mention that we build with strict-aliasing disabled

    Hopefully discouraging people from overriding that and building
    with it
    enabled.

    Pro-tip: GLib will break.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 docs/reference/glib/building.xml | 7 +++++++
 1 file changed, 7 insertions(+)

commit ade324f6fa6274fd2a925b4c8f9cb0ee4956a27f
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Dec 21 17:49:05 2017 +0000

    build: Enable -fno-strict-aliasing

    GLib makes various assumptions about aliasing throughout its codebase,
    and compiling with -fstrict-aliasing has been demonstrated to cause
    problems (for example, bug #791622). Explicitly disable strict
    aliasing
    as a result.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 configure.ac | 8 ++++++++
 meson.build  | 4 ++++
 2 files changed, 12 insertions(+)

commit 97d24b93ab05762ec53785b5ec1c68e8d660b054
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Dec 21 17:47:29 2017 +0000

    glib: Fix strict-aliasing warnings with g_clear_pointer()

    gpointer* cannot be aliased with arbitrary types. In order to fix
    -Wstrict-aliasing=2 warnings with the g_clear_pointer() macro, we need
    to cast through char*, which is allowed to alias with anything.

    Even if we don’t make GLib strict-aliasing safe, it’s important to
    ensure this macro is safe, since it could be used from projects
    which do
    compile with -fstrict-aliasing.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gmem.h | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit d8fe926ba4e799f7b1bd6b0b4464920443bedea9
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Dec 21 17:46:24 2017 +0000

    Fix various strict aliasing problems with sockaddr

    Fix various strict aliasing problems caused by casting between (struct
    sockaddr *) and (struct sockaddr_storage *): the correct code here
    is to
    keep the two in a union.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/gnativesocketaddress.c |  9 +++++---
 gio/gsocket.c              | 51
 ++++++++++++++++++++++++++++++----------------
 glib/gmessages.c           | 13 +++++++-----
 3 files changed, 47 insertions(+), 26 deletions(-)

commit 8f7cc8cb75b62393842603eef1bb93001a581202
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 8 10:33:54 2018 +0000

    gkeyfile: Document need for KEEP_TRANSLATIONS with get_locale_string()

    When using g_key_file_get_locale_string() or get_locale_string_list(),
    the GKeyFile must have been loaded with G_KEY_FILE_KEEP_TRANSLATIONS
    if
    the lookup locale differs from the one which was current when the key
    file was loaded.

    Document that.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gkeyfile.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 7c8906dcdabf30ac248e0f6838f71a3af9645aa5
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Mon Dec 25 22:17:49 2017 +0100

    meson: skip optional linux deps that default to true when building
    on Windows

    As 'auto' dependency checking has been declared undesirable,
    skip checking of optional dependencies where the option
    defaults to true, but where the option doesn't make sense for
    the operating system we're building for. Example: selinux only
    makes sense on Linux, people compiling on Windows or macOS
    shouldn't have to specify -Dselinux=false to get glib to build.

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

 meson.build | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7f3bfcb8912e9b8b2e73520857690356d91869b9
Author: Simon McVittie <smcv@collabora.com>
Date:   Tue Dec 19 10:58:32 2017 +0000

    cancellable: Don't assert if finalization races with cancellation

    Commit 281e3010 narrowed the race between GCancellable::cancelled and
    GCancellableSource's finalize(), but did not prevent it: there was
    nothing to stop cancellation from occurring after the refcount drops
    to 0, but before g_source_unref_internal() bumps it back up to 1 to
    run finalize().

    GCancellable cannot be expected to detect that situation, because the
    only way it has to detect last-unref is finalize(), but in that
    situation finalize() hasn't happened yet.

    Instead of detecting last-unref, relax the precondition a little
    to make it detect finalization: priv is only poisoned (set to NULL)
    after the finalize() function has been called, so we can assume that
    GCancellable has already seen finalize() by then.

    Signed-off-by: Simon McVittie <smcv@collabora.com>
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=791754
    Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884654

 gio/gcancellable.c | 12 ++++++++++++
 glib/gmain.c       | 10 +++++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)

commit a4686b8ea18c585666edece7b92147a92fcfb841
Author: Simon McVittie <smcv@collabora.com>
Date:   Sun Dec 24 15:19:31 2017 +0000

    g_source_set_ready_time: Move no-op fast-path under the lock

    If we don't take the lock, then we don't have the necessary
    "happens before" relationships to avoid this situation:

    * source->priv->ready_time was equal to ready_time until recently
    * another thread has set source->priv->ready_time to a different value
    * that write hasn't become visible to this thread yet
    * result: we should reset the ready_time, but we don't

    Signed-off-by: Simon McVittie <smcv@collabora.com>
    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=791754
    Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884654

 glib/gmain.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit ca1aaccbff972f11c07632ba709edf4abc322b34
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Jan 5 19:36:07 2018 +0000

    docs: Remove redundant sentence from g_prefix_error() documentation

    Signed-off-by: Philip Withnall <withnall@endlessm.com>
    Reviewed-by: nobody

 glib/gerror.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 32b2ab9492b42eb957a3cd99e640493730c23ebc
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Jan 5 19:29:35 2018 +0000

    docs: Fix some odd grammar in the GDBusError documentation

    Signed-off-by: Philip Withnall <withnall@endlessm.com>
    Reviewed-by: nobody

 gio/gdbuserror.c | 4 ++--
 gio/gdbuserror.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 7c2fd10fe4557fcfc0a950f82a46d9f27688f708
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Jan 5 16:44:18 2018 +0000

    docs: Remove some latent DocBook usage in the GObjectClass
    documentation

    Replace it with gtk-doc syntax.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 gobject/gobject.h | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 2939585bd694eafbe7547beafccbbd38497a7678
Author: Christoph Reiter <creiter@src.gnome.org>
Date:   Fri Jan 5 13:22:17 2018 +0100

    meson: work around meson not passing on the threads dependency when
    link_with is used

    When using link_with with declare_dependency() or executable()
    the threads
    dependency is not passed on. To work around the issue add the
    threads dependency
    manually. See https://github.com/mesonbuild/meson/issues/1426

    This makes the static build on Linux work.

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

 glib/meson.build | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 6d009bc56a4e1d369e906f67188a6338b98ba929
Author: Arnaud Bonatti <arnaud.bonatti@gmail.com>
Date:   Fri Jan 5 00:45:57 2018 +0100

    Add ‘gsettings list-schemas --print-paths’ option

    Prints next to the name of non-relocatable schemas their paths.

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

 docs/reference/gio/gsettings.xml |  4 +++-
 gio/completion/gsettings         |  4 ++++
 gio/gsettings-tool.c             | 43
 +++++++++++++++++++++++++++++++++++++---
 3 files changed, 47 insertions(+), 4 deletions(-)

commit 617d40c13b7c61a83c11804a53a51cefc520e505
Author: Michael Catanzaro <mcatanzaro@igalia.com>
Date:   Thu Jan 4 16:34:33 2018 -0600

    Bump to version 2.55.1

    So that GIO modules may begin using the static linking support.

 configure.ac | 2 +-
 meson.build  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit cf93b27cebd067fd7b91a14e1cf1b2c17fcd9c97
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Sun Jul 16 16:41:02 2017 +0200

    meson: fix static build under Windows

    Properly define GLIB/GOBJECT_STATIC_COMPILATION when static build
    is enabled.
    Use library() instead of shared_library() to allow selecting static
    builds.

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

 gio/meson.build                                    | 2 +-
 gio/tests/gdbus-object-manager-example/meson.build | 2 +-
 gio/tests/modules/meson.build                      | 4 ++--
 glib/glibconfig.h.in                               | 4 +++-
 glib/meson.build                                   | 2 +-
 gmodule/meson.build                                | 2 +-
 gobject/meson.build                                | 2 +-
 gthread/meson.build                                | 2 +-
 meson.build                                        | 5 +++++
 9 files changed, 16 insertions(+), 9 deletions(-)

commit aa7c5cbdcbe8b22f019c29668bcbe57d53f9866d
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date:   Thu Dec 14 13:32:56 2017 +0100

    meson: build Windows resource files

    configure_file() forces utf-8 atm but .rc files are not utf-8.
    To work around the issue just remove the only non-ASCII char.

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

 gio/gio.rc.in         |  2 +-
 gio/meson.build       | 16 ++++++++--------
 glib/glib.rc.in       |  2 +-
 glib/meson.build      |  7 +++++++
 gmodule/gmodule.rc.in |  2 +-
 gmodule/meson.build   | 13 ++++++++++++-
 gobject/gobject.rc.in |  2 +-
 gobject/meson.build   | 10 ++++++++++
 gthread/gthread.rc.in |  2 +-
 gthread/meson.build   | 14 +++++++++++++-
 meson.build           |  2 ++
 11 files changed, 57 insertions(+), 15 deletions(-)

commit 0e7b82abb93aeb6fdf374d9e1e4fd4f4636a11f8
Author: Xavier Claessens <xavier.claessens@collabora.com>
Date:   Thu Nov 30 19:26:35 2017 -0500

    GTypeModule: Allow registering static types

    This makes easier to write a module that can be both dynamic and
    static.
    It will allow to statically build modules from glib-networking, for
    example.

    A module can rename its g_io_module_load() function to
    g_io_<modulename>_load(), and then an application which links
    statically
    against that module can call g_io_<modulename>_load(NULL) to register
    types and extension points from the module. If a module is loaded
    dynamically, its load() function will continue to be called with a
    non-NULL GIOModule instance.

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

 gobject/gtypemodule.c | 47
 ++++++++++++++++++++++++++++++++++++++---------
 1 file changed, 38 insertions(+), 9 deletions(-)

commit 7f69b828fcf952fac9cb27da1e74b2fdffa997d0
Author: Xavier Claessens <xavier.claessens@collabora.com>
Date:   Thu Nov 30 15:36:21 2017 -0500

    GIOModule: Use unique names for load/unload symbols

    GIO modules should include their name into their exported symbols to
    make them unique. This avoids symbol clash when building modules
    statically.

    extract_name() function is copied from GStreamer which recently
    switched to the same symbol naming scheme.

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

 gio/Makefile.am        |  3 ++-
 gio/gio-querymodules.c | 16 +++++++++++-
 gio/giomodule-priv.c   | 69
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 gio/giomodule-priv.h   |  3 +++
 gio/giomodule.c        | 44 +++++++++++++++++++++++++++-----
 gio/giomodule.h        | 24 ++++++++++++++++++
 gio/meson.build        |  3 ++-
 7 files changed, 153 insertions(+), 9 deletions(-)

commit e91c11841808ccca408da96136f433a82b2e2145
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 3 11:25:52 2018 +0000

    Revert "gmain: only signal GWakeup right before or during a blocking
    poll"

    This reverts commit 9ba95e25b74adf8d62effeaf6567074ac932811c.

    It is causing undiagnosed problems with WebKit and other users
    of GLib.
    See https://bugzilla.gnome.org/show_bug.cgi?id=761102#c44 and
    https://bugzilla.gnome.org/show_bug.cgi?id=761102#c46.

    Reverting it until someone works out what the problem is.

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

 glib/gmain.c | 30 +++++++++++-------------------
 1 file changed, 11 insertions(+), 19 deletions(-)

commit 0e22d19a11529d02c154d6ea538b35b8b4252422
Author: howetuft <howetuft@gmail.com>
Date:   Thu Dec 28 08:39:21 2017 +0100

    Bug-790839 GApplication command line --help enhancements

    In order to enrich information displayed by GApplication command line
    handling when --help is invoked, 3 new methods are proposed:
    . g_application_set_option_context_parameter_string
    . g_application_set_option_context_summary
    . g_application_set_option_context_description
    Those methods interact with the GApplication's internal GOptionContext
    which is created for command line parsing in
    g_application_parse_command_line.
    (please refer to the GOptionContext class for more information
    about option
    context, parameter string, summary and description.)

    To illustrate the 3 methods, an example is provided:
    . gapplication-example-cmdline4.c

 docs/reference/gio/gio-sections.txt       |  3 ++
 gio/gapplication.c                        | 82
 ++++++++++++++++++++++++++++-
 gio/gapplication.h                        | 10 +++-
 gio/tests/Makefile.am                     |  1 +
 gio/tests/gapplication-example-cmdline4.c | 85
 +++++++++++++++++++++++++++++++
 gio/tests/meson.build                     |  1 +
 6 files changed, 180 insertions(+), 2 deletions(-)

commit b441c21a09db52db0af715e1d702c765ae38346e
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Mon Jan 1 16:12:37 2018 +0000

    gdbus-test-codegen: Cast to void* to printf "%p"

    to suppress a compiler error with stricter warnings enabled (GCC):

    gdbus-test-codegen.c: In function ‘on_handle_get_self’:
    gdbus-test-codegen.c:403:26: error: format ‘%p’ expects argument
    of type
     ‘void *’, but argument 2 has type ‘GThread * {aka struct
     _GThread *}’
     [-Werror=format=]
       s = g_strdup_printf ("%p", g_thread_self ());

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

 gio/tests/gdbus-test-codegen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 54b04f74bdccc6581b47fd34983394fa7569424d
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Mon Jan 1 16:12:15 2018 +0000

    Binding: bind_property’s @notify func is nullable

    This is for destroying resources needed by transformations. But
    the user
    may not need any such resources. Make it obvious that, instead
    of having
    to point to a no-op function, @notify is checked and not called
    if NULL.

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

 gobject/gbinding.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8ade1af707442e3de0d945bff29aa7f58a091f53
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Mon Jan 1 13:48:46 2018 +0000

    docs: Update the "building GLib" section

    The content has slowly gone out of sync with the implementation, and
    some of it is also showing its age.

 docs/reference/glib/building.xml | 189
 ++++++++++++++++++++-------------------
 1 file changed, 99 insertions(+), 90 deletions(-)

commit b1c7d2433f54cc3919722391335529002613ffd3
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Mon Jan 1 13:16:24 2018 +0000

    docs: Remove mention of disable-regex

    The `--disable-regex` configuration option was removed with commit
    d7063452 from 2012.

 docs/reference/glib/building.xml | 12 ------------
 1 file changed, 12 deletions(-)

commit 8213793f341e6052d04aa24bba7bcf1be3e25ed5
Author: Christian Hergert <chergert@redhat.com>
Date:   Sat Dec 23 18:50:50 2017 -0800

    socketlistener: fix event signature in vfunc

    The GSocketListener::event signal has a type of GSocketListenerEvent,
    which is an enum. However, the vfunc signature had a pointer, with
    different sizing requirements. Given the alignment and prompostion
    of some systems, you may still get the same call-site layout, but
    that is not guaranteed.

    This fixes the parameter to have the proper enumeration.

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

 gio/gsocketlistener.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a07b57887dee43ca0e3cd33c319eaad8998e03fd
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Fri Dec 22 15:03:07 2017 +0000

    Do not expand autoptr macros when running introspection

    The introspection scanner chokes fairly badly on the types we create,
    and that got even worse when the autolist support landed. Now, every
    time we declare a new GObject type we automatically get incomplete
    aliases to container types that gobject-introspection and Vala do not
    know how to handle.

    Since the autoptr machinery is not really introspectable to begin
    with,
    as it's a C utility extension that depends on the C compiler
    being used
    to compile a C project that depends on GLib, we can mark the whole
    section as non-introspectable using the __GI_SCANNER__ pre-processor
    symbol.

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

 glib/gmacros.h | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

commit f49a93b20761a0be51b22c481503b4cda0f7264f
Author: Alexander Larsson <alexl@redhat.com>
Date:   Tue Dec 19 11:17:09 2017 +0100

    Add support for g_auto[s]list(Type)

    This lets you do g_autoptr style cleanup of GList that does deep
    freeing.

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

 docs/reference/glib/glib-sections.txt |  2 ++
 glib/docs.c                           | 56 +++++++++++++++++++++++++++++
 glib/gmacros.h                        | 10 ++++++
 glib/tests/autoptr.c                  | 67
 +++++++++++++++++++++++++++++++++++
 4 files changed, 135 insertions(+)

commit bf0be21208800d7976b5a660287e1e487f8a57d3
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Tue Nov 28 15:05:16 2017 +0000

    Do not generate marshaller aliases in source files

    When generating the body of the marshallers, we need to skip
    aliases to
    standard marshallers provided by GLib itself.

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

 gobject/glib-genmarshal.in | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

commit 156d32cb8039f2b3df4af49550aaea4b9701d072
Author: Martin Blanchard <tchaik@gmx.com>
Date:   Wed Dec 20 23:05:53 2017 +0100

    gobject: new g_set_weak_pointer() & g_clear_weak_pointer() helpers

    Weak-pointers are currently lacking g_set_object() & g_clear_object()
    helpers equivalent. New functions (and macros, both are provided) are
    convenient in many case, especially for the property's notify-on-set
    pattern:

      if (g_set_weak_pointer (...))
        g_object_notify (...)

    Inspired by Christian Hergert's original implementation for
    gnome-builder.

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

 docs/reference/gobject/gobject-sections.txt |   2 +
 gobject/gobject.h                           | 102
 ++++++++++++++++++++++++++
 gobject/tests/reference.c                   | 106
 ++++++++++++++++++++++++++++
 3 files changed, 210 insertions(+)

commit 62c476842387a472cbff9f9b9f48ebb180543775
Author: Xavier Claessens <xavier.claessens@collabora.com>
Date:   Tue Nov 28 10:44:04 2017 -0500

    Meson: Add missing options and conform to naming guidelines

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

 config.h.meson                     |   3 -
 docs/reference/gio/meson.build     |   4 +-
 docs/reference/glib/meson.build    |   4 +-
 docs/reference/gobject/meson.build |   4 +-
 gio/meson.build                    |   5 +-
 glib/libcharset/meson.build        |   2 +-
 meson.build                        | 124
 ++++++++++++++++++++++++++-----------
 meson_options.txt                  |  77 +++++++++++++++++++----
 8 files changed, 162 insertions(+), 61 deletions(-)

commit 8e91aaed79017270e8068b5f9027b8d1d8988fe0
Author: Ting-Wei Lan <lantw@src.gnome.org>
Date:   Sun Sep 6 15:34:24 2015 +0800

    glocalfile: Update the list of Linux filesystem magic numbers

    Add filesystem magic numbers found in statfs(2) manual
    page. Filesystem
    magic numbers that are not available from the manual page are copied
    from Linux source code.

    configfs is found in fs/configfs/mount.c, macro CONFIGFS_MAGIC.
    fusectl is found in fs/fuse/control.c, macro FUSE_CTL_SUPER_MAGIC.
    rpc_pipefs is found in net/sunrpc/rpc_pipe.c, macro RPCAUTH_GSSMAGIC.

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

 gio/glocalfile.c | 70
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 68 insertions(+), 2 deletions(-)

commit 8fef0a9cd3b73d995a1fd81b593a7d52fd7e693a
Author: Simon McVittie <smcv@collabora.com>
Date:   Mon Dec 18 16:56:04 2017 +0000

    gmenumodel test: Wait for the expected events to happen

    Previously, we waited an arbitrary 100ms or 200ms and then asserted
    that the events had happened, but that might fail if the machine is
    slow or heavily loaded.

    We still wait for an arbitrary time for negative tests (asserting
    that no more signals are received) because we don't have any way
    to do better here.

    Signed-off-by: Simon McVittie <smcv@collabora.com>
    Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884661

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

 gio/tests/gmenumodel.c | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit ea159a9e1a852246f51348ddc19353dc35727700
Author: Simon McVittie <smcv@collabora.com>
Date:   Mon Dec 18 15:51:54 2017 +0000

    gmenumodel test: If something goes wrong, don't wait forever

    I'm about to add some loops that would otherwise wait indefinitely.

    Signed-off-by: Simon McVittie <smcv@collabora.com>
    Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884661

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

 gio/tests/gmenumodel.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

commit 95e280059144fb3df6ce060cc4ba1678c28dffe0
Author: Simon McVittie <smcv@collabora.com>
Date:   Mon Dec 18 11:42:23 2017 +0000

    testutils: Document what happens by default and how to change it

    Signed-off-by: Simon McVittie <smcv@collabora.com>

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

 glib/gtestutils.c | 34 +++++++++++++++++++++++++++++-----
 1 file changed, 29 insertions(+), 5 deletions(-)

commit 5f83cd3addc89db0619c3b83bab78a9c13ab4e43
Author: Havard Graff <havard.graff@gmail.com>
Date:   Mon Dec 11 14:48:18 2017 +1100

    meson.build: make the android-check reflect the autotools one

    In autotools this same check reads:

    AS_IF([test $glib_native_android != yes]

    with glib_native_android being defined as:

    case $host in
      *android*)
        glib_native_android="yes"
        ;;
      *)
        glib_native_android="no"
        ;;
    esac

    This is needed to be able to compile on OSX.

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

    Signed-off-by: Nirbheek Chauhan <nirbheek@centricular.com>

 gio/meson.build | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 17bfc39ea7745d050fc36cdb233ac6b697971af8
Author: Havard Graff <havard.graff@gmail.com>
Date:   Mon Dec 11 12:32:57 2017 +1100

    meson: add carbon and cocoa libs when building for OSX

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

 glib/meson.build | 2 +-
 meson.build      | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit db7c1180b39235e646051084b3df440a020cd699
Author: Havard Graff <havard.graff@gmail.com>
Date:   Mon Dec 11 12:33:24 2017 +1100

    meson: add libintl when linking gio-tests on OSX

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

 gio/tests/meson.build | 4 ++++
 1 file changed, 4 insertions(+)

commit 9c8c6094fdb3b7bff35c0f36a68e1da3fd2e8ff7
Author: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date:   Wed Apr 29 12:54:40 2015 +0100

    GTest: interpret child processes' wait status if we log their
    stdout/stderr

    WCOREDUMP is not a separate "mode" as suggested by the previous
    code to interpret wait status: instead, it is an extra bit of
    information if the "mode" is WIFSIGNALED.

    (Modified by Philip Withnall to fix a nitpick missing space.)

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

 glib/gtestutils.c | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

commit fa8b76ab9822269fafc15715225bbee1d52ef30b
Author: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date:   Wed Apr 29 12:46:25 2015 +0100

    g_test_subprocess: record raw wait status and interpret it later

    This avoids losing information that might be useful for later
    debugging.

    (Modified by Philip Withnall to add comments to child_status and
    test_trap_last_status.)

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

 glib/gtestutils.c | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit 0c0b1bdd0a5a30caba8682dd49c81c072f9ffa29
Author: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date:   Fri Aug 8 12:01:10 2014 +0100

    g_type_check_value, g_type_check_value_holds: accept const argument

    Conceptually, these functions clearly ought to be fine for a const
    structure. This avoids _G_TYPE_CVH (the implementation of
    G_TYPE_CHECK_VALUE_TYPE, G_VALUE_HOLDS, G_VALUE_HOLDS_BOXED etc.)
    needing to cast to a mutable GValue, which causes
    G_VALUE_HOLDS (cv, type) to issue warnings under gcc -Wcast-qual if
    cv is a const GValue *.

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

 gobject/gtype.c | 6 +++---
 gobject/gtype.h | 8 ++++----
 2 files changed, 7 insertions(+), 7 deletions(-)

commit f5804275afe39c41429c91c75b896251bab1a9c9
Author: Jens Georg <mail@jensge.org>
Date:   Tue Apr 4 10:23:20 2017 +0200

    gdbus-codegen: Clarify license of generated code

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

 gio/gdbus-2.0/codegen/codegen.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit b6b74402d6f7bbeaad77775230e72f24a05e0b5b
Author: Patrick Welche <prlw1@cam.ac.uk>
Date:   Mon Oct 23 13:59:58 2017 +0100

    glib-mkenums: best effort attempt on non-utf8 encoded files.

    Some source files aren't valid utf-8 containing for example
    iso8859-1 accented characters in author's names.
    Replace invalid data with a replacement '?' character and print a
    warning to keep things working.
    Based on a patch from Christoph Reiter in
    https://bugzilla.gnome.org/show_bug.cgi?id=785113#c20

 gobject/glib-mkenums.in | 39 ++++++++++++++++++++++++++++-----------
 1 file changed, 28 insertions(+), 11 deletions(-)

commit 6a597f93f6861b5b01b6b45d9b530da4c252b982
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Dec 13 12:03:52 2017 +0000

    gtestutils: Add missing include

    memcmp() is used, which is declared in string.h. Include that.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gtestutils.h | 1 +
 1 file changed, 1 insertion(+)

commit 12fa92dcfab44af7ae3577d3018bf9b4c1d791d9
Author: Philip Withnall <withnall@endlessm.com>
Date:   Tue Dec 12 11:42:45 2017 +0000

    docs: Split GSocketConnectable/GProxyAddressEnumerator documentation

    Putting them in the same section causes gtk-doc to mix their
    properties
    together in a single listing, which is confusing.

    Since having them in a single section doesn’t really add anything,
    split
    them out to one class per section.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 docs/reference/gio/gio-docs.xml     |  2 ++
 docs/reference/gio/gio-sections.txt | 30 +++++++++++++++++++++---------
 2 files changed, 23 insertions(+), 9 deletions(-)

commit fa8d42de2e41b64801b1e04585b3890d0af4523f
Author: Xavier Claessens <xclaesse@gmail.com>
Date:   Thu Nov 9 20:35:45 2017 -0500

    Meson: Fix build of gtkdoc

    This requires change added in Meson 0.44.0

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

 docs/reference/gio/meson.build     | 3 +++
 docs/reference/gobject/meson.build | 3 +++
 meson.build                        | 2 +-
 3 files changed, 7 insertions(+), 1 deletion(-)

commit 6d0210240ad1054dfec6af8f34bdc4beac9ce1c4
Author: Friedrich Beckmann <friedrich.beckmann@gmx.de>
Date:   Sat Nov 4 00:39:38 2017 +0100

    MacOS: gosxcontenttype.c consider generic icon names also

    This patch considers generic icon names also when icon names
    are searched based on content type. Without this fix only
    non-generic icon names are found. This results in no icons
    for pdf and jpeg files in the file selection dialog.
    This is discussed in

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

 gio/gosxcontenttype.c | 70
 ++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 64 insertions(+), 6 deletions(-)

commit 1a6f6487b7c7767ff3b950697e4130f922d1b3a4
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Fri Dec 8 15:44:37 2017 +0000

    Disable refcounting type propagation with C++

    The type propagation breaks the GRefPtr.h class in WebKitGTK, and in
    any case existing C++ code calling the C API will need to perform an
    explicit cast, as there's no automatic promotion of pointer types to
    and from void*.

    Tested-by: GNOME Continuous

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

 gobject/gobject.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 637a298960dabfab75c2d3e55bff46f43c2a42f4
Author: Mario Sanchez Prada <mario@endlessm.com>
Date:   Thu Dec 7 22:10:58 2017 +0000

    gio/tests/appinfo: New test for launch with "appId-less" applications

    New test to make sure we exercise the code paths in gdesktopappinfo.c
    that get triggered when g_desktop_app_info_launch_uris_with_spawn()
    is used (i.e. unknown app ID, no session bus), both for when either
    a single URI or multiple ones are expected by the application.

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

 gio/tests/appinfo.c | 83
 +++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 77 insertions(+), 6 deletions(-)

commit d501bd0dbebd7004669409a2999a1d16f26e5eb3
Author: Mario Sanchez Prada <mario@endlessm.com>
Date:   Thu Dec 7 13:33:47 2017 +0000

    gdesktopappinfo: Gracefully handle NULL URIs when passed to
    expand_macro()

    If an application calls g_app_info_launch_uris() with a GList that
    includes
    NULL values in some of its data members, and GIO ends up internally
    calling
    g_desktop_app_info_launch_uris_with_spawn() for whatever reason
    (e.g. no
    D-Bus session available), expand_macro() will crash due to the
    invalid data.

    As this is considered a programmer error, use g_return_val_if_fail()
    in those
    situations to prevent the crash from happening, but printing a
    warning anyway.

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

 gio/gdesktopappinfo.c | 60
 +++++++++++++++++++++++++--------------------------
 1 file changed, 30 insertions(+), 30 deletions(-)

commit fbed9c8b850768af1daf121d4ffb4b50dc302bf4
Author: Mario Sanchez Prada <mario@endlessm.com>
Date:   Thu Dec 7 13:33:20 2017 +0000

    gdesktopappinfo: Pass a copy of the URIs list to
    expand_application_parameters()

    This list will be modified in-place when calling expand_macro(),
    so pass a copy
    of it instead the original pointer, that is supposed to be an input
    parameter
    only for g_desktop_app_info_launch_uris_with_spawn().

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

 gio/gdesktopappinfo.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 9f3f089e60d5de07e24b6c6cb9a6094678ed0481
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Fri Dec 8 12:56:55 2017 +0000

    Use escaped version of typeof

    When compiling code that includes gobject.h using GCC with the ISO
    standard, the `typeof` keyword is disabled, as it's a GCC extension.

    The GCC documentation recommends:

    > If you are writing a header file that must work when included in
    > ISO C programs, write __typeof__ instead of typeof.

    Which is precisely what we're going to do.

    Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
    Reviewed-by: Philip Withnall <withnall@endlessm.com>

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

 gobject/gobject.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 3fae39a5d742afe73741f5fd7aa24e3ae8182f06
Author: Christian Hergert <chergert@redhat.com>
Date:   Wed Nov 22 15:10:38 2017 -0800

    gobject: add type propagation to gobject ref API

    Currently, g_object_ref() and g_object_ref_sink() return a
    gpointer which can mask issues when assigning to fields or
    returning from a function.

    To help catch these type of programming errors, we can propagate
    the type of the parameter through the function call on GCC
    using the typeof() C language extension.

    This will cause offending code to have a warning, but will
    continue to be source and binary compatible.

    This is only enabled when GLIB_VERSION_MAX_ALLOWED is 2.56 or greater.

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

 gobject/gobject.c | 12 ++++++++++--
 gobject/gobject.h |  6 ++++++
 2 files changed, 16 insertions(+), 2 deletions(-)

commit 018b997dd286248a27e80e3310fa69d595ac952a
Author: Friedrich Beckmann <friedrich.beckmann@gmx.de>
Date:   Sat Nov 4 00:34:16 2017 +0100

    MacOS: fix content type check vs. mime check to show folder icons

    In MacOS the file selection dialog does not show folder icons.
    With this fix the folder icons are shown. The bug is described
    in:

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

    This bug fix is only partial, because this fix is only the
    last resort when no mime information is available.

 gio/glocalfileinfo.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 62dece198b7e1734e8455a61e4d43950d6653b33
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Dec 7 10:21:35 2017 +0000

    gio: Fix querying of thumbnail attributes other than thumbnail::path

    The thumbnail attributes would previously only be set if
    thumbnail::path
    was included in the query — so querying for just thumbnail::is-valid
    would return no results.

    This fixes the behaviour of
        gio info -a thumbnail::is-valid ./some-file.png
    vs
        gio info -a thumbnail ./some-file.png

    The first command would previously list nothing. The second would
    previously list a thumbnail::path and thumbnail::is-valid.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/glocalfileinfo.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit ed3d2d9c67da11c7a25faeac7b5c4b3c4d4af873
Author: Umang Jain <mailumangjain@gmail.com>
Date:   Thu Dec 7 01:18:47 2017 +0530

    gbytes: Clarify nullability for g_bytes_unref() in docs

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

 glib/gbytes.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2ebc78ae710a5db249ebd3fd06884d7e234e1834
Author: Arnaud Bonatti <arnaud.bonatti@gmail.com>
Date:   Tue Dec 5 15:34:56 2017 +0100

    gio: Remove stray ‘<’ from gschema.dtd

    The mathematical operator was making the DTD unusable.
    Also, min and max can be equal with current parser.

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

 gio/gschema.dtd | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 1a07e35b7024b37fc9033f9d28665c96ccebc88a
Author: Dominique Leuenberger <dimstar@opensuse.org>
Date:   Wed Dec 6 08:58:41 2017 +0100

    gtester-report: fix range usage when running as python3 app

    When using python3 as interpreter, range only takes integer
    arguments or
    it results in errors like:

       File "/usr/bin/gtester-report", line 78, in html_indent_string
         for i in range (0, (n + 1) / 2):
     TypeError: 'float' object cannot be interpreted as an integer

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

 glib/gtester-report | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 345f1c1c80b4887ad58c24bfef403c8f3fc932e5
Author: Kukuh Syafaat <syafaatkukuh@gmail.com>
Date:   Tue Dec 5 14:42:27 2017 +0000

    Update Indonesian translation

 po/id.po | 869
 ++++++++++++++++++++++++++++++++++++---------------------------
 1 file changed, 491 insertions(+), 378 deletions(-)

commit 0d59878bcedf200f836f3798948948724dcec623
Author: Arnaud Bonatti <arnaud.bonatti@gmail.com>
Date:   Tue Dec 5 05:49:43 2017 +0100

    Fix gschema.dtd regarding flags

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

 gio/gschema.dtd | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 36b11323640973ca47bd0f617077321ac2ca29e3
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Mon Dec 4 20:46:22 2017 +0100

    Remove ancient README.translators

    Yo, listen up, here’s a story
    About a little guy that lives in a UTF-8 world
    And all day and all night and everything he sees
    Is just UTF-8 like him inside and outside
    UTF-8 his house with a UTF-8 little window
    And a UTF-8 corvette
    And everything is UTF-8 for him and himself
    And everybody around
    ’Cause he ain’t got nobody to listen

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

 po/README.translators | 25 -------------------------
 1 file changed, 25 deletions(-)

commit c9e62705682585aee7a167ea9d03eb1e2476cd7a
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date:   Sun Dec 3 21:05:03 2017 +0530

    libcharset: Don't try to include configmake.h

    It's an internal gnulib thing which will never be available while
    building glib. Always expect LIBDIR and fallback to using that for
    compatibility with the existing MSVC projects:
    https://mail.gnome.org/archives/gtk-devel-list/2017-December/msg00000.html

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

 glib/libcharset/localcharset.c | 1 -
 1 file changed, 1 deletion(-)

commit f44472e7157e7a09876b241a629da8597eee33b5
Author: Christian Hergert <chergert@redhat.com>
Date:   Wed Nov 22 00:00:39 2017 -0800

    gobject: fix typecasts via g_object_ref

    Now that g_object_ref() propagates the parameter type to the
    return value, we need to cast to ensure the result is warning
    free.

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

 gio/gasyncinitable.c           | 2 +-
 gio/gdbusobjectmanagerserver.c | 2 +-
 gio/glocalfileiostream.c       | 2 +-
 gio/gnetworkaddress.c          | 2 +-
 gio/gnetworkservice.c          | 2 +-
 gio/gsocketaddress.c           | 2 +-
 gio/gunixvolume.c              | 2 +-
 tests/gobject/singleton.c      | 2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)

commit c26aab36db18ee31f3a815f4e843b598a904095f
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Dec 4 10:37:21 2017 +0000

    gio: Fix a minor indentation problem

    Signed-off-by: Philip Withnall <withnall@endlessm.com>
    Reviewed-by: nobody

 gio/gdbusauthmechanismsha1.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 18f4583653f4580dab4634f49a4ad083b9323f4d
Author: Michael Catanzaro <mcatanzaro@igalia.com>
Date:   Sun Dec 3 19:22:58 2017 -0600

    gdbusconnection: Fix link in documentation

 gio/gdbusconnection.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e45f99e3f64f0aadf9e4fa8c549adf33e046e215
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 15 12:27:41 2017 +0000

    gvariant: Clarify return docs for g_variant_get_normal_form()

    Clarify that the return value may be floating, or may not be (depends
    on whether the input @value was in normal form).

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gvariant.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit 69ea026fbcfeeb81110ab5b88012d0efde2c2f34
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Sat Dec 2 11:39:12 2017 +0000

    Fix a 32-bit time_t cast

    Divide first, *then* cast. Otherwise a very long "now", which is
    64-bit, gets truncated into a 32-bit time_t, which can't hold the
    value, and turns negative more often than not.

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

 glib/gmessages.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 532f1edd88aa32825cc5aef6c4df6fbd83c7e3a8
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Dec 1 10:24:09 2017 +0000

    gmain: Clarify documentation of g_source_remove()

    To try and prevent a repeat of
    https://stackoverflow.com/q/47569812/2931197.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>
    Reviewed-by: nobody

 glib/gmain.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit 36f7440bb708afceb2a845438378efe95389acc8
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Dec 1 10:02:21 2017 +0000

    goutputstream: Fix pre-condition

    Spotted by Izak van Langevelde.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/goutputstream.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7f639fd5a00d6f59f8d4e7cccd2964461e2b917e
Author: Michael Catanzaro <mcatanzaro@igalia.com>
Date:   Tue Nov 28 09:58:50 2017 -0600

    gmain: Improve documentation of GSourceFuncs

    We should more clearly indicate that a source ready time will
    result in
    a source being dispatched even if prepare and check never return TRUE.

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

 glib/gmain.c |  2 +-
 glib/gmain.h | 22 +++++++++++-----------
 2 files changed, 12 insertions(+), 12 deletions(-)

commit 4fd537b8c80972a6f32bd466fd18bcbcb224dfcb
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 29 17:51:19 2017 +0000

    gobject: Minor typo fix in a g_critical() warning

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 gobject/gsourceclosure.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 06719a86b2eb85235b9877e8e27535ddcd45dae2
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 29 17:50:27 2017 +0000

    docs: Drop unnecessary <!-- -->s from gtk-doc comments

    Putting a <!-- --> in plural<!-- -->s was an old hack used to fix
    linking the symbol with gtk-doc when gtk-doc didn’t know about
    plural
    forms. gtk-doc does now know about plural forms, so the hack can be
    removed.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 gio/gdbus-2.0/codegen/codegen.py | 6 +++---
 gio/gproxyaddressenumerator.h    | 2 +-
 gio/gsocketconnectable.h         | 2 +-
 gio/tests/test-pipe-unix.c       | 2 +-
 gobject/gclosure.c               | 4 ++--
 5 files changed, 8 insertions(+), 8 deletions(-)

commit 0a2b238f7c86f664d96da39dd80a883a2b684063
Author: Philip Withnall <withnall@endlessm.com>
Date:   Tue Nov 28 14:03:11 2017 +0000

    build: Include host_machine.cpu_family() in tapset directory (Meson)

    This is a corresponding change to meson.build to match commit
    030efac0777cdc3330d3afa12dafa95f6449e14b

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 90dd9ff363729b2f797356515967c3b2a5f93b47
Author: Philip Withnall <philip.withnall@collabora.co.uk>
Date:   Thu Sep 25 10:18:39 2014 +0100

    gmain: Unref GSourceCallbackFuncs _before_ finalising GSource

    Rather than unreffing them _after_ finalising the GSource and freeing
    its struct. This fixes the case where the GSourceCallbackFuncs data
    contains a pointer to the GSource, and the unref() function
    operates on
    that pointer, e.g. by calling g_source_destroy(). This happens when
    using g_source_set_dummy_callback() on a GSource, as the generated
    GClosure needs to destroy the GSource when it is invalidated, which
    could happen (at latest) when the GSourceCallbackFuncs.unref()
    function
    is called during finalisation of the GSource.

    By moving the GSourceCallbackFuncs.unref() invocation higher up in
    g_source_unref_internal(), it becomes re-entrancy-safe for GSource
    methods.

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

 glib/gmain.c | 28 ++++++++++++++++------------
 1 file changed, 16 insertions(+), 12 deletions(-)

commit ed620183cbb762eec8a0d0ff1575e5dc3acc329a
Author: Carlos Garcia Campos <cgarcia@igalia.com>
Date:   Tue Nov 28 12:31:19 2017 +0100

    gtester: do not consider skipped tests as failures

    This is happening since f591366eee341f2c40516821e8a5a0bc7a9bd288, that
    changed the way tests were skipped to use g_test_skip() instead
    of just
    ignoring them. They are now reported to the log with
    G_TEST_RUN_SKIPPED
    as result.

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

 glib/gtester.c    | 26 +++++++++++++++++++++-----
 glib/gtestutils.c |  6 ------
 glib/gtestutils.h |  7 +++++++
 3 files changed, 28 insertions(+), 11 deletions(-)

commit aca410c5869edb344aaaeb98957c0033391c1e0a
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 15 12:28:52 2017 +0000

    gobject: Add missing annotations to GValue variant methods

    They were missing some (nullable) and (transfer) annotations.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gobject/gvaluetypes.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit a2a4a10299bfcc4bfd63599a9b4d9e7465516e43
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 15 12:27:16 2017 +0000

    tests: Fix some minor memory leaks in gdbus-test-codegen

    It’s not entirely leak-free, but it’s better than before.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/tests/gdbus-test-codegen.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 37d9b0c6995f97ea0f744650aaf5179081f878ba
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 15 12:26:26 2017 +0000

    gdbusutils: Fix a memory leak in g_dbus_gvalue_to_gvariant()

    g_variant_get_normal_form() doesn’t necessarily return a floating
    GVariant, so we have to take, rather than sink, the ref.

    This fixes a lot of leaks with gdbus-codegen-generated code.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/gdbusutils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d35d9b7911d1bd85c7ae47134d0232acfabdfd9a
Author: Tim Waugh <twaugh@redhat.com>
Date:   Fri Dec 5 15:25:51 2014 +0000

    codegen: fix array out-param annotations

    When using gdbus-codegen to produce generated code for a method with
    an out parameter with a signature like 'as', make sure to include
    an "(array)" annotation for that parameter.

    (Reworked by Philip Withnall to improve code formatting.)

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

 gio/gdbus-2.0/codegen/codegen.py   |  4 ++--
 gio/gdbus-2.0/codegen/dbustypes.py |  6 ++++++
 gio/tests/gdbus-test-codegen.c     | 38
 ++++++++++++++++++++++++++++++++++++--
 gio/tests/test-codegen.xml         |  4 ++++
 4 files changed, 48 insertions(+), 4 deletions(-)

commit 2a0db6d868a998a247415cf83dd4dcbe392bf70a
Author: Philip Withnall <withnall@endlessm.com>
Date:   Tue Nov 28 14:25:34 2017 +0000

    inotify: Add missing commas

    These were accidentally omitted from commit
    748bb24985419d54812f31f549e042dad8619084. My fault.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 gio/inotify/inotify-helper.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 643c2d590cc83569936cdb877a0200fececd60e1
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Nov 16 09:32:24 2017 +0000

    gdatetime: Drop a duplicate #define

    It’s exactly the same as the one on the next line.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gdatetime.c | 1 -
 1 file changed, 1 deletion(-)

commit bccc1057e33277fd566d51166a30e8d1e17c20e0
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Nov 16 09:30:32 2017 +0000

    gdatetime: Fix handling of unsupported nl_langinfo() items

    If nl_langinfo() doesn’t support a particular item, it returns
    the empty
    string. We should check for that and return NULL from
    g_date_time_format() accordingly, otherwise the user could unwittingly
    end up with a formatted date/time which is missing some or all of its
    components.

    This arose with %r in de_DE, which is unsupported by nl_langinfo()
    because Germans almost never write time in 12-hour format.

    Add a unit test.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gdatetime.c       | 21 ++++++++++++++++++++-
 glib/tests/gdatetime.c | 22 ++++++++++++++++++++++
 2 files changed, 42 insertions(+), 1 deletion(-)

commit e644bfa37ee7429cfca6a91c46b55cd402dfbf6d
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 17 14:24:10 2017 +0000

    gio: Add some casts for printf() formatting statbufs on Solaris

    Apparently Solaris defines statbuf fields as long when Linux
    doesn’t, in
    some cases. Cast down to the type expected by the printf() format
    placeholder.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/gdbusauthmechanismsha1.c | 2 +-
 gio/gdbusmessage.c           | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

commit ae7895002b993022694c2435a12e4449dbac1d87
Author: Philip Withnall <philip@tecnocode.co.uk>
Date:   Sat Jun 21 11:27:48 2014 +0100

    gnode: Eliminate implicit signed-to-unsigned integer conversion

    When doing a level traverse of a GNode with depth of -1, the depth was
    implicitly being converted to an unsigned integer. This worked (making
    the depth limit G_MAXUINT), but was a bit mystical.

    Change g_node_depth_traverse_level() to explicitly take a signed depth
    and handle it appropriately.

    Coverity issue: #1159465

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

 glib/gnode.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b16d7fc1a77021455fb370fa2754a03c67c9e1d4
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Nov 15 10:54:30 2017 +0000

    gmountoperation: Add missing (array) annotations

    Two of the vfuncs in GMountOperation need some annotations for their
    element types and array sizes, otherwise g-ir-scanner comes up with
    nonsense output.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/gmountoperation.h | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit 181eb900d5c895ee27747a7fdbb285640cd90e43
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Nov 27 18:47:20 2017 +0000

    gdesktopappinfo: Downgrade a warning to a debug message

    Bug #786580 triggered this warning to show up in the appinfo tests if
    run on a machine where no terminal except xterm is installed (for
    example, a build machine). Since we didn’t warn before if xterm
    but no
    other terminals were installed, it seems reasonable to downgrade the
    warning to a debug message.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/gdesktopappinfo.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2cd26714e59f5a95a2c8a263167e61897f97b126
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Nov 16 10:28:22 2017 +0000

    tests: Add tests to ensure g_[s]list_sort() are stable sorts

    Given that we guarantee it in the API…

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/tests/list.c  | 33 +++++++++++++++++++++++++++++++++
 glib/tests/slist.c | 33 +++++++++++++++++++++++++++++++++
 2 files changed, 66 insertions(+)

commit 74cbd6c34f56634c3d9d25395e4bea322fc37d47
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Nov 16 10:27:37 2017 +0000

    gslist: Document that g_slist_sort() is stable

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib/gslist.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 9297a596d629cf8666e858907c5b1d85d3e0745b
Author: Philip Withnall <philip.withnall@collabora.co.uk>
Date:   Tue Sep 30 18:56:18 2014 +0100

    gmain: Mark some ref_count variables as volatile

    To make it more obvious they should exclusively be accessed with
    atomic
    functions.

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

 glib/gmain.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d73f8eec4839e35f308d90a321b4bc121f8408e4
Author: Philip Withnall <philip.withnall@collabora.co.uk>
Date:   Tue Sep 30 18:53:47 2014 +0100

    gmain: Make GSourceCallback thread-safe

    Otherwise there is a race in finalising the GSourceCallback if one
    thread is finishing off a g_main_dispatch() while another thread is
    destroying the GSource which owns the GSourceCallback.

    A helgrind log:

    ==21707== Possible data race during write of size 4 at 0x54EACB0 by
    thread #12
    ==21707== Locks held: none
    ==21707==    at 0x4ECC174: g_source_callback_unref (gmain.c:1528)
    ==21707==    by 0x4ECD953: g_main_dispatch (gmain.c:3081)
    ==21707==    by 0x4ECE667: g_main_context_dispatch (gmain.c:3673)
    ==21707==    by 0x4ECE859: g_main_context_iterate (gmain.c:3744)
    ==21707==    by 0x4ECEC7F: g_main_loop_run (gmain.c:3938)
    ==21707==    by 0x41C197: some_thread (some-code.c:224)
    ==21707==
    ==21707== This conflicts with a previous write of size 4 by thread #5
    ==21707== Locks held: 1, at address 0x54CF320
    ==21707==    at 0x4ECC174: g_source_callback_unref (gmain.c:1528)
    ==21707==    by 0x4ECB86F: g_source_destroy_internal (gmain.c:1178)
    ==21707==    by 0x4ECB9D4: g_source_destroy (gmain.c:1227)
    ==21707==    by 0x41CF09: some_other_thread (some-other-code.c:410)

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

 glib/gmain.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 030efac0777cdc3330d3afa12dafa95f6449e14b
Author: Philip Withnall <philip.withnall@collabora.co.uk>
Date:   Wed Jun 29 14:59:59 2016 +0100

    build: Include $host_cpu in tapset directory

    SystemTap tapsets are architecture-specific, as they include the full
    path to the .so file for each probe they reference. Hence, we should
    install them in an architecture-specific path, or multiarch systems
    will
    suffer from collisions between them.

    A better long-term solution, using $libdir rather than the
    non-architecture-specific $datadir, is under discussion upstream:
    https://sourceware.org/bugzilla/show_bug.cgi?id=20264; but this
    will do
    for now.

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

 configure.ac | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 748bb24985419d54812f31f549e042dad8619084
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 24 20:02:43 2017 +0000

    inotify: Don’t propagate unrecognised events to GLocalFileMonitor

    If we can’t convert the inotify event mask into a GFileMonitorEvent
    enum
    value, don’t propagate it to GLocalFileMonitor, since it hits an
    assertion failure in that case.

    This should no longer be possible since the previous commit to ignore
    IN_Q_OVERFLOW events, but we might as well change this just in case
    other bugs crop up in event mask handling.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/inotify/inotify-helper.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 9853842c53a37bb6c83615e6e3744b3c4d22f6c6
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 24 20:00:38 2017 +0000

    inotify: Ignore IN_Q_OVERFLOW events

    There’s not much we can do about them, and if they go unhandled,
    they
    can propagate through to g_file_monitor_source_handle_event()
    and cause
    assertion failures due to not mapping to a GFileMonitorEvent.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/inotify/inotify-path.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 76072a2dde4a4acc8be8d3c47efbc6811ebe0c1e
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 10 15:10:26 2017 +0000

    kqueue: Fix invalid emission of G_FILE_MONITOR_EVENT_MOVED event

    That event is deprecated, and the kqueue backend can’t provide
    enough
    information to go alongside the event (i.e. the name of the new file).
    Use G_FILE_MONITOR_EVENT_DELETED instead.

    Quite disappointed in the kqueue documentation for this: I cannot
    find a
    single piece of documentation or example about how NOTE_RENAME is
    supposed to communicate the new name of the file.

    If it turns out that this is possible, the code can be amended
    again in
    future. At least now it doesn’t abort.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/kqueue/kqueue-helper.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 7d3e6738c5dcddad2ea89bcf475915b91a7ac42a
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Mon Nov 27 11:58:19 2017 +0000

    Remove outdated/obsolete README

    The README for the API reference top-level is completely obsolete,
    so we
    should just remove it.

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

 docs/reference/README | 63
 ---------------------------------------------------
 1 file changed, 63 deletions(-)

commit 82adf7b5da71f44322139f109a3a39455432a961
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Nov 27 11:29:15 2017 +0000

    tests: Work around a gdb bug in assert-msg-test

    It seems that when GLib is compiled without CFLAGS=-g, gdb can’t
    work
    out the size of __glib_assert_msg, so assumes it’s 4 bytes —
    even on
    64-bit systems. This causes it to not read the most significant
    4 bytes
    of the assertion message pointer, and hence it can’t print the
    stored
    assertion message. This causes assert-msg-test to fail.

    The upstream gdb bug is
    https://sourceware.org/bugzilla/show_bug.cgi?id=22501.

    Work around that by referencing and dereferencing __glib_assert_msg so
    that gdb treats it as a pointer of sizeof(char*) rather than of
    the size
    it incorrectly calculated from the library’s symbol table
    (or through
    some other mystical process).

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 tests/assert-msg-test.gdb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 7dcc09e58688ea4c538f77824268a35c9654f5e6
Author: Carlos Garcia Campos <cgarcia@igalia.com>
Date:   Mon Nov 27 11:32:49 2017 +0100

    gproxyresolverportal: do not connect to session bus when not under
    flatpak

    While gio module extension is loaded a new GProxyResolverPortal is
    created to query whether it's supported. We always return FALSE
    when not
    aunder flatpak, so we don't need to connect to the session bus in that
    case. Add a helper ensure_resolver_proxy() that returns TRUE when the
    proxy is created and use it in is_supported() instead of creating the
    proxy unconditionally in the instance initialization.

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

 gio/gproxyresolverportal.c | 25 ++++++++++++++++++++++---
 1 file changed, 22 insertions(+), 3 deletions(-)

commit d44afbadda8a57da3002def2fb82ee4d0bd86788
Author: Christian Hergert <chergert@redhat.com>
Date:   Sun Nov 26 16:00:46 2017 -0800

    macros: make G_GNUC_CHECK_VERSION() portable

    This removes the use of defined() in a macro expansion, which may
    not be
    portable to some pre-processors. Instead, we hoist the defined check
    outside the macro expansion.

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

 glib/gmacros.h | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit f5dba7d43c597668382363c8677172298f28475c
Author: Ivar Trygve Jarlsby <ivartj@ivartj.org>
Date:   Sat Nov 25 21:20:59 2017 +0100

    docs: Correct inconsistency in GObject tutorial

    The example code defines an interface with three methods. The
    preceding text
    reads 'This interface defines two methods'. This appears to be
    because the
    example code was changed without updating the surrounding text.

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

 docs/reference/gobject/tut_howto.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bb2696e8d926528f72dedd494e0a9acd8e3b5742
Author: Yosef Or Boczko <yoseforb@src.gnome.org>
Date:   Sun Nov 26 15:45:09 2017 +0200

    Updated Hebrew translation

 po/he.po | 1388
 +++++++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 839 insertions(+), 549 deletions(-)

commit bc277bfcefac54e705ae71eac1e5c836cb69cdfc
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Sat Nov 25 10:24:07 2017 +0000

    docs: Fix typo in the GObject tutorial

    The description of the instance construction does not match the
    example.

 docs/reference/gobject/tut_gobject.xml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit b97e5cb21bf97bcdd8c393f032c6eef453f4f410
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 24 12:24:31 2017 +0000

    glib-tap: Add missing mkdir for .test generation rule

    We can’t guarantee that the builddir we’re generating in
    actually exists
    — if doing a clean build with builddir ≠ srcdir, and there are
    no other
    rules which generate build products in builddir, the .test generation
    rule can fail. This happens for flatpak-builder.git for me.

    Try to avoid that by explicitly creating the builddir.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 glib-tap.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 87122cae38bda7d91b62f3ca167e507316a434ba
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date:   Fri Nov 24 12:41:53 2017 +0530

    meson: Fix gnulib compilation on MSVC

    glibinc is needed for including glibconfig.h, this was not noticed
    during testing probably because a system-installed header got picked
    up instead.

 glib/gnulib/meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7a9d92702eb22f80c7d37cf87561c90a2a75335b
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date:   Fri Nov 24 12:06:27 2017 +0530

    meson: Create gio-unix and gio-win32 internal deps

    These are useful when using glib as a subproject and you want to use
    gio-unix-2.0 or gio-win32-2.0.

 gio/meson.build | 32 ++++++++++++++++++++------------
 1 file changed, 20 insertions(+), 12 deletions(-)

commit bd22bb9898187630afd37ee1c9400befe6cd5f5a
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date:   Thu Nov 23 23:00:25 2017 +0530

    meson: Use files() for gio sources and headers

    This allows them to be fetched with
    subproject().get_variable(). Needed
    for generating Gio-2.0.gir in the gobject-introspection meson port.

 gio/meson.build         | 76
 ++++++++++++++++++++++++-------------------------
 gio/xdgmime/meson.build |  4 +--
 tests/meson.build       |  1 -
 3 files changed, 40 insertions(+), 41 deletions(-)

commit 1969af3e8c24481efef73bbc93586f5b7ae00d55
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Nov 23 16:37:00 2017 +0000

    build: Use AM_DISTCHECK_CONFIGURE_FLAGS rather than unprefixed version

    Since automake 1.11.2, it’s recommended to use the prefixed
    version and
    leave the unprefixed version for users to override. Since we depend on
    automake 1.13.3, we should be doing this.

    Based on a patch by Sam Spilsbury <smspillaz@gmail.com>.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2e5bb92de6a976f0ffb2f57b28c00e0adeb03eb6
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date:   Wed Nov 22 14:11:11 2017 +0530

    meson: Use files() for headers and sources

    This allows them to be fetched via subproject().get_variable(). Needed
    for the gobject-introspection meson port.

 glib/meson.build    | 30 +++++++++++++++---------------
 gobject/meson.build | 12 +++++-------
 2 files changed, 20 insertions(+), 22 deletions(-)

commit c603ba301d2e236bdee04b5c78d3204a71609eed
Author: Nirbheek Chauhan <nirbheek@centricular.com>
Date:   Wed Nov 22 04:40:10 2017 +0530

    meson: Add 'charsetalias-dir' option mirroring the autotools one

    This fixes the build again.

 glib/libcharset/meson.build | 7 ++++++-
 meson_options.txt           | 2 ++
 2 files changed, 8 insertions(+), 1 deletion(-)

commit 4e5c6616f0cde61824d2ab74b9e1a247b1a7b6af
Author: Philip Withnall <withnall@endlessm.com>
Date:   Tue Nov 21 12:43:17 2017 +0000

    tests: Add tests for GArray constructors

    Noticed these were missing when handling bug #733648. Add a few
    missing
    tests to improve coverage.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 glib/tests/array-test.c | 61
 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

commit 0dc68e5d469654d6e4b35d73f48c9ec550dcdfb4
Author: Philip Withnall <withnall@endlessm.com>
Date:   Tue Nov 21 12:42:42 2017 +0000

    tests: Use g_test_skip() instead of a message in GDateTime tests

    There are some GDateTime tests which need to be skipped if changing
    the
    locale fails. Use g_test_skip() to do that, rather than just a
    human-readable message.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 glib/tests/gdatetime.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit ca32be3bf231c6591cbe34f4e58e98312c4b73c5
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Nov 5 10:39:53 2016 -0700

    Fix -z nodelete configure check to work on Solaris

    Passing -z nodelete without the shared library flags on Solaris
    results in
    ld: fatal: option '-z nodelete' is incompatible with building a
    dynamic executable
    which causes the configure test to falsely report its not supported.

    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

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

 configure.ac | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 6bcc8b40349055ace526ccfb25f58b6322c82d64
Author: Daniel Macks <dmacks@netspace.org>
Date:   Mon Nov 20 05:48:44 2017 -0500

    Add configuration option for charset.alias directory

    Specifically controlling the location of this file, rather than simply
    using $libdir, allows one to avoid conflicting with the same default
    location as the gnulib localcharset module uses.

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

 configure.ac                   |  6 ++++++
 glib/libcharset/Makefile.am    | 11 ++++++-----
 glib/libcharset/localcharset.c |  7 ++++---
 3 files changed, 16 insertions(+), 8 deletions(-)

commit deeacce18a7b3c8a0d5ef7ff72fda4b8b1746a66
Author: Daniel Macks <dmacks@netspace.org>
Date:   Mon Nov 20 03:28:17 2017 -0500

    Do not load systemwide giomodules during self-test

    $libdir/gio/modules/*.so on the live build machine are supplied by
    third parties, so we should not look there while testing ourselves.

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

 gio/tests/Makefile.am | 1 +
 gio/tests/meson.build | 1 +
 2 files changed, 2 insertions(+)

commit 0b10c41a048a89266e4edf0352b2af4930cb4ad6
Author: Daniel Macks <dmacks@netspace.org>
Date:   Sun Nov 19 23:43:32 2017 -0500

    Git should ignore generated config.py file

    gio/gdbus-2.0/codegen/config.py is generated by ./configure from
    gio/gdbus-2.0/codegen/config.py.in

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

 gio/gdbus-2.0/codegen/.gitignore | 1 +
 1 file changed, 1 insertion(+)

commit f2c093f6571645d80b2d37bb193e991092ee9737
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 17 13:51:53 2017 +0000

    build: Drop --enable-rebuilds configure option

    It is outdated and no longer effectively used. It was originally in
    place to prevent rebuilding generated files (from a tarball) if the
    right build tools (awk, Perl, indent) were not available. However,
    we no
    longer use indent, we have hard-required awk for a while, and the only
    places the @REBUILD@ substitution was still used were for
    glib-genmarshal, which has recently been rewritten in Python (so no
    longer depends on whether Perl is available).

    Drop the whole lot.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 configure.ac              | 16 ----------------
 tests/gobject/Makefile.am |  4 ++--
 2 files changed, 2 insertions(+), 18 deletions(-)

commit 9ab0073321c3feaf2584e41701092117a6fb9a1c
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 17 14:39:55 2017 +0000

    glocalfileinfo: Fix a leak on an error handling path

    Spotted by Clang static analysis, thanks to Leslie Zhai.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

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

 gio/glocalfileinfo.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit e73831d808da70df274bf7107c3290df509859b7
Author: Emanuele Aina <emanuele.aina@collabora.com>
Date:   Thu Jun 13 11:30:37 2013 +0200

    tests: Re-wire the testgobject test program to the build system

    After the build system rework in commit f9eb9e testgobject fell
    through
    the cracks and was not built since then.

    Re-enable it, even if it is currently failing due to commit 31fde56.

    (Tweaked by Philip Withnall to add meson.build support.)

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

 tests/gobject/Makefile.am | 2 ++
 tests/gobject/meson.build | 1 +
 2 files changed, 3 insertions(+)

commit edcabe1a4e55b3b541c2e0afcece3ba175b67dba
Author: Emanuele Aina <emanuele.aina@collabora.com>
Date:   Tue May 28 22:45:03 2013 +0200

    tests: Don't assume that private data follows the instance data

    Commit 31fde56 changed the way the private data is laid out in
    memory by
    putting it *before* the instance data to keep the offsets fixed
    regardless of the number of many subclasses.

    This means that the invariant testgobject was verifying is no longer
    true and the failing tests can be safely dropped.

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

 tests/gobject/testgobject.c | 3 ---
 1 file changed, 3 deletions(-)

commit 63c07f9b63a1e74d65b7551f7cbff266e68e637c
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Nov 17 11:42:48 2017 +0000

    codegen: Change (allow-none) annotations to (nullable)

    (nullable) has been around for a while now.

    Signed-off-by: Philip Withnall <withnall@endlessm.com>

 gio/gdbus-2.0/codegen/codegen.py | 40
 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

commit c71098ddab562a53772f9d581f6a20da16612bfe
Author: Daiki Ueno <ueno@unixuser.org>
Date:   Fri Dec 13 18:28:33 2013 +0900

    tests/gmenumodel: Add test cases using peer-to-peer D-Bus connection

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

 gio/tests/gmenumodel.c | 251
 ++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 237 insertions(+), 14 deletions(-)

commit f29065c31565626767b5809bfa51ec9cde0066ea
Author: Daiki Ueno <ueno@unixuser.org>
Date:   Mon Dec 16 11:16:47 2013 +0900

    GMenuExporter: Allow NULL bus name for peer-to-peer connection

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

 gio/gmenuexporter.c | 39 ++++++++++++++++++++++++++++++---------
 1 file changed, 30 insertions(+), 9 deletions(-)

commit d37af2bd047308dc91f343bb58a1ac15d1f01d76
Author: Daiki Ueno <ueno@unixuser.org>
Date:   Mon Dec 16 11:42:13 2013 +0900

    GDBusActionGroup: Allow NULL bus name for peer-to-peer connection

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

 gio/gdbusactiongroup.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit e8a09b3f850c06fec256a8152aba016b2fb5b45c
Author: Daiki Ueno <ueno@unixuser.org>
Date:   Fri Dec 13 18:29:46 2013 +0900

    GDBusMenuModel: Allow NULL bus name for peer-to-peer connection

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

 gio/gdbusmenumodel.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 3b89702bcff7ceaf699dfde0f01e684ec31fbe8b
Author: Luca Bruno <lucabru@src.gnome.org>
Date:   Sun Feb 16 19:44:35 2014 +0100

    glib/tests/mappedfile.c: Use temp dir instead of user runtime dir

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

 glib/tests/mappedfile.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8d5c30cf90d856651cc020f42409b9a362d7f7e2
Author: Christophe Fergeau <cfergeau@redhat.com>
Date:   Thu Feb 20 12:46:55 2014 +0100

    Fix "on on" typo in tap-driver.sh comment

    It should be "and/or on systems" rather than "and/on on systems"

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

 tap-driver.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 42d3ed001353560892b9b25b2fa93b974a3df480
Author: Dan Winship <danw@gnome.org>
Date:   Fri Feb 14 16:03:49 2014 -0500

    glib: document restrictions on various foreach() functions

    Some foreach() functions allow you to modify the object they are
    iterating, and others don't, but the docs were not generally clear
    about this.

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

 glib/garray.c    |  3 ++-
 glib/gdataset.c  | 12 ++++++++++--
 glib/glist.c     |  6 ++++++
 glib/gnode.c     |  6 ++++--
 glib/gqueue.c    |  6 ++++++
 glib/gsequence.c |  5 +++--
 glib/gslist.c    |  6 ++++++
 7 files changed, 37 insertions(+), 7 deletions(-)

commit 3cfac71d09dded67485f153fa76d6f063dbb6a76
Author: David Schleef <ds@schleef.org>
Date:   Sat Apr 13 11:26:34 2013 -0700

    gdatetime: fix floating-point conversion

    Conversion from floating point to integer requires special care.

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

 glib/gdatetime.c       | 13 ++++++++++++-
 glib/tests/gdatetime.c | 16 ++++++++++++++++
 2 files changed, 28 insertions(+), 1 deletion(-)

commit b5733ecc76d8b80a78bfd35406b66a5217b60f20
Author: Patrick Welche <prlw1@cam.ac.uk>
Date:   Thu Nov 7 10:05:45 2013 +0000

    Solaris build fix

    On Solaris sigset_t is only defined in /usr/include/sys/signal.h
    (included from /usr/include/signal.h) if _XPG4_2 is defined. If
    it's not defined, you need to include /usr/include/sys/select.h.

    http://bugzilla.gnome.org/show_bug.cgi?id=562334

 glib/gbacktrace.h | 3 +++
 1 file changed, 3 insertions(+)