commit 077800464393b1d352ad89fc33fad536ff26254a
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Feb 6 15:09:51 2018 -0500

    2.55.2

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

commit a4fc4c1e6eb57b10e2b60f522d11fd2c256dee31
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jan 22 21:27:35 2018 +0100

    trivial: add some helpful comments

    Not everybody knows console color codes by heart.

 glib/gmessages.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 567e5548bbe8bd1711a7ca2cc92268a9b0a76494
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 17 16:12:25 2018 +0000

    codegen: Fix a typo in g_variant_get_objv()

    g_variant_get_objpathv() doesn’t exist. The code actually meant
    g_variant_get_objv().

    This fixes a leak with `ao`-type properties in generated code.
    Previously they wouldn’t be freed; now the container is (correctly)
    freed.

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

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

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

commit 79d9ea2598c1385104b4c88843d5d92b0203c498
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 31 22:47:49 2018 +0000

    gthread: Fix a typo in an #ifdef on the non-native mutex path

    This seems to have been present since the code was introduced
    in commit
    cedc82290f860683d695d0c5326db153893eec21. The attr variable is defined
    under one #ifdef, but destroyed under another, which doesn’t
    make any
    sense. The second #ifdef variable is actually an enum value,
    rather than
    the static initialiser value which makes more sense in the context.

    Note that GMutex used to be statically initialised to the value of
    PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP in gthread.h, before this was
    reworked in commit e081eadda598bc708fbf9dd53a190fc3b0e7fa76.

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

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

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

commit 1574321e51dc20eb2b0fdd699966428be3cc05eb
Author: Allison Lortie <desrt@desrt.ca>
Date:   Mon Oct 28 17:53:58 2013 -0700

    GKeyFile: add API for getting locale of a string

    g_key_file_get_locale_string() returns a translated string from the
    keyfile.  In some cases, it may be useful to know the locale that that
    string came from.

    Add a new API, g_key_file_get_locale_for_key(), that returns the
    locale
    of the string.

    Include tests.

    (Modified by Philip Withnall to rename the API and fix some minor
    review
    issues. Squash in a separate test case commit.)

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

 docs/reference/glib/glib-sections.txt |  1 +
 glib/gkeyfile.c                       | 62
 +++++++++++++++++++++++++++++++++++
 glib/gkeyfile.h                       |  5 +++
 glib/tests/keyfile.c                  | 41 +++++++++++++++++++++++
 4 files changed, 109 insertions(+)

commit 7b3f78fddb41673fdf3a81acfaf0a3aaec945af1
Author: Kukuh Syafaat <syafaatkukuh@gmail.com>
Date:   Mon Feb 5 16:36:37 2018 +0000

    Update Indonesian translation

 po/id.po | 522
 +++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 272 insertions(+), 250 deletions(-)

commit 32b16798fd2e4f029ac1559f98788423ba40a48d
Author: Piotr DrÄ…g <piotrdrag@gmail.com>
Date:   Mon Feb 5 00:10:55 2018 +0100

    Update Polish translation

 po/pl.po | 1080
 +++++++++++++++++++++++++++++++++++---------------------------
 1 file changed, 602 insertions(+), 478 deletions(-)

commit 8e74fbf300a95e1e154ef10c132e6a4ec6aaeda1
Author: Philip Withnall <withnall@endlessm.com>
Date:   Sun Feb 4 17:33:16 2018 +0100

    gnetworkaddress: Fix minor memory leak

    From commit 99b792fac047b2f495d83ca0a1c1a481ed838251.

    Spotted by Coverity; CID 1385719.

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

 gio/gnetworkaddress.c | 2 ++
 1 file changed, 2 insertions(+)

commit 1c0bed93a3f9a620d6d256799bb68d270145704d
Author: Patrick Griffis <tingping@tingping.se>
Date:   Tue Nov 28 06:43:56 2017 -0500

    docs: Clarify dest requirements of g_utf8_strncpy()

    (Minor wording tweak by Philip Withnall.)

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

 glib/gutf8.c | 3 +++
 1 file changed, 3 insertions(+)

