From 069fd1d8cf3983f3d824ccb4aa6af4028570b9ab Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Thu, 10 Nov 2022 09:18:47 +0000 Subject: [PATCH] 2.75.0 Signed-off-by: Philip Withnall --- NEWS | 261 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 261 insertions(+) diff --git a/NEWS b/NEWS index 10e1e3a21..c1fececb7 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,264 @@ +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 ==============================================