Imported Upstream version 2.74.1
[platform/upstream/glib.git] / NEWS
diff --git a/NEWS b/NEWS
index f1eb024..4b61a4a 100644 (file)
--- a/NEWS
+++ b/NEWS
+Overview of changes in GLib 2.74.1
+==================================
+
+* 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)
+
+* 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)
+
+* Bugs fixed:
+  - #16 gspawn.c file descriptor handling (Emmanuel Fleury)
+  - #333 Make GLib valgrind friendly (Marco Trevisan (Treviño))
+  - #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))
+  - #2748 construct properties always trigger the deprecated property warning
+  - #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)
+  - #2787 new int64, double hash functions always hash to 0 on big-endian (Simon
+    McVittie)
+  - #2788 GObject warnings: keep or revert warning -> critical change in 2.74.x
+    branch? (Philip Withnall)
+  - !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
+  - !2880 gbacktrace: Don't truncate gdb output
+  - !2885 tests/desktop-app-info: Use unique temporary paths for action files
+  - !2892 tests/unix-streams: Free the cancelled error on cancelled cancellable
+  - !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
+  - !2938 gdatetime: add NULL guard in g_date_time_new_now()
+  - !2939 gobject/tests/param: Add unit test for handling invalid NULL param
+    spec
+  - !2946 tests: Check the return value of fwrite() in a test
+  - !2948 ghash: document g_hash_table_steal_extended() behavior for sets
+  - !2949 doc: Correctly annotate g_async_queue_push()
+  - !2958 Backport !2952 “Various win32 test fixes” to glib-2-74
+  - !2960 Backport !2959 “Some leaks fixes” to glib-2-74
+  - !2973 Backport !2955 “gtimezone: Reject weird /etc/localtime configurations”
+    to glib-2-74
+  - !2975 Backport !2974 “gvariant-parser: Reject deeply-nested typedecls in
+    text form variants” to glib-2-74
+  - !2982 Backport !2887 “glocalfileinfo: Ensure we always sniff some data to
+    get the content type” to glib-2-74
+  - !2983 Backport !2910 “gmessages: Handle unused results from fputs and
+    fwrite” to glib-2-74
+  - !2988 Backport !2947 “gspawn: avoid race due to retry with EINTR on close()”
+    to glib-2-74
+  - !2989 Backport !2978 “A couple of test fixes on OS X” to glib-2-74
+  - !2995 Revert !2924 in 2.74.x branch
+  - !2996 Revert "Replace most GObject warnings with criticals" on glib-2-74
+  - !2998 Backport !2934 “gobject: Always ref-sink variants in g_object_set” to
+    glib-2-74
+  - !3010 Backport !3009 “gtimezone: Fix symlink checks on relative link
+    targets” to glib-2-74
+
+* Translation updates:
+  - Abkhazian (Nart Tlisha)
+  - Friulian (Fabio Tomat)
+  - German (Christian Kirbach)
+  - Hebrew (Yaron Shahrabani)
+  - Kazakh (Baurzhan Muftakhidinov)
+  - Occitan (post 1500) (Quentin PAGÈS)
+  - Turkish (Sabri Ünal)
+
+
+Overview of changes in GLib 2.74.0, 17-09-2022
+==============================================
+
+* 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, 05-08-2022
+==============================================
+
+* 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, 12-07-2022
+==============================================
+
+* 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
 ==================================
 
@@ -13822,3 +15008,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.