2.74.1

Git-EVTag-v0-SHA512: 9dacc52748e07ad696e5a13c0ccf833023272de9273eb0910a8b5ede570f1e49e7eb88ab726d651016dc29586ab79ff350f87926806633a2ec111e5c45d3f669

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 813ce7f0 (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)