commit 40be86bb0e422247673ccc36fc3c493c882b4390
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Jan 5 14:26:35 2018 +0000

    gio: Port GThreadedResolver to use res_nquery() to fix thread-safety

    res_query() uses global state in the form of the struct __res_state
    which contains the contents of resolv.conf (and other things). On
    Linux,
    this state seems to be thread-local, so there is no problem. On OS X,
    however, it is not, and hence multiple res_query() calls from parallel
    threads will compete and return bogus results.

    The fix for this is to use res_nquery(), introduced in BIND 8.2, which
    takes an explicit state argument. This allows us to manually store the
    state thread-locally. If res_nquery() isn’t available, we fall
    back to
    res_query(). It should be available on OS X though. As a data point,
    it’s available on Fedora 27.

    There’s a slight complication in the fact that OS X requires
    the state
    to be freed using res_ndestroy() rather than res_nclose(). Linux uses
    res_nclose().

    (See, for example, the NetBSD man page:
    https://www.unix.com/man-page/netbsd/3/res_ninit/. The Linux one is
    incomplete and not so useful:
    http://man7.org/linux/man-pages/man3/resolver.3.html.)

    The new code will call res_ninit() once per res_nquery() task. This is
    not optimal, but no worse than before — since res_query() was being
    called in a worker thread, on Linux, it would implicitly initialise
    the
    thread-local struct __res_state when it was called. We’ve
    essentially
    just made that explicit. In practical terms, this means a
    stat("/etc/resolv.conf") call per res_nquery() task.

    In future, we could improve this by using an explicit thread pool with
    some manually-created worker threads, each of which initialises
    a struct
    __res_state on spawning, and only updates it on receiving
    the #GResolver::reload signal.

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

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

 config.h.meson          | 12 ++++++++++++
 config.h.win32.in       | 12 ++++++++++++
 configure.ac            | 49
 +++++++++++++++++++++++++++++++++++++++++++++++++
 gio/gthreadedresolver.c | 32 ++++++++++++++++++++++++++++++++
 gio/meson.build         | 48
 ++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 153 insertions(+)

commit 235f4958a97bb82c50a178ed0d6f0ac1e3cdbbe4
Author: Allison Lortie <desrt@desrt.ca>
Date:   Fri Feb 2 14:20:09 2018 +0100

    gsettings: remove redundancy in 'list-recursive'

    Some projects use child schemas in an odd way: they link children
    which
    already have their path pre-defined.  This causes the child schema
    (and
    its keys) to be printed out twice:

     - once because it is, itself, a non-relocatable schema

     - once, as a recursion from its parent

    We can avoid this by not recursing into child schemas that are
    non-relocatable (on the assumption that they will be enumerated
    elsewhere).

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

 gio/gsettings-tool.c | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

commit 32cc60dbffedc537ee2d37b9de695693e7795aae
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Feb 1 13:44:08 2018 +0000

    gmessages: Fix -Wformat warnings for g_message() and friends

    When compiling with G_LOG_USE_STRUCTURED, g_message(), g_debug(), etc.
    use g_log_structured(). The message format string and its format
    arguments are passed as the final set of arguments in a longer varargs
    list, which includes the log domain and level (and other) fields.
    Passing the message format in this way means it’s not possible
    for the
    compiler to know to check its format placeholders when compiling with
    -Wformat.

    Fix support for this by adding a new semi-private helper function,
    _g_log_structured_standard(), which only uses varargs for the message
    format and its arguments, and uses fixed arguments for the other
    fields.
    This is then converted to a set of GLogFields and passed to
    g_log_structured() as normal.

    Support for -Wformat when compiling *without* G_LOG_USE_STRUCTURED was
    never broken.

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

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

 glib/gmessages.c |  53 ++++++++++++++++++++++++++++
 glib/gmessages.h | 104
 +++++++++++++++++++++++--------------------------------
 2 files changed, 97 insertions(+), 60 deletions(-)

commit 07f75f6cc249ffdb20f98fe1a86745d542898bdf
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Feb 1 22:58:38 2018 +0100

    gdbusmessage: Make a translatable message translatable with plurals

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

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

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

commit 5ed77c1104c974a02c927c4a2006b00b52b5593e
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Feb 1 16:50:46 2018 +0000

    gdatainputstream: Deprecate read_until() in favour of read_upto()

    g_data_input_stream_read_upto() was introduced in 2.26; now it’s
    GLib
    2.56, we can probably deprecate the old versions (since the
    handling of
    consuming the stop character differs between the sync and async
    versions
    of it).

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

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

 gio/gdatainputstream.c        | 6 ++++++
 gio/gdatainputstream.h        | 6 +++---
 gio/tests/data-input-stream.c | 4 ++++
 3 files changed, 13 insertions(+), 3 deletions(-)

commit 3a88ab6c257558406cbc0caab25bb941764ca156
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 22 12:54:51 2018 +0000

    tests: Add some documentation to the illegal sequence conversion test

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

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

 glib/tests/convert.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 8abf3a04e699abd486c4dcaa57977203584acf0e
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 22 12:50:15 2018 +0000

    gconvert: Fix error handling for g_iconv() with unrepresentable chars

    The behaviour of upstream iconv() when faced with a character which is
    valid in the input encoding, but not representable in the output
    encoding, is implementation defined:

    http://pubs.opengroup.org/onlinepubs/9699919799/

    Specifically:

       If iconv() encounters a character in the input buffer that
       is valid,
       but for which an identical character does not exist in the target
       codeset, iconv() shall perform an implementation-defined conversion
       on this character.

    This behaviour was being exposed in our g_iconv() wrapper and also in
    g_convert_with_iconv() — but users of g_convert_with_iconv()
    (both the
    GLib unit tests, and the implementation of g_convert_with_fallback())
    were assuming that iconv() would return EILSEQ if faced with an
    unrepresentable character.

    On platforms like NetBSD, this is not the case: NetBSD’s iconv()
    finishes the conversion successfully, and outputs a string containing
    replacement characters. It signals those replacements in its return
    value from iconv(), which is positive (specifically, non-zero)
    in such a
    case.

    Let’s codify the existing assumed behaviour of
    g_convert_with_iconv(),
    documenting that it will return G_CONVERT_ERROR_INVALID_SEQUENCE if
    faced with an unrepresentable character. As g_iconv() is a thin
    wrapper
    around iconv(), leave the behaviour there implementation-defined (but
    document it as such).

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

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

 glib/gconvert.c | 22 ++++++++++++++++++++++
 glib/gconvert.h |  4 +++-
 2 files changed, 25 insertions(+), 1 deletion(-)

commit a19eed46919fc0996874b5061b3c8783a3d67403
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 22 12:49:29 2018 +0000

    tests: Add a missing const to a variable in the GConvert tests

    Also rename it to make it clearer how it’s encoded (as UTF-8).

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

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

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

commit 19bc03ef65fbfa3edaea27ab9669080d4a0bdaa9
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 22 12:48:43 2018 +0000

    docs: Minor wording improvements in GConvert documentation

    Fix capitalisation of GLib, make some text less gender-specific,
    and add
    some missing colons.

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

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

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

commit ad6afd0fc112758349da5f00c4860abd7bd68b5a
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 22 12:47:42 2018 +0000

    docs: Replace an XML entity with a UTF-8 character instead

    Another part of the long tail of converting our documentation from
    DocBook to Markdown.

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

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

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

commit 38592939d793cdd1dfa6374fab6f95d478bc759f
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 24 15:51:24 2018 +0000

    docs: Clarify the definition of goffset

    off64_t doesn’t exist in any standard (definitely not C99), and so
    goffset is actually closer to off_t in 64-bit mode.

    However, goffset is always defined as gint64, so make that clear.

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

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

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

commit fc857073a01d2fcc0e5f0ec3ad0fe9baecc6fb69
Author: Stewart Brodie <stewart@eh.org>
Date:   Fri Jan 8 14:35:00 2016 +0000

    gkeyfile: Fix FD validity test to be technically correct

    The fd could be valid and zero.

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

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

commit b6d1c128b3bfdd7b09f0e3598f41edad21a3c1cc
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Feb 1 17:38:28 2018 +0000

    gcharset: Mention the environment variables queried by g_get_charset()

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

 glib/gcharset.c | 4 ++++
 1 file changed, 4 insertions(+)

commit e889fb2a7f7d6b9d1bfa5a9a704be9537925b47b
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Jan 6 13:33:25 2017 +0100

    resolver: Return early if URI is invalid

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

 gio/gproxyresolver.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit 99b792fac047b2f495d83ca0a1c1a481ed838251
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Jan 12 15:44:11 2017 +0100

    networkaddress: Add early sanity check to _g_uri_parse_authority()

    Check whether the URI is valid ASCII before trying to parse it. This
    should catch broken URIs early.

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

 gio/gnetworkaddress.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

commit 5f2c20e88bf474fd58e23c46c89d448f1fc00a55
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Jan 3 16:19:56 2017 +0100

    networkaddress: Return an error from _g_uri_parse_authority()

    So that errors can be propagated if necessary.

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

 gio/gnetworkaddress.c         | 31 +++++++++++++++----------------
 gio/gnetworkingprivate.h      |  3 ++-
 gio/gproxyaddressenumerator.c |  2 +-
 gio/gsimpleproxyresolver.c    |  2 +-
 4 files changed, 19 insertions(+), 19 deletions(-)

commit 88366621eee608013fedd661884e769bbce87321
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Oct 27 17:59:49 2016 +0200

    GSimpleProxyResolver: Add test case for broken hostname

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

 gio/tests/simple-proxy.c | 54
 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)

