Change log level at g_log_remove_handler
[platform/upstream/glib.git] / NEWS
diff --git a/NEWS b/NEWS
index 3426e7b..a6202af 100644 (file)
--- a/NEWS
+++ b/NEWS
+Overview of changes in GLib 2.78.4, 2024-01-21
+==============================================
+
+* Bugs fixed:
+  - !3754 Backport !3751 “Fix generated RST anchors for methods, signals and
+    properties” to glib-2-78
+  - !3756 docs/reference: depend on a native gtk-doc
+  - !3759 Backport !3753 “gobject_gdb.py: Do not break bt on optimized build” to
+    glib-2-78
+  - !3766 Backport !3750 “gregex: clean up usage of _GRegex.jit_status” to
+    glib-2-78
+
+
+Overview of changes in GLib 2.78.3, 2023-12-06
+==============================================
+
+* Fix a crash-causing regression in xdgmime (#3191, work by Philip Withnall)
+
+* Bugs fixed:
+  - #3191 Crash in __gio_xdg_cache_mime_type_subclass (Philip Withnall)
+  - !3747 Backport !3742 “xdgmime: Update to upstream commit c2c814d4051f232” to
+    glib-2-78
+
+
+Overview of changes in GLib 2.78.2, 2023-12-05
+==============================================
+
+* Bugs fixed:
+  - #3156 check for #ifdef PTRACE_O_EXITKILL will always fail since it isn't a
+    macro (Alessandro Bono)
+  - #3157 gsubprocess build-time test intermittently timing out since 2.78.1
+    (Simon McVittie)
+  - !3673 Backport !3669 “meson: Improve PTRACE_O_EXITKILL presence check” to
+    glib-2-78
+  - !3680 Backport !3677 “Make GQuark register intentional leaks” to glib-2-78
+  - !3681 Backport 3678 “gsignalgroup: Avoid function call with side effect in
+    g_return_* macro” to glib-2-78
+  - !3686 Backport !3685 “tests: Don't assume that sh optimizes simple commands
+    into exec” to glib-2-78
+  - !3718 Backport !3714 “xdgmime: Handle buggy type definitions with circular
+    inheritance” to glib-2-78
+  - !3727 Backport !3725 “collate: Don't segfault on bad input” to glib-2-78
+
+* Translation updates:
+  - Ukrainian (Yuri Chornoivan)
+
+
+Overview of changes in GLib 2.78.1, 2023-10-25
+==============================================
+
+* Fix truncating files when `g_file_set_contents_full()` is called without
+  `G_FILE_SET_CONTENTS_CONSISTENT` (#3144, work by Philip Withnall)
+
+* Fix `-Dlibelf=disabled` on Linux (#3120, work by Philip Withnall)
+
+* Bugs fixed:
+  - #3105 NetworkManager 1.44.0 crashes repeatedly with glib 2.78.0 (Philip
+    Withnall)
+  - #3111 gsubprocess-testprog.c: build error with cygwin (sys/ptrace.h: No such
+    file or directory) (Philip Withnall)
+  - #3116 gio clears modification time in microseconds when setting with
+    `set_modification_date_time` (Lukáš Tyrychtr)
+  - #3120 Build of glib 2.78.0 ignores -Dlibelf=disabled (Philip Withnall)
+  - #3128 glib-2.78.0 fails at gio/tests/gsubprocess.p/gsubprocess.c.o
+  - #3130 Segfault when creating GIO GPropertyAction without properties
+  - #3144 `g_file_set_contents_full()` doesn't truncate the file (without
+    `G_FILE_SET_CONTENTS_CONSISTENT`) (Philip Withnall)
+  - !3576 guniprop.c: Avoid creating (temporarily) out-of-bounds pointers
+  - !3579 Fixes for integer cast warnings when targeting CHERI
+  - !3580 Fix test_find_program on FreeBSD
+  - !3589 gconstructor.h: Ensure [c|d]tor prototypes are present for MSVC (Chun-
+    wei Fan)
+  - !3594 Fix gutils-user-database test on macOS
+  - !3596 Add value annotation to G_TYPE_FUNDAMENTAL_MAX
+  - !3601 meson: Fix Windows build with PCRE2 as sibling subproject
+  - !3604 Backport !3589 “gconstructor.h: Ensure [c|d]tor prototypes are present
+    for MSVC” to glib-2-78
+  - !3608 Backport !3587 “glocalfileinfo: Preserve microseconds for
+    access/modify times” to glib-2-78
+  - !3609 Backport !3607 “Make sure the `GTask` is freed on a graceful
+    disconnect” to glib-2-78 (Pavel Sobolev)
+  - !3614 Backport !3582 “Buffer needs to be aligned correctly to receive
+    linux_dirent64.” to glib-2-78
+  - !3616 Backport !3590 “gtestutils.h: Fix warning with -Wsign-conversion
+    caused by g_assert_cmpint” to glib-2-78
+  - !3619 Backport !3617 “tests: Drop unnecessary include from gsubprocess-
+    testprog.c” to glib-2-78
+  - !3622 Backport !3621 “wakeup: do single read when using eventfd()” to
+    glib-2-78
+  - !3625 Backport !3624 “wakeup: Fix g_wakeup_acknowledge if signal comes in”
+    to glib-2-78
+  - !3644 Backport !3633 “Use g_task_return in task threads” to glib-2-78
+  - !3649 Backport !3648 “build: Fix -Dlibelf=disabled on Linux” to glib-2-78
+  - !3659 Backport !3650 “gfileutils: Add a missing ftruncate() call when
+    writing files” to glib-2-78
+
+* Translation updates:
+  - Catalan (Jordi Mas i Hernandez)
+  - Chinese (China) (Boyuan Yang)
+  - Czech (Daniel Rusek)
+  - Esperanto (Kristjan SCHMIDT)
+  - French (Alexandre Franke)
+  - Georgian (Ekaterine Papava)
+  - Italian (Milo Casagrande)
+  - Latvian (Rūdolfs Mazurs)
+  - Portuguese (Brazil) (Rafael Fontenelle)
+  - Romanian (Daniel Șerbănescu)
+  - Russian (Artur S0)
+  - Slovenian (Matej Urbančič)
+  - Spanish (Daniel Mustieles)
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.78.0, 2023-09-08
+==============================================
+
+* Bugs fixed:
+  - #3095 Error handling of invalid GKeyFile string escape sequences changed in
+    GLib 2.77.3 (Philip Withnall)
+  - !3559 gdb: Workaround optimized out quark_seq_id
+  - !3561 meson: fix `gnetworking.h` install tag
+  - !3562 gthread: Annotate g_thread_exit() with G_NORETURN
+  - !3564 Fix gutils-user-database unit test
+
+* Translation updates:
+  - Basque (Asier Sarasua Garmendia)
+  - Czech (Vojtěch Perník)
+  - Danish (Alan Mortensen)
+  - English (United Kingdom) (Bruce Cowan)
+  - Galician (Fran Dieguez)
+  - Georgian (Ekaterine Papava)
+  - German (Philipp Kiemle, Jürgen Benvenuti)
+  - Hebrew (Yosef Or Boczko)
+  - Hungarian (Balázs Úr)
+  - Indonesian (Andika Triwidada)
+  - Korean (Changwoo Ryu)
+  - Lithuanian (Aurimas Černius)
+  - Persian (Danial Behzadi)
+  - Polish (Piotr Drąg)
+  - Swedish (Anders Jonsson)
+  - Turkish (Emin Tufan Çetin)
+  - Ukrainian (Yuri Chornoivan)
+
+
+Overview of changes in GLib 2.77.3, 2023-08-31
+==============================================
+
+* Bugs fixed:
+  - #2575 GSettings schemas default value translations don't work when using
+    l10n=time (Michael Catanzaro)
+  - #3032 gdbus-codegen eats indentation in RST in XML comments (André)
+  - #3051 g_dbus_connection_export_menu_model() is not thread_safe
+  - #3061 Possible SEGV (null pointer deref) in distribute_method_call() (Philip
+    Withnall)
+  - #3083 `arg_data`  in GOptionEntry is not a list (Philip Withnall)
+  - #3090 Possible SEGV (null pointer deref) in _g_resource_file_new() (Philip
+    Withnall)
+  - !3459 glib-unix: Clean up use of O_NONBLOCK
+  - !3503 interim solution for macOS CI
+  - !3519 meson: warn if -mms-bitfields is necessary
+  - !3526 gnetworkaddress: use reentrant getservbyname_r() if available
+  - !3527 tests: Use g_assert_*() rather than g_assert() in tree tests
+  - !3528 gio-tool-info: Move translator comments so they’re visible
+  - !3530 gregex: set default max stack size for PCRE2 JIT compiler to 512KiB
+  - !3532 tests: Disable use of ptrace() in tests on BSD and macOS
+  - !3533 ci: Only run pages CI job on scheduled job runs
+  - !3534 ci: Further fix to pages CI job
+  - !3535 Use 'meson setup' to configure
+  - !3538 glib-unix: Accept O_CLOEXEC as well as FD_CLOEXEC in
+    g_unix_open_pipe()
+  - !3540 gio: Add gresource.dtd
+  - !3541 gtestutils: Mention not ignoring SIGCHLD in g_test_trap_subprocess()
+    docs
+  - !3542 [th/gchildwatch-fail-message] gmain: improve g_warning() for failure
+    in g_child_watch_dispatch()
+  - !3543 [th/use-localtime-r] use localtime_r() in g_log_writer_format_fields()
+  - !3545 gregex: if JIT stack limit is reached, fall back to interpretive
+    matching
+  - !3547 glib/gfileutils.c: use 64 bits for value in get_tmp_file()
+  - !3550 glib/tests/asyncqueue.c: skip test_async_queue_timed in 2038 or later
+  - !3553 Generate missing docs for out arguments
+  - !3555 gkeyfile: Fix overwriting of GError
+
+* Translation updates:
+  - Basque (Asier Sarasua Garmendia)
+  - Kazakh (Baurzhan Muftakhidinov)
+  - Panjabi (Amn Alam)
+  - Persian (Danial Behzadi)
+  - Swedish (Anders Jonsson)
+
+
+Overview of changes in GLib 2.77.2, 2023-08-12
+==============================================
+
+* Bugs fixed:
+  - #3071 g_test_trap_subprocess and g_test_subprocess broken in 2.77.1 (Jonas
+    Ådahl)
+  - !3432 ci: Don’t run pipeline after merging a MR
+  - !3520 Fix typos
+  - !3521 GTree: Handle node counter overflow and return it as an unsigned value
+  - !3523 gspawn, gdataset: Restore nullable callback functions
+
+* Translation updates:
+  - Chinese (China) (Luming Zh)
+  - Galician (Fran Dieguez)
+  - Indonesian (Kukuh Syafaat)
+  - Polish (Piotr Drąg)
+  - Portuguese (Hugo Carvalho)
+  - Russian (Artur So)
+  - Spanish (Daniel Mustieles)
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.77.1, 2023-07-30
+==============================================
+
+* Fix some regressions with `GKeyFile` comment handling (#3047, work by Gaël Bonithon)
+
+* Improve handling of query and fragment components in `file:` URIs (#3050, work by Lukáš Tyrychtr)
+
+* Bugs fixed:
+  - #473 systemtap probes for gvariant (Allison Karlitskaya)
+  - #623 g_type_query() doesn't work for dynamic types (Philip Withnall)
+  - #931 Optimise GPrivate by removing one malloc (Allison Karlitskaya)
+  - #2929 gio: Failing build due to race generating glib/gversionmacros.h (Eric
+    van Gyzen)
+  - #3045 2.77.0: gio pkg-config test has incorrect install location for gio-
+    querymodules & glib-compile-schemas (Philip Withnall)
+  - #3047 2.77.0 changes formatting of keyfiles (Gaël Bonithon)
+  - #3048 Forcing fallback for libintl does not work (Brendan Shanks)
+  - #3050 g_file_new_for_uri() handles query strings incorrectly ("?") (Lukáš
+    Tyrychtr)
+  - #3054 Fedora installer (anaconda) crashes early with glib 2.77.0 due to
+    "Attempt to unlock mutex that was not locked", when it runs `hwclock` and
+    changes the system time (Thomas Haller, Philip Withnall)
+  - !3287 Audit and fix incorrect use of (closure) in glib
+  - !3461 gfileinfo: add file_path methods for language bindings
+  - !3485 docs: Expand supported platforms documentation a little
+  - !3494 ci: Manually fetch submodules for style-check CI jobs
+  - !3495 gdbus-codegen: Error on invalid dbus types
+  - !3496 garray: Fix typo in doc comment of g_ptr_array_sort[_with_data]()
+  - !3499 strfuncs: Add missing ownership annotations for returned string
+    vectors
+  - !3504 Revert "build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags"
+  - !3505 meson: help gobject-introspection locate source and build dirs
+  - !3509 build-sys: drop -mms-bitfields GCC flag
+  - !3510 testutils: Use prctl PR_SET_DUMPABLE to silence core dumps on Linux
+  - !3514 Revert "build-sys: drop -mms-bitfields GCC flag"
+  - !3515 gnetworkmonitor: Expand guidelines for metered data use
+  - !3517 tests: Add some more tests for g_type_query()
+  - !3518 m4macros: drop unused m4 files
+
+* Translation updates:
+  - Georgian (Ekaterine Papava)
+  - Hebrew (Yosef Or Boczko)
+  - Hungarian (Balázs Úr)
+  - Persian (Danial Behzadi)
+  - Slovenian (Matej Urbančič)
+  - Ukrainian (Yuri Chornoivan)
+
+
+Overview of changes in GLib 2.77.0, 2023-07-06
+==============================================
+
+* Fix `GSocketClient` connecting to a proxy if the port is not specified
+  (#2832, work by Michael Catanzaro)
+
+* Support using `copy_file_range()` in `g_file_copy()`, if available (#2863,
+  work by Philip Withnall)
+
+* Improve handling of comments above groups in key files (#2927,
+  work by Gaël Bonithon)
+
+* Re-upgrade missing attribute debugs to criticals in `GFileInfo` (#2951,
+  work by Philip Withnall)
+
+* Do not redefine NULL on C++ (#2973, work by Marco Trevisan)
+
+* Make `g_signal_handlers_block_matched()` work for `G_SIGNAL_MATCH_ID`
+  (#2980, work by Przemyslaw Gorszkowski)
+
+* Fixes to support building with bionic libc better (#3008, work by Øyvind Kolås)
+
+* Fix potential stack overflow in gspawn on macOS if open file limit is very
+  high (#3024, work by Dario Saccavino)
+
+* Fix support for `--force-fallback-for libpcre` in meson configuration (#3025,
+  work by Marius Kintel)
+
+* Generate specific marshallers in `gdbus-codegen` (#3028, work by Marco Trevisan)
+
+* Fix build failure on Android with `statx()` support (#3039, work by Philip Withnall)
+
+* Improve locking performance of `GSignal` (!2824, work by Marco Trevisan)
+
+* Improve locking performance of `g_main_context_iterate()` (!3235, work by
+  Marco Trevisan)
+
+* Add an inline definition of `g_free()` to automatically use `g_free_sized()`
+  if available (!3252, work by Marco Trevisan)
+
+* Fix race with `waitpid()` and `GChildWatchSource` (!3353, work by Thomas Haller)
+
+* Add `glib_valgrind_suppressions` variable to glib pkg-config file (!3361, work
+  by Marco Trevisan)
+
+* Fix build on macOS SDK 10.11 (!3385, work by Peter Williams)
+
+* Switch to using a separate thread pool and support timeouts in
+  `GThreadedResolver` (!3397, work by Philip Withnall)
+
+* Track pending `GTask`s if `G_ENABLE_DEBUG` is defined (!3404, work by Philip Withnall)
+
+* Support GSignal fast path and more marshallers in `gobject_gdb.py` (!3437,
+  work by Nelson Ben)
+
+* Disable the macOS CI because it’s too unreliable — if you rely on GLib working
+  on macOS, please get in touch and do something to help! (!3463, decision taken
+  by Philip Withnall)
+
+* Bugs fixed:
+  - #65 glib-mkenums: parse_trigraph() chokes on quoted commas (Emmanuel Fleury)
+  - #95 GMarkupParser documentation completion (David King)
+  - #98 g_get_current_dir SIGSEGV on long path (Philip Withnall)
+  - #104 Invocation of the interface "g_key_file_remove_comment" does not remove
+    comment in specific case (Gaël Bonithon)
+  - #116 Document UTF-8 behaviour and requirements throughout GLib (Philip
+    Withnall)
+  - #252 Disagreement between runtime and docs on whether interfaces are
+    "classed" (Philip Withnall)
+  - #322 gdbus-example-proxy-subclass.c is not complete. (Colin Walters)
+  - #799 GAppInfoMonitor documentation deficiencies (Philip Withnall)
+  - #1264 Use-after-free under
+    send_message_with_reply_cleanup():gdbusconnection.c:1792 (Philip Withnall)
+  - #2289 Document clearly that libgio is not guaranteed to be safe to use in
+    setuid processes (Philip Withnall)
+  - #2307 mainloop test leaks a GMainLoop object (Philip Withnall)
+  - #2829 "glib-compile-resources --dependency-file=DEPFILE" creates wrong set
+    of dependencies (Michael Catanzaro)
+  - #2832 GSocketClient cannot proxy connect unless default port is explicitly
+    specified in proxy URL (Michael Catanzaro)
+  - #2855 gio/tests/socket-client.c name is too confusing because it does not
+    use GSocketClient (Mike Salmela)
+  - #2861 Check for __kernel_long_t when enabling futex()
+  - #2863 Use copy_file_range() whenever possible in g_file_copy (Philip
+    Withnall)
+  - #2864 Documentation mentions non-existing function `g_value_free` (Philip
+    Withnall)
+  - #2879 Job #2498619 failed: gio/tests/socket.c:1654:test_reuse_tcp: assertion
+    failed (error == (g-io-error-quark, 33)): error is NULL (Philip Withnall)
+  - #2927 GKeyFile: Inconsistent behavior of comment writing above a group (Gaël
+    Bonithon)
+  - #2939 mkenums.py test fails on FreeBSD (Philip Withnall)
+  - #2951 Re-upgrade missing attribute debugs to criticals in GFileInfo (Philip
+    Withnall)
+  - #2952 Not clear that GPollableInputStream methods are undefined if
+    can_poll() returns FALSE (Philip Withnall)
+  - #2953 Missing docs for GOption (commandline parser) (Sam Thursfield)
+  - #2958 nbd server fails with glib 2.76.0
+  - #2960 GDebugControllerDBus wrong default in documentation (Philip Withnall)
+  - #2963 Probably wrong information regarding G_PLATFORM_WIN32 in
+    README.win32.md
+  - #2965 test_measure fails with coreutils 9.2 (Joan Bruguera)
+  - #2966 Multiple Definition Error When Generating gio/tests/test5.gresource
+    (Dan Yeaw)
+  - #2969 user docs: GLib.DateTime.format: broken highlighting (Philip Withnall)
+  - #2972 GtkFileLauncher: generated paths not recognized on Win32 (Luca Bacci)
+  - #2973 Build failed due to NULL pointer redefinition in C++ (Marco Trevisan
+    (Treviño))
+  - #2980 g_signal_handlers_block_matched does not work for G_SIGNAL_MATCH_ID
+    (Przemyslaw Gorszkowski)
+  - #2982 Build randomly fails with: 'gmodule/gmodule-visibility.h' file not
+    found (Marco Trevisan (Treviño))
+  - #2993 g_dbus_interface_skeleton_get_vtable misses transfer annotation and is
+    not introspectable
+  - #2997 g_assert_cmpuint() should display positive, not negative values (Eric
+    Blake)
+  - #3003 glib-compile-schemas failed on directory name with no Latin symbols
+    (Daniyar Tleulin)
+  - #3007 GOptionContext group headings missing colon at the end (Philip
+    Withnall)
+  - #3008 Adaptations for building with bionic libc under termux (Øyvind Kolås)
+  - #3020 Races in gio/tests/portal-support-snap* tests
+  - #3024 Possible stack overflow in gspawn on MacOS
+  - #3025 libpcre and libintl cannot be chosen to use the builtins
+  - #3027 action exporter fails in the presence of actions with maybe parameter
+    types (Matthias Clasen)
+  - #3028 gdbus-codegen should generate marshallers (Marco Trevisan (Treviño))
+  - #3030 Document GListModel requiring unique instance pointers from
+    GListModelInterface.get_item (Christian Hergert)
+  - #3034 futex based g_mutex_lock sometimes splatters errno with EAGAIN on
+    contended locks
+  - #3039 Build failure due to statx fields with NDK r25.c (Philip Withnall)
+  - #3040 gtester in custom_target() run against system rather than built
+    libglib during build
+  - !2824 gsignal: Reduce lock/unlock pairs and ensure we always work on valid
+    signal nodes
+  - !3146 Make GVariant/GHash opaque types compatible with CHERI
+  - !3235 gmain: Avoid some lock/unlock dance during g_main_context_iterate
+  - !3252 gmem: Add an inline definition of g_free() to automatically use
+    g_free_sized()
+  - !3289 Work around an UCRT issue with _wspawn() functions taking an envp
+    block
+  - !3306 gregistrysettingsbackend: Allow a different root key path
+  - !3308 doc: Workaround missing API index
+  - !3314 gmain: More explicitly document g_main_context_release() prereqs
+  - !3326 unicode: add tests for g_utf8_normalize() and empty strings
+  - !3333 build: Drop old .gitignore files from test directories
+  - !3335 meson: allow -Dlibelf=enabled without pkg-config
+  - !3337 gio-tool-info: Fix a duplicate attribute name in the UI
+  - !3340 meson: Move msvc_recommended_pragmas.h to a subdirectory
+  - !3341 g_utf8_normalize: don't read past the end of the buffer
+  - !3342 Add fuzzing harness for g_utf8_normalize()
+  - !3344 tools: Drop check-abis.sh script
+  - !3345 docs: Drop section about default branch renaming from README.md
+  - !3347 gsocket/inotify/gwakeup: Use SOCK_NONBLOCK and O_NONBLOCK to avoid
+    fcntl() syscalls where possible
+  - !3351 tests: Update Unicode normalisation tests from Unicode 15
+  - !3352 meson: Fix detection of a system-provided proxy-libintl
+  - !3353 [th/child-watch-waitpid] fix race with waitpid() and child watcher
+    sources
+  - !3356 build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags
+  - !3357 Make clang++ happier when using G_STATIC_ASSERT
+  - !3361 meson: Add glib_valgrind_suppressions variable to glib pkg-config file
+  - !3365 gwin32: Avoid use of function call with side effect in g_return_*
+    macro
+  - !3366 Add init macros for refcounting types
+  - !3367 actiongroup: Add a compiler warning
+  - !3371 Explicitly mark size parameter as (in)
+  - !3377 gsignal: Clarify documentation for GSignalMatchType matching
+  - !3378 build: Post-release version bump
+  - !3381 gtimer: Avoid doing anything on g_usleep (0)
+  - !3382 gsocket: Explicitly mark size parameter as (in)
+  - !3383 add g_timeout_add_seconds_once
+  - !3384 Test g_signal_handlers_disconnect_matched for G_SIGNAL_MATCH_ID match
+  - !3385 gio: fix build on older macOS SDKs
+  - !3388 appmonitor: Skip the test under OSX
+  - !3389 glib/tests/[rec-]mutex: Allow each thread to work
+  - !3390 Fix error format in gio/gunixconnection.c (part 2)
+  - !3392 gvariant: Fix doc for g_variant_new_object_path
+  - !3393 Fix small issues in docs
+  - !3395 gtask: Document that g_task_run_in_thread() uses a shared resource
+  - !3396 glib-unix: Improve documentation for g_unix_fd_source_new()
+  - !3397 gthreadedresolver: Switch to using a separate thread pool and support
+    timeouts
+  - !3398 Avoid having g_futex_simple() inadvertently modify errno
+  - !3399 meson: wrap html documentation generation with gtk_doc option
+  - !3400 restore error messages in gunixconnection while maintaining older
+    compiler support
+  - !3401 ci: Disable the Coverity CI job
+  - !3404 gtask: Track pending GTasks if G_ENABLE_DEBUG is defined
+  - !3405 gthreadedresolver: Remove some incorrect assertions
+  - !3406 gthreadpool: Clarify that item_free_func is not normally called
+  - !3407 gregistrysettingsbackend: Remove translatable pspec nick/blurb
+  - !3408 docs: Update/Drop txt documents from docs directory
+  - !3409 docs: Don’t ignore gunixfdlist.h when building docs on Windows
+  - !3410 tests: Add descriptions to environment tests
+  - !3416 gtestutils: Fix section marker in documentation
+  - !3418 docs: Add lb90 as a Windows maintainer
+  - !3419 docs: Update various broken/redirected links and fix list formatting
+  - !3420 gtestutils: print timing information per test case in TAP output
+  - !3421 glib/tests/fileutils:fix asserts when running as root
+  - !3422 Check for linux/netlink.h buildability
+  - !3423 gstring: add g_string_new_take
+  - !3425 gwin32networkmonitor: Fix returning address of local variable
+  - !3426 gdataset, gobject: Use atomic compare and exchange full to set
+    pointers
+  - !3429 Rename GTK+ to GTK (mostly comments and documentation)
+  - !3430 gobject_gdb.py: fix regression caused by bfbe7127d5
+  - !3431 gfile: Ensure loff_t is defined on FreeBSD
+  - !3435 Ignore g_task_print_alive_task() when introspecting GIO
+  - !3437 gobject_gdb.py: support gsignal fastpath and detect more marshallers
+  - !3438 gio: Check cancellable iterating local file enumerator
+  - !3439 gstring: Add `Since` marker to `g_string_new_take()`
+  - !3440 gutf8: Add a g_utf8_truncate_middle() function
+  - !3441 Allow proper introspection of GTypeValueTable
+  - !3442 gio: Add g_file_new_build_filenamev
+  - !3448 meson: try iconv in libintl lookup
+  - !3449 docs: Move README.win32.md to the docs folder and update
+    CONTRIBUTING.md
+  - !3450 gactionmap: Add g_action_map_remove_action_entries()
+  - !3453 docs: Use the type name as the section name for GKeyFile
+  - !3455 gfileinfo: add (type filename) annotation to symlink_target functions
+  - !3456 gmain: Document that g_steal_fd() preserves errno
+  - !3458 gstdio: Improve documentation of some functions as async-signal safe
+  - !3462 tests: Reduce thread and iteration count on CI for /thread/rec-mutex3
+  - !3463 ci: Disable the macOS CI
+  - !3465 gobject_gdb.py: adapt to recent gsignal changes
+  - !3466 resolver: Add space in documentations
+  - !3470 pcre subproject fixes: Allow fallback & static build
+  - !3471 gio-tool-mount: Add option to show progress when unmounting
+  - !3472 tests: Fix an intermittent timing error with testing g_usleep(0)
+  - !3477 gdbus-codegen: Fix some minor typos in the documentation
+  - !3484 docs: Fix a typo in the backports policy
+  - !3486 docs: Document issue and merge request triaging and review guidelines
+  - !3488 codegen: Use g_signal_emit to emit signals
+  - !3489 guniprop: fix param direction in g_unichar_get_mirror_char(), for
+    introspection
+  - !3490 gobject/tests: Fix running on 32-bit Windows
+
+* Translation updates:
+  - Bulgarian (Alexander Shopov)
+  - Chinese (China) (Boyuan Yang)
+  - English (United Kingdom) (Bruce Cowan)
+  - Galician (Fran Dieguez)
+  - Portuguese (Brazil) (Leônidas Araújo)
+  - Slovak (Dušan Kazik)
+  - Swedish (Anders Jonsson)
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.76.1, 2023-03-22
+==============================================
+
+* Fix build failures in third party C++ projects using `g_strdup()` via C++
+  qualified symbol lookup (#2936, work by Xi Ruoyao)
+
+* Downgrade critical warnings from `GFileInfo` about missing attributes to debug
+  messages, as it was affecting too many apps; the critical warnings will be
+  reinstated early in the 2.78 cycle, so apps should continue to fix their
+  ambiguous use of `GFileInfo` API (#2948, work by Philip Withnall)
+
+* Bugs fixed:
+  - #159 g_strstr_len() ignores haystack_len (Philip Withnall)
+  - #352 Docs for g_file_enumerator_next_files_async () are unclear about end
+    condition (Owen Taylor)
+  - #919 g_variant_dict_lookup is unclear about what happens on failure (Philip
+    Withnall)
+  - #2922 GWin32AppInfo: Missing NULL string check (Luca Bacci)
+  - #2936 Possible regression in 2.75.3 when used from C++ due to g_strdup
+    becoming a macro
+  - #2943 Meson fails TAP test when g_test_message is called before g_test_init
+    (Philip Withnall)
+  - #2948 gio list triggers 'GFileInfo created without …' warnings for trash,
+    smb and google-drive GVFS backends (Philip Withnall)
+  - !3241 inotify: Avoid empty root directory string
+  - !3315 tests: Change the time function used in the bookmark tests
+  - !3318 gmacros: Add GCC < 5 fallback for __always_inline__
+  - !3319 fuzzing: do not build tests if build_tests is false
+  - !3321 tests: only build messages-low-memory if RTLD_NEXT is available
+  - !3323 tests: Fix timeout sources in gdbus-auth and gapplication tests
+  - !3324 tests: Reduce number of iterations in queue test
+  - !3325 gdesktopappinfo: Add a missing NULL check
+  - !3330 tests: Check a few results in strfuncs tests
+  - !3338 gfileinfo: Temporarily downgrade missing attribute criticals to debugs
+
+* Translation updates:
+  - French (Guillaume Bernard)
+  - Persian (Danial Behzadi)
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.76.0, 2023-03-10
+==============================================
+
+* Fix several regressions in handling `GFileInfo` attributes (#2932, #2934,
+  work by Ondrej Holy and Philip Withnall)
+
+* Bugs fixed:
+  - #2932 ETAG_VALUE not set in GFileInfo when requested (Philip Withnall)
+  - #2934 File attributes are not set when their value is FALSE/NULL (Philip
+    Withnall)
+  - !3309 gfile: Fix file size detection when copying on btrfs
+  - !3310 glocalfileinfo: Mark the lost+found dir as hidden again
+  - !3311 glocalfileinfo: Ensure that is-backup is always set
+
+* Translation updates:
+  - Bulgarian (Alexander Shopov)
+  - Catalan (Jordi Mas i Hernandez)
+  - Czech (Marek Černocký)
+  - German (Tim Sabsch)
+  - Korean (Changwoo Ryu)
+  - Polish (Piotr Drąg)
+  - Russian (Aleksandr Melman)
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.75.4, 2023-03-03
+==============================================
+
+* Emit a critical warning when acquiring the notification queue during GObject
+  finalization. A type's `finalize()` implementation should not call public
+  API that emits property notifications. (!3119, work by Marco Trevisan and Emmanuele Bassi)
+
+* Bugs fixed:
+  - #2720 Fails to create resource.o with LLVM ld
+  - #2905 [MSVC] gstring.h: warning C4141: 'inline': used more than once
+  - #2907 g_file_info_get_name returns NULL in contradiction to docs (Philip
+    Withnall)
+  - #2913 `glib:glib / error` fails with Glibc-2.37 (Philip Withnall)
+  - #2915 Python tests fail on Windows when an environment variable contains
+    non-ASCII characters (Luca Bacci)
+  - #2916 gdbus: Never buffer reads during server authentication
+  - #2918 2.75.3: array-test fails on big-endian CPUs (Simon McVittie)
+  - #2919 2.75.3: g_string_append_len_inline: error: implicit conversion changes
+    signedness
+  - #2924 Use-after-free of GDBusMethodInvocation in GDBusInterfaceSkeleton
+    (Philip Withnall)
+  - !3168 GWin32AppInfo: Retrieve display name for UWP / Packaged apps
+  - !3273 Revert "Revert "tests: Temporarily disable socket test due to a kernel
+    bug""
+  - !3275 tests: Add a -Wsign-conversion test for gstring.h
+  - !3279 tests: Don’t run the GObject performance tests under valgrind
+  - !3280 ci: Use Meson 1.0.0 on Windows and macOS CI builds
+  - !3281 tests: Remove custom printerr logging from live-g-file
+  - !3282 spawn-test: Use an absolute path to the system sort.exe on Windows
+  - !3283 Make sure new file descriptors have close-on-exec flag set on them in
+    a race-free way
+  - !3284 Allow passing a `NULL` item to `g_list_store_find_with_equal_func()`
+  - !3288 spawn-test: Fix running on non-English Windows
+  - !3290 g_type_name: Fix return annotation
+  - !3292 Close-on-exec flag few missed places
+  - !3294 gio/tests/cxx.cpp: fix missing sentinel for musl
+  - !3295 tests: Add some missing g_thread_join() calls to onceinit test
+  - !3296 gdbusconnection: Explicitly destroy an idle source on cleanup
+  - !3299 Update the NEWS file
+  - !3301 GObject: Add nullable annotations
+  - !3304 tests: Skip assert-msg-test.py if gdb fails
+  - !3305 Fix a memory leak in g_strerror
+
+* Translation updates:
+  - Basque (Asier Sarasua Garmendia)
+  - Danish (Alan Mortensen)
+  - Galician (Fran Dieguez)
+  - Georgian (Ekaterine Papava)
+  - German (Tim Sabsch)
+  - Hebrew (Yaron Shahrabani)
+  - Hungarian (Balázs Úr)
+  - Indonesian (Kukuh Syafaat)
+  - Lithuanian (Aurimas Černius)
+  - Portuguese (Hugo Carvalho)
+  - Serbian (Марко Костић)
+  - Slovenian (Matej Urbančič)
+  - Spanish (Daniel)
+  - Swedish (Anders Jonsson)
+  - Turkish (Sabri Ünal, Emin Tufan Çetin)
+  - Ukrainian (Yuri Chornoivan)
+
+
+Overview of changes in GLib 2.75.3, 2023-02-13
+==============================================
+
+* Drop the implementation of GSlice, and make the API use the system `malloc()`
+  internally (#1079) (based on investigation work by multiple people)
+
+* Use a thread-spawning thread to keep thread scheduler settings consistent;
+  fixes GThreadPool critical warnings due to failing to set scheduler settings
+  in some situations (#2769, work by Sebastian Dröge and others)
+
+* GIR annotation improvements for multiple APIs (#2827, #2894, #2895, #2897,
+  !3198, !3234, !3236, !3238, !3245, !3266, work by multiple people)
+
+* Optimise printing of nested maybes in `g_variant_print()` (#2862, work by Philip Withnall)
+
+* Use `tap` test protocol within GLib, and support TAP 13/14 (!3140, work by Marco Trevisan)
+
+* Fix a regression in glib-compile-schemas 2.75.2 causing schemas and override
+  files to be sorted incorrectly (!3188, spotted by John Wudrick, work by Philip Withnall)
+
+* Support per-desktop overrides in `GSettingsAction` (!3193, work by Philip Withnall)
+
+* Various optimisations to `GString` (!3199, work by Matthias Clasen and Marco Trevisan)
+
+* Reduce allocations in message printing functions if there’s nothing to format (!3205, work by Marco Trevisan)
+
+* Add inline version of `g_strdup()`, allowing the compiler to do `NULL` folding
+  and constant folding on `strlen()` calls (!3209, work by Marco Trevisan)
+
+* Add a `GPathBuf` API for building and manipulating file paths (!3216, work by Emmanuele Bassi)
+
+* Add `g_string_free_and_steal()` and use it to warn on unused results from
+  `g_string_free (_, FALSE)` (!3219, !3226, work by Matthias Clasen and Sergey Bugaev)
+
+* Add `g_free_sized()` and `g_aligned_free_sized()` to mirror the upcoming
+  `free_sized()` function in C23; use these if porting away from `g_slice_free()`
+  (!3231, work by Philip Withnall)
+
+* Fix underspecified dependencies on generated headers in `meson.build`, which
+  should reduce spurious build failures (!3260, work by Eli Schwartz)
+
+* Bugs fixed:
+  - #1079 Investigate dropping or deprecating the GSlice allocator (Natanael
+    Copa)
+  - #2769 GThreadPool crashes with: Failed to set scheduler settings: Operation
+    not permitted (Sebastian Dröge)
+  - #2827 Callback parameters get wrong attributes in gir files
+  - #2862 fuzz_variant_text: Timeout in fuzz_variant_text when printing nested
+    maybes
+  - #2876 g_find_program_for_path is public ABI but not declared in a public
+    header (Philip Withnall)
+  - #2877 glib/tests/array-
+    test.c:1828:pointer_array_new_from_null_terminated_array_from_gstrv:
+    'g_ptr_array_index (gparray, 4)' should be NULL (Simon McVittie)
+  - #2881 Invalid read of size 4 in get_matched_substring_number (Philip
+    Withnall)
+  - #2883 g_file_set_contents fails on mingw64 with "no error" if file size >
+    INT_MAX (CCode)
+  - #2890 g_string_append() macro evaluates arguments multiple times (Marco
+    Trevisan (Treviño))
+  - #2891 Memory leak in "gio/win32/gwin32fsmonitorutils.c" (Philip Withnall)
+  - #2892 Memory leak in "gio/gwin32mount.c" (Philip Withnall)
+  - #2894 g_value_take_string: wrong ownership transfer info in GIR (Lukáš
+    Tyrychtr)
+  - #2895 g_io_channel_get_line_term: wrong GIR (Bart Jacobs)
+  - #2897 g_time_zone_adjust_time: GIR says gint64 but it's gint64* (Bart
+    Jacobs)
+  - #2898 g_print replaces non-ascii characters with question mark
+  - #2900 msys2-clang64: g_spawn_[a]sync() fails in clang builds when envp is
+    not NULL
+  - #2901 g_app_info_get_executable doesn't work well on latest Ubuntu with
+    Firefox installed as snap
+  - #2908 Crash when creating GtkTextView with G_DEBUG=gc-friendly (Marco
+    Trevisan (Treviño))
+  - #2914 Should GPathBuf split on both directions of slashes on Windows? (Simon
+    McVittie)
+  - GNOME/gimp#9094 devel: None of the extensions and plugins load in Clang
+    builds
+  - !3140 meson: Use 'tap' test protocol and support TAP 13/14
+  - !3184 build: Don't overwrite build variables
+  - !3185 Include gobject-visibility.h in glib-types.h
+  - !3187 tests/desktop-app-info: fix stack-use-after-scope
+  - !3188 glib-compile-schemas: Fix typo in comparison function
+  - !3189 docs: Fix return type in cmpint
+  - !3191 tests: Improve error message if setting max processes to 1 fails
+  - !3192 garray: Avoid calling memcpy with no items
+  - !3193 gsettings: Support per-desktop overrides in GSettingsAction
+  - !3196 gio/tests/file.c:Fix expectations when running as root
+  - !3198 Fix a couple of `closure` annotations
+  - !3199 Some GString optimizations
+  - !3203 GTask: Document issues
+  - !3205 gmessages: Avoid strings duplication if there's nothing to format
+  - !3206 tests: Add a test print to spawn-test on Windows
+  - !3207 tests: Fix a minor leak in the GString tests
+  - !3209 gstrfuncs: Add inline version of g_strdup()
+  - !3216 Add GPathBuf
+  - !3219 Add g_string_free_and_steal
+  - !3221 TAP: some further cleanups
+  - !3223 Add a few suppressions to glib.supp and fix a minor bug in
+    gapplication test
+  - !3224 gtestutils: Fix a potential NULL pointer dereference in g_test_log()
+  - !3225 tests: Temporarily disable socket test due to a kernel bug
+  - !3226 Make g_string_free (_, FALSE) warn on unused result
+  - !3231 gmem: Add g_free_sized() and g_aligned_free_sized()
+  - !3234 GMainContext: Use nullable context in docs (and in some missing code)
+  - !3236 g_regex_escape_string: bad GIR: utf8[] -> utf8
+  - !3238 Fix GIR: gunichar -> gunichar[]
+  - !3242 GAtomicArray: Ensure metadata does not misalign the payload
+  - !3243 Allow using msort_r CHERI-enabled architectures
+  - !3245 gio: converter: Forbid null out arguments
+  - !3246 tests: Fix a few minor leaks in gdbus-example-peer
+  - !3247 tests: Fix a minor leak in the cxx string append tests
+  - !3248 timezone: Fix a compiler warning
+  - !3249 gstring: Avoid warnings from inline functions
+  - !3250 ci: Temporarily only run the FreeBSD 13 CI on a schedule
+  - !3251 Revert "gtype: Use the system allocator on UNIX" and use g_free_sized
+    instead
+  - !3256 Remove n_preallocs field from InstanceData
+  - !3258 Revert "ci: Temporarily only run the FreeBSD 13 CI on a schedule"
+  - !3259 gmessages: use g_atomic_pointer to access handlers for
+    g_print()/g_printerr()
+  - !3260 fix underspecified dependencies on generated headers
+  - !3262 Add a (temporary) assertion that sizeof(gsize) == sizeof(guintptr)
+  - !3263 Revert "glib-init: Add more static assertions for gintptr, guintptr"
+  - !3265 fileutils: Make some sample code detect symlinks as intended
+  - !3266 Avoid some warnings from GObject-Introspection
+  - !3268 po: Add missing header file to POTFILES.in
+
+* Translation updates:
+  - Belarusian (Vasil Pupkin)
+  - Galician (Fran Dieguez)
+  - Georgian (Ekaterine Papava)
+  - Hebrew (Yosef Or Boczko)
+  - Indonesian (Kukuh Syafaat)
+  - Portuguese (Hugo Carvalho)
+  - Russian (Aleksandr Melman)
+  - Turkish (Sabri Ünal, Emin Tufan Çetin)
+  - Ukrainian (Yuri Chornoivan)
+
+
+Overview of changes in GLib 2.75.2, 2023-01-06
+==============================================
+
+* Add `g_ptr_array_sort_values()` and `g_ptr_array_sort_values_with_data()` APIs
+  (work by Marco Trevisan) (!3155)
+
+* Some fixes for activation of UWP apps on Windows (work by Luca Bacci) (#2843, !3167)
+
+* Support Markdown output from `gdbus-codegen` (work by Guido Günther) (!3171)
+
+* Bugs fixed:
+  - #2871 Leak in g_find_program_for_path() (Philip Withnall)
+  - #2843 gtk_show_uri can't open browser on MSYS2 on Windows (Luca Bacci)
+  - #2857 Grammar issue in documentation glib stpcpy (Peter Bloomfield)
+  - !3155 garray: Add g_ptr_array_sort_values[_with_data]() wrappers
+  - !3162 gobject: Add a missing NULL check for the return from
+    lookup_type_node_I()
+  - !3167 GWin32AppInfo: Fixes for UWP (packaged) apps activation
+  - !3169 GLocalFile: Delete redundant error saving statement
+  - !3170 GLocalFile: add error handle for trash info file writing
+  - !3171 codegen: Support markdown suitable for gi-docgen
+  - !3173 gdesktopappinfo: Drop an unnecessary NULL check
+  - !3174 garray: Add some additional length assertions
+  - !3175 codegen: Check parameter before calling its interface method
+  - !3177 Various fixes for how we interact with subproject dependencies
+  - !3178 glocalfileinfo: Don't reset mtime tv_sec when setting tv_usec
+  - !3181 INSTALL.md,README.win32.md: Actualize links
+
+* Translation updates:
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.75.1, 2022-12-21
+==============================================
+
+* Add new `GFileInfo` properties for large thumbnails (work by Matthias Clasen) (#621)
+
+* Fix missing input validation in `GDBusMenuModel` (work by Lars Uebernickel) (#861)
+
+* Change default `g_desktop_app_info_search()` algorithm to include substring
+  matches (work by Alynx Zhou) (#1152)
+
+* Various GVariant security fixes when handling untrusted data (work by
+  William Manley, Philip Withnall, Simon McVittie) (#2121, #2540, #2794, #2797,
+  #2839, #2840, #2841)
+
+* Add support for XDG Activation protocol in `GAppLaunchContext` (work by
+  Ilya Fedin) (#2709)
+
+* Return `application/x-zerosize` rather than `text/plain` as content type for
+  empty files (work by Philip Withnall) (#2777)
+
+* Deprecate `-Druntime_libdir` configure option because it was unused (work by
+  Philip Withnall) (#2786)
+
+* Check for snap plugs when accessing portals (work by Robert Ancell) (!3020)
+
+* Add `GArray` and `GPtrArray` constructors to take or copy C arrays (work by
+  Marco Trevisan) (!3128)
+
+* Add `GHashTable` methods to get and steal hash table keys and values as
+  `GPtrArray`s (work by Marco Trevisan) (!3130)
+
+* Change the default D-Bus system bus socket address from
+  `/var/run/dbus/system_bus_socket` to `/run/dbus/system_bus_socket`, in line
+  with changes in dbus.git. This can now be overridden by passing
+  `-Druntime_dir=/some/path` at configure time — the default is `/run`, which
+  should work for all users except distributions where `/run` is not equivalent
+  to `/var/run`. OS distributors should check that this configured path matches
+  the runtime directory configured for their D-Bus daemon. (work by
+  Roman Stratiienko, Philip Withnall) (!3095, !3101)
+
+* Bugs fixed:
+  - #621 file-info: catch thumbnail files in large directory as well (Matthias
+    Clasen)
+  - #861 insufficient input validation in GDBusMenuModel (Lars Uebernickel)
+  - #1152 Application search algorithm (g_desktop_app_info_search()) should use
+    fuzzy matching (Alynx Zhou)
+  - #1904 gaction: remote triggered crashes
+  - #2121 GVariant deserialisation does not match spec for non-normal data
+    (Philip Withnall, William Manley)
+  - #2540 Parsing serialized GVariants can blow up run-time and memory (Philip
+    Withnall)
+  - #2709 Add support for XDG_ACTIVATION_TOKEN/XDG Activation protocol in
+    GAppLaunchContext (Ilya Fedin)
+  - #2777 Return application/x-zerosize for empty file content types rather than
+    text/plain (Philip Withnall)
+  - #2786 runtime_libdir and iconv options documented and exposed but not
+    effective? (Philip Withnall)
+  - #2793 Introspection annotations for g_clear_pointer() and g_clear_fd() might
+    not be correct (Philip Withnall)
+  - #2794 GVariant offset table entry size is not checked in is_normal() (Philip
+    Withnall)
+  - #2797 g_variant_byteswap() can take a long time with some non-normal inputs
+    (Philip Withnall)
+  - #2809 g_str_equal switched to stricter API (typing) (Philip Withnall)
+  - #2811 Internal inotify symbols exposed in 2.75.0 ABI (Simon McVittie)
+  - #2812 CI failing on macOS: -Werror,-Wmissing-field-initializers (Simon
+    McVittie)
+  - #2820 g_str_equal: New macro version breaks compilation in C++ projects
+    (Philip Withnall)
+  - #2821 GObject webpage documentation is mis-formatted during generation
+    (Emmanuele Bassi)
+  - #2835 gio/gapplication test fails with test_dbus_activate: assertion failed
+    (n_activations == 2): (1 == 2) (Philip Withnall)
+  - #2836 Conditional jump on uninitialised value in spawn-singlethread (Philip
+    Withnall)
+  - #2837 Assertion failure in contexts test (Philip Withnall)
+  - #2839 [bisected] GVariant test regression on big-endian architectures (Simon
+    McVittie)
+  - #2840 fuzz_variant_binary_byteswap: Heap-buffer-overflow in
+    g_variant_serialised_get_child (Philip Withnall)
+  - #2841 fuzz_variant_text: Timeout in fuzz_variant_text (Philip Withnall)
+  - #2845 MSVC: Build failure with g_array_append_val() in C++ mode
+  - #2846 Follow-up from "garray: Add support adding literal values" — doesn’t
+    work with clang (Emmanuele Bassi)
+  - #2852 alpine/musl: catching signals from a subprocess triggers
+    GLib:ERROR:../glib/gmain.c:5569:siginfo_t_to_wait_status: code should not be
+    reached (Philip Withnall)
+  - !385 gtask: Warn if a GTask is finalised without returning
+  - !2479 glib/spawn: check user source_fds doesn't contain private fds
+  - !2728 gtype: Speed up type checking for final types
+  - !2764 GCancellable: Ensure it is always cancelled on connect callback
+  - !2886 gtestutils: Use $G_TEST_TMPDIR as temporary directory when defined
+  - !2895 Expose C and C++ standard versions and add macros to check them
+  - !2917 meson: Use gnome.mkenum_simple()
+  - !2992 glib/tests: Add test to check that we abort on low-memory
+  - !3020 portal: Check for snap plugs before accessing portals
+  - !3042 gdesktopappinfo: Fail early if trying to launch an invalid executable
+    and always use desktop Path and context $PATH
+  - !3064 ci: Exclude copylibs and fuzz tests from code coverage
+  - !3065 tests: Add some trivial tests for g_thread_init()
+  - !3067 tests/meson.build: do not use can_run_host_binaries()
+  - !3068 gio: Fix missing visibility header dependency
+  - !3070 type-flags test: Force G_ENABLE_DIAGNOSTIC=1 to be set
+  - !3073 Misc docs fixes and test improvements in GAction and
+    GNotificationBackend
+  - !3075 gmodule: Fix redeclaration of symbol
+  - !3076 gspawn: Ignore invalid FDs when using safe_fdwalk()
+  - !3077 build: Bump Meson dependency to 0.64.0
+  - !3078 build: Move -Wnonnull flag to meson.build
+  - !3079 giochannel: Clarify assertions in g_io_channel_write_chars()
+  - !3080 A few test improvements for scan-build
+  - !3081 gthreadpool: Mark an explicit leak as to be ignored
+  - !3083 tests: Remove a manual timeout from desktop-app-info test
+  - !3086 gmacros: Use C++ namespaces attribute specifier sequences for msvc
+  - !3088 tests: Add G_TEST_OPTION_ISOLATE_DIRS to almost all gdbus tests
+  - !3089 Revert dependency bump to use Meson 0.64
+  - !3091 Fix doc typo in g_dbus_connection_signal_subscribe
+  - !3092 Fix gmodule/COPYING symlink path
+  - !3095 gdbusaddress: Form default system dbus path using meson definitions
+  - !3097 garray: Add assertions to help static analysis
+  - !3098 gobject: Use compare and exchange full to re-read old ref value
+  - !3099 gsocketcontrolmessage: add nullable annotation to deserialize return
+  - !3100 gsimpleproxyresolver: Make explicit that a port is needed for
+    HTTP/HTTPS
+  - !3101 gdbusaddress: Use runstatedir rather than localstatedir
+  - !3103 gclosure: Documentation improvements around floating closures
+  - !3105 gsocket: use socklen_t in more places to fix build under cygwin
+  - !3106 gobject: Check for valid ref counting via g_return_if_fail
+  - !3107 gdesktopappinfo: Group search results by both categories and match
+    types
+  - !3108 gwakeuptest: Do not rely on alarm() to stop tests on timeout
+  - !3112 docs: Remove a stray > in the glib-mkenums man page
+  - !3115 ci: Don’t fail if testlog-unstable_tests.junit.xml doesn’t exist on
+    MSVC
+  - !3116 docs: Remove HACKING
+  - !3117 tests: fix assert-msg-test with custom gdbinit
+  - !3119 Improve notification queue warning
+  - !3120 glib/gthread-posix: Conditionally use `futex` and/or `futex_time64`
+    syscalls...
+  - !3124 More gobject performance tests
+  - !3127 docs: Update SECURITY to stop mentioning a deprecated mailing list
+  - !3128 garray: Add more G(Ptr)Array constructors to take or copy C arrays
+  - !3129 garray: Add support adding literal values
+  - !3130 ghash: Add APIs to get (and steal) hash table keys and values as
+    GPtrArray
+  - !3132 gtestutils: Check for failure to setenv() and return
+  - !3139 gtype: avoid "-Wcast-align" warning with optimized
+    G_TYPE_CHECK_INSTANCE_CAST()
+  - !3141 tests/slice-concurrent.c: avoid using rand() from multiple threads
+  - !3142 tests/gdbus-method-invocation: Fix missing g_variant_new() argument
+  - !3144 gspawn.c: prefer close_range() on FreeBSD if available
+  - !3145 tests/gvariant.c: ensure posix_memalign alignment argument is correct
+  - !3147 ci: Temporarily only run the FreeBSD 13 CI on a schedule
+  - !3148 ghash: Use unsigned types for number of nodes and occupied ones
+  - !3151 Revert "ci: Temporarily only run the FreeBSD 13 CI on a schedule"
+  - !3152 tests: Fix stall/deadlock in slice-concurrent on macOS CI
+  - !3156 gobject: Some GValue setting code cleanups
+  - !3157 gthread-posix: need to #include <errno.h>
+  - !3159 gmenuexporter: Fix warning of unused n_items when building with
+    G_DISABLE_ASSERT
+
+* Translation updates:
+  - Interlingue (Olga Smirnova)
+  - Serbian (Мирослав Николић)
+
+
+Overview of changes in GLib 2.75.0, 2022-11-10
+==============================================
+
+* Update Unicode data to version 15 (work by Marco Trevisan) (#2735)
+
+* Fix various build failures in different situations
+  (work by Kjell Ahlstedt, Marco Trevisan (Treviño)) (#2740, #2758, #2759, #2766)
+
+* Fix over-eager deprecated property warnings for construct properties
+  (work by Simon McVittie) (#2748)
+
+* Fix a crash calling `g_param_value_is_valid()` on a `GParamSpecParam` (work by
+  Emmanuele Bassi) (#2770)
+
+* Fix floating `GVariant` leaks with GObject properties (work by Matthias Clasen) (#2774)
+
+* Add inline optimised version of `g_str_equal()` (work by Xavier Claessens) (#2775)
+
+* Add inline optimised version of `g_str_has_{prefix,suffix}()` (work by Emmanuel Fleury) (#24)
+
+* Fix `GVariant` type depths checks on text format variants (work by Philip Withnall) (#2782)
+
+* Fix regression with int64 and double hashing functions on big-endian architectures
+  (work by Simon McVittie) (#2787)
+
+* Build the API documentation only when building GLib as a shared library (work
+  by Emmanuele Bassi) (!2896)
+
+* Ignore weird `/etc/localtime` configurations generated by toolbx (work by Ray Strode) (!2973)
+
+* Avoid `EINTR` races when closing FDs in `g_spawn_*()` (work by Thomas Haller) (!2988)
+
+* Deprecate `G_MODULE_SUFFIX` and improve `g_module_open()` to automatically find
+  modules better on different platforms (work by Nirbheek Chauhan) (#520, #1413)
+
+* Soft-deprecate sized integer types in favour of C99 `stdint.h` types (work by Simon McVittie) (#1484)
+
+* Correctly mark sshfs file systems as `G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE` (work by Philip Withnall) (#2726)
+
+* Add `g_set_string()` function for setting strings simply (work by Christian Hergert) (#2747)
+
+* Add support for `xdg-terminal-exec` for handling desktop applications using
+  `Terminal=true` (work by Max Gautier) (!2839)
+
+* Change various configure-time defaults for cast checks and related
+  (work by Michael Catanzaro) (!2850, !2894)
+
+* Set Meson’s `install_tag` on installed files (work by Xavier Claessens) (!2905)
+
+* Add `G_TYPE_FLAG_DEPRECATED` for tagging deprecated `GType`s/`GObject`s
+  (work by Matthias Clasen) (!2993)
+
+* Add `g_clear_fd()` and `g_autofd` for automatically closing FDs when exiting a
+  scope (work by Simon McVittie) (!3007)
+
+* Convert GVariant Specification to reStructuredText and host it at
+  https://developer.gnome.org/documentation/specifications/gvariant-specification-1.0.html
+  (work by Philip Withnall) (!3044)
+
+* Bugs fixed:
+  - #16 gspawn.c file descriptor handling (Emmanuel Fleury, Ray Strode)
+  - #19 Workaround dlopen(NULL, 0) brokenness
+  - #24 inlined g_str_has optimisations (Emmanuel Fleury)
+  - #333 Make GLib valgrind friendly (Marco Trevisan (Treviño))
+  - #520 g_module_build_path builds incorrect paths on macOS and Windows (MSVC)
+    (Nirbheek Chauhan)
+  - #1211 macros: generate uniq variable name in _G_BOOLEAN_EXPR()/G_LIKELY()
+    (Thomas Haller)
+  - #1413 Meson build defines G_MODULE_SUFFIX to `dylib` on macOS but autotools
+    uses `so` (Nirbheek Chauhan)
+  - #1484 Deprecate sized integer types in favour of C99 stdint.h (Simon
+    McVittie)
+  - #2622 GThreadedResolver incorrectly expands domain names in SRV records
+    (Philip Withnall)
+  - #2726 G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE not set for sshfs (Philip Withnall)
+  - #2735 Update unicode data to version 15
+  - #2740 gio-launch-desktop: clang compiler can't compile with commit 813ce7f0b
+    (Kjell Ahlstedt)
+  - #2742 glib:gio / file test fails after update to 2.73.3. (Marco Trevisan
+    (Treviño))
+  - #2747 Add g_set_string for simplified and correct property setters
+    (Christian Hergert)
+  - #2748 construct properties always trigger the deprecated property warning
+    (Simon McVittie)
+  - #2753 Infinite recursion on ENOMEM in g_vasprintf() (Philip Withnall)
+  - #2754 `glib / spawn-test` fails with non-English locale (Philip Withnall)
+  - #2758 gmessages.c compile failure with -Werror=unused-result (Marco Trevisan
+    (Treviño))
+  - #2759 gosxcontenttype.m compile failure with -Werror=declaration-after-
+    statement (Marco Trevisan (Treviño))
+  - #2766 glocalfileinfo.c compile failure when utimensat() not available (=
+    MacOS)
+  - #2767 GFileInfo fails to find x-large and xx-large thumbnail paths (Marco
+    Trevisan (Treviño))
+  - #2770 Random crashes with GLib 2.74.0 (Emmanuele Bassi)
+  - #2774 Floating GVariant leaks since 2.73.1 in g_object_set() (Matthias
+    Clasen)
+  - #2775 Add an inline version of g_str_equal (Xavier Claessens)
+  - #2782 GVariant type depth not checked on typedecls in text format variants
+    (Philip Withnall)
+  - #2783 Enable no-interrupt close() on macOS
+  - #2784 Remove workaround to avoid false-positive -Werror=nonnull in
+    g_str_has_*() macro versions
+  - #2785 Invalid FD assertion in g_close() triggers test failures on macOS (Ray
+    Strode)
+  - #2787 new int64, double hash functions always hash to 0 on big-endian (Simon
+    McVittie)
+  - #2791 function name typo in comment explaining the private struct memory
+    layout (gtype.c) (sunce)
+  - #2795 [regression] gnome-keyring-daemon uses 100% CPU with glib-2.74.1 (Ray
+    Strode)
+  - #2796 _g_clear_fd_ignore_error() breaks with GLIB_VERSION_MAX_ALLOWED (Simon
+    McVittie)
+  - #2798 msys2-clang64 fails to compile cxx tests on versions < 11 (Marco
+    Trevisan (Treviño))
+  - #2799 Wrong GTask tag on error return path in
+    g_proxy_resolver_lookup_async() (Michael Catanzaro)
+  - #2800 fileutils test regression on vs2017-x64 builds:
+    appcrt\lowio\commit.cpp(19) : Assertion failed: (_osfile(fh) & FOPEN)
+  - #2802 Remove G_OS_DARWIN in favour of platform-specific defines (Philip
+    Withnall)
+  - #2805 g_task_set_name() should not use g_task_set_static_name() unless
+    permitted by GLIB_VERSION_MAX_ALLOWED (Michael Catanzaro)
+  - #2807 ../glib/gstrfuncs.h:186:41: error: argument 1 null where non-null
+    expected [-Werror=nonnull] (Ray Strode)
+  - !2799 Use the system allocator on UNIX when creating GTypeInstances
+  - !2839 Add support for xdg-terminal-exec for handling desktop applications
+    using 'Terminal=true'
+  - !2848 giomodule: Automatically detect modules on macOS
+  - !2850 Automatically disable cast checks when building with optimization
+  - !2852 Replace most GObject warnings with criticals
+  - !2857 glib-mkenums: Specify output encoding as UTF-8 explicitly for non-
+    English locale
+  - !2864 gatomic: fix the atomic compare_and_exchange macros on older C++
+    standard versions
+  - !2866 tests: skip g-file-info test if atime unsupported
+  - !2867 tests: skip shared libs if default_library=static
+  - !2869 task: Don't overwrite source names
+  - !2880 gbacktrace: Don't truncate gdb output
+  - !2884 tests/desktop-app-info: Add tests to verify if launching with terminal
+    works
+  - !2885 tests/desktop-app-info: Use unique temporary paths for action files
+  - !2889 Run tests with G_ENABLE_DIAGNOSTIC=1
+  - !2892 tests/unix-streams: Free the cancelled error on cancelled cancellable
+  - !2894 Disable cast checks in plain builds
+  - !2896 Build API docs only with shared libraries
+  - !2899 gio: make g_task_get_cancellable return value (nullable)
+  - !2901 glocalfileoutputstream: Do not double-close an fd on unlink error
+  - !2903 docs: Fix markup error in code blocks for "DEPRECATED" macros
+  - !2904 tests: Only run g_error_new_valist() programmer error test on glibc
+  - !2905 meson: Set install_tag remaining installed files
+  - !2907 gthread-win32: Fix conversion error from pointer to integer
+  - !2911 glocalfileinfo: In set_mtime_atime(), don't use utimensat() if it's
+    not available
+  - !2913 gregex: Use pcre2 error messages if we don't provide a specific one
+  - !2915 Consider the GLogField.length of "MESSAGE"/"GLIB_DOMAIN" fields in
+    g_log_writer_format_fields()
+  - !2916 Update version in the docs to 2.74.1 for the fixed handling of...
+  - !2920 gregex: Allow G_REGEX_JAVASCRIPT_COMPAT in compile mask
+  - !2922 ci: Conform to Python's coding style
+  - !2924 Optimize the implementation of `g_double_hash`
+  - !2928 build: Let Meson figure out Python installation
+  - !2931 gdatetime: add missing g_return_() check in g_date_time_format_iso8601
+  - !2933 Fix style warning in gvariant.c
+  - !2936 Fix symbol visibility macros on Windows
+  - !2937 gicon: Add introspection for to_tokens / from_tokens vfunc's
+  - !2938 gdatetime: add NULL guard in g_date_time_new_now()
+  - !2939 gobject/tests/param: Add unit test for handling invalid NULL param
+    spec
+  - !2942 gbookmarkfile: Add copy function and define it as boxed type for
+    introspection
+  - !2945 gmessages: Add missing trailing newline in fallback log handler
+  - !2946 tests: Check the return value of fwrite() in a test
+  - !2947 gspawn: avoid race due to retry with EINTR on close()
+  - !2948 ghash: document g_hash_table_steal_extended() behavior for sets
+  - !2949 doc: Correctly annotate g_async_queue_push()
+  - !2951 meson: Don't explicitly disable mixed declarations and statements
+  - !2952 Various win32 test fixes
+  - !2953 build: Post-release version bump to 2.75.0
+  - !2954 tools: Fix code style warnings in gen-visibility-macros.py
+  - !2955 gtimezone: Reject weird /etc/localtime configurations
+  - !2956 gstrfuncs: Fix a compiler warning in g_strerror()
+  - !2957 Fix include order of glib-visibility.h
+  - !2959 Some leaks fixes
+  - !2961 tests: Remove an unnecessary sleep from desktop-app-info test
+  - !2963 tests: Fix race condition on cancellation in unix-streams test
+  - !2964 gstdio: fail assertion in g_close() for invalid file descriptor
+    (EBADF)
+  - !2965 ghash: comment g_hash_table_steal_extended() about not destroying
+    key/value
+  - !2967 Fix build when G_DISABLE_CAST_CHECKS is defined to empty string
+  - !2968 tests: Fix minor race in desktop-app-info terminals test
+  - !2969 tests/desktop-app-info: Make sure scripts writes to the right end of
+    the pipe
+  - !2970 Fix GIOModule regression from !2959
+  - !2972 tests: Temporarily disable desktop-app-info terminal test on FreeBSD
+  - !2976 Fix a couple of minor Coverity issues
+  - !2977 gstdio: Temporarily disable g_close() warning on macOS
+  - !2978 A couple of test fixes on OS X
+  - !2979 gtask: Use unsigned bit-field struct values to avoid warnings
+  - !2981 meson: Define G_OS_DARWIN when compiling under OSX or iOS
+  - !2984 tests: Fix code style in Python files to satisfy black and flake8
+  - !2985 ci: Do not store docs artifacts
+  - !2987 meson, ci: Support tests that can fail under certain conditions
+  - !2990 gio/tests/g-file-info: don't assume million-in-one events don't happen
+  - !2991 glib, gmodule, gobject: Add generated headers to the lib dependency
+  - !2993 Add G_TYPE_FLAG_DEPRECATED
+  - !2997 docs: Mention platform-specific predefined macros
+  - !2999 Soft-deprecate G_VA_COPY in favour of va_copy
+  - !3000 docs: Stop claiming that gsize is wide enough to hold a pointer
+  - !3001 Improve documentation and static assertions around g(s)size,
+    g(u)intptr
+  - !3002 docs: Soft-deprecate G_STRUCT_OFFSET in favour of offsetof
+  - !3003 docs: Soft-deprecate types that are just aliases for a standard C type
+  - !3004 build: Mark the g-file-info test as succeeding
+  - !3005 Fix sandbox escape in GDBusServer
+  - !3007 gstdio: Add g_clear_fd() and g_autofd
+  - !3008 gio/gdesktopappinfo: Free the wrapped argv array on launch failure
+  - !3009 gtimezone: Fix symlink checks on relative link targets
+  - !3011 meson: Cleanup and fix include files paths, using base path without
+    repetitions
+  - !3012 meson: Handle various build system FIXME's
+  - !3013 tests: Fix few new clang warnings
+  - !3015 test/meson: Add tests dependencies on built programs, libraries and
+    modules
+  - !3018 Install gversionmacros.h in the right place
+  - !3019 ci: Fix check for missing install tag
+  - !3021 Add kgx (gnome console) to known terminals lists
+  - !3022 Fix coding style issue in .gitlab-ci/check-missing-install-tag.py
+  - !3023 ci: Move shellcheck/black/flake8 checks to a new CI job which can fail
+  - !3025 fuzzing: Add a new fuzz test for g_variant_byteswap()
+  - !3027 gstdio: Preserve errno in g_autofd, document async-signal safety
+  - !3033 glib/gmacros: Always define NULL as nullptr in C++11 and newer
+  - !3034 ci: Open issues when scheduled pipelines fail
+  - !3035 portal: Fix broken header guard
+  - !3037 gio: Create a sandbox checking function
+  - !3040 gspawn: Provide less brute force fdwalk implementation on macOS
+  - !3043 glib-mkenums: feature use of previous symbols in evaluation
+  - !3044 docs: Convert GVariant Specification to reStructuredText
+  - !3048 docs: Add licensing/copyright data to GVariant specification and fix
+    various formatting issues
+  - !3049 Add a SPDX LicenseRef for the license historically used for tests
+  - !3050 tests: Shorten internal codegen test timeout
+  - !3051 ci: Add a CI check for REUSE-compliant licensing/copyright headers
+  - !3055 fileutils test: Use no-op invalid-parameter handler when exercising
+    EBADF
+  - !3058 ci: Build with -Wnonnull
+  - !3060 fuzzing: Add a fuzz test for g_utf8_validate()
+  - !3062 tests: Fix a small leak in the GVariant tests and some minor
+    documentation typos
+
+* Translation updates:
+  - Abkhazian (Nart Tlisha)
+  - Dutch (Nathan Follens)
+  - Friulian (Fabio Tomat)
+  - German (Christian Kirbach)
+  - Hebrew (Yaron Shahrabani)
+  - Kazakh (Baurzhan Muftakhidinov)
+  - Occitan (post 1500) (Quentin PAGÈS)
+
+
+Overview of changes in GLib 2.74.0, 2022-09-17
+==============================================
+
+* Use EPOLL_CLOEXEC by default (Colin Walters)
+
+* Fixed various regression on GRegex as per the PCRE2 porting (Marco Trevisan)
+
+* Fixed various memory leaks (Sebastian Keller, Marco Trevisan)
+
+* Bugs fixed:
+ - GNOME/gtksourceview#278 Failed to load html.lang after GLib switched to PCRE2
+   (Marco Trevisan (Treviño))
+ - GNOME/gtksourceview#283 GRegex-on-PCRE2 regressions (Marco Trevisan)
+ - #2688 Follow-up from "replace pcre1 with pcre2" (Marco Trevisan (Treviño))
+ - #2713 static_assert is undefined in C99 (wen Rafferty)
+ - #2719 GParamSpec constructors should have nullable annotation on nick/blurb
+   (Andy Holmes)
+ - #2729 GRegex/GMatchInfo related crashes after upgrade to 2.73.2 (Marco
+   Trevisan)
+ - #2733 gio: GVariantBuilder builder leaked in g_document_portal_add_documents
+   when URI list is empty (Sebastian Keller)
+ - #2737 gio mount coredumps on prompt exit since 2.73 (Marco Trevisan)
+ - #2741 Memory errors on GRegex (Marco Trevisan (Treviño))
+ - GNOME/gtk#4400 gtk_show_uri can't open browser on MSYS2 on Windows (Luca
+   Bacci)
+ - !2820 ci: Expose the coverage report and docs as links in the MR's (Marco)
+ - !2855 gtlscertificate: Update reference to G_TLS_CERTIFICATE_NO_FLAGS
+ - !2861 mem: Document OOM behavior for allocations (Matthias Clasen)
+ - !2868 gio-unix: Use EPOLL_CLOEXEC by default (Colin Walters)
+ - !2873 Fix array-bounds compiler warnings with GCC 12 (Emmanuele Bassi)
+ - !2874 tests, GDesktopAppInfo: Fix various GVariant leaks (Marco Trevisan)
+ - !2875 g_strsplit: Use a pre-allocated GArray when max_tokens is provided
+   (Marco Trevisan)
+ - !2876 GActionGroup: Fix ownership transfer annotation for query_action()
+   (Andy Holmes)
+ - !2879 gioenumtypes: Only define GLIB_DISABLE_DEPRECATION_WARNINGS if needed
+   (Marco Trevisan)
+ - !2881 GWin32AppInfo: Add missing g_spawn_close_pid (Luca Bacci)
+ - !2882 meson: Set install_tag on all tools (Xavier Claessens)
+ - !2883 ci: Improve style check script (Matthias Clasen)
+ - !2900 docs: Improve wording in documentation of g_unix_signal_source_new()
+   (Tom Levy)
+
+* Translation updates:
+ - Abkhazian (Nart Tlisha)
+ - Basque (Asier Sarasua Garmendia)
+ - Bulgarian (Alexander Shopov)
+ - Catalan (Jordi Mas)
+ - Chinese (China) (Luming Zh, Boyuan Yang)
+ - Croatian (Goran Vidović)
+ - Czech (Marek Černocký)
+ - Danish (Alan Mortensen)
+ - Finnish (Jiri Grönroos)
+ - French (Claude Paroz)
+ - Galician (Fran Dieguez)
+ - Hungarian (Balázs Úr)
+ - Indonesian (Kukuh Syafaat)
+ - Korean (Changwoo Ryu)
+ - Lithuanian (Aurimas Černius)
+ - Persian (Danial Behzadi)
+ - Polish (Piotr Drąg)
+ - Portuguese (Hugo Carvalho)
+ - Portuguese (Brazil) (Leônidas Araújo)
+ - Russian (Aleksandr Melman)
+ - Slovenian (Matej Urbančič)
+ - Spanish (Daniel Mustieles)
+ - Swedish (Luna Jernberg)
+ - Turkish (Emin Tufan Çetin)
+ - Ukrainian (Yuri Chornoivan)
+
+Overview of changes in GLib 2.73.3, 2022-08-05
+==============================================
+
+* Revitalize G_REGEX_OPTIMIZE flag and use it to enable PCRE JIT compiler (work
+  by Aleksei Rybalkin) (!2817)
+
+* Fix some regressions due to the PCRE2 port (work
+  by Aleksei Rybalkin, Mamoru TASAKA and Marco Trevisan) (!2814, !2827, #2694,
+  #2699, #2700)
+
+* Fix a pidfd leak that was introduced in the previous release (work by
+  Christian Hergert) (#2708)
+
+* Support compilation without a C++ toolchain (work by James Hilliard) (!2822)
+
+* GDBus: Use namespace-friendly protocol for Linux message buses, and optionally
+  other connections (work by Simon McVittie) (!2832)
+
+* Fix potential races in multi-threaded signal connections handling (work by
+  Marco Trevisan) (!2823)
+
+* Add back gio-launch-desktop to redirect stdout/stderr of launched
+  GDesktopAppInfo's to the journal with proper parent (work by Simon McVittie)
+  (!2818, !2819, #2682)
+
+* Executables that are invoked when installing other software, typically
+  from packaging system triggers, can now be installed into
+  architecture-dependent locations. Unix OS distributors who install
+  GLib for more than one architecture in parallel (multiarch or multilib
+  installations) should consider building with -Dmultiarch=true, installing
+  the bin/glib-compile-schemas and bin/gio-querymodules symbolic links in
+  packages for the primary architecture, and omitting those symlinks from
+  packages for secondary architectures. (work by Simon McVittie) (!2818)
+
+* Some enumerators introduced in previous releases have been changed, for better
+  introspection results:
+  - G_MARKUP_PARSE_FLAGS_NONE renamed to G_MARKUP_DEFAULT_FLAGS
+  - G_TLS_CERTIFICATE_FLAGS_NONE renamed to G_TLS_CERTIFICATE_NO_FLAGS
+  - G_APPLICATION_FLAGS_NONE was deprecated, use G_APPLICATION_DEFAULT_FLAGS now
+  (work by Emmanuele Bassi) (!2835)
+
+* gfileinfo: Implement xattr attribute removal (work by madmurphy) (#1187)
+
+* Add support to --delete option to gio set, to unset a file attribute (work by
+  codeboybebop) (#2588)
+
+* Improve default value of glib_debug option: G_ENABLE_DEBUG will be defined
+  only if using `--buildtype=debug` or enabled via `-Dglib_debug`, but it
+  won't ever be set if an optimized build is requested (specifically if the
+  optimization level is not `0` or `g`) as it may be the case when using
+  `--buildtype=debugoptimized` (work by Michael Catanzaro) (!2851)
+
+* Probably the first revision of any GNOME module ever released from Cuba :)
+
+* Bugs fixed:
+ - #566 support using the PCRE JIT
+ - #1187 xattr add possibility to remove an extended attribute
+ - #2509 g_spawn_*() is not thread-safe on Windows when an environment table is
+   provided
+ - #2542 Flatten line breaks in filenames printed by gio-tool
+ - #2588 gio-tool: -d option to delete attribute
+ - #2682 Launching a GDesktopAppInfo "blames" parent process for its output
+ - #2692 2.73.2: build failure on musl >= 1.2.0
+ - #2694 Recent GRegex changes break vala-language-server compilation
+ - #2699 g_regex_match_all fails on s390x with Fedora glib2-2.73.2-4.fc37
+ - #2700 g_regex_match fails on multiple archs (including x86_64) with Fedora
+ - #2703 Fix GCancellable tests for Windows 64bit
+   glib2-2.73.2-4.fc37
+ - #2705 GResourceFile crashes on `g_file_set_display_name()`
+ - #2708 pidfd leak causes processes to run out of file-descriptors
+ - !2299 GWin32AppInfo: Fix PID reporting in launched signal
+ - !2759 Use atomic exchange operations more
+ - !2812 ci: Setup submodules and subprojects before building on dist
+ - !2813 Add missing extension point register for various settings backends
+ - !2814 gregex: use %s format specifier for localized error message
+ - !2815 giomodule: Use g_once_init_enter/leave to register extensions and load dirs
+ - !2818 gio: Optionally install trigger executables to architecture-specific paths
+ - !2822 meson: fix build without cpp toolchain
+ - !2823 gsignal: Perform signal unlocked handlers block, unblock and disconnect ops
+ - !2825 gioenums: G_IO_ERROR_NO_SUCH_DEVICE is new in 2.74
+ - !2826 GDBus: improve interoperability of SASL handshake
+ - !2827 gregex: Free match info if offset matching recalc failed
+ - !2829 gregex: use g_debug instead of g_warning in case JIT is not available
+ - !2830 goption: Slightly improve the documentation for G_OPTION_FLAG_REVERSE
+ - !2832 GDBus: Use namespace-friendly protocol for Linux message buses, and
+   optionally other connections
+ - !2833 Fix installed-tests failures
+ - !2835 Introduce G_APPLICATION_DEFAULT_FLAGS
+ - !2836 gio-launch-desktop: Only replace fds that point to the Journal
+ - !2851 Improve default value of glib_debug option
+ - !2853 Expose tls-exporter channel binding
+ - !2854 docs: Add --delete option to gio-tool attributes documentation
+
+* Translation updates:
+ - Abkhazian
+ - Basque
+ - Georgian
+ - Hebrew
+ - Persian
+ - Portuguese
+ - Russian
+ - Turkish
+ - Ukrainian
+
+* Contributors:
+  Aleksandr Melman, Aleksei Rybalkin, Asier Sarasua Garmendia, Christian Hergert,
+  codeboybebop, Danial Behzadi, Emin Tufan Çetin, Emmanuele Bassi,
+  Giuseppe Scrivano, Hugo Carvalho, James Hilliard, Luca Bacci, madmurphy,
+  Mamoru TASAKA, Marco Trevisan, Matthias Clasen, Michael Catanzaro,
+  Nart Tlisha, Owen Rafferty, Philip Withnall, Ryan Hope, Simon McVittie,
+  Yosef Or Boczko, Yuri Chornoivan, Zurab Kargareteli.
+
+Overview of changes in GLib 2.73.2, 2022-07-12
+==============================================
+
+* Replace PCRE1 with PCRE2: This is a major change to drop the libpcre1
+  dependency and use libpcre2 instead, while preserving the behaviour and API of
+  GRegex. G_REGEX_OPTIMIZE and G_REGEX_JAVASCRIPT_COMPAT are now deprecated
+  and became a no-op, while other flags are adapted accordingly to the new API
+  (work by Aleksei Rybalkin, Philipp Withnall) (!2529, #1085)
+
+* Preserve destruction order in gdataset, fixing various crashes during
+  objects disposal (work by Peter Bloomfield) (!2776, #2672, #2676)
+
+* Require C99 __VA_ARGS__ (work by Emmanuele Bassi) (!2791, #2681)
+
+* Add NONE or DEFAULT members to most flags types (work by Simon McVittie) (!2576)
+
+* GFile: Add some missing async APIs (work by Marco Trevisan) (!2717)
+
+* Improve internal and process documentation (work by Philipp Withnall) (!2763)
+
+* Add atomic compare-and-exchange APIs returning previous value (work by Marco
+  Trevisan) (!2766)
+
+* Add G_DEFINE_ENUM_TYPE and G_DEFINE_ENUM_VALUE macros (work by Emmanuele Bassi)
+  (!2788)
+
+* Add platform-independent G_ALWAYS_INLINE and G_NO_INLINE (work by Marco Trevisan)
+  (!2781)
+
+* Use waitid() on pidfds rather than a global SIGCHLD handler (work by Philip
+  Withnall) (!2408)
+
+* Bugs fixed:
+ - #1434 Move tests/* into */tests/
+ - #2216 Chain signal handlers for SIGCHLD
+ - #2597 Crash in g_socket_client_enumerator_callback when proxy resolving
+ - #2659 /maincontext/timeout-once randomly fails
+ - #2681 Set C99's `__VA_ARGS__` as a toolchain hard requirement
+ - #2672 Finalization speedup (commit fa8c7c0da) causes crash in gtk3 demo
+ - #2676 gnome-shell assertion failure with GLib 2.73.1 while
+         g_object_real_dispose() cleans up weak refs
+ - #2687 Regression: in GLib 2.72.3, in gsocketclient/cancellable
+ - !1717 Add lock in _g_get_unix_mount_points() around *fsent() functions
+ - !2408 gmain: Use waitid() on pidfds rather than a global SIGCHLD handler
+ - !2529 gregex: replace pcre1 with pcre2
+ - !2576 Add a NONE or DEFAULT member to most flags-sets
+ - !2667 test: Potentially fix a race in thread-pool-slow test
+ - !2706 Add more SPDX license headers
+ - !2717 gfile (and GAppInfo): Add some missing async APIs and ensure async calls
+         always use them
+ - !2744 fuzzing: Add fuzz test for g_uuid_string_is_valid()
+ - !2748 docs: Add a testing policy
+ - !2749 tests: Various fixes for TAP output of tests
+ - !2755 docs: Sync glib.doap to set of users listed in CODEOWNERS
+ - !2763 docs: Document the release process
+ - !2766 gatomic: Add Compare and Exchange functions that returns the previous value
+ - !2770 Correct documentation of g_atomic_pointer_exchange
+ - !2771 use gvdb as a subproject
+ - !2772 gobject/tests/performance: fix leaks
+ - !2773 gdatetime test: Consistently expect %k to generate a figure space
+ - !2774 tests: Fix type mismatches in new atomic tests when compiling with clang
+ - !2775 gthread: Some code cleanups and fixes
+ - !2776 gdataset: Preserve destruction order
+ - !2779 tests: Fix macOS failures in the file tests
+ - !2781 gmacros: Provide platform-independent G_ALWAYS_INLINE and G_NO_INLINE
+ - !2782 ci: Update CI images to add gdb and pcre2
+ - !2783 _g_get_unix_mount_points(): reduce syscalls inside loop
+ - !2784 Revert "gobject: Use g_datalist_id_remove_multiple"
+ - !2785 tests: Fix incorrect basename comparison in gsubprocess test
+ - !2786 gcontenttype: Fix a potential use-after-free of xdgmime data
+ - !2788 Add G_DEFINE macros for enum and flags types
+ - !2789 gdate: Fix a typo in a code comment
+ - !2790 tests: Skip assert-msg-test.py if gdb is non-functional
+ - !2791 Require C99's __VA_ARGS__
+ - !2792 ci: Ensure git submodules are updated before running macOS CI
+ - !2794 gobject: Don't skip custom dispatch_properties_changed
+ - !2795 gkeyfile: Remove some unreachable code
+ - !2796 gmodule: Improve error handling for invalid .la files
+ - !2797 gio: Add some missing license and copyright headers
+ - !2798 Remove occurrences of unused-results warnings and mark them as errors
+ - !2800 gbacktrace: Handle case of strerror_r returning an int value
+ - !2801 gobject: Small speedup in weak-ref-set
+ - !2802 gobject/tests/custom-dispatch: Add few more tests
+ - !2804 gthreadpool: Ensure all unused threads are really counted as stopped
+ - !2805 gthread-posix: Do not do unguarded and non-atomic assignment of an atomic
+ - !2807 ci: Specify -Wno-overlength-strings on macOS
+         build: Specify -Werror=pointer-sign
+ - !2808 gsocketclient: Fix passing NULL to g_task_get_cancellable()
+ - !2809 gio/tests/desktop-app-info: Wait until the callback is called
+
+* Translation updates:
+ - Lithuanian
+ - Persian
+ - Portuguese
+ - Russian
+ - Serbian
+ - Ukrainian
+
+* Contributors:
+  Aleksandr Melman, Aleksei Rybalkin, Aurimas Černius, Danial Behzadi,
+  Emmanuele Bassi, Emmanuel Fleury, ericLemanissier, Hugo Carvalho,
+  Marc-André Lureau, Marco Trevisan (Treviño), Matthias Clasen,
+  Michael Catanzaro, Michael Vetter, Peter Bloomfield, Philip Withnall,
+  Rozhuk Ivan, Simon McVittie, Yuri Chornoivan, Мирослав Николић
+
+Overview of changes in GLib 2.73.1
+==================================
+
+* Remove the `-Diconv` configure option, as GLib now uses Meson’s built-in logic for
+  finding which iconv implementation to use (work by Eli Schwartz) (!2734)
+
+* Move gvdb to a Meson subproject and git submodule to avoid duplicating its
+  source (work by Philip Withnall) (!2733)
+
+* Add `add_test_setup()` in Meson to allow GLib tests to be run under valgrind
+  with correct settings easily, using `meson test --setup=valgrind` (work by
+  Philip Withnall) (!2752)
+
+* Fix deadlocks when disposing non-cancelled inotify `GFileMonitor`s (work by
+  Benjamin Berg) (#1941)
+
+* Fix `file://` requests in webkit2gtk due to incorrect xdgmime update (work by
+  Stephen Jung, Michael Catanzaro, Philip Withnall) (#2639)
+
+* Fix build errors on macOS ≤10.7 for `LOCAL_PEERPID` (work by Christopher Nielsen) (!2707)
+
+* Add new `g_atomic_int_exchange()` and `g_atomic_pointer_exchange()` APIs (work
+  by Marco Trevisan) (!2726)
+
+* Add new `GListStore:n-items` property to allow easy binding in UIs (work by
+  Benjamin Otte) (!2738)
+
+* Performance improvements for GObject construction and destruction (work by
+  Matthias Clasen) (#2661, #2665, #2666, !2678, !2700, !2705, !2712, !2713,
+  !2714, !2715, !2716, !2721, !2722, !2723, !2724, !2725, !2756)
+
+* Use a numeric space (U+2007) for padding with some `g_date_time_format()`
+  placeholders (work by Maksym Hazevych) (#2655)
+
+* Fix a slow memory leak in `GSocketClient` when using long-lived `GCancellable`s
+  (work by Jens Georg) (#2670)
+
+* Bugs fixed:
+ - #1941 disposing a non-cancelled inotify GFileMonitor causes deadlocks
+ - #2639 xdgmime update breaks webkit2gtk file:// requests
+ - #2655 Use the numeric space for the DateTime.format()'s `\%l` specifier
+ - #2656 2.73.0: test suite is failing in `glib:gobject / object` unit
+ - #2661 Speeding up type checks for final types (commit 0ddea2d8e) breaks C++ bindings
+ - #2665 GObject speed up causes gtk3 apps to crash :(
+ - #2666 GObject speedup causes warnings with custom constructors
+ - #2670 Growing memory when using cancellable in g_socket_client_connect_async
+ - !2670 docs: Add a backports policy
+ - !2678 Speed up property lookup
+ - !2681 docs: Add a roadmap policy
+ - !2692 tests: Drop redundant collate test data files
+ - !2694 Restore macOS CI
+ - !2696 Move tests/gobject/testgobject.c to gobject/tests/basics-gobject.c
+ - !2697 Delete tests/gobject/timeloop-closure.c
+ - !2700 gtype: Speed up type checks for final types
+ - !2701 gsocketaddressenumerator: add nullable annotation to the result of `next`
+ - !2702 tests: Fix a potential race condition in pollable test
+ - !2704 tests: Remove various bits of overly-verbose test output
+ - !2705 gobject: Drop an unused quark
+ - !2707 credentials: macos: check for existence of LOCAL_PEERPID
+ - !2710 ci: Try reducing FD soft limit to fix valgrind tests
+ - !2711 tests: Various small test fixes for valgrind
+ - !2712 Improve the GObject performance test
+ - !2713 Simplify g_object_new_with_properties
+ - !2714 Simplify g_object_notify_by_pspec
+ - !2715 Don't inline deprecation warnings
+ - !2716 Don't copy values in g_object_new
+ - !2719 Add nullable annotation to return value of `g_variant_dict_lookup_value`.
+ - !2721 Avoid g_object_ref/unref in some cases
+ - !2722 Avoid g_param_spec_get_redirect_target
+ - !2723 Avoid g_type_class_peek
+ - !2724 gobject: Avoid redundant atomics
+ - !2725 Keep a separate flag for notify handlers
+ - !2726 gatomic: Add APIs to perform atomic int / pointer exchanges
+ - !2729 tests: Reduce number of threads in once test under valgrind
+ - !2730 garray: Fix NULL-termination of GPtrArray copies
+ - !2731 tests: Various static analysis fixes
+ - !2732 gobject: Sink floating pspecs if adding them to a class fails
+ - !2733 build: Move gvdb to a subproject
+ - !2734 meson: simplify iconv/intl lookups using Meson's builtin dependency lookup
+ - !2735 tests: Move GObject performance tests to gobject/tests/performance/
+ - !2738 liststore: add n-items property
+ - !2739 gobject-query: Minor cleanups and add unit tests
+ - !2740 gbinding: Remove some duplicated code for checking property names and improve tests slightly
+ - !2747 gobject: Change GObject notify semantics under static analysis
+ - !2751 glib-unix: Mark GLib.unix_open_pipe fds input array as fixed-size
+ - !2752 build: Use add_test_setup() to allow tests to be run under valgrind
+ - !2753 xdgmime: fix double free
+ - !2754 docs: Add Marco Trevisan as a co-maintainer
+ - !2756 gobject: Fix crash when disposing a GtkAccelGroup
+ - !2758 gio: Don't bundle gtrace in static builds
+ - !2761 gtlscertificate: Hold a ref on the root certificate when building chains
+ - !2762 gsignal: Change signal instance ref semantics under static analysis
+
+* Translation updates:
+ - Georgian
+ - Hebrew
+
+
+Overview of changes in GLib 2.73.0
+==================================
+
+* Support nanosecond time precision in file attributes (work by Nitin Wartkar) (#369)
+
+* Add `g_list_store_find_with_equal_func_full()` API to make `GListStore` more
+  introspection friendly (work by Jason Francis) (#2447)
+
+* Document some GLib maintenance policies a bit better (work by
+  Nirbheek Chauhan, Philip Withnall) (#2596, !2648, !2649, !2664)
+
+* Remove FAM/gamin file monitor and `-Dfam` meson option, as libgamin was last
+  released in 2007 and is dead upstream (work by Emmanuele Bassi) (#2605)
+
+* Fix futex timespec type on 32-bit kernels with 64-bit userspace (#2634)
+
+* Deprecate g_dtls_client_connection_set_validation_flags() (work by Michael Catanzaro) (#2646)
+
+* Add support for automatically `NULL`-terminated `GPtrArray`s (work by Thomas Haller) (!1485)
+
+* A lot of cleanup of warnings and old tests (work by Emmanuel Fleury)
+
+* Various compilation and test fixes on Windows (work by Marc-André Lureau)
+  (!2499, !2540, !2569, !2582, !2592, !2599, !2600, !2656)
+
+* Fix detection of broken `poll()` implementation on macOS, broken since the
+  port to Meson (work by Haruka Ma) (!2571)
+
+* Add additional flags to `g_spawn_async_with_pipes_and_fds()` to make it more
+  easily introspectable (work by Nicola Fontana) (!2632)
+
+* Initial (incomplete) support for REUSE licensing (work by Philip Withnall) (!2663, !2665, !2666)
+
+* GObject construction performance improvements (work by Matthias Clasen) (!2672, !2673, !2674, !2677, !2680, !2690)
+
+* Add `g_idle_add_once()` and `g_timeout_add_once()` for one-shot sources (work by Emmanuele Bassi) (!2684, !2693)
+
+* Simplify zlib dependency resolution using new built-in Meson support for it (work by Eli Schwartz) (!2685)
+
+* Bugs fixed:
+ - #369 file copy doesn't preserve nanosecond timestamps
+ - #2312 gdbus-test-codegen tests leak GWeakRef objects
+ - #2447 g_list_store_find_with_equal_func is not binding friendly
+ - #2596 Policy on meson requirement bumping
+ - #2605 Update Android CI to support API level 31
+ - #2614 Remove FAM/gamin file monitor
+ - #2625 g_warning_once fails to build with clang++
+ - #2629 g_file_trash() does not work on directories inside a sandbox
+ - #2633 Recent updates in gstdio.h breaks ABI on 64-bit MSVC builds
+ - #2634 g_cond_wait_until: returning FALSE immediately on mips24
+ - #2640 UWP warnings about extensions and verbs with glib 2.72.1
+ - #2646 Should g_dtls_client_connection_set_validation_flags etc. be deprecated?
+ - #2653 pango fails to build against glib main
+ - !1485 array: add support for g_ptr_array_null_terminated()
+ - !2449 Fix test suite on Windows
+ - !2494 Cleanup warnings split 5
+ - !2495 Cleanup warnings split 6
+ - !2496 Cleanup warnings split 7
+ - !2497 Cleanup warnings split 8
+ - !2498 Cleanup warnings split 9
+ - !2499 Various contenttype-related test fixes on win32
+ - !2521 gobject: Add g_signal_group_connect_closure
+ - !2534 gpowerprofilemonitor: Tweak wording of documentation to make more sense
+ - !2539 Convert tests/gio-test.c to g_test framework
+ - !2540 Various win32 tests skip & fixes
+ - !2541 meson: simplify lookup of python command
+ - !2543 ci: Update the Fedora CI image to Fedora 34
+ - !2545 gutils: Add flags to g_format_size_full() to return only value or only units
+ - !2550 Moving gobject tests from tests/gobjects to gobjects/tests
+ - !2553 Moving tests/refcount/ directory to gobject/tests/
+ - !2556 gdbusconnection: Use g_strv_contains() rather than a home-grown version
+ - !2557 gdbusmethodinvocation: Fix a leak on an early return path
+ - !2558 Move unit test on g_basename() function to glib/tests/fileutils.c
+ - !2559 Move tests/relation-test.c to glib/tests/relation.c
+ - !2560 ci: Update Coverity, mingw and Android CI images to Fedora 34
+ - !2562 tests: Call openpty (if available) without using dlsym
+ - !2563 glib: Format GDateTime ISO8601 years as %C%y
+ - !2564 Move test files on slices from tests/ to glib/tests/
+ - !2565 Revert "meson: simplify lookup of python command"
+ - !2566 tests: Add more tests for GResolver response parsing
+ - !2567 tests: Fix compilation when GLIB_DISABLE_DEPRECATION_WARNINGS is defined
+ - !2569 Various win32 tests fixes
+ - !2571 meson: Set BROKEN_POLL in macOS builds
+ - !2572 gversionmacros: Add version macros for GLib 2.74
+ - !2575 Move tests/spawn-test.c -> glib/tests/spawn-test.c
+ - !2577 build: Post-release version bump to 2.73.0
+ - !2579 Slice test
+ - !2580 Moving slice-threadinit.c test to glib/tests/
+ - !2581 Move tests/unicode-encoding.c to glib/tests/unicode-encoding.c
+ - !2582 glib/win32: fix spawn from GUI regression
+ - !2584 Move msvc warnings in meson.build file
+ - !2585 GUnixFDList: Include only in unix build
+ - !2586 Move test tests/unicode-normalize.c to glib/tests/
+ - !2589 tests: Don’t exit gdbus-method-invocation test early on connection close
+ - !2591 tests: Remove an incorrect assertion in converter-stream
+ - !2592 gio/tests: DuplicateHandle() is inappropriate for SOCKET
+ - !2594 ci: Expire CI artifacts after 1 week
+ - !2597 tests: Make a string comparison on an error string more relaxed
+ - !2598 ci: Combine style-check-diff and check-todos jobs into one
+ - !2599 Various socket-related fixes for win32
+ - !2600 GDate: Fix tests on Windows on certain locales
+ - !2601 Move tests/onceinit.c to glib/tests/onceinit.c
+ - !2602 tests: Ensure NormalizationTest.txt is installed for installed-tests
+ - !2603 tests: Use G_TEST_OPTION_ISOLATE_DIRS in gdbus-peer-object-manager
+ - !2604 tests: Reduce wakeup interval in gdbus-threading
+ - !2606 tests: Fix a minor leak in the unicode-normalize test
+ - !2607 Moving tests/mapping-test.c to glib/test/mapping.c
+ - !2608 Fixes in tests
+ - !2609 Remove tests/timeloop.c and tests/timeloopbasic.c
+ - !2610 Expand tests on gbookmark file API
+ - !2612 docs: Expand G_DEFINE_BOXED_TYPE docs with more detailed example
+ - !2613 gtestutils: Include stdlib.h for exit function
+ - !2614 Add inout annotations for g_iconv
+ - !2615 Meson: Fix gio-windows-2.0 override name
+ - !2617 gmessages: Error if g_log_set_writer_func() is called multiple times
+ - !2619 gversion: Clarify that GLIB_CHECK_VERSION is a >= check
+ - !2621 Fix the annotation of g_utf8_strncpy()
+ - !2624 Expand ghook unit tests for a better coverage and add more checks
+ - !2625 gsocket: Add assertions about socket address sizes for memcpy()
+ - !2626 gio-tool: Fix a minor memory leak when using gio-set with bytestrings
+ - !2627 gopenuriportal: Fix a use-after-free on an error path
+ - !2628 Fix various scan-build warnings
+ - !2630 build: Move lcovrc file to root so it’s picked up by Meson
+ - !2631 Cast to ptrdiff_t instead of subtracting by null
+ - !2632 g_spawn_async_with_pipes_and_fds uses out parameters as inputs
+ - !2633 Fix closure annotations in callbacks' user data parameters
+ - !2634 Move tests/threadpool-test.c to glib/test/thread-pool-slow.c
+ - !2635 Add a couple of assertions to help with static analysis
+ - !2636 ghmac: Fix some signed/unsigned issues with g_checksum_update()
+ - !2637 guri: Preallocate a buffer for building URIs
+ - !2638 fuzzing: Only set the writer function once
+ - !2639 Move tests/thread-test.c to glib/tests/thread-deprecated.c
+ - !2642 meson: Check rres.compiled() before calling rres.returncode()
+ - !2645 Remove unnecessary test tests/mainloop-test.c duplicated in glib/tests/mainloop.c
+ - !2646 Add some more assertions to help scan-build out
+ - !2648 docs: Add a code of conduct document
+ - !2649 Various updates to documentation and misc files in the root directory
+ - !2650 meson: Use range() instead of listing all stable versions
+ - !2651 Replace single quotes in gio/tests/codegen.py
+ - !2652 resources: Hide external data symbol
+ - !2653 build: Remove a few Meson workarounds and FIXMEs
+ - !2654 gtask: use g_strconcat() in g_task_return() only if needed
+ - !2655 Fix typo in gio/meson.build
+ - !2656 gio: various unix/fd-related enablement on win32
+ - !2657 ci: Temporarily allow failure of macOS CI runner until it’s fixed
+ - !2658 tests: Fix a double-close of a GSource in tests
+ - !2659 Cleaning a file left behind by glib/tests/bookmarkfile.c test case
+ - !2660 Move tests/module-test.c to gmodules/tests/
+ - !2663 docs: Initial REUSE licensing support
+ - !2664 docs: Add compiler and toolchain requirements from the wiki
+ - !2665 glib/gio/tests: Add SPDX license headers automatically
+ - !2666 fuzzing: Add copyright/licensing headers to fuzzing files
+ - !2669 Add a Unicode testcase
+ - !2671 Add another Unicode testcase
+ - !2672 gtype: small optimization
+ - !2673 param: Avoid strcmps
+ - !2674 Avoid g_type_peek_value_table
+ - !2675 docs: Use G_PARAM_STATIC_STRINGS in examples and explain it more
+ - !2677 param: Add a value_is_valid vfunc
+ - !2679 Rename user data parameters to user_data
+ - !2680 Speed up object finalization
+ - !2684 Add one-shot idle and timeout functions
+ - !2685 meson: use builtin dependency lookups for zlib
+ - !2686 gitlab-ci: remove meson-junit-report.py conversion
+ - !2687 gitlab-ci: left-over from junit cleanup
+ - !2688 gparamspecs: Remove redundant NULL checks
+ - !2689 build: update sysprof configuration options
+ - !2690 gobject: Keep a count of construct params
+ - !2693 gmain: Refactor idle-once and timeout-once to avoid a closure allocation
+
+* Translation updates:
+ - Basque
+ - Bulgarian
+ - Catalan
+ - Croatian
+ - Czech
+ - Danish
+ - English (United Kingdom)
+ - French
+ - Galician
+ - German
+ - Hungarian
+ - Indonesian
+ - Italian
+ - Lithuanian
+ - Nepali
+ - Polish
+ - Portuguese
+ - Portuguese (Brazil)
+ - Russian
+ - Slovenian
+ - Spanish
+ - Swedish
+ - Turkish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.72.0
+==================================
+
+* Bugs fixed:
+ - #2620 g_time_zone_new_offset() assertion failure if offset >= 25 hours
+ - !2538 Various unit test fixes
+ - !2542 fuzzing: Fix test failure with G_DISABLE_ASSERT
+ - !2547 gprintf: Fix a memory leak with an invalid format in g_vasprintf()
+ - !2548 tests: Various fixes to gdbus-auth, gdbus-non-socket, gdbus-connection-flush, spawn-multithreaded tests
+ - !2551 tests: More flaky test fixes to converter-stream and test-printf
+ - !2552 gtlsconnection: fix typo in docs
+
+* Translation updates:
+ - Czech
+ - French
+ - Friulian
+ - Hebrew
+ - Hungarian
+ - Italian
+ - Kazakh
+ - Polish
+ - Romanian
+ - Serbian
+ - Swedish
+
+
+Overview of changes in GLib 2.71.3
+==================================
+
+* Fix flaky `GDebugController` tests (!2504)
+
+* Numerous small documentation updates
+
+* Bugs fixed:
+ - #517 g_utf8_collate returns 0 on U+C5D0 vs U+CD94
+ - #1929 gdbus-connection-flush: setup_client_cb: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1)
+ - #2589 Hash sign misinterpreted as heading
+ - #2598 g_main_loop_run() may leak a GMainLoop reference
+ - #2609 Clarify documentation for g_log_set_debug_enabled()
+ - #2611 Unspecified options considered present
+ - #2612 side effects of ensure_valid_dict result used in g_return_if_fail macro
+ - #2613 Naked magic literal in gvariant.h
+ - !1707 Add cache to g_unix_mount_points_get()
+ - !2424 Remove old test file tests/testglib.c
+ - !2451 glib: fix buffer overflow in g_canonicalize_filename()
+ - !2466 Various minor fixes for empty argv handling
+ - !2480 Various glib/tests/date fixes on win32
+ - !2485 Various spawn-related test fixes on win32
+ - !2490 Cleanup warnings split 1
+ - !2491 Cleanup warnings split 2
+ - !2492 Cleanup warnings split 3
+ - !2493 Cleanup warnings split 4
+ - !2501 glib-compile-resources: Fix a memory leak of the compiler option
+ - !2502 tests: Merge iochannel-test into io-channel tests in glib directory
+ - !2503 gbacktrace: Fix a set-but-not-used variable
+ - !2504 gdebugcontrollerdbus: Track pending tasks with weak refs
+ - !2505 tests: Stop ignoring test failures on macOS
+ - !2506 gresource-tool: Fix unused-but-set-variable warn with G_DISABLE_ASSERT
+ - !2507 ci: Drop custom dependency builds from installed-tests
+ - !2508 codegen: Reformat parser.py according to black
+ - !2509 tests: Fix various small memory leaks
+ - !2510 gdesktopappinfo: Fix a leak when launching URIs over D-Bus
+ - !2512 doc: Extend a bit G_DECLARE_* documentation example
+ - !2513 gmain: Expand documentation about GSource priorities a little
+ - !2514 ci: Various cleanups and moving Android API 21 and FreeBSD 12 to scheduled run
+ - !2515 gmessages: Fix typo in docs
+ - !2516 glocalfileinfo: Always define _g_stat_mtim_nsec, etc.
+ - !2517 meson: Add schemasdir and giomoduledir to gio dependency
+ - !2518 meson: Set GIO_EXTRA_MODULES in devenv
+ - !2519 gdebugcontrollerdbus: Mark a variable as G_GNUC_UNUSED
+ - !2520 tests: Remove threads from mock-resolver/network-address test
+ - !2523 Add handling of NULL time_t* pointer as argument
+ - !2524 Revert "meson: Add schemasdir and giomoduledir to gio dependency"
+ - !2525 meson: Add schemasdir and giomoduledir to gio dependency
+ - !2526 Remove unused test tests/testgdateparser.c
+ - !2527 Move tests/type-test.c to glib/tests/types.c
+ - !2528 meson: Add PYTHONPATH to load GDB helper module
+ - !2531 gtask: Document that task name is set by g_task_set_source_tag()
+
+* Translation updates:
+ - Basque
+ - Catalan
+ - Chinese (China)
+ - Croatian
+ - Danish
+ - German
+ - Hebrew
+ - Indonesian
+ - Korean
+ - Lithuanian
+ - Romanian
+ - Russian
+ - Spanish
+ - Turkish
+
+
+Overview of changes in GLib 2.71.2
+==================================
+
+* Rework `glib-compile-resources` to output compiler-specific files to reduce
+  compilation time; see the new `--compiler` option (work by Emmanuele Bassi) (#2492)
+
+* Add a cross-platform API for aligned memory allocations (`g_aligned_alloc()`,
+  `g_aligned_alloc0()` and `g_aligned_free()`) (work by Emmanuele Bassi) (#2574)
+
+* Deprecate `force_posix_threads` configure option, since it was a workaround
+  for static linking on Windows (#2592)
+
+* Add `GBindingGroup` and `GSignalGroup` APIs (work by Christian Hergert and
+  Garrett Regier) (!2235)
+
+* Implement FD remapping support for `g_spawn_async_with_pipes_and_fds()` on
+  Windows (work by Marc-André Lureau) (!2458)
+
+* Add an async file move API, `g_file_move_async()` (work by Lucas Schwiderski) (!2469)
+
+* Bugs fixed:
+ - #1190 gapplication: Add an org.gtk.Debugging interface
+ - #2329 GApplication CLI parsing of DOUBLE type failure
+ - #2492 glib-compile-resources contains resource data twice and creates large output files
+ - #2563 g_test_build_filename and friends not safe to call after g_test_run() has finished
+ - #2574 Add API for aligned allocations
+ - #2592 Consider deprecating 'force_posix_threads' build option
+ - #2601 Missing <para> tag in generated files
+ - !2235 Add GBindingGroup and GSignalGroup
+ - !2378 gtestutils: Mention the unit used for the test timer
+ - !2404 File tests
+ - !2433 Remove tests/testgdate.c from tests
+ - !2458 Implement fd passing for Windows spawn
+ - !2464 Amend g_bus_get* documentation regarding private connection
+ - !2465 gi: expose some files as variable for gobject-introspection
+ - !2467 ci: Add link to Coverage output at end of coverage job
+ - !2468 gfile: resolve_relative_path isn't nullable
+ - !2469 Implement async file movement
+ - !2471 Fix test on the date format for FreeBSD and MacOS X.
+ - !2472 Fix test date (again)...
+ - !2473 Fix glib/test/date.c for FreeBSD/OpenBSD/MacOS X
+ - !2476 Add G_UNICODE_SCRIPT_MATH to GUnicodeScript
+ - !2477 Improve coverage of two digit years in gdate tests
+ - !2481 Fix glib/tests/fileutils on win32
+ - !2482 Fix unit test on date format '%Z' which is too versatile to be trustable
+ - !2483 Fix glib/tests/gdatetime on win32
+ - !2484 tests: Use g_test_skip() to skip a test on Windows
+ - !2487 gconstructor.h: Visual Studio: Only include gslist.h if needed
+ - !2488 Fix some problems with g_aligned_alloc() tests
+
+* Translation updates:
+ - Basque
+ - Catalan
+ - Chinese (China)
+ - Czech
+ - French
+ - Galician
+ - Indonesian
+ - Japanese
+ - Polish
+ - Portuguese
+ - Portuguese (Brazil)
+ - Russian
+ - Slovenian
+ - Spanish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.71.1
+==================================
+
+* Basic support for static builds on Windows (work by Loïc Le Page,
+  Marc-André Lureau, with contributions from Xavier Claessens, Nirbheek Chauhan,
+  Charlie Barto, Luca Bacci, Amos Wenger) (#692, #2585, !2442)
+
+* Add `GDebugController` and a D-Bus implementation which exposes whether
+  debug output is enabled in a process using the `org.gtk.Debugging` D-Bus
+  interface (work by Philip Withnall) (#1190)
+
+* Support for `AF_UNIX` sockets on Windows 10 (and later) (work by Marc-André Lureau) (#2487)
+
+* Several important fixes to GDBus message and GVariant parsing of invalid data (work by Sebastian Wilhelmi) (#2557, #2572)
+
+* Fix potential data loss due to missing fsync when saving files on btrfs (work by Sebastian Keller) (!2425)
+
+* Fix potential buffer overflows in `garray.c` for very large `GArray`s and `GPtrArray`s (work by Tobias Stoeckmann) (#2578)
+
+* Fix FDs in gspawn not being closed and causing process hangs if `close_range()` fails unexpectedly (work by Dan Nicholson) (#2580)
+
+* Fix `g_find_program_in_path()` not returning an absolute path if `$PATH` is relative (work by Christoph Niethammer) (#2586)
+
+* Add support for loading PKCS#12 encrypted files in `GTlsCertificate` (work by Patrick Griffis) (!2239)
+
+* A number of improvements to unit tests (work by Emmanuel Fleury, Charlie Barto) (!2399, !2400, !2402, !2403, !2428, !2431, !2432, !2434)
+
+* Support `LOCAL_PEERPID` on macOS, giving partial support for PIDs in
+  `GCredentials` on that platform (work by Ignacio Casal Quinteiro) (!2362)
+
+* Add `g_get_user_state_dir()` to support `XDG_STATE_HOME` (work by Sophie Herold) (!2395)
+
+* Add `g_hash_table_new_similar()` to copy a hash table and its hash/equal functions without its data (work by Jonas Ådahl) (!2405)
+
+* Support D-Bus client authentication with `EXTERNAL` on Windows (work by Marc-André Lureau) (!2429)
+
+* Add a reStructuredText documentation generator to `gdbus-codegen` (work by Emmanuele Bassi) (!2448)
+
+* Add a Windows implementation of `GMemoryMonitor` (work by Marc-André Lureau) (!2452)
+
+* Bugs fixed:
+ - #692 meta: Fix static build on Windows
+ - #1190 gapplication: Add an org.gtk.Debugging interface
+ - #2487 Add support for native unix domain sockets on WIN32 to GLib.Socket and related classes
+ - #2550 possible GDateTime issue with localtime on Illumos/Solaris
+ - #2557 Arrays of zero-element tuples with non-zero length lead to infinite loops in g_dbus_message_new_from_blob
+ - #2559 2.71.0: compile and link time warnings
+ - #2560 Link error xdgmime.c: unresolved external symbol S_ISREG when building with VS2022
+ - #2564 Hangul Jamo Extended-B should be 0-width
+ - #2565 Build glib-2.71.0 failed in Windows using MSYS2-MINGW64
+ - #2571 Cross build error "undefined reference to `_g_binary_test1_resource_data'" when building tests for Windows on openSUSE Leap
+ - #2572 Check for GVariant recursion depth before recursing
+ - #2578 buffer overflows in garray.c
+ - #2579 Outdated paths in INSTALL.in
+ - #2580 gspawn doesn't set CLOEXEC if close_range fails unexpectedly
+ - #2582 glib 2.71.0 muslc - build error missing sentinel in function call
+ - #2585 Static link issue on Windows due to resource files being linked in twice
+ - #2586 g_find_program_in_path not returning an absolute path
+ - !2239 gtlscertificate: Add ability to load PKCS#12 encrypted files
+ - !2362 credentials: support the local peerpid on macos
+ - !2384 meson: Fix linking with static library in Windows
+ - !2395 utils: Add XDG_STATE_HOME support
+ - !2399 Move tests/env-test.c into glib/tests/environment.c
+ - !2400 Prevent gtest tests from popping up dialog boxes
+ - !2402 Improving glib/tests/environment.c
+ - !2403 Improve test coverage of glib/tests/asyncqueue.c
+ - !2405 ghash: Add g_hash_table_new_similar
+ - !2407 tests: Fix environment test on FreeBSD
+ - !2411 annotate `g_content_type_guess` parameter as filename
+ - !2412 paramspec: fix unref annotation
+ - !2413 Use meson dependency to link against apple framework
+ - !2414 docs: Improve docs for gdbusutils.c
+ - !2417 gtestutils: Fix minor typos in the g_test_get_filename() docs
+ - !2423 Make clear in doc that signals are emitted synchroniously
+ - !2425 gfileutils: Remove outdated BTRFS fsync optimization from set_contents
+ - !2426 gdbus-codegen: Fix a typo in a comment
+ - !2428 Merge tests/gobject/gvalue-test.c with gobject/tests/value.c
+ - !2429 gdbus: make client work with EXTERNAL on Windows
+ - !2431 Merge tests/gobject/paramspec-test.c into gobject/tests/param.c
+ - !2432 Merge test/unicode-caseconv.c into glib/tests/unicode.c
+ - !2434 Remove a disabled test case that was covered by glib/tests/collate.c
+ - !2440 Improve g_ascii_formatd docs and preconditions
+ - !2441 Reduce the amount of compile-time warnings
+ - !2442 Fix tests with static build on Windows
+ - !2447 giowin32: use gint64 and _lseeki64
+ - !2448 Add reStructuredText documentation generator for gdbus-codegen
+ - !2452 gio/win32: add GMemoryMonitorWin32
+ - !2453 Add `(array length)` annotation to `g_tls_certificate_new_from_pkcs12()`
+ - !2454 gdbusmessage, gvariant and garray fixes
+ - !2456 tests: Pass --internal and -z noexecstack to glib-compile-resources tests
+ - !2459 gio: add missing zlib dependency in gio-windows-2.0.pc
+ - !2461 Fix memory leak in gio/gdbusauthmechanismsha1.c
+ - !2463 Revert "Merge branch 'fix-windows-pc' into 'main'"
+
+* Translation updates:
+ - Catalan
+ - Chinese (China)
+ - Czech
+ - Galician
+ - Hebrew
+ - Indonesian
+ - Lithuanian
+ - Polish
+ - Portuguese
+ - Portuguese (Brazil)
+ - Russian
+ - Spanish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.71.0
+==================================
+
+* Fix network changes not being signalled from NetworkManager (work by
+  Julian Andres Klode) (#2505)
+
+* Fix build when building with --fatal-meson-warnings (work by Eli Schwartz) (!2304)
+
+* Fix use of the default log writer with journald namespaces (diagnosis by Ilya Basin) (#2530)
+
+* Fix hang in `dbus-daemon` under `GTestDBus` when `G_MESSAGES_DEBUG=all` is set (work by Marco Trevisan) (#2537)
+
+* Speed up `g_canonicalize_filename()` to avoid pathogenic cases with `..` (work by Sebastian Wilhelmi) (#2541)
+
+* Fix URI for pcre subproject as it’s moved upstream (work by Albert Astals Cid) (!2324)
+
+* Fix storing GSettings dictionaries on macOS (work by Maurice) (#2527)
+
+* Speed up ‘remove dot segments’ algorithm in `GUri` to avoid pathogenic cases with `..` (work by Sebastian Wilhelmi) (#2526)
+
+* Fix infinite loops in D-Bus message parsing for truncated inputs (work by Sebastian Wilhelmi) (#2528)
+
+* Improve correctness of version information returned by `g_get_os_info()` for Windows 10/Server 2019+ (work by Chun-wei Fan) (#2443)
+
+* Various fixes to GWeakRef cleanup (#865, #2390) and toggle refs (#2394) (work by Marco Trevisan)
+
+* Add `G_DBUS_PROXY_FLAGS_NO_MATCH_RULE` flag for disabling match rules when creating a `GDBusProxy` (#1109)
+
+* Fix FD remapping in `g_spawn_async_with_pipes_and_fds()` with certain values of target FDs (#2503, #2506) (work by Michael Catanzaro)
+
+* Make `GDBusProxy::g-signal` signal detailed with D-Bus signal names (#2536) (work by Aleksandr Mezin)
+
+* Emit `launched` signal for D-Bus activation of apps with `GDesktopAppInfo` (!2227) (work by Guido Günther)
+
+* Fix IDs of `GDesktopAppInfo`s which are constructed from a `.desktop` file in a subdirectory (!2283) (work by Ivalyo Dimitrov)
+
+* Add `--interactive` option to `gdbus call` (!2329)
+
+* Add `G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP` to `GSubprocess` (!2333) (work by Hristo Venev)
+
+* Bugs fixed:
+ - #475 Add g_alloca0() and g_newa0()
+ - #847 g_set_prgname() should be thread-safe
+ - #865 GWeakRefs not cleared by g_object_run_dispose()
+ - #1109 [PATCH] GDBusProxy: add G_DBUS_PROXY_FLAGS_NO_MATCH_RULE flag
+ - #1231 gobject declare macros cause alignment warnings on armhf/armhf/mipsel
+ - #1331 GArray with 10 million items overflows index arithmetic
+ - #1735 Get back to a -werror build
+ - #1781 Sort output of gsettings command-line tool
+ - #2310 contenttype test leaks xdg-mime internal data
+ - #2390 GWeakRef's aren't cleared again on finalization (and not fully thread-safe)
+ - #2394 Toggle refs notification may not handle multiple threads correctly
+ - #2400 Use-after-free in invoke_set_property_in_idle_cb()
+ - #2401 GDBus runtime warning from remove_interfaces()
+ - #2404 GTask: clarify that GTask assumes are running mainloop
+ - #2426 GSettings delayed apply generates runtime warnings
+ - #2443 Add Windows 11 support to get_windows_version()
+ - #2468 GSequence pessimizes itself and slows down
+ - #2471 g_output_stream_write_all_async prints error when count == 0 and content == NULL
+ - #2488 Unix password unit test fails on FreeBSD 13
+ - #2489 Add a (diagnostic) warning for finalized objects with floating refs
+ - #2490 Upgrade to Unicode Character Database 14.0
+ - #2496 Wrong parameter type for g_simple_proxy_resolver_set_ignore_hosts
+ - #2498 GIR: Remove non-existing IOModule methods `load`, `unload`
+ - #2500 Able to export object manager and object on root path, but not other paths
+ - #2503 gspawn.c may clobber target fds
+ - #2505 g_network_monitor_nm never updates on connection change (listens for signal on wrong dbus interface)
+ - #2506 gspawn.c fails to close child_err_report_fd if it is duped to avoid conflation with one of the target_fds
+ - #2507 Strange behavior of GFileEnumerator with GVfs locations
+ - #2514 test suite failure in glib/tests/gdatetime.c if German locale de_DE.ISO-8859-1 is available
+ - #2518 Misleading message when privileged program starts G_BUS_TYPE_SESSION
+ - #2520 g_date_new_ functions return NULL on invalid input
+ - #2523 MacOS generates warnings for g_size_checked_mul()
+ - #2526 fuzz_uri_parse failure
+ - #2527 Error storing dictionary with string keys as GSettings on macOS
+ - #2528 g_dbus_message_new_from_blob goes into infinite loop for certain inputs
+ - #2529 load_user_special_dirs returns NULL in certain cases
+ - #2530 g_log_writer_is_journald fails if a Journal Namespace is used
+ - #2536 GDBusProxy: make g-signal detailed
+ - #2537 GTestDBus dbus daemon causes child process to hang when using verbose output
+ - #2541 g_canonicalize_filename should work in linear time complexity
+ - #2553 Consider not depending on strtoull_l and strtoll_l as much
+ - !1960 Add g_main_context_new_with_flags() and ownerless polling option
+ - !1968 gspawn: Implement fd remapping for posix_spawn codepath, and fix file descriptor conflation issues
+ - !1991 Keyfile parsing performance improvements
+ - !2029 Updating xdgmime
+ - !2064 gobject: Cleanup GWeakRef locations on object finalization
+ - !2114 Coerce type cast to void* because it causes compiler warnings
+ - !2191 docs: Add .editorconfig file
+ - !2214 Document potential footgun with GTlsCertificateFlags and deprecate certain usages
+ - !2223 Better detection of the cleanup attribute.
+ - !2227 gdesktopappinfo: Emit "launched" signal for D-Bus activation too
+ - !2242 gsettings: Add various missing (nullable) or (not nullable) annotations
+ - !2244 gutils: Avoid segfault in g_get_user_database_entry
+ - !2245 gdesktopappinfo: Do not call xterm when it does not exist, inform the caller the launch failed
+ - !2246 gobject: Document it’s unsafe to call g_object_ref() from GWeakNotify
+ - !2249 Add version macros for GLib 2.72 and bump version to 2.71.0
+ - !2251 GString: Bump minimum size
+ - !2254 Small optimization for g_object_set
+ - !2255 gobject: Clarify behaviour of adding weak refs during disposal
+ - !2257 Fix documentation for g_dbus_object_manager_get_object().
+ - !2260 GWin32AppInfo: Do not assert about successful open'ing of registry keys
+ - !2261 Provide built DLLs as Gitlab-CI artifacts
+ - !2266 fix uninitial variable
+ - !2273 Fix more (Windows) warnings
+ - !2277 Revert "Don't compile some unused functions in gio/xdgmime/"
+ - !2283 GDesktopAppInfo: Try to always correctly set id
+ - !2284 update the proxy-libintl subproject to the latest release
+ - !2285 fix issues found by svace static code analyzer
+ - !2286 meson: fix warnings for extract_all_objects function
+ - !2287 ci: Update CI images to latest stable Debian and Fedora, bump Meson dependency to 0.52
+ - !2288 Update g_source_remove doc comment: the function doesn't always return TRUE
+ - !2289 Update g_source_remove documentation for the returned value
+ - !2290 mkdir path specified by XDG_RUNTIME_DIR
+ - !2292 Fix cast from pointer to integer of different size warning in gio/gwin32appinfo.c
+ - !2293 glib-private: Fix MSVC build with AddressSanitizer
+ - !2294 Fix windows warnings
+ - !2295 gutf8: Document that out args from g_utf16_to_utf8() are non-negative
+ - !2303 Fix more windows warnings
+ - !2305 gio: document GFile API when relative path is absolute
+ - !2306 gunixmounts: Drop references to pamconsole mount option
+ - !2308 gthread-win32: Remove an unnecessary volatile qualifier
+ - !2309 Rename libpcre.wrap to pcre.wrap
+ - !2310 tests: Fix a typo in a test message in gdatetime.c
+ - !2311 Fix always true comparison warning in glib/garray.c
+ - !2319 docs: Fix the GListModel description
+ - !2323 Fix final warnings in Windows code
+ - !2324 Fix link to pcre-8.37.tar.bz2
+ - !2326 Improve some documentation related to GTlsDatabase
+ - !2328 gutf8: add string length check when ending character offset is -1
+ - !2329 gdbus: Add --interactive option to `gdbus call`
+ - !2332 Changed gendered terms to be gender-neutral
+ - !2333 gsubprocess: Add G_SUBPROCESS_FLAGS_SEARCH_PATH_FROM_ENVP
+ - !2336 tests: Drop arbitrary and flaky waits from actions tests
+ - !2339 ci: Bump Meson version to 0.60.1 on macOS
+ - !2341 tests: Wait for gdbus-testserver to die when killing it
+ - !2342 tests: Reformat mkenums.py slightly to make run-black.sh happy
+ - !2345 gutils: Disable some dead code on macOS
+ - !2347 Removing tests/asyncqueue-test.c from tests/
+ - !2348 gio/tests/codegen.py: bump timeout to 100 seconds
+ - !2349 Annotate `g_getenv()` and `g_environ_getenv()` return value as `nullable`
+ - !2352 tests: Fix a flaky wait in converter-stream
+ - !2353 Address some oddities around GResolver::reload
+ - !2357 ci: Upgrade to clang-format-11 from clang-format-7
+ - !2360 meson: specify when commands need to succeed in run_command
+ - !2364 tests: Allow `objcopy --help` to fail, because it fails on FreeBSD
+ - !2365 Add vfunc checks in gappinfo.c
+ - !2368 De-duplicate g_nearest_pow() implementation and add some overflow protections to g_ptr_array_maybe_expand(), g_string_maybe_expand() and g_string_chunk_insert_len()
+ - !2370 gqsort: Move test to glib/tests/
+ - !2371 Freeze notification during object destruction
+ - !2372 docs: Improve GVariant docs
+ - !2373 glib.supp: Suppress one-time allocation in g_get_home_dir()
+ - !2376 GSource: move test to glib/tests/
+ - !2379 Merging tests/bit-test.c into glib/tests/utils.c
+ - !2381 tests: Test the function forms of g_bit_*() APIs too
+ - !2382 gfileutils: Correctly reset start value when canonicalising paths
+ - !2385 gfileutils: Fix transfer annotation and whitespace issues
+ - !2386 docs: Add API documentation links to the README
+ - !2387 docs: Update the README a little
+ - !2390 Merging tests/child-test.c into glib/tests/spawn-multithreaded.c
+ - !2391 Removing redundant cxx test tests/cxx-test.cpp
+ - !2392 Move tests/completion-test.c to glib/tests/completion.c
+ - !2393 Removing unnecessary test on gdatetime.c
+ - !2396 fuzzing: Add a fuzz test for parsing DNS records
+ - !2397 Moving tests/dirname-test.c to glib/tests/fileutils.c
+ - !2398 fix /list/position test
+
+* Translation updates:
+ - Croatian
+ - Friulian
+ - Galician
+ - Hebrew
+ - Indonesian
+ - Italian
+ - Latvian
+ - Lithuanian
+ - Occitan (post 1500)
+ - Persian
+ - Polish
+ - Portuguese
+ - Portuguese (Brazil)
+ - Romanian
+ - Russian
+ - Serbian
+ - Slovak
+ - Spanish
+ - Swedish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.70.0
+==================================
+
+* Bugs fixed:
+ - !2248 ci: Replace FreeBSD 11 with FreeBSD 13
+
+* Translation updates:
+ - Croatian
+ - Danish
+ - English (United Kingdom)
+ - French
+ - German
+ - Hungarian
+ - Polish
+ - Swedish
+ - Turkish
+
+
+Overview of changes in GLib 2.69.3
+==================================
+
+* Bugs fixed:
+ - #2425 g_settings_schema_key_range_check() misbehaves for int versus bool
+ - #2472 Compiling anything with GCC <4.6 spews deprecation warnings
+ - #2477 `g_invoke_closure` bindings API break.
+ - #2481 GPowerProfileMonitorPortal does not notice initial power-saver-enabled status
+ - !2219 doc: Explicitly said, that no null term. is needed
+ - !2238 ci: Use C.UTF-8 locale on FreeBSD 12
+ - !2240 gio: Fix conditions in memory-monitor test
+
+* Translation updates:
+ - Basque
+ - Catalan
+ - Chinese (China)
+ - Galician
+ - Kazakh
+ - Korean
+ - Lithuanian
+ - Romanian
+
+
+Overview of changes in GLib 2.69.2
+==================================
+
+* The `DBUS_SESSION_BUS_ADDRESS` environment variable is once more not used if
+  the process is `AT_SECURE` (setuid/setgid/setcap); this change was previously
+  applied and then reverted because it broke gnome-keyring (#2316)
+
+* Add `g_test_fail_printf()`, `g_test_skip_printf()`,
+  `g_test_incomplete_printf()` helper functions for printing messages when tests
+  end prematurely (work by Simon McVittie) (!2215)
+
+* Add portal implementation of `GPowerProfileMonitor` (work by
+  Bastien Nocera) (!2222)
+
+* Bugs fixed:
+ - #2316 Re-harden DBUS_SESSION_BUS_ADDRESS for AT_SECURE processes in GLib 2.70
+ - #2343 Document explicitly refcount mgmt of source-object during GAsyncReadyCallbacks
+ - #2454 Read past the end of buffer in g_win32_package_parser_enum_packages
+ - #2456 Frequent test failure on FreeBSD: glib/tests/thread-pool.c:197:test_thread_pool_full: 'free_func_called' should be TRUE
+ - !2157 tests: Add missing wakeup calls to gdbus-names test
+ - !2165 docs: Mention the stable/unstable support version in README.md
+ - !2211 Improve documentation of various TLS stuff
+ - !2215 gtestutils: Add more convenience functions
+ - !2216 tests: Fix error handling when testing gtestutils
+ - !2222 gio: Add portal version of GPowerProfileMonitor
+ - !2224 Docs: Mention that G_VA_COPY() must be followed by `va_end()`
+ - !2225 build: Fix implicit declaration of function errors
+ - !2226 Annotate the GString constructors
+
+* Translation updates:
+ - Czech
+ - Hebrew
+ - Slovenian
+ - Spanish
+ - Swedish
+
+
+Overview of changes in GLib 2.69.1
+==================================
+
+* Support categories in desktop notifications (`GNotification`)
+  (work by Guido Günther) (#2446)
+
+* Add `GPowerProfileMonitor` for monitoring when to use less power (due to being
+  on battery power, electricity being expensive or high-carbon, etc.)
+  (work by Patrick Griffis, Bastien Nocera) (#2444)
+
+* Allow static names to be set for `GSource`s to avoid unnecessary string copies
+  (work by Matthias Clasen) (!2196)
+
+* Bugs fixed:
+ - #203 API: need g_module_open() variant with GError
+ - #2058 win32: GPrivate can leak some objects
+ - #2321 Add a GTypeFlag for final types
+ - #2429 safe_fdwalk/safe_closefrom for Solaris 11.3/11.4
+ - #2439 gio trash doesn't recognize existing trash directory in non-fs-root mount
+ - #2446 Support `categories` for notifications
+ - #2452 g_string_replace() loops 2**32 times when replacing empty string
+ - !2177 gio/tests/g-file-info: don't assume million-in-one events don't happen
+ - !2178 Clarify GValue documentation
+ - !2179 Update GValue doc: How to use GBoxed with GValue
+ - !2180 correctly use 3 parameters for close_range
+ - !2181 gclosure: Fix the invoke() return_value annotation
+ - !2182 glocalfileinfo: Fix usec/nsec confusion with filetimes on Windows
+ - !2184 gspawn: Use CLOSE_RANGE_CLOEXEC if available
+ - !2188 g_boxed_type_register_static, G_DEFINE_BOXED_TYPE: added correlating information
+ - !2192 Fix more warnings
+ - !2193 glib.supp: Expand match kinds for g_get_language_names() suppressions
+ - !2194 Add GPowerProfileMonitor
+ - !2195 Fix some test suite memory leaks
+ - !2196 mainloop: Add g_source_set_static_name
+ - !2197 GResource compiler: Prefix static [con|de]strutors with c_name
+ - !2198 Port internal uses to use g_source_set_static_name()
+ - !2200 Fix doc stanzas for GDataInputStream properties
+ - !2201 Fix a Unicode typo
+ - !2202 Document the stance on ID-based mainloop APIs
+ - !2204 tests: Add a test for Unicode normalization
+ - !2205 GWin32RegistryKey / GWin32AppInfo registry watch fixes
+ - !2206 Adapt documentation to gi-docgen
+ - !2210 GWin32AppInfo: Fix missing initialization
+
+* Translation updates:
+ - Indonesian
+ - Portuguese
+ - Portuguese (Brazil)
+ - Russian
+ - Ukrainian
+
+
+Overview of changes in GLib 2.69.0
+==================================
+
+* Fix a crash in `GKeyFile` when parsing a file which contains translations
+  using a `GKeyFile` instance which has loaded another file previously (#2361)
+
+* Pin GIO DLL in memory on Windows (!2016)
+
+* Fix building third-party projects against GLib on CentOS 7 (work by
+  Ignacio Casal Quinteiro) (#2387)
+
+* Add `g_thread_pool_new_full()` API to allow queued `GThreadPool` data to be
+  freed if the pool is freed early (work by Nitin Wartkar) (#121)
+
+* Ensure `dlerror()` is used with locking as it’s not thread-safe in some libc
+  implementations (#399)
+
+* Add `g_dbus_is_error_name()` and `g_dbus_is_interface_name()` convenience
+  functions (work by Nitin Wartkar) (#402)
+
+* Drop internal libpcre copy in favour of a subproject from wrapdb (#962, #642)
+
+* Add `g_prefix_error_literal()` helper function (work by Emmanuel Fleury,
+  building on work by Dan Williams) (#663)
+
+* Add `g_bytes_get_region()` to get data from a `GBytes` with range checks
+  (work by Nitin Wartkar, building on work by Allison Karlitskaya) (#1098)
+
+* Add `g_object_take_ref()` to sink a floating ref (work by Nitin Wartkar,
+  building on work by Allison Karlitskaya) (#1112)
+
+* Optimise grefcount atomic operations (work by Nishal Kulkarni) (#1583)
+
+* Fix resolving child GSettings schemas from the parent’s schema source (work
+  by Christian Persch) (#1884)
+
+* Fix `g_date_time_format()` return value encoding if `LC_TIME` is not a UTF-8
+  locale but other locale settings are (work by Frederic Martinsons) (#2055)
+
+* Set app name in freedesktop.org notifications with `GNotification` (work
+  by André Apitzsch) (#2069)
+
+* Significantly improve retrieval of mount data on Windows (work by LRN based
+  on initial analysis by Jehan Pagès) (#2096)
+
+* Add `g_file_info_get_(access|creation)_date_time()` accessors (work
+  by Abanoub Ghadban) (#2281)
+
+* Always apply the remove_dot_segments algorithm to URIs in `g_uri_parse()`;
+  previously it was only applied to relative URIs (work
+  by Carlos Garcia Campos) (#2342)
+
+* Rename git `master` branch to `main` (#2348)
+
+* Various macro and version check cleanup (work by Gaël Bonithon,
+  Robin Verdenal-Tallieux, Nishal Kulkarni) (#2376, #2388, #2389)
+
+* Add a `GTlsConnectionClass.get_negotiated_protocol` vfunc so that
+  `g_tls_connection_get_negotiated_protocol()` can be made thread-safe
+  (work by Michael Catanzaro) (#2393)
+
+* Improve guess about whether a Windows process is a console process
+  (work by Princeton Ferro with input from LRN) (!1662)
+
+* Add `g_steal_fd()` function (work by Simon McVittie) (!1966)
+
+* Add `g_spawn_check_wait_status()` and distinguish more carefully between
+  wait status and exit status in the `GSpawn` API (work by Simon McVittie) (!1967)
+
+* Document GLib’s security policy; see
+  https://gitlab.gnome.org/GNOME/glib/-/blob/main/SECURITY.md (!1985)
+
+* Add `g_tree_remove_all()` (work by Lighto-Ku) (!1986)
+
+* Simplify exception handling on Windows to eliminate risk of it failing due
+  to prior heap corruption (work by LRN) (!2031)
+
+* Fix handling EOF when reading from SOCKS5 proxy stream (work
+  by Benjamin Berg) (!2032)
+
+* Unset the registered state of a `GApplication` after it has shut down (work
+  by Marco Trevisan) (!2056)
+
+* Support `GPattern` as a boxed type (work by Marco Trevisan) (!2066)
+
+* Add `g_tls_connection_get_protocol_version()` and
+  `g_tls_connection_get_ciphersuite_name()` to get TLS connection information
+  (work by Michael Catanzaro) (!2077)
+
+* Make TLS private key properties readable in `GTlsCertificate` (work
+  by Michael Catanzaro) (!2087)
+
+* Fix detection of static libintl when building on macOS (work
+  by Jonas Hahnfeld) (!2109)
+
+* Add `g_strv_builder_addv()` and `g_strv_builder_add_many()` to the
+  `GStrvBuilder` API (work by Alexandros Theodotou) (!2112)
+
+* Add `not-valid-before`, `not-valid-after`, `subject-name`, `issuer-name`,
+  `dns-names`, `ip-addresses` properties to `GTlsCertificate`
+  (work by Ross Wollman) (!2113, !2142)
+
+* Add PKCS#11 flags to `GTlsPasswordFlags` (work by Patrick Griffis) (!2126)
+
+* Bugs fixed:
+ - #121 GThreadPool and the ability to free data waiting to be handled
+ - #229 g_match_info_fetch_named not return empty string as expected
+ - #310 ref doc doesn't talk about "helper getters" optimization in g_file_info.c
+ - #399 dlerror() not thread-safe in all libc, making gmodule-dl.c's fetch_dlerror fail sometimes
+ - #402 please consider: #define g_dbus_is_error_name(x) g_dbus_is_interface_name (x)
+ - #626 Add documentation example for GArray and g_array_set_clear_func()
+ - #642 update to pcre 8.35+
+ - #663 [patch] add g_prefix_error_literal()
+ - #793 Potentially confusing error message when object doesn't exist
+ - #817 gobject: Allow passing %NULL for @data in g_object_remove_toggle_ref
+ - #962 drop embedded pcre copy
+ - #1036 gdbusproxy stops tracking if dbus service restarts
+ - #1098 GBytes: add range-checked pointer getter
+ - #1112 GObject: add g_object_take_ref()
+ - #1583 Optimise gatomicrefcount operations
+ - #1864 Somewhat misleading documentation of GSourceFuncs
+ - #1884 `g_settings_get_child` not compatible with `g_settings_schema_source_new_from_directory`
+ - #2011 Add additional unit tests for D-Bus name watching
+ - #2055 g_date_time_format() does not return UTF-8 if LC_TIME is not UTF8 but other locale settings are UTF-8
+ - #2069 FreedesktopNotification fails to set app_name
+ - #2096 SHGetFileInfoW() is not reliable (time-wise)
+ - #2281 Add g_file_info_get_(access|creation)_date_time()
+ - #2300 Crash on Windows MSVC build around gio
+ - #2311 testfilemonitor test leaks ip_watched_file_t struct
+ - #2340 GIO tests fail to build with clang-cl
+ - #2342 g_uri_parse doesn't apply the remove_dot_segments algorithm to the path
+ - #2348 Investigate renaming master git branch to main
+ - #2352 RUN_FIRST | RUN_CLEANUP signals with a default handler ignore return values from user handlers
+ - #2359 GLib 2.68.0: gio-querymodules segfaults on Windows
+ - #2361 g_key_file_load_from_file segfaults on "Key[*]="like lines
+ - #2363 g_newa() doesn’t check for multiplication overflow
+ - #2368 g_task_run_in_thread () limits are not clear
+ - #2369 glocalfile: Add native exfat magic number to  filesystem list
+ - #2376 GLIB_VERSION_MAX_ALLOWED < 2.60 does not warn when using G_GNUC_FALLTHROUGH
+ - #2387 json-glib does not build with glib 2.68.1
+ - #2388 Pixman compilation error due to glib
+ - #2389 Use G_GNUC_CHECK_VERSION to check the GNUC version
+ - #2393 g_tls_connection_get_negotiated_protocol() is not threadsafe
+ - #2397 Slow to list device in windows
+ - #2399 Change spelling of ‘serialise’ to ‘serialize’ in documentation
+ - #2405 Mention that GNotification requires an installed .desktop file to work
+ - #2409 Project crashes when executing g_application_mark_busy
+ - #2414 Devhelp: Glib Reference Manual/Glib Overview/Running Glib Applications formatting issue.
+ - #2416 certificate: g_tls_certificate_new_from_pem invalid read on non null terminated data
+ - #2417 GFile: `g_file_replace_contents()` reports `G_IO_ERROR_WRONG_ETAG` when saving from a symlink
+ - #2418 gatomic: __atomic functions are called for CV-qualified output variables
+ - #2423 resources.c:656:test_resource_binary_linked: 'found' should be TRUE
+ - !1514 gbookmarkfile: Don't crash if we're not visited
+ - !1662 gspawn-win32: improve guess whether process is console process
+ - !1812 docs: Expand documentation about D-Bus GUIDs
+ - !1957 Fix more warnings
+ - !1965 gversionmacros: Add version macros for GLib 2.70
+ - !1966 Add g_steal_fd() to API
+ - !1967 Distinguish more clearly between wait status and exit status
+ - !1969 glib_typeof: Move definition to its own header
+ - !1985 docs: Add a policy for handling security issues
+ - !1986 make g_tree_remove_all public
+ - !1996 Include glibconfig.h to get the G_OS_UNIX token
+ - !1998 gpollableinputstream: Add missing annotation
+ - !1999 goption.c: Simplfy parse_short_option()
+ - !2004 Some improvements to clang-cl builds
+ - !2005 introspection: Remove 'caller-allocates' from POD types
+ - !2006 fuzzing: Add fuzz tests for functions which parse paths
+ - !2008 tests: Deactivate tls-bindings test suite for windows
+ - !2011 docs: Fix example program link
+ - !2012 docs: Replace git.gnome.org with gitlab.gnome.org urls
+ - !2013 fuzzing: Fix assertion failure in fuzz_paths.c
+ - !2016 GIO W32: Pin gio DLL
+ - !2023 gtlspassword: Fix g-i annotation of return for g_tls_password_get_value
+ - !2025 [th/gdbus-cleanup] two minor cleanup patches for gdbusconnection.c
+ - !2026 Split g_test_log() messages that contain multiple lines
+ - !2027 Fix a handful of minor leaks found by Coverity
+ - !2030 Fix more warnings
+ - !2031 Re-simplify exception handling on Windows
+ - !2032 gsocks5proxy: Handle EOF when reading from a stream
+ - !2033 Fix annotation of count arguments
+ - !2036 gmacros.h: use G_GNUC_CHECK_VERSION
+ - !2038 Fix more warnings
+ - !2039 Implement G_ANALYZER_NORETURN for Coverity
+ - !2040 Fix more warnings
+ - !2041 refcount: Clarify when the ref count ends up undefined
+ - !2042 grefcount: Clarify that the initial reference count is 1
+ - !2043 gmacros.h: use g_macro__has_attribute() where possible
+ - !2046 gerror: Clarify docs around message requirements
+ - !2047 Fix more warnings
+ - !2048 Fix more warnings
+ - !2049 Fix typo in g_socket_listener_accept_async()'s comment
+ - !2050 gdbus: document completion after idle action for g_dbus_connection_signal_unsubscribe()
+ - !2051 Add nullable annotations in GUnixMountEntry
+ - !2052 g_string_replace(): Fix documentation of 'limit' parameter
+ - !2054 docs: Fix formatting of code block
+ - !2055 Improve handling of FILENAME_MAX
+ - !2056 application: Unset the registered state after shutting down
+ - !2063 Fix more warnings
+ - !2066 gpattern: Register as Boxed type and support introspection for it
+ - !2067 gmacros: missing check if __STDC_VERSION__ is defined
+ - !2069 gdbus-tool: Actually use argv[0] basename as program name
+ - !2071 gstring: Cleanup documentation of g_string_replace
+ - !2074 Fix more warnings
+ - !2075 gdtlsconnection: Fix a check for a vfunc being implemented
+ - !2077 tls: add functions to get protocol version and ciphersuite name
+ - !2078 gthreadedresolver: don't ignore flags in lookup_by_name_with_flags
+ - !2080 guuid: fix shift operation to parse hex string in uuid_parse_string()
+ - !2081 Fix more warnings
+ - !2085 gcredentials.h: Fix comment typo
+ - !2087 gtlscertificate: make private key properties readable
+ - !2088 Fix more warnings
+ - !2090 docs: Standardize spelling of serializ*
+ - !2091 Fix more warnings (clang)
+ - !2098 grefcount: Optimise g_atomic_ref_count_dec
+ - !2099 gmacros.h: G_NORETURN: remove useless checks
+ - !2100 tests: Add missing return value check in string test
+ - !2101 Fix more warnings
+ - !2104 tests: Drop use of g_test_bug_base()
+ - !2105 tests: Use a temporary file in the bookmarkfile tests
+ - !2106 Fix more warnings
+ - !2108 glib spawn-singlethread test only if F_DUPFD_CLOEXEC is defined
+ - !2109 meson: Fix detection of static libintl on macOS
+ - !2112 gstrvbuilder: add addv and add_many to the API
+ - !2113 tls: expose cert details on GTlsCertificate
+ - !2119 Fix more warnings
+ - !2120 gdbusobjectmanagerclient: Call GetManagedObjects async
+ - !2123 gdbus: Add various missing (nullable) or (not nullable) annotations
+ - !2126 gtlspassword: Add flags signifying PIN type for PKCS#11
+ - !2127 gutils: ensure g_find_program_in_path() return an absolute path
+ - !2130 Revert "tests: Deactivate tls-bindings test suite for windows"
+ - !2139 gdbus, win32: Fix accidental dllexport in static builds
+ - !2142 tls: expose SAN details on GTlsCertificate
+ - !2143 compiling.xml: Don't recommend backticks
+ - !2144 pcre: Drop internal libpcre copy
+ - !2145 gunixmounts: Document NULL return value for g_unix_mount_for()
+ - !2152 tests: A few small improvements to GBytes tests
+ - !2153 docs: Fix annotations for optional arguments
+ - !2155 glocalfilemonitor: Avoid a deadlock on finalization
+ - !2162 testgdate: fix -Wmisleading-indentation warning
+ - !2166 gtlscertificate: Add more annotations to new properties
+ - !2167 g_value_set_string description: clarified (unified), that v_string is a copy.
+ - !2173 gasyncqueue: Add missing (nullable) annotation to free function
+ - !2174 data-to-c.py: generate new-line at the end of the file
+
+* Translation updates:
+ - Chinese (China)
+ - English (United Kingdom)
+ - Hebrew
+ - Nepali
+ - Occitan (post 1500)
+ - Serbian
+
+
+Overview of changes in GLib 2.68.0
+==================================
+
+* Bugs fixed:
+ - !1987 build: Drop gconstructor_as_data_h usage from glib-compile-schemas
+ - !1989 glib.supp: Generalize some suppressions
+ - !1992 gbytesicon: Fix error in g_bytes_icon_new() documentation
+ - !1994 glocalfileoutputstream: Tidy up error handling
+ - !1995 tests: Fix copy/paste error in queue test
+
+* Translation updates:
+ - Czech
+ - Finnish
+ - Italian
+ - Korean
+ - Lithuanian
+ - Polish
+ - Romanian
+ - Slovenian
+ - Turkish
+
+
+Overview of changes in GLib 2.67.6
+==================================
+
+* Fix a security issue when using `g_file_replace()` with
+  `G_FILE_CREATE_REPLACE_DESTINATION` (#2325)
+
+* Disallow operations on the empty path with `g_file_new_from_path()` (#2328)
+
+* Various fixes for GLib when building with clang-cl on Windows (work by
+  Aleksandr Mezin) (#2341, #2344)
+
+* Bugs fixed:
+ - #2325 file-roller symlink attack
+ - #2327 Teach glib-mkenums about GLIB_AVAILABLE_ENUMERATOR_IN_2_68, and start using it
+ - #2328 g_file_new_for_path("") yields CWD, which seems wrong
+ - #2341 glib-genmarshal output is sometimes empty because output file is not closed
+ - #2344 c_std=c11: gbitlock.c: ‘asm’ undeclared
+ - !1962 Validate D-Bus machine ID after loading
+ - !1976 Use the right permissions for directory watching on Win32
+ - !1977 gio/tests/{meson.build,pollable.c}: Determine libutil SONAME at build time
+ - !1980 glib.supp: Add another system thread suppression
+
+* Translation updates:
+ - Basque
+ - Catalan
+ - Czech
+ - French
+ - Galician
+ - German
+ - Hungarian
+ - Indonesian
+ - Korean
+ - Latvian
+ - Portuguese
+ - Portuguese (Brazil)
+ - Serbian
+ - Spanish
+ - Swedish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.67.5
+==================================
+
+* Fix more issues with `glib_typeof` macro from 2.67.3–2.67.4 (work by
+  Iain Lane, Simon McVittie) (#2331, !1975)
+
+* Fix regression with some FD mappings passed to `g_subprocess_launcher_spawnv()`
+  caused by changes for #2097 in GLib 2.67.4 (work by Olivier Fourdan,
+  Philip Withnall) (#2332)
+
+* Fix detection of `str[n]casecmp()` when building with `clang-cl` (work by
+  Aleksandr Mezin) (#2337)
+
+* Use zlib from subproject if configured with `wrap_mode=forcefallback` (work by
+  Seungha Yang) (!1959)
+
+* Bump Visual Studio compilation requirement to VS 2012, and Windows 8 SDK for
+  GLib 2.67.x onwards (work by Chun-wei Fan) (!1970)
+
+* Bugs fixed:
+ - #832 Some tweaks re: GRWLock
+ - #2331 glib 2.67.3: <glib.h> can no longer be included in extern "C" blocks
+ - #2332 Glib 2.67.4 causes gnome-shell to exit when spawning Xwayland on demand
+ - #2333 Missing relation between g_file_info_get_size() and G_FILE_ATTRIBUTE_STANDARD_SIZE attribute in documentation
+ - #2337 Linking fails when building with clang-cl because of str[n]casecmp
+ - !1936 tests: Fix leak of dlopened module in pollable test
+ - !1954 Change SkipAsyncData fields to be gsize (and not gssize)
+ - !1956 The ETag returned by various GFile functions is nullable
+ - !1959 meson: Use subproject zlib if "wrap_mode=forcefallback" was specified
+ - !1961 gkeyfilesettingsbackend: check for errors when creating file monitors
+ - !1970 README.win32.md: Mention about Window 8+ SDK requirement
+ - !1971 gio/tests/pollable.c: Fix build on non-Linux UNIX
+ - !1975 gatomic.h: Make `glib_typeof` API break opt in.
+
+* Translation updates:
+ - Basque
+ - Danish
+ - English (United Kingdom)
+ - Galician
+ - German
+ - Indonesian
+ - Lithuanian
+ - Portuguese
+ - Portuguese (Brazil)
+ - Slovenian
+
+
+Overview of changes in GLib 2.67.4
+==================================
+
+* Add a `g_string_replace()` function (work by Joshua Lee) (#225)
+
+* Add `G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER` flag to simplify
+  the common case for writing a D-Bus authentication observer, allowing most
+  uses of `GDBusAuthObserver` to be dropped (#1804)
+
+* Add a new `g_spawn_with_pipes_and_fds()` variant which supports renumbering
+  FDs (#2097)
+
+* Add new g_memdup2() API to replace g_memdup(), which is vulnerable to a
+  silent integer truncation and heap overflow problem if not used carefully
+  (discovered by Kevin Backhouse, work by Philip Withnall) (#2319)
+
+* Fix various regressions caused by rushed security fixes in 2.66.6 (work by
+  Simon McVittie and Jan Alexander Steffens) (!1932, !1941, #2323)
+
+* Fix a silent integer truncation when calling g_byte_array_new_take() for
+  byte arrays bigger than G_MAXUINT (work by Krzesimir Nowak) (!1942)
+
+* Fix `g_utf8_strdown()` to fix some issues in Turkish
+  (work by Kjell Ahlstedt) (!1930)
+
+* Bugs fixed:
+ - #225 GString doesn't have a g_string_replace() function
+ - #587 g_input_stream_skip() out-of-bounds behavior is inconsistent between implementations
+ - #1804 Add G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER flag
+ - #2097 GSubprocessLauncher with FD assignment can clash with g_spawn_async internal pipe
+ - #2315 httpproxy: Need overflow protection when reading response during connection establishment
+ - #2319 CVE-2021-27219 (GHSL-2021-045): integer overflow in g_bytes_new/g_memdup
+ - #2322 g_test_dbus: double output when piping
+ - #2323 [GLIB 2.66.6] g_io_channel_set_line_term() stopped working with null terminated strings and length -1
+ - !1917 Adding a missing test on integer overflow within g_http_proxy_connect()
+ - !1918 Fix more warnings
+ - !1923 Add support for Tilix and Konsole
+ - !1930 guniprop: Fix g_utf8_strdown() for Turkish locale
+ - !1932 gtlspassword: Fix inverted assertion
+ - !1934 gdbus: Reject attempts to set future connection or server flags
+ - !1938 Fix more warnings
+ - !1939 ci: Temporarily disable macOS CI job as runner is offline
+ - !1940 Fix more warnings
+ - !1941 gkeyfilesettingsbackend: Fix basename handling when group is unset
+ - !1942 CVE-2021-27218: gbytearray: Do not accept too large byte arrays
+ - !1947 Revert "Merge branch 'wip/pwithnall/macos-ci-disable' into 'master'"
+ - !1948 tests: Use a more realistic language code than sv_SV
+ - !1949 gatomic: Make fallback g_atomic_pointer_get type-safe
+ - !1951 Add a test for parsing 0 as double
+ - !1955 tests: Add missing NULL terminator to spawn-singlethread test
+
+* Translation updates:
+ - Catalan
+ - Galician
+ - Hungarian
+ - Portuguese
+ - Romanian
+ - Slovenian
+ - Spanish
+ - Swedish
+ - Turkish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.67.3
+==================================
+
+* Add new `g_memdup2()` API to replace `g_memdup()`, which is vulnerable to a
+  silent integer truncation and heap overflow problem if not used carefully
+  (discovered by Kevin Backhouse, work by Philip Withnall) (#2319)
+
+* Add new `g_dbus_object_path_escape()` and `g_dbus_object_path_unescape()` APIs
+  to provide one way of escaping arbitrary bytestrings for use in D-Bus object
+  paths (work by Lars Karlitski and Frederic Martinsons) (#968)
+
+* Use `bash-completion.pc` (if available) to provide the path to install
+  completion files into (work by Frederic Martinsons) (#1054)
+
+* Fix support for public/private trigraphs in `glib-mkenums` (work by Matthias Klumpp) (!1870)
+
+* Add `glib_debug` configure option to allow disabling debug infrastructure in
+  builds with debug symbols enabled (work by Ole André Vadla Ravnås) (!1889)
+
+* Fix a regression where `PATH` would always be searched when using `g_spawn()`,
+  even when it wasn’t supposed to (work by Simon McVittie and Thomas Haller) (!1902)
+
+* Override `gio-querymodules` in Meson when used as a submodule (work by Xavier Claessens) (!1909)
+
+* Bugs fixed:
+ - #344 gdbus(1) command-line completion issues
+ - #968 gdbus: add g_dbus_object_path_{un,}escape
+ - #1054 Use pkg-config to get path for bash-completion file installation
+ - #1180 GUnixInputStream and GUnixOutputStream don't consider TTYs pollable
+ - #2011 Add additional unit tests for D-Bus name watching
+ - #2226 clang++ compilation fails on clusterfuzz
+ - #2292 Cannot find a common ancestor when running CI style check jobs
+ - #2299 GObject introspection annotation of g_closure_new_object() is wrong
+ - #2305 GIO security hardening causing gnome-keyring to regress when session bus is provided by dbus-launch (dbus-x11)
+ - #2314 gdatetime: math library link issue
+ - #2319 GHSL-2021-045: integer overflow in g_bytes_new/g_memdup
+ - !610 Various memory leak cleanups to GSettings tests
+ - !1804 Add more GIR annotations to gparam.c and gsignal.c
+ - !1823 Fix more warnings
+ - !1843 gfile: Add Linux kernel headers compatibility kludge
+ - !1847 Port to QNX
+ - !1853 ginetaddress: Handle systems without IPv6 support
+ - !1859 docs: update g_action_group_activate_action() remote activation semantics
+ - !1860 glocalfile: Fix an uninitialized variable
+ - !1865 tests: Add more debug information to gdbus-connection-slow
+ - !1868 gdesktopappinfo: Fix validation of XDG_CURRENT_DESKTOP
+ - !1870 mkenums: Support public/private trigraph again
+ - !1873 Fix possible integer overflow of g_socket_send_message()
+ - !1876 Fixing g_socket_send_message() documentation to make it clearer
+ - !1877 Fix more warnings
+ - !1878 Another fix on g_socket_send_message()
+ - !1879 Fix more warnings
+ - !1880 GError documentation tweaks
+ - !1881 docs: Move ‘Notes’ section from README to NEWS
+ - !1883 gutils: Document caching of XDG directory variables
+ - !1884 gthread-win32: Use SetThreadDescription Win32 API for setting thread name
+ - !1887 ci: Fix msys-mingw32 CI builds due to package rename
+ - !1888 docs: Add documentation for GLIB_VERSION_CUR_STABLE and PREV_STABLE
+ - !1889 build: Add glib_debug option
+ - !1890 gtype: Improve formatting of GType documentation
+ - !1891 Fix more warnings
+ - !1893 gwin32appinfo: Fix printf length sub-specifier
+ - !1894 gsocket: Fix SO_NOSIGPIPE regression on Darwin
+ - !1898 gtestutils: Add g_test_get_path() API
+ - !1899 m4macros: replace obsolete macros AC_TRY_RUN and AC_TRY_LINK in glib-2.0.m4
+ - !1900 [th/gsignal-cleanup] minor changes to GSignal related code
+ - !1901 Check if the remote already exists before adding it.
+ - !1902 spawn: Don't set a search path if we don't want to search PATH
+ - !1903 m4macros: Increment serial number of glib-2.0.m4
+ - !1905 Start to ignore known leaks under AddressSanitizer
+ - !1906 gdbus-serialization: Don't leak string containing first serialization
+ - !1908 Fix straightforward memory leaks in tests
+ - !1909 Meson: override gio-querymodules program
+ - !1910 gio: Add explicit virtual g-i annotations for undiscovered invoker relationship
+ - !1911 Fix more warnings
+ - !1915 Mark g_key_file_get_comment() key parameter as nullable
+ - !1919 atomic: Fix type check of g_atomic_pointer_compare_and_exchange()
+ - !1921 guri: Mark g_uri_get_host as nullable
+ - !1925 gapplication: Fix a memory leak
+
+* Translation updates:
+ - Czech
+ - Friulian
+ - Galician
+ - Hungarian
+ - Portuguese
+ - Portuguese (Brazil)
+ - Romanian
+ - Spanish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.67.2
+==================================
+
+* Add `gio launch` command to execute programs (work by Frederic Martinsons) (#54)
+
+* Fix unused parameter warnings in code generated by `gdbus-codegen` (work by Frederic Martinsons) (#1105)
+
+* Officially deprecate `to-pixdata` option for `glib-compile-resources`, in favour
+  of simply embedding more modern image formats in linked-in `GResource` files (#1281)
+
+* Support querying and running UWP applications on Windows (work by LRN) (#1991)
+
+* Support `gio trash --restore` and `gio trash --list` commands (work by Frederic Martinsons) (#2098)
+
+* No longer read environment variables for GIO module locations when running as setuid (#2168)
+
+* More progress on fixing compiler warnings (work by Emmanuel Fleury) (!1773 and others)
+
+* `GKeyFile` performance improvements (work by Timm Bäder) (!1829, !1832)
+
+* Improve UDP socket behaviour on Windows (work by Marco Mastropaolo and Ole André Vadla Ravnås) (!1827, !1844)
+
+* Add `-Dtests` meson configure option for disabling tests entirely (work by Ole André Vadla Ravnås) (!1850)
+
+* Bugs fixed:
+ - #54 Add `gio launch` command to execute .desktop files
+ - #513 GSignal: Impossible to have return values in signals which are G_SIGNAL_RUN_FIRST only
+ - #514 GSignal: Only limited usage of accumulator function possible
+ - #1105 gdbus-codegen: fix some unused parameter warnings
+ - #1188 Crash in gapplication.c:1014 when reading error message if dbus_register returns false without setting error
+ - #1281 Update glib-compile-resources and GResource docs to deprecate/remove to-pixdata in stable/master resp.
+ - #1283 gvfs-trash error message when unable to create trash directory is unhelpful
+ - #1568 GObject tutorial does not mention floating references
+ - #1991 W32: Glib cannot run UWP applications
+ - #2098 gio trash: restore trashed files to their original location
+ - #2168 giomodule: Loads GIO modules even if setuid, etc.
+ - #2264 GPtrArray might call qsort() with NULL data
+ - #2265 2.67.1 regression: assertion failure starting gnome-terminal
+ - #2275 gio/completion/gio: Some variables are not localized
+ - #2279 g_source_is_destroyed example uses deprecated GDK API
+ - !1304 Extended error
+ - !1773 Fix more warnings
+ - !1783 gtlsdatabase: remove duplicate precondition check
+ - !1784 fuzzing: Add more fuzzing tests for various string parsing functions
+ - !1785 glocalfile: Add an assertion to help static analysis
+ - !1787 Debuggability improvements in gosxappinfo.m
+ - !1788 gdate: Validate input as UTF-8 before parsing
+ - !1791 gdatetime: Disallow NAN as a number of seconds in a GDateTime
+ - !1794 gio-tool-info: Prevent criticals if mount options are not available
+ - !1796 gfileutils: Fix typo in docs
+ - !1797 gdatetime: Improve ISO 8601 parsing to avoid floating point checks
+ - !1801 glib: Add more missing return value annotations
+ - !1802 gobject: More missing return value annotations
+ - !1806 tests: Add some rounding tolerance in timeout test
+ - !1807 python: Reformat some files to keep style-check-diff happy
+ - !1808 tests: Be more lenient with timing checks on asyncqueue pops
+ - !1810 gfileinfo: Add missing preconditions to g_file_info_get_attribute_data()
+ - !1811 Add more missing nullable annotations
+ - !1813 gdbus-codegen: Ignore some flake8 warnings
+ - !1815 Fix more warnings
+ - !1816 fuzzing: Add more GUriFlags to the URI parsing test
+ - !1817 fuzzing: Add more parsing flags to the GKeyFile test
+ - !1818 Fix more warnings
+ - !1819 Fix more warnings
+ - !1821 gdate: Limit length of dates which can be parsed as valid
+ - !1822 Fix more warnings
+ - !1827 Windows: fix FD_READ condition flag still set on recoverable UDP socket errors.
+ - !1829 keyfile: Delay calling g_get_language_names() until it's needed
+ - !1830 gsocket: Fix credentials error-handling on Apple OSes
+ - !1832 More small GKeyFile performance improvements
+ - !1834 Update gvdb
+ - !1837 gdatetime.c: Fix MSVC builds for lack of NAN items
+ - !1838 Minor improvements to GError documentation
+ - !1840 Add nullable annotation for g_file_get_uri_scheme
+ - !1841 gthread: Fix incorrect cast
+ - !1842 gthread: Port native mutex to Clang
+ - !1844 gsocket: Improve default UDP behavior on Windows
+ - !1845 gsocket: Fix use-after-close
+ - !1848 gwin32: Always use unicode APIs
+ - !1850 build: Add option for disabling tests
+ - !1855 build: Fix ssize_t detection on older versions of glibc
+ - !1856 build: Fix Android system checks
+ - !1857 gtestutils: Fix g_assert_not_reached() on MSVC
+ - !1861 More GError tests
+ - !1863 tests: Ignore -Wformat-nonliteral warning in new GError tests
+
+* Translation updates:
+ - Catalan
+ - Galician
+ - German
+ - Lithuanian
+ - Romanian
+ - Spanish
+ - Ukrainian
+
+
+Overview of changes in GLib 2.67.1
+==================================
+
+* Deprecate `g_time_zone_new()` in favour of `g_time_zone_new_identifier()`,
+  which makes error checking easier (#553)
+
+* Remove `volatile` from various public APIs, including `G_DEFINE_*`. You should
+  adjust your code to not use `volatile` for atomic variables, `GOnce`
+  variables, or mostly anything else (see
+  http://isvolatileusefulwiththreads.in/c/). (#600)
+
+* Support passing file handles to `gdbus` command line tool (work by
+  Norbert Pocs and Tim Waugh) (#961)
+
+* Add `g_assert_cmpstrv()` test convenience function (work by Niels De Graef) (#2015)
+
+* Changes to the behaviour of the `G_URI_FLAGS_SCHEME_NORMALIZE` scheme
+  normalization flag in `GUri` (work by Carlos Garcia Campos) (#2257, !1716)
+
+* Add new `--run-prefix` and `--skip-prefix` options to GTest, to allow running
+  or skipping test suites by prefix (work by Frederic Martinsons) (!1738)
+
+* Fix thread-safety of `GBinding`; see the updated documentation for
+  `g_object_bind_property()` for full details — if your code uses `GBinding`
+  across threads, you should re-check it against the latest documentation, use
+  `g_binding_unbind()` rather than implicitly dropping the binding with your
+  last `g_object_unref()` call, and use `g_binding_dup_source()`/`g_binding_dup_target()`
+  instead of `g_binding_get_source()`/`g_binding_get_target()`
+  (work by Sebastian Dröge) (!1745)
+
+* Bugs fixed:
+ - #553 Improved error-handling when timezone lookup fails
+ - #600 Remove "volatile" from G_DEFINE_*
+ - #961 gdbus tool: file handle passing doesn't work
+ - #994 mark g_assert_* as "noreturn" also on MSVC
+ - #1560 Can't get data for empty compressed resources
+ - #1592 Main loop ignores GPollFD sources when there is at least one source ready with priority higher than default one
+ - #1833 meson: reconsider G_DISABLE_CAST_CHECKS handling
+ - #1849 Documentation of g_set_object(): can object_ptr be null?
+ - #1963 Follow-up from "gdbusmessage: Limit recursion of variants in D-Bus messages"
+ - #2015 Add g_assert_cmpstrv() test utility
+ - #2046 Add pylint and shellcheck CI checks
+ - #2074 Big dbus writes with a FD list fail
+ - #2076 g_type_register_fundamental() and g_type_add_interface_static() should not trigger valgrind leak warnings
+ - #2150 Add URI parsing tests from GstURI to GUri
+ - #2221 GLib-GIO:ERROR:../gio/tests/gsocketclient-slow.c:99:on_event: 'connection' should be NULL
+ - #2223 Documentation of g_strrstr_len is misleading; suggested fix
+ - #2233 GSocketClient crashes on connection failure
+ - #2236 Docs: gdbus-codegen example links broken
+ - #2253 In gspawn.c, use sysconf() system call on Mac OS, instead of default maxfiles limit of 4096
+ - #2257 GUri: apply scheme normalization flag consistently
+ - !1251 Improve support for interface types
+ - !1385 gobject: allocate parameter list for g_object_new_valist() entirely on stack
+ - !1629 Add some tracing to GTask
+ - !1699 Fix signedness warnings
+ - !1701 gio: Fix some remaining DocBook syntax in a documentation comment
+ - !1708 gio: Add missing nullable annotations
+ - !1716 guri: Normalize uri segments if they are encoded and add a flag to do scheme-based normalization
+ - !1722 gio: Fix various typos of the name ‘D-Bus’
+ - !1724 glib/tests/fileutils: Fix expectations when running as root
+ - !1726 gdbus: Document the intended semantics of handles and fdsTim Waugh
+ - !1731 Make more use of g_assert_no_errno()
+ - !1733 gdbusauthmechanismsha1: Don’t create keyring dir when running as setuid
+ - !1734 glocalfileinfo: Use a single timeout source at a time for hidden file cache
+ - !1735 gobject: Standardise on the term ‘instantiatable’
+ - !1737 gscanner: Avoid undefined behaviour copying between union members
+ - !1738 Extend the usage of -p option for glib test framework
+ - !1740 Fix more warnings
+ - !1745 Make GBinding thread-safe (alternative approach)
+ - !1746 gkeyfilesettingsbackend: improve error-checking
+ - !1747 Fix broken link syntax in g_vasprintf docs
+ - !1748 Fix minor Coverity return value warnings
+ - !1750 Fix warnings
+ - !1754 GWin32AppInfo: Use a thread pool for async appinfo tree rebuilds
+ - !1755 Minor Coverity fixes
+ - !1756 shellcheck fixes
+ - !1757 Python formatting improvements
+ - !1758 Fix warnings
+ - !1765 Fix more warnings
+ - !1766 Fix some gdatetime annotations
+ - !1767 tests: Fix GDateTime tests on FreeBSD
+ - !1769 gfileicon: Fix unused-but-set variable with G_DISABLE_ASSERT
+ - !1770 Minor scan-build fixes
+ - !1771 macos: fix frexpl checks in cross-compilation
+ - !1776 gio: ‘security_context_t’ is deprecated
+ - !1780 Minor Coverity fixes
+ - !1781 gspawn: Handle ENOSYS from close_range()
+ - !1782 ghostutils: Abandon hostname conversion early if it’s too long
+
+* Translation updates:
+ - Czech
+ - Spanish
+ - Ukrainian
+
+
 Overview of changes in GLib 2.67.0
 ==================================
 
@@ -3245,6 +6370,10 @@ Translation updates:
 Overview of changes in GLib 2.48.0
 ==================================
 
+ * The system copy of PCRE is now used by default to implement GRegex.
+   Configure with --with-pcre=internal if a system PCRE version
+   is unavailable or undesired.
+
  * a minor build fix in the name of determinism
 
  * a few coverity fixes
@@ -3518,6 +6647,21 @@ Overview of changes in GLib 2.47.1
 Overview of changes in GLib 2.46.0
 ==================================
 
+* GTask no longer imposes a fixed limit on the number of tasks that
+  can be run_in_thread() simultaneously, since doing this inevitably
+  results in deadlocks in some use cases. Instead, it now has a base
+  number of threads that can be used "for free", but will gradually
+  add more threads to the pool if too much time passes without any
+  tasks completing.
+
+  The exact behavior may continue to change in the future, and it's
+  possible that some future version of GLib may not do any
+  rate-limiting at all. As a result, you should no longer assume that
+  GTask will rate-limit tasks itself (or, by extension, that calls to
+  certain async gio methods will automatically be rate-limited for
+  you). If you have a very large number of tasks to run, and don't
+  want them to all run at once, you should rate-limit them yourself.
+
 * Disable runtime-deprecation warnings
 
 * Fix marshalling of flags on bigendian 64bit architectures
@@ -4433,6 +7577,21 @@ Overview of changes from GLib 2.39.91 to GLib 2.39.92
 
 This is a release candidate for 2.40.0.
 
+* g_test_run() no longer runs tests in exactly the order they are
+  registered; instead, it groups them according to test suites (ie,
+  path components) like the documentation always claimed it did. In
+  some cases, this can result in a sub-optimal ordering of tests,
+  relative to the old behavior. The fix is to change the test paths to
+  properly group together the tests that should run together. (eg, if
+  you want to run test_foo_simple(), test_bar_simple(), and
+  test_foo_using_bar() in that order, they should have test paths like
+  "/simple/foo", "/simple/bar", "/complex/foo-using-bar", not
+  "/foo/simple", "/bar/simple", "/foo/using-bar" (which would result
+  in test_foo_using_bar() running before test_bar_simple()).
+
+  (The behavior actually changed in GLib 2.36, but it was not
+  documented at the time, since we didn't realize it mattered.)
+
 There are no major changes in this release, but a few serious bugs have
 been fixed.
 
@@ -5560,6 +8719,28 @@ Overview of changes fron GLib 2.36.0 to 2.37.0
 Overview of changes fron GLib 2.35.9 to 2.36.0
 ==============================================
 
+* It is no longer necessary to call g_type_init().  If you are
+  loading GLib as a dynamic module, you should be careful to avoid
+  unloading it, then subsequently loading it again.  This never
+  really worked before, but it is now explicitly undefined behavior.
+  Note that if g_type_init() was the only explicit use of a GObject
+  API and you are using linker flags such as --no-add-needed, then
+  you may have to artificially use some GObject call to keep the
+  linker from optimizing away -lgobject. We recommend to use
+  g_type_ensure (G_TYPE_OBJECT) for this purpose.
+
+* This release contains an incompatible change to the g_get_home_dir()
+  function.  Previously, this function would effectively ignore the HOME
+  environment variable and always return the value from /etc/password.
+  As of this version, the HOME variable is used if it is set and the
+  value from /etc/passwd is only used as a fallback.
+
+* The 'flowinfo' and 'scope_id' fields of GInetSocketAddress
+  (introduced in GLib 2.32) have been fixed to be in host byte order
+  rather than network byte order. This is an incompatible change, but
+  the previous behavior was clearly broken, so it seems unlikely that
+  anyone was using it.
+
 This release contains only small bugfixes and translations updates.
 
  - g_file_copy(): fix bug where attributes were not applied properly to
@@ -6043,6 +9224,13 @@ The remaining changes should not cause problems.
 Overview of changes from GLib 2.33.14 to 2.34.0
 ===============================================
 
+* GIO now looks for thumbnails in XDG_CACHE_HOME, following a
+  recent alignment of the thumbnail spec with the basedir spec.
+
+* The default values for GThreadPools max_unused_threads and
+  max_idle_time settings have been changed to 2 and 15*1000,
+  respectively.
+
 * Bug fixes:
  654239 g_type_init()'s docs have no statement about how to...
  674620 Update GSettings migration guide for intltool updates
@@ -6563,6 +9751,49 @@ Overview of changes from GLib 2.32.0 to 2.32.1
 Overview of changes from GLib 2.31.22 to 2.32.0
 ===============================================
 
+* It is no longer necessary to use g_thread_init() or to link against
+  libgthread.  libglib is now always thread-enabled. Custom thread
+  system implementations are no longer supported (including errorcheck
+  mutexes).
+
+* The thread and synchronisation APIs have been updated.
+  GMutex and GCond can be statically allocated without explicit
+  initialisation, as can new types GRWLock and GRecMutex.  The
+  GStatic_______ variants of these types have been deprecated.  GPrivate
+  can also be statically allocated and has a nicer API (deprecating
+  GStaticPrivate).  Finally, g_thread_create() has been replaced with a
+  substantially simplified g_thread_new().
+
+* The g_once_init_enter()/_leave() functions have been replaced with
+  macros that allow for a pointer to any gsize-sized object, not just a
+  gsize*.  The assertions to ensure that a pointer to a correctly-sized
+  object is being used will not work with generic pointers (ie: (void*)
+  and (gpointer) casts) which would have worked with the old version.
+
+* It is now mandatory to include glib.h instead of individual headers.
+
+* The -uninstalled variants of the pkg-config files have been dropped.
+
+* For a long time, gobject-2.0.pc mistakenly declared a public
+  dependency on gthread-2.0.pc (when the dependency should have been
+  private).  This means that programs got away with calling
+  g_thread_init() without explicitly listing gthread-2.0.pc among their
+  dependencies.
+
+  gthread has now been removed as a gobject dependency, which will cause
+  such programs to break.
+
+  The fix for this problem is either to declare an explicit dependency
+  on gthread-2.0.pc (if you care about compatibility with older GLib
+  versions) or to stop calling g_thread_init().
+
+* g_debug() output is no longer enabled by default.  It can be enabled
+  on a per-domain basis with the G_MESSAGES_DEBUG environment variable
+  like
+    G_MESSAGES_DEBUG=domain1,domain2
+  or
+    G_MESSAGES_DEBUG=all
+
 * Bugs fixed:
  671988 Quickly registering / unregistering objects on bus...
  672095 glib needs stable sort function
@@ -7240,6 +10471,11 @@ list below attempts to summarise, but not every change is listed.
 Overview of changes from GLib 2.29.18 to 2.29.90
 ================================================
 
+* GObject includes a generic marshaller, g_cclosure_marshal_generic.
+  To use it, simply specify NULL as the marshaller in g_signal_new().
+  The generic marshaller is implemented with libffi, and consequently
+  GObject depends on libffi now.
+
 * API/ABI changes:
  - unix signal watches now match the API of all of the other sources
  - revert the addition of g_date_time_source_new () from last release
@@ -7805,6 +11041,10 @@ Overview of Changes from GLib 2.28.0 to 2.29.2
 Overview of Changes from GLib 2.27.93 to 2.28.0
 ===============================================
 
+* The GApplication API has changed compared to the version that was
+  included in the 2.25 development snapshots. Existing users will need
+  adjustments.
+
 * Bugs fixed:
 641363 GInitable documentation isn't clear about that finalize...
 641395 Add more data about the origin application to the "Lau...
@@ -9060,6 +12300,23 @@ Overview of Changes from GLib 2.24.0 to GLib 2.25.0
 Overview of Changes from GLib 2.23.6 to GLib 2.24.0
 ===================================================
 
+* It is now allowed to call g_thread_init(NULL) multiple times, and
+  to call glib functions before g_thread_init(NULL) is called
+  (although the later is mainly a change in docs as this worked before
+  too). See the GThread reference documentation for the details.
+
+* GObject now links to GThread and threads are enabled automatically
+  when g_type_init() is called.
+
+* GObject no longer allows to call g_object_set() on construct-only properties
+  while an object is being initialized. If this behavior is needed, setting a
+  custom constructor that just chains up will re-enable this functionality.
+
+* GMappedFile on an empty file now returns NULL for the contents instead of
+  returning an empty string. The documentation specifically states that code
+  may not rely on nul-termination here so any breakage caused by this change
+  is a bug in application code.
+
 * Bug fixes:
  613601 buglet in dup_close_on_exec_fd
  584284 g_data_input_stream_read_until_async behaves confusingly
@@ -9421,6 +12678,10 @@ Overview of Changes from GLib 2.22.0 to GLib 2.22.1
 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
 ===================================================
 
+* Repeated calls to g_simple_async_result_set_op_res_gpointer used
+  to leak the data. This has been fixed to always call the provided
+  destroy notify.
+
 * Add gdb python macros to make gobject debugging more pleasant
 
 * Bugs fixed:
@@ -9780,6 +13041,18 @@ Overview of Changes from GLib 2.20.0 to GLib 2.20.1
 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
 ===================================================
 
+* The functions for launching applications (e.g. g_app_info_launch() +
+  friends) now passes a FUSE file:// URI if possible (requires gvfs
+  with the FUSE daemon to be running and operational). With gvfs 2.26,
+  FUSE file:// URIs will be mapped back to gio URIs in the GFile
+  constructors. The intent of this change is to better integrate
+  POSIX-only applications, see bug #528670 for the rationale.  The
+  only user-visible change is when an application needs to examine an
+  URI passed to it (e.g. as a positional parameter). Instead of
+  looking at the given URI, the application will now need to look at
+  the result of g_file_get_uri() after having constructed a GFile
+  object with the given URI.
+
 * Base64 support: Avoid integer overflows. CVE-2008-4316
 
 * Bugs fixed:
@@ -10159,6 +13432,13 @@ Overview of Changes from GLib 2.18.0 to GLib 2.18.1
 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
 ===================================================
 
+* The recommended way of using GLib has always been to only include the
+  toplevel headers glib.h, glib-object.h and gio.h. GLib enforces this by
+  generating an error when individual headers are directly included.
+  To help with the transition, the enforcement is not turned on by
+  default for GLib headers (it is turned on for GObject and GIO).
+  To turn it on, define the preprocessor symbol G_DISABLE_SINGLE_INCLUDES.
+
 * Win32:
   - rework the g_poll() implementation to match poll() semantics more closely
 
@@ -10573,6 +13853,10 @@ Overview of Changes from GLib 2.16.0 to GLib 2.16.1
 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
 ===================================================
 
+* GLib now includes GIO, which adds optional dependencies against libattr
+  and libselinux for extended attribute and SELinux support. Use
+  --disable-xattr and --disable-selinux to build without these.
+
 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
 
 * GIO:
@@ -11494,6 +14778,36 @@ Overview of Changes from GLib 2.10.0 to GLib 2.10.1
 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
 ==================================================
 
+* The functions g_snprintf() and g_vsnprintf() have been removed from
+  the gprintf.h header, since they are already declared in glib.h. This
+  doesn't break documented use of gprintf.h, but people have been known
+  to include gprintf.h without including glib.h.
+
+* The Unicode support has been updated to Unicode 4.1. This adds several
+  new members to the GUnicodeBreakType enumeration.
+
+* The support for Solaris threads has been retired. Solaris has provided
+  POSIX threads for long enough now to have them available on every
+  Solaris platform.
+
+* 'make check' has been changed to validate translations by calling
+  msgfmt with the -c option. As a result, it may fail on systems with
+  older gettext implementations (GNU gettext < 0.14.1, or Solaris gettext).
+  'make check' will also fail on systems where the C compiler does not
+  support ELF visibility attributes.
+
+* The GMemChunk API has been deprecated in favour of a new 'slice
+  allocator'. See the g_slice documentation for more details.
+
+* A new type, GInitiallyUnowned, has been introduced, which is
+  intended to serve as a common implementation of the 'floating reference'
+  concept that is e.g. used by GtkObject. Note that changing the
+  inheritance hierarchy of a type can cause problems for language
+  bindings and other code which needs to work closely with the type
+  system. Therefore, switching to GInitiallyUnowned should be done
+  carefully. g_object_compat_control() has been added to GLib 2.8.5
+  to help with the transition.
+
 * Bugs fixed:
  328997 64bit pointer trunction in glib slab-allocator
         [Pascal Hofstee]
@@ -11928,6 +15242,65 @@ Overview of Changes from GLib 2.6.0 to GLib 2.6.1
 Overview of Changes from GLib 2.4.x to GLib 2.6.0
 =================================================
 
+* GLib 2.6 introduces the concept of 'GLib filename encoding', which is the
+  on-disk encoding on Unix, but UTF-8 on Windows. All GLib functions
+  returning or accepting pathnames have been changed to expect
+  filenames in this encoding, and the common POSIX functions dealing
+  with pathnames have been wrapped. These wrappers are declared in the
+  header <glib/gstdio.h> which must be included explicitly; it is not
+  included through <glib.h>.
+
+  On current (NT-based) Windows versions, where the on-disk file names
+  are Unicode, these wrappers use the wide-character API in the C
+  library. Thus applications can handle file names containing any
+  Unicode characters through GLib's own API and its POSIX wrappers,
+  not just file names restricted to characters in the system codepage.
+
+  To keep binary compatibility with applications compiled against
+  older versions of GLib, the Windows DLL still provides entry points
+  with the old semantics using the old names, and applications
+  compiled against GLib 2.6 will actually use new names for the
+  functions. This is transparent to the programmer.
+
+  When compiling against GLib 2.6, applications intended to be
+  portable to Windows must take the UTF-8 file name encoding into
+  consideration, and use the gstdio wrappers to access files whose
+  names have been constructed from strings returned from GLib.
+
+* Likewise, g_get_user_name() and g_get_real_name() have been changed
+  to return UTF-8 on Windows, while keeping the old semantics for
+  applications compiled against older versions of GLib.
+
+* The GLib uses an '_' prefix to indicate private symbols that
+  must not be used by applications. On some platforms, symbols beginning
+  with prefixes such as _g will be exported from the library, on others not.
+  In no case can applications use these private symbols. In addition to that,
+  GLib+ 2.6 makes several symbols private which were not in any installed
+  header files and were never intended to be exported.
+
+* To reduce code size and improve efficiency, GLib, when compiled
+  with the GNU toolchain, has separate internal and external entry
+  points for exported functions. The internal names, which begin with
+  IA__, may be seen when debugging a GLib program.
+
+* On Windows, GLib no longer opens a console window when printing
+  warning messages if stdout or stderr are invalid, as they are in
+  "Windows subsystem" (GUI) applications. Simply redirect stdout or
+  stderr if you need to see them.
+
+* The child watch functionality tends to reveal a bug in many
+  thread implementations (in particular the older LinuxThreads
+  implementation on Linux) where it's not possible to call waitpid()
+  for a child created in a different thread. For this reason, for
+  maximum portability, you should structure your code to fork all
+  child processes that you want to wait for from the main thread.
+
+* A problem was recently discovered with g_signal_connect_object();
+  it doesn't actually disconnect the signal handler once the object being
+  connected to dies, just disables it. See the API docs for the function
+  for further details and the correct workaround that will continue to
+  work with future versions of GLib.
+
 * Major new APIs
   - GOption, a commandline option parser
   - GKeyFile, a parser/editor for the .ini like files 
@@ -12751,3 +16124,250 @@ What's new in GLib 1.3.1:
 * the g_string(x) macro has been removed, #x may be used instead.
                                 
 
+
+Overview of changes in GLib 1.2.1
+=================================
+
+* g_realloc() fix for SunOS (please report further problems).
+* Continued the never ending fix vendetta regarding getpwuid(),
+  this time AIX has been the culprit.
+* Upgrade to libtool 1.2f
+* Miscellaneous other buglets fixed.
+
+
+Overview of changes in GLib 1.2.0
+=================================
+
+* GLib is distributed seperatedly from Gtk+
+* Win32 Portability
+* Threading support
+* GModule mechanism (implemented in an extra library) which wraps dynamic
+  object code loading facilities in a portable manner
+* GIOChannel structure to encapsulate the IPC mechanism
+* GQuarks and datasets
+* GRelations for n-way mapping of certain data
+* An n-way tree implementation
+* GDate functionality for calendar date manipulations
+* GAllocator type and associated functions
+* Added generic callback maintenance functions (ghook)
+* Generic functions for TAB completions
+* Endian defines (G_*_ENDIAN)
+* g_log() mechanism for logging of messages at different log levels
+* Generic main-loop mechanism
+* New glib-config helper script
+* Many more API extensions
+
+
+Overview of changes in GLib 1.1.16
+==================================
+
+* Allocate smaller pools of memory for glists, gslists, gnodes
+* Bug Fixes
+
+
+Overview of changes in GLib 1.1.15
+==================================
+
+* HPUX 11 thread system detection should now work
+* Release the main loop lock around calls to prepare() and
+  check() so it is not held over user code
+* A few Win32 fixups
+
+
+Overview of changes in GLib 1.1.14
+==================================
+
+* Check for dlsym() in system libraries and -dl
+* FreeBSD portability fixes
+* Random bug fixes and autoconf/automake changes
+
+
+Overview of changes in GLib 1.1.13
+==================================
+
+* Removed alloca() based function and macro variants again.
+* Improved thread related configure tests.
+* GSource destruction fixups.
+* Fixed up idle function removal based on user_data pointer.
+* Advanced Win32 portability.
+* Enforced GSource's check(), prepare() and dispatch() constrains,
+  loop recursions may only happen from dispatch(), and check() as well
+  as prepare() are called while the main_loop lock is being held.
+* GLib development now requires GNU autoconf 2.13, GNU automake 1.4
+  and GNU libtool 1.2d.
+* Lots of random portability and bug fixes.
+
+
+Overview of changes in GLib 1.1.12
+==================================
+
+* Added alloca functions/macros: g_strdup_a, g_strconcat3_a, g_alloca,
+  g_new_a, g_new0_a
+* New tests structure.  Type 'make check' on your system to run them.
+* Avoid unnecessary extra hook referencing in g_hook_list_marshal
+
+
+Overview of changes in GLib 1.1.11
+==================================
+
+* provide defaults for POLL sysdefs
+* g_main_is_running: new function to check whether a main loop has been quitted
+* a few other enhancement/fixes
+
+
+Overview of changes in GLib 1.1.9
+=================================
+
+* Check for pthread_attr_init in all cases, Digital Unix 4 requires this
+* For G_LOCK_DECLARE_*, if !G_THREADS_ENABLED, eat trailing semicolon better
+* Changed g_main_poll_(add|remove) to g_main_(add|remove)_poll
+
+
+Overview of changes in GLib 1.1.8
+=================================
+
+* Added threading support
+  - The ability to specify a set of functions to be used for
+    locking at runtime.
+  - Default implementations of locking functions for pthreads,
+    Solaris threads, and (experimentally) NSPR.
+  - All static variables should now properly locked.
+  - Enhancements to the generic main-loop mechanism to be thread-safe.
+    (It is used for the main-loop in GTK+ as of GTK+-1.1.8)
+* Portability fixes.
+
+
+Overview of changes in GLib 1.1.7
+=================================
+
+* Removed multiple define from glibconfig.h
+
+
+Overview of changes in GLib 1.1.6
+=================================
+
+* New GDate functionality for calendar date manipulations (g_date_*)
+* New GAllocator type and associated functions
+* New functions g_slist_copy and g_list_copy to duplicate a list with all
+  its data pointers.
+* New function g_array_insert_vals and new macro g_array_insert_val to
+  insert elements at an arbitrary index
+* GAllocators used for glist, gslist, gnode node allocations
+* Incremental freezing in ghash
+* New function g_hook_list_marshal_check to eventually destroy hooks after
+  they got marshalled
+* Revised GIOChannel to provide generic virtual-function based interface
+* Added generic main-loop abstraction
+* Removed GListAllocator type and its g_*_allocator_*() function variants
+* Bug fixes
+
+
+Overview of changes in GLib 1.1.5
+=================================
+
+* Win32 portability
+* GIOChannel structure to encapsulate the IPC mechanism
+* Reimplemented endian stuff, using inline asm for x86
+* New functions:
+  - g_strescape: escapes backslashes
+  - g_path_is_absolute and g_path_skip_root
+  - g_getenv: expands environment variables that contain references
+    to other environment variables
+  - g_scanner_sync_file_offset: rewind the filedescriptor to the current
+    buffer position and blow the file read ahead buffer
+  - g_array_remove_index: remove an entry, preserving the order
+  - g_array_remove_index_fast: remove an entry, order might be distorted
+  - g_ptr_array_remove: remove an entry, preserving the order
+  - g_ptr_array_remove_fast: remove an entry, order might be distorted
+  - g_byte_array_remove_index: wrapper for g_array_remove_index
+  - g_byte_array_remove_index_fast: wrapper for g_array_remove_index_fast
+  - g_strncasecmp: modeled closely after g_strcasecmp
+  - g_list_sort, g_slist_sort: to merge sort GLists and GSLists
+* New macros:
+  - G_DIR_SEPARATOR, G_DIR_SEPARATOR_S: platform-dependant file name
+    syntax elements
+  - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S: platform-dependant
+    search path syntax conventions
+  - G_STRUCT_OFFSET, G_STRUCT_MEMBER_P, G_STRUCT_MEMBER: for handling
+    structure fields through their offsets
+* Removed G_ENUM, G_FLAGS, G_NV, and G_SV macros
+* Bug fixes
+
+
+Overview of changes in GLib 1.1.4
+=================================
+
+* Added generic callback maintenance functions (ghook)
+* New endian defines (G_*_ENDIAN)
+* New string join/split/free routines
+* Fixes
+
+
+Overview of changes in GLib 1.1.3
+=================================
+
+* New GModule mechanism (implemented in an extra library) which wraps dynamic
+  object code loading facilities in a portable manner.
+* glib-config features extra "glib" (old behaviour remains) and "gmodule"
+  (add libgmodule.so to the --libs output) arguments now. this can also
+  be specified as fourth argument to the AM_PATH_GLIB() macro.
+* Overhaul of the `inline' autoconfiguration stuff, so inlining should be
+  sufficiently supported on all systems that allow inlining now.
+* New g_log() mechanism for logging of messages at different log levels,
+  associated with certain log domains (define -DG_LOG_DOMAIN for your library).
+* New inline functions for bit masks tests.
+* GNode macros (and functions) now return the newly allocated node.
+* New macro G_VA_COPY() to work around va_list copying oddities on some
+  platforms. the non-static g_vsprintf() function vanished in favour of
+  a publically exported g_strdup_vprintf().
+  People that used the former g_vsprintf() would definitely want to read the
+  associated ChangeLog entries (grep for printf).
+* New utility functions:
+  g_strndup(), g_on_error_query(), g_on_error_stack_trace(), g_strdup_printf(),
+  g_strdup_vprintf(), g_printf_string_upper_bound(), g_spaced_primes_closest(),
+  g_strnfill(), g_memdup().
+* Overhaul of the array implementations, this contains some source incompatible
+  changes. Again, the ChangeLog is much more informative (grep for garray.c).
+* The internals of the g_dataset mechanism are now exported through the
+  new g_datalist_* API (this is also the underlying implementation for the
+  keyed data of GtkObjects).
+* New function g_atexit(), use of the ATEXIT() macro is discouraged.
+* Better configure checks for ansi compliance.
+* Libtool update to version 1.2b.
+* Lotsa bug fixes and cleanups as always ;)
+
+
+Overview of changes in GLib 1.1.2
+=================================
+
+* Fixed packaging mistake which occured in 1.1.1
+* fix 64-bitness in g_prints in glibtest
+
+
+Overview of changes in GLib 1.1.1
+=================================
+
+* An n-way tree implementation is provided now, based on the GNode structure.
+* Bugfix for pointer arrays.
+
+
+Overview of changes in GLib 1.1.0
+=================================
+
+* GLib is distributed seperatedly from Gtk+ now and uses a sophisticated
+  shared library versioning scheme to deal with interface and binary
+  incompatibilities.
+* There is a glib-config helper script installed now.
+* Fixups all over the place.
+* gboolean is now a gint, not a gchar anymore.
+* API extensions for GList and GSList.
+* New g_str*() functions for simple string handling.
+* GScanner extensions for scope, warning and error handling.
+* Minor performance improvements for GMemChunks.
+* Implementations of GQuarks and datasets (similar to GtkObjects data
+  mechansim, but works for generic memory locations).
+* More convenience macros for GNU C function arguments.
+* Const correction all over the place, including a new pointer type
+  gconstpointer.
+* Generic functions for TAB completions.
+* GRelations for n-way mapping of certain data.