Overview of changes in GLib 2.60.5
==================================

* Fix implicit use of the `GKeyfileSettingsBackend` (#1822)

* Fix opening a URI using the ‘Open URI’ portal (!968)

* Bugs fixed:
 - !910 Backport !909 “D-Bus auth mechanism improvements” to glib-2-60
 - !949 Backport !945 “Avoid overrunning stack at the end of the varargs.” to glib-2-60
 - !956 Backport !954 “Fix the ISO 15924 code for Manichaean” to glib-2-60
 - !958 gthread: fix minor errno problem in GCond
 - !969 Backport !968 ”Fix typo in request handle” to glib-2-60
 - !977 Backport !974 “Ensure that the keyfile settings backend exists” to glib-2-60


Overview of changes in GLib 2.60.4
==================================

* Fixes to improved network status detection with NetworkManager (#1788)

* Leak fixes to some `glib-genmarshal` generated code (#1793)

* Further fixes to the Happy Eyeballs (RFC 8305) implementation (!865)

* File system permissions fix to clamp down permissions in a small time window
  when copying files (CVE-2019-12450, !876)

* Bugs fixed:
 - #1755 Please revert #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
 - #1788 GNetworkMonitor claims I am offline
 - #1792 glib-genmarshal generated valist marshal does not respect static scope for some types
 - #1793 glib-genmarshal generates wrong code for va marshaler for VARIANT type
 - #1795 Fix mingw32 CI on older branches
 - !865 gnetworkaddress: fix "happy eyeballs" logic
 - !878 Backport !876 “gfile: Limit access to files when copying” to glib-2-60


Overview of changes in GLib 2.60.3
==================================

* Various fixes to small key/value support in `GHashTable` (#1749, #1780)

* Bugs fixed:
 - #1747 Critical in g_socket_client_async_connect_complete
 - #1749 New GHashTable implementation confuses valgrind
 - #1759 test_month_names: assertion failed
 - #1771 GNetworkAddressAddressEnumerator unsafely modifies cache in GNetworkAddress
 - #1774 Leaks in gsocketclient.c connection code
 - #1776 glib/date test fails
 - #1780 GDB pretty-printer for GHashTable no longer works
 - !815 Merge branch 'wip/tingping/socketclient-cancel-2' into 'master'
 - !816 Backport !814 “gschema.dtd: Add target attribute to alias” to glib-2-60
 - !826 Backport !824 “gsocketclient: Fix a leak in the connection code” to glib-2-60
 - !829 Backport !828 “build: Fix a typo in the test whether _NL_ABALTMON_n is supported” to glib-2-60
 - !834 Backport !823 "gnetworkaddress: Fix parallel enumerations interfering with eachother" to glib-2-60
 - !838 Backport !835 “Fix typo in German translation” to glib-2-60
 - !841 Backport !839 “tests: Update month name check for Greek locale” to glib-2-60
 - !844 Backport !840 “ghash: Disable small-arrays under valgrind” to glib-2-60
 - !846 Backport !845 “Fixing g_format_size_full() on Windows-x64” to glib-2-60
 - !855 Backport !848 (more GHashTable fixes) to glib-2-60
 - !858 Backport !852 “Update gdb pretty-printer for GHashTable” to glib-2-60

* Translation updates:
 - German


Overview of changes in GLib 2.60.2
==================================

* Fix crash when displaying notifications on macOS (!786)

* Improve network status detection with NetworkManager (!781)

* Bugs fixed:
 - !790 glib/gconstructor.h: Include stdlib.h for MSVC builds
 - !793 Backport !786: “cocoanotificationbackend: do not release readonly property” to glib-2-60
 - !803 Backport !781 “gnetworkmonitornm: Fix network available detection” to glib-2-60

* Translation updates:
 - Catalan


Overview of changes in GLib 2.60.1
==================================

* Fix documentation for `gdbus-tool wait` to use correct units

* Bugs fixed:
 - #1709 GResource generation test incompatible with stable LLVM on Linux
 - #1725 gosxappinfo.h is not installed on macOS
 - #1737 gdbus-tool wait command timeout argument incorrect unit reference
 - !711 socket: Fix annotation for flags in g_socket_receive_message
 - !722 Backport codegen: Fix use of uninitialised variable from !721 to glib-2-60
 - !727 Backport !719 “Handle an UNKNOWN NetworkManager connectivity as NONE” to glib-2-60
 - !729 Backport !728 “gsocket: Remove (type) annotation from flags arguments” to glib-2-60
 - !758 gdbusaddress, win32: backport using cwd for running rundll32
 - !775 meson: Hotfix for iconv detection on macOS

* Translation updates:
 - Basque
 - Dutch


Overview of changes in GLib 2.60.0
==================================

* Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1653, #1679, #1693)

* Add support for the XDG trash portal (#1676, !276)

* Bugs fixed:
 - #1653 gsocketclient-slow test is flaky
 - #1658 keyfile settings backend: Consider tightening permissions
 - #1668 Fill in CODE-OWNERS file
 - #1675 glib-compile-resources: c_name generation issue
 - #1676 Trash portal tries to open files as read-only but D-Bus API documents against that
 - #1679 socket-service test is flaky
 - #1693 Happy Eyeballs failure in gsocketclient-slow test
 - #1697 gthreadresolver: do_lookup_records does res_ninit with an uninitialized state
 - #1698 g_base64_encode(NULL, 0) causes critical warnings
 - !276 Support the trash portal
 - !639 gvariant-parser: Fix error handling when type coalescing fails
 - !666 Socket fixes to W32 test suite
 - !674 Update gvdb submodule
 - !676 Initialize a variable
 - !677 gerror: Add a missing precondition assertion in documentation
 - !686 gio: Also support modules built with MSVC
 - !688 gsocketclient: Fix critical on cancellation
 - !689 glib-compile-resources: Fix a minor leak
 - !691 gtask: Separate GTask fields memory locations to avoid data races
 - !692 glib.supp: Add more variations of existing suppressions
 - !696 Move closures refcount test to gobject/tests/
 - !698 gthreadedresolver: Remove unused thread pool
 - !699 tests: Fix closure-refcount to preserve old semantics
 - !702 Rename gobjectenumtypes.[ch] to glib-enumtypes.[ch]
 - !703 Clean up gmarshal.[ch]

* Translation updates:
 - Catalan
 - Czech
 - French
 - Friulian
 - German
 - Italian
 - Korean
 - Romanian
 - Serbian


Overview of changes in GLib 2.59.3
==================================

* Fix support for g_get_user_special_dir() on macOS, including support for the Downloads directory (#1048)

* Ensure that cancelling a GTask cannot cause its callback to be called synchronously (in the same call chain as the original *_async() call) (#1608)

* Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1644, #1680)

* Various fixes for installation of installed tests (thanks to Iain Lane) (!649, !651)

* Various fixes for tests when run on Windows (thanks to LRN) (!665, !667)

* Bugs fixed:
 - #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
 - #875 gio-gvfs on Windows: Don't mishandle other non-native URIs in gwinhttpvfs.c
 - #1048 "Desktop" shortcut appears twice in file chooser sidebar on OSX
 - #1608 Cancellation might not be asynchronous under certain circumstances
 - #1644 network-address test failure in CI: IPv6 Broken (g-io-error-quark, 24)
 - #1680 Regression: g_socket_client_connect_to_host_async() sometimes gets "Connection refused" when connecting to localhost
 - #1686 gdbus-peer test is sometimes timing out
 - !613 Use win32 io channel on windows for the protocol test
 - !634 Win32: gio/gsocket.c: Set WSAEWOULDBLOCK on G_POLLABLE_RETURN_WOULD_BLOCK
 - !638 gvariant-parser: Fix parsing of G_MININT* values in GVariant text format
 - !640 tests: Tag socket-service test as ‘flaky’
 - !641 Minor typo fixes to GSpawn documentation
 - !645 gsocketlistener: Fix multiple returns of GTask when accepting sockets
 - !647 gsocketclient: Ensure task is always returned on cancel
 - !648 gio/tests/task: Run the worker indefinitely until it's cancelled
 - !649 gio tests: Install test1.overlay file when building installed tests
 - !650 gstring: fully document semantics of @len for g_string_insert_len
 - !651 tests: Install the slow-connect-preload.so library and use it
 - !667 GSubprocess fixes for W32 test suite
 - !668 tests: Mark gdbus-peer test as flaky
 - !669 GWin32VolumeMonitor: Sort the volumes correctly
 - !670 gpollableoutputstream: Fix the description of the interface
 - !672 Fix some tests when running as root

* Translation updates:
 - Catalan
 - Danish
 - French
 - Indonesian
 - Kazakh
 - Portuguese (Brazil)
 - Slovenian
 - Turkish


Overview of changes in GLib 2.59.2
==================================

* Fix check on GDBusMessage size when reading it. (#1642)

* Add async GIO API: g_file_query_default_handler_async(), g_app_info_launch_uris_async() (#1249, #1347)

* Fix some bugs in the Happy Eyeballs implementation. (#1646, #1649)

* Install a new generated header with enum types for Unicode enums. (!481)

* Support the XDG trash portal. (!276)

* Bugs fixed:
 - #1224 TSAN patches
 - #1249 xdg-open/gnome-open doesn't work if service isn't started
 - #1347 g_app_info_launch_default_for_uri_async  is not really async
 - #1376 gmarkup: Optimize g_markup_escape_text()
 - #1642 minor mismatch between error and code in g_dbus_message_bytes_needed
 - #1646 Criticals in g_socket_client_enumerator_callback()
 - #1649 Critical in g_socket_client_connected_callback
 - #1673 G_MININT constants broken in g-i
 - !276 Support the trash portal
 - !481 Define enum types for Unicode enums
 - !585 gio: do not pass O_PATH file descriptors to portal APIs
 - !593 Don't fail trash test if ~/.local doesn't exist or mount points can't be determined (master)
 - !609 Make `g_app_info_launch_uris_async()` really asynchronous
 - !619 gvariant: Fix a mistake in docs
 - !622 Fixing warnings
 - !626 gdbus: Avoid printing null strings
 - !627 gsocketclient: Fix criticals
 - !629 Various memory leak cleanups to GSettings tests (subset)
 - !630 docs: Ignore more version macros

* Translation updates:
 - Galician
 - Hungarian
 - Lithuanian
 - Polish
 - Spanish


Overview of changes in GLib 2.59.1
==================================

* Autotools support is gone. (!580)

* g_format_size() now uses a no-break space to separate digits and units;
  translations will need to be updated accordingly. (#1625)

* New g_queue_clear_full() API. (#1464)

* Fix argument quoting on win32 when spawning subprocesses. (!419)

* Allow polling more than 64 handles on win32 using g_poll(). (#1071)

* Tag various tests as ‘flaky’. These are no longer run routinely on our
  upstream CI machines, and downstream packagers may want to not run them (or
  not treat those test failures as package build failures) on their test
  machines either. They are in the `flaky` test suite. (!579)

* Add overlay support to g_resources_get_info(). (#1445)

* Support defaults and locks in the keyfile GSettings backend. This will be
  used for flatpaks. (!450)

* Accept unquoted strings in the keyfile GSettings backend to simplify things
  for sysadmins. (!603)

* Update our contribution guidelines (`CONTRIBUTING.md`). (!590)

* Add writev() and writev_all() APIs to GOutputStream and GPollableOutputStream,
  and provide implementations of them for many subclasses. (#1431)

* Bugs fixed:
 - #424 Add 'proxy' debugging support
 - #1055 Provide alignment macros
 - #1071 Eliminate MAXIMUM_WAIT_OBJECTS limitation in g_poll() on Windows
 - #1445 g_resources_get_info doesn't respect resource overlays
 - #1464 Add g_queue_clear_full() API
 - #1500 GListStore needs double checking on some warnings
 - #1623 xdg-open: file with colon results in “The specified location is not supported”
 - #1625 Unbreakable space needed when showing size of folder/file
 - #1636 GTask getters don’t return TRUE/FALSE after bitfield changes
 - #1637 EXCEPTION_ACCESS_VIOLATION in g_clear_pointer
 - #1639 GListStore implementation of g_list_model_get_item() returns wrong results on integer overflow
 - #1655 gvariant-parser warnings
 - #1663 G_MININT32 triggers compiler warning C4146 with Visual C++
 - #1666 `G_DEFINE_DYNAMIC_TYPE_EXTENDED` causes warnings with -Wcast-function-type
 - !319 giomodule: Print the type of each default GIO module
 - !333 Add writev() API to GOutputStream and GPollableOutputStream
 - !419 gspawn, win32: qouted args - escape end backslash
 - !450 Settings portal
 - !512 gtype: Clarify type of GInterfaceInitFunc
 - !516 gthread: Add g_private_set_alloc0() convenience API
 - !535 win32 gpoll: overcome the 64 handles limit
 - !545 goption: Fix an annotation on g_option_context_parse_strv()
 - !560 docs: Fix dconf GSETTINGS_BACKEND name in gio overview
 - !564 gtype: Document type for iface_default_init() function
 - !568 Add separate definitions of g_assert_[non]null() for C++
 - !571 docs: Add note on how to check a gboolean condition
 - !575 gio: Update bad cert error in accept-certificate and GTlsError docs
 - !579 Temporarily disable flaky tests
 - !580 Drop autotools support
 - !583 gmacros: MSVC supports the noreturn function attribute
 - !587 Remove unused .pc.in files
 - !588 MSVC: Move dirent implementation to glib/dirent/
 - !590 Update contribution documentation
 - !591 gfileinfo: Fix annotation for g_file_info_set_attribute_stringv
 - !592 Remove leftover build/ directory
 - !595 gtestutils: pass open file descriptors to subprocess
 - !597 tests: Tag gsocketclient-slow test as ‘flaky’
 - !598 gdbus-proxy test fails with GLib-GIO:ERROR:glib/gio/tests/gdbus-proxy.c:832:fail_test: code should not be reached
 - !599 gdtlsconnection: do not return on a void method
 - !601 gio: Support "help" in extension point env vars
 - !602 Update POTFILES.in
 - !603 keyfile settings: Accept unquoted strings
 - !608 build: Add -Wno-pedantic flag to compiler arguments
 - !611 gnetworkaddress: fix use-after-free for network address
 - !612 gdir: shutup a warning when building with msvc
 - !615 Fix a couple of wrong compiler warnings

* Translation updates:
 - Spanish
 - Swedish


Overview of changes in GLib 2.59.0
==================================

* This will be the last development release with autotools support. As our
  Meson support has been around since 2.56.x, and was used to release tarballs
  in 2.58.x, the next development release (2.59.1) will drop autotools as used
  to build GLib. The macros installed for other packages to use will remain.

* Add `G_TEST_OPTION_ISOLATE_DIRS` to redirect `XDG_*_HOME` to a temporary
  directory for each unit test. (#538)

* Support `Property.EmitsChangedSignal` annotations in `gdbus-codegen`. (#542)

* Add `g_assert_cmpvariant()` API for unit tests. (#1191)

* Hide bind mounts from GIO mount listings. (#1271)

* Automatically realign data passed to `g_variant_new_from_bytes()` or
  `g_variant_new_from_data()` if it is not correctly aligned. This prevents
  misaligned accesses on architectures which don’t support them. Callers should
  still aim to correctly align data to get higher performance. (#1342)

* Support `ld -b binary` (on platforms which support it; i.e. Linux) to provide
  large pre-compiled `GResource` resources with a fast compilation time. (#1489)

* Unconditionally install GLib m4 macros, so that projects which depend on GLib
  and which still build using autotools can continue to build even once GLib has
  ported entirely to Meson. (#1520)

* Various fixes to the Meson build.

* Drop Python 2 support and require Python 3.4+. See discussion on
  https://mail.gnome.org/archives/desktop-devel-list/2018-July/msg00004.html.
  (!196)

* `GHashTable` performance and memory improvements for common cases. See
  https://hpjansson.org/blag/2018/07/24/a-hash-table-re-hash/. (!208)

* Add flags that allow a `GApplication` to signal and replace a currently
  running other instance of the same `GApplication`. This will be used for app
  upgrades with flatpak. (!250)

* Autostart xdg-desktop-portal when using the network monitor and proxy monitor
  portal backends. (!317)

* Add a g_task_set_name() API to allow `GTask`s to be described; useful for
  debugging. (!384)

* Enable FreeBSD CI on every commit for upstream GLib. (!387)

* Various GVariant, GMarkup and GDBus fuzzing fixes, including buffer overflow
  fixes. (!411)

* Various fixes to eliminate thread races, found by thread sanitizer (tsan).

* Deprecate TLS/DTLS rehandshaking, as it has been removed from the protocol in
  TLS 1.3. (!478)

* Support reading arguments from a file with `glib-mkenums`, which is useful
  for long argument lists due to having deeply nested build directories, on
  systems with a low limit on the command line length. (!489)

* Make `g_environ_*()` case-insensitive on Windows, as the environment itself
  is case-insensitive on Windows. (!500)

* Add Application Layer Protocol Negotiation (ALPN) support to `GTlsConnection`
  and `GDtlsConnection`, so that higher layer protocols can be negotiated when
  setting up a TLS connection, without additional round trips and latency. This
  is needed for eventual HTTP/2 support. (!520)

* Add support for TPM keys in PEM files when loading TLS certificates. (!522)

* Add a `GRecMutexLocker` auto-pointer wrapper for `GRecMutex`. (!528)

* Bugs fixed:
 - #107 The "g_key_file_get_comment" interface returns comment with unexpected new line symbol at the end
 - #179 g_object_unref assert in debug code
 - #277 'destroy_data' in g_cclosure_new is registered as finalize notifier instread invalidate.
 - #538 Add helpers to redirect XDG_*_HOME to a temp dir for unit tests
 - #542 gdbus-codegen does not honor "Property.EmitsChangedSignal" annotations
 - #656 check for -Werror=format-security broken
 - #734 Provide a way to instantiate a GDBusProxy-derived class from a GDBusConnection and a object path without blocking
 - #827 gmain: Clarify that g_source_set_callback() is safe on attached sources
 - #1055 Provide alignment macros
 - #1119 GVolumeMonitor: Results don't reflect current state but state when application was launched
 - #1191 add g_assert_equal_variants
 - #1261 Add option to leave <default> in gschema empty
 - #1271 fstab binds appear as mounts (x-gvfs-hide is being ignored)
 - #1310 gdbusproxy: make g-name-owner property useful with unique names
 - #1313 Meson: Rework the config.h generation
 - #1342 Automatically realign data passed to g_variant_new_from_bytes() or g_variant_new_from_data()
 - #1343 g_date_set_parse: Parses "September" in Polish incorrectly
 - #1362 Incorrect documentation about GSettings child add/remove notifications
 - #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
 - #1471 Incorporate oss-fuzz fuzz targets into GLib
 - #1489 Use `ld -b binary` to speed up GResource generation for linking
 - #1498 distcheck fails in distclean
 - #1506 error: redefinition of typedef 'GKqueueFileMonitor'
 - #1509 test_timeval_to_iso8601_overflow: 'out' should be NULL
 - #1513 GIcon regression?
 - #1514 gio/appinfo test sometimes fails in CI
 - #1518 /network-monitor/create-in-thread fails in (LXC) containers on glib-2-56
 - #1520 Change conditions for installing m4 macros
 - #1522 Trash not working on NTFS folder accessed from symlink
 - #1523 GIO NetworkMonitor doesn't reflect the current network state
 - #1525 GTask allows (buggy) application code to cause callback to be called twice, without warning
 - #1527 Meson doesn't install data for installed-tests
 - #1528 Meson tests are hard to debug in an autobuilder environment
 - #1530 tests/mainloop-test appears to be flaky
 - #1535 meson: installed-test metadata not run in TAP mode
 - #1536 meson: spurious dependencies on convenience libraries in .pc files
 - #1537 meson: absolute paths to ${builddir} included in gtk-doc HTML
 - #1538 meson: G_HAVE_GROWING_STACK defined differently
 - #1539 meson: Some files are unnecessarily installed executable
 - #1541 meson: timeloop-closure test not installed
 - #1542 meson: /usr/lib/glib2.0/installed-tests/glib/gdbus-peer: error while loading shared libraries: libgdbus-example-objectmanager.so: cannot open shared object file: No such file or directory
 - #1544 meson: gtester-report #! not replaced with ${PYTHON}
 - #1546 Cross-compilation fails in 2.58
 - #1556 build: Too long file path issue with meson on Windows
 - #1562 GDate test suite fails with latest glibc
 - #1570 ghash.c:694:27: left shift of 1 by 31 places cannot be represented in type 'int'
 - #1572 Flags validation fails
 - #1575 g_date_time_format() should have format attribute
 - #1576 Fails to build with Meson on Debian armel (armv5te EABI softfloat little-endian)
 - #1580 glib-compile-resources using strings breaks building e.g. GTK+ on MS Visual C, which limits strings to 65535 chars
 - #1581 Memory used for reference counted data might be misaligned.
 - #1588 Moving a bookmark item to the same URI causes a crash
 - #1589 g_log_writer_is_journald memoizes a single result, even though it accepts a parameter
 - #1590 tests: g-file-info-filesystem-readonly fails if run more than once with fuse & bindfs installed
 - #1594 Return value of g_dbus_connection_get_unique_name not annotated as nullable
 - #1600 g_timeout_source_new_seconds overflows when given interval > (G_MAXUINT / 1000)
 - #1601 appinfo test fix is defective
 - #1605 g_date_time_format fails when used with non ASCII format string on POSIX locale
 - #1615 gdbus-codegen not generating nullable annotation
 - !196 [RFC] build: Drop Python 2 support and require Python 3.4+
 - !200 Add a new GTlsError to indicate protocol downgrade attacks
 - !208 GHashTable improvements
 - !219 glocalfilemonitor: Fallback to poll file monitor for NFS
 - !238 W32 GFileInfo improvements
 - !250 Application replace
 - !264 glib-compile-resources: encode data as string
 - !268 build: simplify alloca checks. See #1313
 - !272 dtrace: Add missing const attributes to types in glib_probes.d
 - !273 gtlsbackend: add support for setting the default TLS database
 - !277 Use "command -v" instead of "which"
 - !282 meson: Add macOS libtool versioning for ABI compatibility
 - !286 gspawn: Fix build on systems without O_CLOEXEC
 - !287 glib-compile-resources: Fix generated code compiling with C++ compilers
 - !289 tests: Add more tests to finish branch coverage of GHashTable
 - !290 build: fix installation dir of glib-gettextize
 - !292 Remove all ChangeLog files
 - !293 Document new volume class `loop`
 - !294 portal network monitor: Always emit changed signal on changed
 - !295 meson: fix typo
 - !296 Add G_GNUC_FALLTHROUGH for __attribute__(fallthrough))
 - !297 build: Drop AC_C_CONST from configure.ac
 - !302 Document that GTimeVal is subject to the year 2038 problem on 32-bit systems
 - !303 liststore: Simplify code
 - !304 Add more GListStore/GListModel tests
 - !309 codegen: Change pointer casting to remove type-punning warnings
 - !312 Enable GIO tests on Windows
 - !316 gdbus: Improve error when well-known name is unowned
 - !317 Autostart xdg-desktop-portal if needed
 - !322 gnetworkmonitornm: Set a GError properly on an error handling path
 - !332 gmarkup: Make the documentation even more explicit about untrusted input
 - !334 gio: automake: Add libgmodule dependency
 - !338 gcharset: fix leaking g_get_language_names_with_category
 - !339 Add g_desktop_app_info_get_string_list(); fix g_key_file_free()
 - !340 tests: Mark two more tests as slow
 - !345 Fix build failure on systems without POSIX spawn
 - !347 Use Meson 0.48.0 for CI
 - !348 Documentation tweaks for g_array_free
 - !353 Meson: Do not run tests/refcount with --tap
 - !354 Fix spelling mistakes detected by Debian's Lintian tool
 - !358 Autotools: Move libmount from Libs.private to Requires.private
 - !360 CI: Test static build on installed glib
 - !363 Tests: Mark printf wrappers with G_GNUC_PRINTF
 - !364 ci: Enable FreeBSD CI
 - !366 gunixmounts: Mark mounts as system internal instead of filtering out
 - !372 gmacros: Fix G_[UN]LIKELY to not mask -Wparentheses
 - !374 gthreadpool: Include prgname in thread name
 - !375 m4macros: Allow information from pkg-config to be overridden
 - !376 gthread: Clarify priority handling in GRWLock
 - !379 Ignore g_return_*if_fail() branches in lcov coverage report
 - !381 Add UTF-8 communication tests for GSubprocess
 - !384 gtask: Add a g_task_set_name() method
 - !387 ci: Enable FreeBSD CI in the official repository
 - !396 m4: Fix AM_PATH_GLIB_2_0 macro
 - !400 grefcount: add missing gatomic.h
 - !403 build-sys: Pass CFLAGS to $(DTRACE)
 - !405 ci/msys2: fix path to the lcov config file
 - !406 meson: Mark 1bit-emufutex test as slow
 - !407 meson: Increase test timeouts
 - !410 gfileutils: Add examples to g_path_get_dirname() documentation
 - !411 Various GVariant, GMarkup and GDBus fuzzing fixes
 - !412 Enable compile time check of g_date_time_format() format
 - !413 Add support for g_auto(s)list to G_DECLARE'd types
 - !414 gio, tests: ensure objectmanager sources are generated
 - !415 gseekable: fix 'attmepting' typo
 - !416 gdbus-peer: Make sure to not include objectmanager-gen.c source
 - !417 Fix ^*ay handling in g_variant_iter_loop()
 - !418 Meson: Cleanup a FIXME now that we have dict addition
 - !420 gdbus-codegen: add autocleanup for FooObject
 - !422 GMarkup buffer overflow fixes for error handling, round 2
 - !423 gutils: Check whether getauxval function exists
 - !424 ci: Fix Docker image version
 - !425 gdate: Reinitialize using_twodigit_years and locale_era_adjust.
 - !435 gdatetime: Fix formatting of time zones offsets in range -01:00 to +00:00
 - !436 valgrind: Add glib_init()-related suppressions
 - !440 Fix minor memory leaks in tests
 - !443 tests: Avoid multithreaded use of g_test_rand_int_range
 - !444 gvarianttypeinfo: Consistently use atomics to access ref_count
 - !446 gmain: Fix data races in GUnixSignalWatchSource and GChildWatchSource
 - !451 closures test: Avoid timeout on ARM64 CPUs
 - !452 Atomic reference count in GVariant, ContainerInfo and GDBus introspection
 - !453 tests: Fix some data races in tests
 - !454 gdbusproxy: make g-name-owner property useful with unique names
 - !458 glib-compile-resources: Fix size allocation for compressed streams
 - !460 gatomicrefcount: Make g_atomic_ref_count_init non-atomic
 - !461 Meson: Fix build error in gdbus-example-objectmanager
 - !462 meson: add aarch64 memory barrier handling
 - !463 gio, tests: fix leak of dbus connection.
 - !467 Update documentation of g_tls_connection_handshake() again
 - !469 docs: add index of new symbols for gio > 2.52
 - !470 docs: Clarify return/error behaviour of D-Bus signal subscriptions
 - !472 gdbusmessage: Gracefully handle message signatures with invalid types
 - !477 gthread: Remove unsynchronized access to g_once_init_list from assertion
 - !478 Deprecate TLS rehandshaking
 - !480 docs: add a missing semicolon
 - !482 Check for 'z' library before fallbacking to subproject
 - !483 meson: Turn selinux into a meson feature and make it auto by default
 - !484 Meson: Add 'nls' option to disable translation
 - !485 gdbus-codegen: Tag interfaces and properties so annotated with G_PARAM_DEPRECATED
 - !486 Check for zlib header
 - !489 glib-mkenums: Support reading @rspfiles for arguments
 - !490 gspawn: Fix g_spawn deadlock in a multi-threaded program on Linux
 - !491 Meson: Add missing include_directories when using glib as subproject
 - !492 g_value_get_variant: return value is transfer-none not transfer-full
 - !494 Resolve "Follow-up from "gunixmounts: Stop considering cifs/nfs as system file systems""
 - !500 genviron: make g_environ_* case-insensitive on Windows
 - !504 tests: Unset LANGUAGE when running gdatetime tests
 - !505 Support isolating directories for unit tests
 - !508 ci: Install additional locales used during tests
 - !510 Add new Linux Testing project version number to configure script
 - !511 gvariant: Fix error handling for parsing Unicode escapes
 - !514 fix gdbus-codegen --interface-info-{header,body}
 - !515 binding: Clarify the use of g_object_unref() to remove a binding
 - !517 Meson: Fix deprecation warning with upcoming 0.49.0 release
 - !518 Meson: Fix declare_dependency() calls
 - !520 GTlsConnection: add ALPN support
 - !521 tests: Rename macro to avoid conflict with encoding prefix
 - !522 gtlscertificate: Add support for TPM keys in PEM files
 - !524 gdatetime: Fix typo in the comment
 - !528 Add GRecMutexLocker
 - !530 tests: Minor improvements to mkenums.py and taptestrunner.py used by it
 - !534 gtlscertificate: Fix bug in PEM private key parser
 - !536 Various minor docs fixes
 - !541 gtimezone: Fallback to /etc/timezone on Gentoo
 - !546 spawn: add shebang line to script
 - !547 Do not check for NULL when calling free()
 - !549 Improve documentation of g_assert_error()
 - !551 Revert "tests: Fix GOptionContext leak in GSubprocess tests"
 - !554 Only subscribe to owner-changed signals on message bus connections
 - !555 Suppress -Wint-in-bool-context warning with G_DEFINE_INTERFACE and g++

* Translation updates:
 - Brazilian Portuguese
 - Czech
 - Danish
 - Greek
 - Hungarian
 - Lithuanian
 - Norwegian bokmål
 - Polish
 - Slovak
 - Slovenian
 - Spanish
 - Swedish
 - Turkish


Overview of changes in GLib 2.58.0
==================================

* Tarball built with `ninja dist`, so if you want to build this release with
  autotools (which is supported), you will need to re-run autogen.sh. This
  release, and all micro releases in the 2.58.x series, support being built
  with Meson or autotools. See:
  https://mail.gnome.org/archives/gtk-devel-list/2018-June/msg00012.html

* Fix cancellation of g_subprocess_communicate_async() calls. See !266.

* Drop support for the __int64 type, which further breaks compilation on old
  MSVC versions (before VS2013). See #1313.

* Expose GSettings schema directory in gio-2.0.pc as `schemasdir`. See !274.

* Support v3 of the xdg-desktop-portal network monitor API. See !265, !279.

* Fix G_MODULE_SUFFIX on macOS when GLib is built with Meson — it should be `so`
  rather than `dylib`. Projects that use Meson and the `g_module_build_path()`
  API such as glib-networking should pass `name_suffix:` to `shared_module()` to
  ensure that plugins continue to be called libfoo.so on macOS. See !280.

Bugs fixed:
 !280 meson: Always set G_MODULE_SUFFIX to `so` on macOS
 !266 subprocess: Fix communicate_cancelled signature
 !279 Revert "Add a gnet utility" (see !265)
 !265 Network monitor again
 !274 gio: Provide schemas directory information in pkg-config file
 !239 gvariant: Fix more bounds checking in GVariant text format parser
 !195 garray: add overflow checks before expanding array
 #1497 g_strdup_printf warns on invalid format specifier with G_GUINT64_FORMAT on Win32
 !270 autotools: remove support for the __int64 type. See #1313
 !267 ci: Add an autotools job

* Translation updates:
 Czech
 Galician
 Indonesian
 Italian
 Kazakh
 Korean
 Turkish


Overview of changes in GLib 2.57.3
==================================

* G_GNUC_MALLOC’s definition has been tightened up to match an updated
  definition from GCC. Many uses of G_GNUC_MALLOC which were previously
  appropriate may cause miscompilation with newer GCC versions. Check your uses
  of it against the updated documentation. See #1465.

* Many minor documentation fixes.

* Fix for gint64 and int64_t compatibility on macOS and BSD. See #972.

* Fix free space metadata on some file systems (notably FAT). See #328.

* Support installed-tests with our Meson build system. See #1444.

* Forbid @filename@/@basename@ in glib-mkenums templates, which is a change to
  its long-standing behaviour (which was long-standing nonsensical). See !241.

* Various stat() fixes on Windows. See #1452, #1476.

* MinGW-w64 ABI warning: In case you build 64 bit glib without LFS support by
  passing --disable-largefile (not the default) and use GStatBuf, you need to
  rebuild your application as the size of GStatBuf has changed for this case.
  See #1476.

* Improve TAP compatibility of g_test_incomplete(). See #1474.

* Change fallback preferences when loading icons. See !72.

Bugs fixed:
 !263 build: Clean files left behind after gio/tests/gresource.c test
 !262 gmem: Only evaluate pointer argument to g_clear_pointer() once
 #1465 Many uses of G_GNUC_MALLOC are incorrect
 #1448 g_error does not abort() as documented
 #1494 g_clear_pointer may not use the correct calling convention with its callback
 #972 Mismatch between gint64 and int64_t on 64-bit macOS/BSD
 !251 gtestdbus: Fix watcher crash on FreeBSD
 #1492 gcc-8: -Wcast-function-type: new warnings for g_list_copy_deep()
 !252 tests: fix gnotification tests broken due to the recent icon name fallback changes
 #328 filesystem::{free,size,used} not set for full FAT fs
 !248 network monitor portal: update properties initially
 #1373 Incorrect transfer annotation for g_binding_unbind.
 #1444 the meson build doesn't support installed tests
 #1027 Fix trashing on overlayfs
 #1454 gvdb does not treat corrupt files as empty as promised; dconf suffers
 !243 tests: Explicitly set TZ=UTC for g_time_val_from_iso8601() testing
 #1488 ‘O_CLOEXEC’ undeclared (first use in this function)
 !241 glib-mkenums: forbid @filename@/@basename@ in fhead and ftail
 !240 gtimer: Ensure arithmetic is correctly signed for ISO 8601 parsing
 #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
 !234 DOC: Documentation fix in GTask description
 #1363 Meson: Review cross compilation properties
 !225 gtimer: Add overflow checks to g_time_val_from_iso8601()
 !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
 !229 Fix up g_bytes_compare() documentation
 #1476 g_stat - possbile memory corruption causing SEGFAULT
 !199 Update TLS documentation
 #1474 g_test_incomplete() makes test_case_run() return FALSE
 #1475 glib/tests/atomic.c test_types() trips -Werror=bad-function-cast on Debian armel
 #1472 Test for BROKEN_IP_MREQ_SOURCE_STRUCT is broken on Windows / Mingw
 !220 date test: Use g_test_skip(), not g_test_incomplete()
 #1467 malloc difference causes refstring test to fail on FreeBSD
 !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
 #1466 Not Able to Build glib 2.57.2 in Mingw-w64 x64 bits
 #1433 test_posix_parse: assertion failed (g_time_zone_get_abbreviation (tz, 0) == "UTC"): ("LMT" == "UTC")
 #1446 Follow-up from "Document difference between g_assert() and g_assert_*() wrt G_DISABLE_ASSERT"
 !206 grefstring: Avoid an unnecessary NUL assignment
 #1458 g_volume_get_mount returns NULL value after g_volume_mount_finish is called with no error
 !72 gio: icons should fallback to non-preferred style appropriately.

* Translation updates:
 Brazilian
 Chinese (Taiwan)
 French
 German
 Lithuanian
 Polish
 Romanian
 Turkish


Overview of changes in GLib 2.57.2
==================================

* Require pcre 8.31
* Require meson 0.47.0

* Bugs fixed:
 742456 Add g_steal_pointer() convenience function to mark ownership...
 795569 MinGW CI: fix tests
 796341 gmem.h: Use typeof() in g_steal_pointer() macro
 #1013 Support for per-session overrides
 #1360 glib-mkenums breaks if option specified but no nick
 #1175 Add names and tags to various GSources and GTasks constructed in GLib
 #903 g_main_context_wait() not deprecated in API, but emits a g_critical()...
 #786 Fix memory leaks in libgio tests
 #927 gio/gresource.c:do_lookup check for terminating "/"
 #976 Document difference between g_assert() and g_assert_*()...
 #1447 glib 2.57.1: test_month_names: assertion failed...
 #1407 Update to Unicode Character Database 11
 #1455 glib python tools have full python path in shebang, limits to 128 characters
 #1459 Missing g_return_val_if_fail in g_async_queue_timeout_pop

* Translation updates:
 Friulian
 German
 Romanian
 Spanish


Overview of changes in GLib 2.57.1
==================================

* New api:
 - g_hash_table_steal_extended
 - G_GNUC_NO_INLINE 

* Bug fixes:
 668132 Use libmount and expose mount options on GUnixMountEntry type
 736741 Update private copy of valgrind.h
 748620 g_regex_* utf-8 validity requirements are not stated clearly
 784995 meson: some Windows improvements
 788771 NODELETE missing when built with meson
 788773 meson does not install correct pc files
 789968 Add g_autoptr() support for GTypeClass
 794325 Various fixes to compile on OSX
 795152 gdesktopappinfo: Mark GDesktopAppInfo constructors as nullable.
 795165 Add g_date_time_get_timezone() and g_time_zone_get_identifier()
 795180 Investigate performance impacts of recent compiler features on hot functions
 795302 Add g_hash_table_steal_extended() API
 795376 Add g_ptr_array_steal()
 795544 Add binary/textfile/zero size detection
 795569 MinGW CI: fix tests
 795636 gitlab-ci: generate test coverage reports
 795735 Fix comparison for GVariant property values
 795802 gdbus-codegen doesn't accept --output-directory with --output for --body and --header
 795849 gwin32: Fix detection of MinGW32 vs MinGW-w64
 795876 meson: Fix checks for posix_memalign and stpcpy
 795960 g_format_size_for_display() is deprecated since 2.30
 796085 Meson: Many apps breaks on non-glibc because of missing libintl
 796138 Fix typo in g_file_info_set_attribute docs
 796139 Add g_autoptr() support for GParamSpec
 796164 Fix atomic ops check in meson.build
 796186 Typo: "instead off" in gsignal.c
 796213 Meson: Fail to build on macosx
 796220 meson: do not run atomic test with msvc
 796264 Add android CI
 796325 meson: Add exception for atomic ops test for Android
 796328 gengiotypefuncs.py: Read and parse files in binary mode 

* Translation updates:
 Czech
 Indonesian


Overview of changes in GLib 2.57.0
==================================

* Bug fixes:
 739424	Rewrite kqueue GFileMonitor backend to drop threading
 751826	Use g_get_language_names() for other locale categories
 788773	meson does not install correct pc files
 793400	g_application_id_is_valid() not strict enough
 793578	gdatetime tests depend on Japanese translation of month names
 793645	test_month_names: Updated translations needed for el_GR, hr_HR, ru_RU
 793729	gitlab-ci: Add Windows MinGW support
 793994	GUnixVolumeMonitor doesn’t show user mounts when run as root
 794170	gdbus: hexdecode() and hexencode() do not return/use decoded/encoded s...
 794194	gobject_gdb.py: 'address' is a property of gdb.Value not a function
 794207	leak: g_socket_listener_add_inet_port increases ref-count on socket-li...
 794284	Support whitespace stripping for JSON resources
 794285	glib-compile-resources should not noisily g_printerr() when xmllint is...
 794473	Remove duplicated option in gio.xml
 794506	glib-mkenums: Enters infinite loop if using typedef enum SomeIdentifier
 794528	Fix segfault caused by use-after-free in GPollFileMonitor
 794555	glib meson build fails on MinGW due to misdetected functions
 794557	gtkdoc-scangobj fails on gio in meson builds
 794606	glib-2.56.0 fails to compile when res_nquery is not available
 794635	gmacros: Don't define bogus __has_* macros
 794636	G_HAVE_GNUC_VISIBILITY is defined in meson MinGW builds
 794686	Date (except weekday) displayed in English
 794732	Fix various compiler warnings 

* Translation updates
 Hungarian
 Slowak
 Slovenian
 Spanish


Overview of changes in GLib 2.56.0
==================================

* Bugs fixed:
 672777 Error in gdummyfile.c
 732184 GObject: warn on use of deprecated properties
 733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
 742124 g_data_input_stream_read_upto()'s documentation should say that the...
 749206 GDateTime: month names in the genitive case
 768507 simplify qguark functions
 791457 Slow transfer rate when writing to smb/cifs
 793272 fix GCC 8.0's -Wcast-function-type warnings
 793300 g_hash_table_add() return value change in 2.40 not mentioned in docs
 793399 Fix some cases of -Wduplicated-branches
 793555 -Wimplicit-function-declaration when using g_abort()
 793565 GLib does not compile on macOS 10.13 due to .m file naming
 793597 gdbus-tool: Make --dest optional for emit again
 793635 Enable CI for GLib
 793880 gnetworkmonitor: Minor fixes based on code review 
 793578 gdatetime tests depend on Japanese translation of month names 
 794180 test_month_names fails unless installed

* Translation updates:
 Brazilian Portuguese
 British English
 Catalan
 Czech
 Danish
 Dutch
 Finnish
 French
 Friulian
 Galician
 German
 Hungarian
 Indonesian
 Italian
 Kazakh
 Korean
 Lithuanian
 Polish
 Scottish Gaelic
 Serbian
 Serbian Latin
 Spanish
 Swedish
 Turkish


Overview of changes in GLib 2.55.2
==================================

* GFile now has API to get the path without copying

* A network monitor implementation for Windows has been added

* Bugs fixed:
 520116 g_utf8_strlcpy()
 584284 g_data_input_stream_read_until_async behaves confusingly different f...
 605700 request for g_key_file_get_locale()
 658713 ngettext (plural forms) needed for "Message has %d file descriptors ...
 685442 windows GNetworkMonitor implementation
 723003 gsettings list-recursively reports some keys multiple times
 749583 GSequence performance improvements
 757284 Move G_DIR_SEPARATOR* and G_SEARCHPATH_SEPARATOR* into glibconfig.h
 760324 [PATCH] gkeyfile.c: find_file_in_data_dirs fails to return the path ...
 761102 Increase performance for main loop
 767976 GFile: Add g_file_peek_path()
 770335 gdbus-codegen: generated getter for 'ao' property is actually (trans...
 772989 Totem allows invalid urls that might cause segfault that's irrecover...
 790698 convert: test failure on NetBSD
 791015 gdbus-codegen: Split generation of header and source
 791622 Disable strict-aliasing in GLib
 792050 GResolver is not thread-safe
 792217 Deprecate GTlsClientConnection:use-ssl3
 792338 meson, autotools: figure out if mem barrier is needed for arm64 host...
 792351 gbookmarkfile: check length before dereferencing groups
 792364 gdbus-threading test method-calls-in-thread: assertion failed (elaps...
 792370 GNetworkMonitor: Rename "network-changed" signal argument
 792410 GDateTime new_from_iso8601 test broken in 2.55 on i386
 792432 flush stdout after logging (debug) messages
 792455 Improve docs of GSequence
 792499 deadlock on startup with TCP session bus
 792516 gconvert: More consistent handling of embedded NUL bytes
 792777 g_notification_set_urgent() unconditionally sets G_NOTIFICATION_PRIO...
 792780 gbytes should reference toplevel bytes when slicing with g_bytes_new...
 792856 off64_t isn't a part of C standard
 792862 gpollableoutputstream: document side effects of WOULD_BLOCK on D/TLS
 792903 Clarification between g_try_.. functions and their counterparts
 793006 High CPU load for GUnixMountsMonitor consumers
 793026 possible mem leak in g_mutex_impl_new
 793074 g_message() does not get -Wformat warnings when compiling with G_LOG...

* Translation updates:
 Hungarian
 Indonesian
 Polish


Overview of changes in GLib 2.55.1
==================================

* Build:
 - The --enable-rebuilds configure option has been removed
 - The --with-charsetalias-dir configure option has been added

* GList and GSList now have autoptr support

* The gsettings list-schemas command has gained a --print-paths option

* Bugs fixed:
 346816 Refactor LIBDIR in libcharset Makefile
 508976 Does g_slist_sort preserve the order of equal elements?
 562334 2.18.2 break libglade on Solaris
 662802 systemtap multiarch issue
 684282 Add support static link of GIO modules
 692034 Install an invalidation notifier for GClosure in g_source_set_closure()
 694723 Get rid of REBUILD stuff in configure.ac
 697715 floating point precision problem in check test gst/gstvalue
 701156 testgobject assumes that the priv data follows the instance data
 720380 Segfault when using GDBusMenuModel on a peer-to-peer connection
 724383 glib: document restrictions on various foreach() functions
 724412 GLib mappedfile.c test uses g_get_user_runtime_dir instead of a tempo...
 724794 Fix "on on" typo in tap-driver.sh comment
 732003 gnode: Eliminate implicit signed-to-unsigned integer conversion
 734479 G_VALUE_HOLDS etc. cause -Wcast-qual warnings for a const GValue *
 737677 gmain: Make GSourceCallback thread-safe
 741167 gdbus-codegen fix for boxed out parameters
 748534 gtest: if a subprocess assertion fails, print its stdout and stderr
 749527 add weak pointer helpers similar to g_set_object
 749652 compilation errors with gcc 4.8
 754634 Update the list of Linux filesystem magic numbers used in get_fs_type
 756011 Fix up annotations for GBookmarkFile
 761102 Increase performance for main loop
 773980 GIR scanner doesn't interpret array type properly
 776147 gio/glocalfilemonitor.c doesn't handle case G_FILE_MONITOR_EVENT_MOVE...
 776195 -z nodelete configure check does not work on Solaris
 777075 Potential leak of memory pointed to by 'list'
 779413 Translated X-Geoclue-Reason string not used in a dialog window
 780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
 780893 Reword licensing header for gdbus-codegen
 782057 Unit tests fail in run-assert-msg-test.sh
 784995 meson: some Windows improvements
 786796 gtk-doc build fails with meson
 788806 Impossible to build static glib via meson
 788936 Show mime type icons on OS X
 790416 g_date_time_format returns empty string on %r with German locale
 790588 Generated file missing from .gitignore
 790697 g_object_ref API should propagate parameter type
 790785 glib-tap: Add missing mkdir for .test generation rule
 790829 glib-genmarshal --body must not generate alias implementations
 790830 Mismatch between number of interface methods in text and example code
 790837 Meson: missing many configure options
 790839 GApplication command line: lacks parameter_string, summary and descri...
 790877 fix non-portable check in G_GNUC_CHECK_VERSION
 790894 Do not connect to the session bus when trying GProxyResolverPortal io...
 790896 docs/reference/README has broken link to http://www.gtk.org/rdp/