commit 132cf9a9d47d6cf95df8f07a5722f82a540d0a17
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Dec 7 17:39:56 2016 +0100

    resolver: Return error looking up services on invalid hostnames

    Make g_resolver_lookup_service() and
    g_resolver_lookup_service_async() error out when invalid hostnames are
    passed.

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

 gio/gresolver.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit cb8c9199524d888bc2e354bbc05a5603b205d322
Author: Bastien Nocera <hadess@hadess.net>
Date:   Wed Dec 7 17:34:02 2016 +0100

    simpleproxyresolver: Don't crash on invalid hostname

    Check for g_hostname_to_ascii() failure, rather than crashing when
    checking whether an invalid hostname should go through the proxy.

    The HTTP library should report the error about the invalid hostname
    once we actually try to connect to it.

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

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

commit 1a991548988619350631713120a31c381fa8fa91
Author: Ignacio Casal Quinteiro <qignacio@amazon.com>
Date:   Wed Jan 24 11:31:52 2018 +0100

    gpollableoutputstream: document side effects of WOULD_BLOCK on D/TLS

    If the underlying transport is D/TLS the same data and data length
    is required to be sent on the next iteration when a WOULD_BLOCK
    happens. This is due to the fact that gnutls or openssl keep
    an internal state for the data.

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

 gio/gpollableoutputstream.c | 3 +++
 1 file changed, 3 insertions(+)

commit 4752d72a601787ef5a2249674a3ff887f42320e6
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 31 22:21:55 2018 +0000

    gdbusaddress: Disable proxy support for D-Bus addresses

    See the discussion in the bug report: with proxy support enabled, a
    proxy resolver is created. Doing that will load all the GIO modules,
    and
    typically at least one of them will try to use GDBus during
    initialisation, which will cause a deadlock.

    Using a TCP address with GDBusAddress is still supported, but
    accessing
    it over a proxy is not.

    Document this.

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

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

 gio/gdbusaddress.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

commit 3ef83618d9c9d297f3dafbcd7a39b2bedbf60da8
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Sat Jan 27 13:13:39 2018 +0100

    gdbus-codegen: Improve documentation

    Recent changes has extended the functionality of `gdbus-codegen`
    by implementing new options.

    This patch extends the documentation including the behaviour of
    the new options along the old ones.

    (Wording tweaked by Philip Withnall before pushing.)

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

 docs/reference/gio/gdbus-codegen.xml | 30 +++++++++++++++++++++++++++---
 1 file changed, 27 insertions(+), 3 deletions(-)

commit 93042e00529107c0d89e530401b9daef65a03de0
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Wed Jan 24 16:25:09 2018 +0100

    gdbus-codegen: Fix issue with docbook generation

    In cases where gdbus-codegen is used only for docbook generation,
    the execution stops with the following error message:

      `Using --header or --body requires --output`

    This is because it was assumed that, in addition to the docbook
    generation, the header or source code were always generated.

    This patch fixes this, and the header or source code generation
    is not mandatory, so the docbook can be generated separately.

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

 gio/gdbus-2.0/codegen/codegen_main.py | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

commit 382d13b6181b66bd9b842c30742c444f30004c79
Author: Pavlo Solntsev <pavlo.solntsev@gmail.com>
Date:   Thu Jan 25 10:41:30 2018 -0600

    Clarification for memmory allocation function

    Difference between g_try_... family of functions and their
    counterparts
    has been clarified.

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

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

commit 7e0d42e3dc7f64a11afcf124d635bf4ca435abd6
Author: Ondrej Holy <oholy@redhat.com>
Date:   Mon Jan 15 17:56:26 2018 +0100

    gunixmounts: Skip accumulated events from file monitor

    Skip accumulated events from file monitor which we are not able
    to handle
    in a real time instead of emitting mounts_changed signal several
    times.
    This should behave equally to GIOChannel based monitoring. See
    Bug 792235.

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

 gio/gunixmounts.c | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

commit c1d58dd7e0c3047289702b7dc63407b29e00b6f3
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Tue Jan 30 11:18:34 2018 +0000

    build: Document the chmod-scripts configure command

    The chmod of all the scripts we generate from a template via configure
    is necessary because configure will not preserve the bits of the
    template when generating a new file.

    There's no explanation for it, and you have to hunt it down the commit
    history. Since Meson does the right thing, we added the executable bit
    on the templates, but we cannot remove the AC_CONFIG_COMMANDS
    macro from
    the Autotools build without breaking it. Let's document this, to avoid
    nasty surprises.

 configure.ac | 2 ++
 1 file changed, 2 insertions(+)

commit 47b78e6d83e82e18218b6beb5fb127b08e3bc79a
Author: Christian Hergert <chergert@redhat.com>
Date:   Mon Jan 22 15:35:07 2018 -0800

    tests: additional test for g_bytes_new_from_bytes()

    This adds two new tests for g_bytes_new_from_bytes().

    One test ensures that when creating a new GBytes that is a slice of
    the entire base bytes, we just return the base bytes with it's
    reference
    count incremented by one.

    The other test ensures that when performing sub-slices of GBytes, for
    which the parent GBytes also references a GBytes, that we skip the
    intermediate GBytes and reference the base GBytes. Additional testing
    of the internal state of the GBytes structure is performed to prove
    the correctness of the implementation.

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

 glib/gbytes.c      |  1 +
 glib/tests/bytes.c | 65
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 66 insertions(+)

commit 4151bce6db6e2a9090ce981a70d1af0bd1593a1d
Author: Christian Hergert <chergert@redhat.com>
Date:   Mon Jan 22 15:26:07 2018 -0800

    bytes: avoid intermediate refs in g_bytes_new_from_bytes()

    When referencing a GBytes that is already a slice of another
    GBytes, we
    can avoid referencing the intermediate GBytes and instead reference
    the
    root bytes.

    Doing so helps avoid keeping N GBytes instances alive when the
    intermediates would have otherwise been finalized.

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

 glib/gbytes.c | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

commit 801accf74619c80849379b8fa7685100bc5b14d6
Author: Bastien Nocera <hadess@hadess.net>
Date:   Tue Jan 23 11:52:34 2018 +0100

    GNotification: Don't ignore set_urgent()'s argument

    set_urgent() would behave is if @urgent was always true. The
    regression
    was introduced in commit 01098e34c188b4ec93944e14dbece6818d786aec

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

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

commit cea72036e343a725586682df724f4c9c184247ee
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 22 11:24:47 2018 +0000

    gnotification: Add missing deprecation tag to set_urgent()

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

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

 gio/gnotification.c | 2 ++
 1 file changed, 2 insertions(+)

commit 66824159cd749a6b309c31fe52b3c9db31dfac60
Author: Balázs Úr <balazs@urbalazs.hu>
Date:   Sun Jan 21 21:27:00 2018 +0000

    Update Hungarian translation

 po/hu.po | 1118
 ++++++++++++++++++++++++++++++++++----------------------------
 1 file changed, 608 insertions(+), 510 deletions(-)

commit 52f98911df161307ffca70c85f8756f7154c47ce
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Thu Jan 18 08:41:39 2018 +0200

    Test that g_convert() can handle embedded NUL bytes

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

 glib/tests/convert.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

commit f35a6a70313bae374141f4297a2d8995c7935652
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Wed Jan 17 09:25:23 2018 +0200

    gconvert: Consistently validate inputs and outputs for embedded NULs

    String inputs to convenience conversion functions
    g_locale_from_utf8(),
    g_filename_from_utf8(), and g_filename_to_utf8(), are annotated
    for the
    bindings as NUL-terminated strings of (type utf8) or (type filename).
    There is also a len parameter that allows converting part of the
    string,
    but it is exposed to the bindings as a value independent from
    the string
    buffer. Absent any more sophisticated ways to annotate, the way to
    provide a safeguard against len argument values longer than the
    string length is to check that no nul is encountered within the first
    len bytes of the string. strdup_len() includes this check as part of
    UTF-8 validation, but g_convert() permits embedded nuls.

    For g_filename_from_utf8(), also check the output to prevent
    embedded NUL
    bytes. It's not safe to allow embedded NULs in a string that is going
    to be used as (type filename), and no known bytestring encoding for
    file names allows them.

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

 glib/gconvert.c      |  99 ++++++++++++++++++++++++---------
 glib/tests/convert.c | 152
 ++++++++++++++++++++++++++++++++++++++++++++-------
 2 files changed, 204 insertions(+), 47 deletions(-)

commit d584ff77f6b6df2bde6572c987ad2ee3427d6bf3
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Sun Jan 14 21:44:24 2018 +0200

    Test embedded NULs in input of g_{locale,filename}_to_utf8()

    The tests exercise both g_strncpy() and g_convert() paths.

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

 glib/tests/convert.c | 107
 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 107 insertions(+)

commit 81cd8154061338dfee7a9d3e23752efe190310bb
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Sun Jan 14 16:55:03 2018 +0200

    gconvert: Tighten, document embedded NUL behavior of UTF-8 conversions

    The character encoding conversion utility functions g_locale_to_utf8()
    and g_filename_to_utf8() had inconsistent behavior on producing
    strings
    with inner NUL bytes: in the all-UTF-8 strdup path, the input string
    validation prohibits embedded NULs, while g_convert(), using iconv(),
    can produce UTF-8 output with NUL bytes inside the output buffer.
    This, while valid UTF-8 per the Unicode standard, is not valid for
    the nul-terminated (type utf8) return value format that the
    *_to_utf8()
    functions are annotated with (as per discussion in bug 756128).

    Check the output of g_convert() for embedded NUL bytes, and if any
    are found, set the newly introduced error
    G_CONVERT_ERROR_EMBEDDED_NUL.

    Also document the error set by g_{locale,filename}_{from,to}_utf8()
    when the input string contains nul bytes.

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

 glib/gconvert.c | 84
 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 glib/gconvert.h |  6 ++++-
 2 files changed, 76 insertions(+), 14 deletions(-)

commit 413605a6f33cbfa1b273e36a7a276cf21d6bfd73
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Sat Jan 13 12:40:22 2018 +0200

    gconvert: Optimize UTF-8 conversions, fix output on error

    In the strdup_len() path, no need to do what g_utf8_validate()
    already does: locate the string-terminating nul byte.

    Also in strdup_len(), make the out parameter bytes_read receive
    the length
    of the valid (meaning also nul-free) part of the input string, as the
    documentation on g_{locale,filename}_{from,to}_utf8() says it does.

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

 glib/gconvert.c | 35 +++++++++++++++++++----------------
 1 file changed, 19 insertions(+), 16 deletions(-)

commit 1e6803be3b3ec5005335f1fa7d53e57bbc0b8bba
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 17 11:38:50 2018 +0000

    gmain: Partial revert of recent wakeup changes to gmain.c

    This reverts the following commits (but keeps the other recent changes
    to gmain.c):
     • e4ee3079c Do not wake up main loop if change is from same thread
     • 208702404 main: Create a helper function for "owner wakeup"
     optimization
     • 0c0469b56 gmain: Signal wakeups if context has never been
     acquired as well
     • 9ba95e25b gmain: only signal GWakeup right before or during a
     blocking poll

    Some combination of them is causing problems with LibreOffice and/or
    WebKit, and the safest thing to do at the moment is revert them all
    until we work out what’s going on. The previous revert (4976e8109)
    was
    not sufficient (it fixed WebKit, but re-broken LibreOffice).

    By reverting, we gain some spurious wakeups, but avoid dropping
    necessary wakeups, which is presumably what’s causing problems
    in the
    other modules.

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

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

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

commit 3787e429320815378d480cc3a20de73931427e5e
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 17 12:58:40 2018 +0000

    gio: Rename GNetworkMonitorWindows to GWin32NetworkMonitor

    This makes it more consistent with other GWin32* objects. No
    functional
    changes.

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

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

 gio/giomodule.c            |  4 +--
 gio/gwin32networkmonitor.c | 68
 +++++++++++++++++++++++-----------------------
 gio/gwin32networkmonitor.h | 32 +++++++++++-----------
 3 files changed, 52 insertions(+), 52 deletions(-)

commit ba976f13b6d4cae6437e84c7a8d76077ae21ddc1
Author: Philip Withnall <withnall@endlessm.com>
Date:   Wed Jan 17 12:55:11 2018 +0000

    gio: Rename gnetworkmonitorwindows to gwin32networkmonitor

    This makes it more consistent with the other win32 objects in
    GIO. This
    commit just renames the files; a follow-up commit will rename the
    GObject.

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

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

 gio/Makefile.am                                          | 4 ++--
 gio/{gnetworkmonitorwindows.c => gwin32networkmonitor.c} | 2 +-
 gio/{gnetworkmonitorwindows.h => gwin32networkmonitor.h} | 0
 gio/meson.build                                          | 4 ++--
 4 files changed, 5 insertions(+), 5 deletions(-)

commit f9aacf3952effff897ab42991b5ba9090de5d970
Author: Jan-Michael Brummer <jan.brummer@tabos.org>
Date:   Tue Dec 26 14:06:08 2017 +0100

    GNetworkMonitorWindows: Add IPv4/IPv6 network monitor backend
    for windows

    Added a Windows backend to GNetworkMonitor, using NotifyRouteChange2()
    (available on Vista and later). It marshals the route change callbacks
    to the thread-specific default main context the GNetworkMonitor was
    constructed in.

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

 gio/Makefile.am              |   2 +
 gio/giomodule.c              |   4 +
 gio/gnetworkmonitorwindows.c | 333
 +++++++++++++++++++++++++++++++++++++++++++
 gio/gnetworkmonitorwindows.h |  53 +++++++
 gio/meson.build              |   2 +
 5 files changed, 394 insertions(+)

commit 3ee859d5fc9eb14910df7a84b8ce43a25ba6a632
Author: Sébastien Wilmet <swilmet@gnome.org>
Date:   Fri Jan 5 15:13:44 2018 +0100

    docs: GSequence: better document how to sort large amount of data

    It was documented at strange places: in g_sequence_search*() and
    g_sequence_lookup*(), but how to insert and sort data is not done by
    those functions.

    So instead, add the information to the class description (since it
    involves several functions), and add also the information in
    g_sequence_insert_sorted() and g_sequence_insert_sorted_iter()
    as a kind
    of warning when using those functions.

    Note that before this commit, it was not explained *why* it is
    better to
    call g_sequence_sort() after doing a lot of unsorted insertions. Now
    it
    is documented as "more efficient" (I think it's the only reason that
    makes sense, otherwise why was it documented?).

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

 glib/gsequence.c | 34 ++++++++++++++++++----------------
 1 file changed, 18 insertions(+), 16 deletions(-)

commit c685ce973d5817ae36b430176f9ea7cb01c6726b
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Tue Jan 16 15:19:41 2018 +0000

    Fix dir separator in the Autotools build on Windows

    Just like we fixed the Meson build in commit f25c7a2a, we need
    to escape
    twice: once for the shell expansion, and the other for the C string
    constant.

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

commit dcfa22549af735d30788e4a3c1f4e9c82f9fbd11
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Wed Jan 10 12:58:53 2018 +0000

    docs: Small improvements to glib-mkenums man page

    Clarify some typical usage of glib-mkenums and its substitutions.

 docs/reference/gobject/glib-mkenums.xml | 30
 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

commit e6c3060144fc05ab73bb51833a5cefb6460db605
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Wed Jan 10 12:14:09 2018 +0000

    docs: Drop references to Perl in glib-mkenums

    The tool was ported to Python, but we should not mention the
    programming
    language used, in case we port it to some other language in the
    distant
    future.

 docs/reference/gobject/glib-mkenums.xml | 20 +++++++++-----------
 1 file changed, 9 insertions(+), 11 deletions(-)

commit 5fba62adecbb9e7d65966460c16eb6c18d04dbe8
Author: Benjamin Berg <bberg@redhat.com>
Date:   Mon Jan 15 17:31:21 2018 +0100

    gmessages: Flush output stream after logging messages

    When debug output is enabled then certain messages will be logged to
    stdout. stdout however is block buffered by default when it isn't
    going
    to a TTY meaning that debug logging will not be flushed out properly
    when it is being redirected. One example of this happening may
    be tests
    that rely on parsing g_debug messages.

    Adding an explicit fflush ensures all log messages will reach
    the output.

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

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

commit 051d69bbc83cd3aa3d1515a50ba529140352c518
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 15 18:26:09 2018 +0000

    gdataset: Fix a typo in a documentation comment

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

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

commit 4808a957b5482fdbe10926c3a84895b409de117e
Author: Colin Walters <walters@verbum.org>
Date:   Thu Jun 23 08:42:53 2016 -0400

    GFile: Add g_file_peek_path()

    This is a variant of g_file_get_path() which returns a const string to
    the caller, rather than transferring ownership.

    I've been carrying `gs_file_get_path_cached()` in libgsystem and it
    has seen a lot of use in the ostree and flatpak codebases.  There are
    probably others too.

    I think language bindings like Python/Gjs could also use this to avoid
    an extra malloc (i.e. we could transparently replace
    `g_file_get_path()` with `g_file_peek_path()`.

    (Originally by Colin Walters. Tweaked by Philip Withnall to update to
    2.56, change the function name and drop the locking.)

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

 docs/reference/gio/gio-sections.txt |   1 +
 gio/gfile.c                         | 101
 ++++++++++++++++++++++++++++++++++++
 gio/gfile.h                         |   2 +
 gio/tests/file.c                    |   8 +--
 4 files changed, 109 insertions(+), 3 deletions(-)

commit 261cb8ea865ce5875d2f002e510664368b88b5bb
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Mon Jan 15 16:58:10 2018 +0100

    gdbus-codegen: Set source coding to utf-8

    Some of the recent changes introduced UTF-8 characters which made
    gdbus-codegen to crash when using Python 2.

    Following PEP 263, the utf-8 coding comment has been used.

    PEP: https://www.python.org/dev/peps/pep-0263/
    BUG: https://bugzilla.gnome.org/show_bug.cgi?id=791015

    Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>

 gio/gdbus-2.0/codegen/codegen.py      | 1 +
 gio/gdbus-2.0/codegen/codegen_main.py | 1 +
 2 files changed, 2 insertions(+)

commit 88101e59816d0aec6460ff5734662a82058db12e
Author: Philip Withnall <withnall@endlessm.com>
Date:   Mon Jan 15 15:35:33 2018 +0000

    docs: Add missing apostrophes in GObject documentation

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

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

commit e4d68c7b3e8b01ab1a4231bf6da21d045cb5a816
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Thu Jan 4 14:18:07 2018 +0100

    gdbus-codegen: Support for separate C header and code generation

    gdbus-codegen's options only allow a simultaneous header and source
    code generation.

    A `--header` and `--body` options have been added along with the
    `--output` option which allow separate C header and code
    generation.

    These options cannot be used in addition to the old options such
    as `--generate-c-code`, `--generate-docbook` or
    `--output-directory`.

    These options have also been added to gdbus-codegen's documentation.

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

 docs/reference/gio/gdbus-codegen.xml  | 52
 ++++++++++++++++++++++++++++++++
 gio/gdbus-2.0/codegen/codegen_main.py | 56
 +++++++++++++++++++++++++++--------
 2 files changed, 96 insertions(+), 12 deletions(-)

commit 6c3af1cdda6d5f4967ce1dd1428fe8f0b512dd3f
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Fri Jan 12 11:47:40 2018 +0100

    gdbus-codegen: Remove unnecessary parameters from the constructor

    The `outdir` and `docbook` parameters are passed to the
    `DocbookCodeGenerator` constructor, but these parameters are only
    used at docbook generation, which is optional.

    The parameters have been removed from the class creation and added
    to the `generate` method, where they are actually being used.

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

 gio/gdbus-2.0/codegen/codegen_docbook.py | 8 +++-----
 gio/gdbus-2.0/codegen/codegen_main.py    | 4 ++--
 2 files changed, 5 insertions(+), 7 deletions(-)

commit 22772acff8fa4bc23b9838c2bc99cefbbbc76230
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Thu Jan 4 09:56:59 2018 +0100

    gdbus-codegen: Split C header and code generation

    The class that generated both C header and code has been split into
    two classes. These clases are now specialized on creating the header
    or the body code.

    All parameters that do not belong to each class have also been
    deleted, so only the necessary parameters still remain. These also
    includes the header and code file descriptors, leaving only the
    corresponding file descriptor necessary for each class.

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

 gio/gdbus-2.0/codegen/codegen.py      | 4672
 +++++++++++++++++----------------
 gio/gdbus-2.0/codegen/codegen_main.py |   32 +-
 2 files changed, 2360 insertions(+), 2344 deletions(-)

commit a66f2f80e0133f1b44034b2fa0d0325050f183bd
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Wed Jan 3 17:10:54 2018 +0100

    gdbus-codegen: Split C header and code generation functions

    The generation of the C header and code preambles have been split
    in order to be able to generate both files separately in the future.

    The functions for generating preambles and postambles have also been
    renamed following the function names used in the glib-genmarshal
    rewrite, so that they stay consistent.

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

 gio/gdbus-2.0/codegen/codegen.py | 330
 ++++++++++++++++++++-------------------
 1 file changed, 166 insertions(+), 164 deletions(-)

commit c658d03b76a97055de83fdb0cf4a1080ee97da6b
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Wed Jan 3 17:01:30 2018 +0100

    gdbus-codegen: Add support for pragma inclusion guard

    The #pragma once is widely supported preprocessor directive that can
    be used instead of include guards.

    This adds support for using optionally this directive instead of
    include guards.

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

 docs/reference/gio/gdbus-codegen.xml  | 12 ++++++++++++
 gio/gdbus-2.0/codegen/codegen.py      | 23 ++++++++++++++++-------
 gio/gdbus-2.0/codegen/codegen_main.py |  5 ++++-
 3 files changed, 32 insertions(+), 8 deletions(-)

commit e59bce3c749b492bb657fe7583722b20a7bbf852
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Tue Jan 2 20:24:56 2018 +0100

    gdbus-codegen: Move from optparse to argparse

    The optparse module is deprecated since version 2.7 and the
    development continues with the argparse.

    The code has been moved from optparse to argparse when parsing
    command-line options. This has also led to the deprecation of the
    `--xml-files`, and positional arguments should be used instead.

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

 docs/reference/gio/gdbus-codegen.xml  | 11 ++++--
 gio/gdbus-2.0/codegen/codegen_main.py | 70
 ++++++++++++++++++-----------------
 2 files changed, 45 insertions(+), 36 deletions(-)

commit dcc1fe09d01bb1a6141b88e44ad63f79e9edf2de
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Fri Jan 12 08:55:36 2018 +0100

    gdbus-codegen: Use Color's print_* methods

    `glib-genmarshal` and `glib-mkenums` use a `Color` class which
    implements a number of print_* methods to print colored messages
    to the standard error output.

    In order to be consistent with those programs' output,
    `gdbus-codegen` has also started using that same class and methods.

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

 gio/gdbus-2.0/codegen/codegen.py      | 11 +++++-----
 gio/gdbus-2.0/codegen/codegen_main.py | 14 ++++++------
 gio/gdbus-2.0/codegen/dbustypes.py    |  5 +++--
 gio/gdbus-2.0/codegen/parser.py       |  5 +++--
 gio/gdbus-2.0/codegen/utils.py        | 40
 +++++++++++++++++++++++++++++++++++
 5 files changed, 59 insertions(+), 16 deletions(-)

commit e2054240c2fc14f0a5bba432475697ab2639b176
Author: Iain Lane <iain@orangesquash.org.uk>
Date:   Fri Jan 12 11:24:47 2018 +0000

    gdatetime: Mark the usecs as volatile

    On i386, we were seeing that this calculation was producing an
    incorrect
    result, probably because usec was being stored in an 80-bit register
    before being written back into a 64-bit float in memory. If we
    mark the
    variables as volatile, they are not stored in registers and we avoid
    this bug.

 glib/gdatetime.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit d87062878235da4d6a652d504cfbce11137eba4c
Author: Robert Ancell <robert.ancell@canonical.com>
Date:   Fri Jan 12 09:44:24 2018 +1300

    gdatetime: Avoid repeated floating point multiplies with ISO 8601
    parsing

    This avoids any potential rounding errors.

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

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

commit e430541378bd9471036a6097ccb408e83cf20fd2
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Jan 12 15:29:29 2018 +0000

    docs: Remove XML-style comments from documentation strings

    gtk-doc doesn’t support them any more since it was ported to
    Markdown,
    so they end up appearing in the generated documentation, which isn’t
    great.

    Mostly, they were used to split up things invisibly, which we can
    do in
    other ways.

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

 gio/gdbusconnection.h          | 6 +++---
 gio/gdbusmethodinvocation.c    | 2 +-
 gio/gsettingsschema.c          | 4 ++--
 gio/gsocketaddressenumerator.h | 2 +-
 glib/docs.c                    | 4 ++--
 glib/ghash.c                   | 2 +-
 glib/gvariant.c                | 2 +-
 gobject/gtypemodule.h          | 2 +-
 8 files changed, 12 insertions(+), 12 deletions(-)

commit d3b07453ab0043797bbef4591bdc2b955a390b00
Author: Philip Withnall <withnall@endlessm.com>
Date:   Fri Jan 12 12:10:16 2018 +0000

    docs: Add a link to the Wikipedia page on TOCTTOU races

    Try and make it a bit more obvious that g_file_query_exists() is
    generally A Bad Idea.

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

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

commit 373bf178b67e7f40e9f2604e9e17165e068d4f90
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Jan 11 16:03:05 2018 +0000

    docs: Fix syntax in GDBusInterfaceSkeleton documentation

    gtk-doc was mis-parsing the combination of ` and :: and truncating
    some
    of the documentation. Avoid that by using the D-Bus style of
    separating
    interface and signal names using a dot.

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

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

commit 9c638bbf0457fc8b67b987c222ae3302e363f55a
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Jan 11 15:31:17 2018 +0000

    docs: Fix a typo in the GDBusProxy documentation

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

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

commit 6aa19a26cf82981ec20bab1b48c6559d02bae44b
Author: Garrett Regier <garrettregier@gmail.com>
Date:   Mon May 9 12:31:57 2016 +0300

    gsequence: Add seq_is_end()

    This avoids calling is_end() when the
    GSequence is already determined, thus
    avoids having to walk the tree.

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

 glib/gsequence.c | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

commit ee8f7be3df007c985c45362db66657d1b4bfe05e
Author: Garrett Regier <garrettregier@gmail.com>
Date:   Mon May 9 12:07:19 2016 +0300

    gsequence: Kill check_iter_access()

    Generally the GSequence has already been
    determined by the caller. This saves quite
    a few calls to get_sequence().

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

 glib/gsequence.c | 67
 +++++++++++++++++++++++++++++++-------------------------
 1 file changed, 37 insertions(+), 30 deletions(-)

commit d0207663258b79182879b86fa77e29dafe4d9300
Author: Philip Withnall <withnall@endlessm.com>
Date:   Thu Jan 11 11:54:14 2018 +0000

    docs: Fix typos in GConvert documentation

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

 glib/gconvert.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 59c5b939e2bb288765595d069ffddc837a248786
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Wed Jan 10 17:24:36 2018 +0000

    glib: fix compiler warning for g_unsetenv_utf8() on windows

    "warning: 'void' function returning a value". Neither
    g_unsetenv_utf8() nor g_unsetenv() return anything.

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

commit b241e3a5cc4b474a9711e7e8f455e8af41df1eb3
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Wed Jan 10 16:59:46 2018 +0000

    meson: only add -fno-strict-aliasing if supported by compiler

    Fixes warning spam on MSVC builds.

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

 meson.build | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit f25c7a2a6e25af878c586af926ec3c59f24964ad
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Wed Jan 10 15:57:46 2018 +0000

    meson: fix G_DIR_SEPARATOR* define on Windows

    Must double escape, once for Meson, once for the C string constant.

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

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

commit e7c044629f00d9f977776d28368bf580460e59b0
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Mon Jan 8 18:52:59 2018 +0000

    meson: change error() to warning() when checking if membarrier
    is needed

    If we don't know the exact architecture that's not fatal, might just
    be suboptimal, same as with autotools.

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

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

commit 17e03effdac249b84153bf2d9b0d665078129873
Author: Christian Hergert <chergert@redhat.com>
Date:   Mon Jan 8 22:13:03 2018 -0800

    gbookmarkfile: check length before dereferencing groups

    There is no requirement that groups is NULL terminated, so we
    should check
    that the bounds are within the specified length before checking for a
    NULL terminating value.

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

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

commit 181d1c3052b64887b868d8d0746affc026480c51
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Dec 14 23:17:37 2017 +0100

    GNetworkMonitor: Rename "network-changed" signal argument

    Because the argument being called "available" and the property being
    called "network-available" is confusing.

    Also remove the details of what that value means, as it's already
    described in the property, and duplicating the explanation makes
    it look
    like it might have a different meaning.

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

 gio/gnetworkmonitor.c | 8 ++------
 gio/gnetworkmonitor.h | 2 +-
 2 files changed, 3 insertions(+), 7 deletions(-)

commit c4ad10fede653aebe23803c8a539250840414df1
Author: Philip Withnall <withnall@endlessm.com>
Date:   Tue Jan 9 15:17:02 2018 +0000

    docs: Mention D-Bus reply types are tuples

    The g_dbus_connection_call() documentation doesn’t make it
    clear that
    the reply type is always a tuple.

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

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

commit 2685a533afdc0f369818d20b73b345ecdcb7c86d
Author: Simon McVittie <smcv@debian.org>
Date:   Mon Dec 18 11:19:48 2017 +0000

    gdbus-threading test: Allow even longer for
    test_method_calls_in_thread

    This should take 4 seconds + overhead, but on a slow or heavily
    loaded system, there's no guarantee that it won't take significantly
    longer.

    Bug: https://bugzilla.gnome.org/show_bug.cgi?id=792364
    Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884660
    Reviewed-by: Philip Withnall <withnall@endlessm.com>
    Signed-off-by: Simon McVittie <smcv@collabora.com>

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

commit a3d223d0e9f68e85029346024b2bcea3512f75eb
Author: Iñigo Martínez <inigomartinez@gmail.com>
Date:   Wed Jan 3 10:26:12 2018 +0100

    gdbus-codegen: Split license string

    The license string which is embedded in the C header and body
    preambles has been moved to a global variable. This way it can be
    reused in both sections.

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

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

commit 6dafc1ce1387a03cd453ff4e42b6acd9ce461e68
Author: Mikhail Zabaluev <mikhail.zabaluev@gmail.com>
Date:   Thu Oct 29 08:53:00 2015 +0200

    Move G_DIR_SEPARATOR* and G_SEARCHPATH_SEPARATOR* into glibconfig.h

    As platform-dependent macros, they belong in glibconfig.h.
    This also makes it one less place where g-ir-scanner picks definitions
    from the wrong ifdef branch; see
    https://bugzilla.gnome.org/show_bug.cgi?id=696935

    Meson configuration support is also added in this commit.

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

 configure.ac               | 12 ++++++++++++
 glib/gfileutils.h          |  9 +--------
 glib/glibconfig.h.in       |  5 +++++
 glib/glibconfig.h.win32.in |  5 +++++
 meson.build                |  4 ++++
 5 files changed, 27 insertions(+), 8 deletions(-)

commit 045b805199ee6e1635bbabc79552a075855a1473
Author: Michael Catanzaro <mcatanzaro@igalia.com>
Date:   Sun Jan 7 16:02:17 2018 -0600

    tlsclientconnection: Deprecate ssl3 property and functions

    I originally planned to introduce a new property and functions to
    replace these, with the same behavior but less-confusing names. But
    that
    might not be the best approach in the long run. Instead, let's just
    deprecate them without replacement.

    TLS 1.2 intolerance is no longer a thing in the wild, and no known
    GTlsBackend supports TLS 1.3 yet. But you might need to use this
    property in the future, even though it's deprecated, if your
    GTlsBackend has added support for TLS 1.3 and you need to talk to a
    server that is TLS 1.3 intolerant.

    Independently of all that, these APIs simply no longer do what their
    names suggest, so deprecation is sensible regardless.

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

 gio/gtlsclientconnection.c | 12 +++++++++++-
 gio/gtlsclientconnection.h |  4 ++--
 2 files changed, 13 insertions(+), 3 deletions(-)

commit 9e5254ebce9da5dedf472e6b08766671684c3bfd
Author: Michael Catanzaro <mcatanzaro@igalia.com>
Date:   Sun Jan 7 15:59:03 2018 -0600

    tlsclientconnection: Update use-ssl3 documentation

    The property documentation correctly indicates how this code works
    nowadays, but the function documentation is obsolete and misleading.
    Update it.

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

 gio/gtlsclientconnection.c | 35 +++++++++++++++++++----------------
 1 file changed, 19 insertions(+), 16 deletions(-)