Opened 6 months ago
Closed 6 months ago
#23106 closed enhancement (fixed)
glib-2.88.0
| Reported by: | Bruce Dubbs | Owned by: | Bruce Dubbs |
|---|---|---|---|
| Priority: | normal | Milestone: | 13.1 |
| Component: | BOOK | Version: | git |
| Severity: | medium | Keywords: | |
| Cc: |
Description
New minor version.
Change History (5)
comment:1 by , 6 months ago
| Owner: | changed from to |
|---|---|
| Status: | new → assigned |
comment:2 by , 6 months ago
| Summary: | glib-2.88.0 → glib-2.88.0 (Security update) |
|---|
comment:3 by , 6 months ago
| Summary: | glib-2.88.0 (Security update) → glib-2.88.0 |
|---|
We're safe from those as we fixed those with glib-2.86.4 in February. :)
comment:4 by , 6 months ago
Overview of changes in GLib 2.88.0, 2026-03-16
- Bugs fixed:
- !5097 gslice: Factor out a size helper macro and stop using MAX in a public header
Overview of changes in GLib 2.87.5, 2026-03-12
- Brown paper bag release to attempt to fix the dist-job in CI; this caused it to be impossible to build a release archive for 2.87.4
- Bugs fixed:
- !5096 ci: Force a git clone and update the index when running dist-job
Overview of changes in GLib 2.87.4, 2026-03-12
- Avoid installing broken symlinks as part of the test data for the gdatetime tests
- Fix
g_file_set_contents()with non-ASCII filenames on Windows
- Bugs fixed:
- #3688 Documentation issue with g_slice_new and g_slice_new0
- #3730 Unclear assertion failure message when
G_PARAM_CONSTRUCTandG_PARAM_CONSTRUCT_ONLYare both specified - #3814 vs2019-arm64 CI fails with ninja error
- #3873 g_file_set_contents broken on windows for non-ASCII filenames
- #3885 Documentation of g_file_info_get_is_backup() doesn’t define what a backup file is
- #3897 GLocalFileInfo's set_symlink() is backwards
- #3905 Memory leak in g_desktop_app_info_launch_uris_with_spawn
- !5030 gsocketconnection: Set an error when closed if no address is cached
- !5037 minor doc fixes
- !5047 i18n: Update and correction for Occitan
- !5048 ci: Install gi-docgen in the Fedora CI image
- !5054 tests: Create unix_localtime root directory structure at runtime
- !5088 tests: Fix a minor memory leak in the socket test
- !5089 ci: Drop workaround for GitLab submodule checkout bug
- !5090 Prevent iptosmessage test failures on FreeBSD and Hurd
- !5091 gobject: Disable new construct property check with G_DISABLE_CHECKS
Overview of changes in GLib 2.87.3, 2026-02-25
- Improved support for
GNotificationon Windows
- Fix module lookups via
GModuleon Cygwin
- Fix local timezone lookup with nested symlinks in
/etc/localtime
- Fix ordering and sequential consistency of gatomic memory barriers on MSVC and fallback GCC code paths
- Fix various integer overflow bugs (#3870, #3871, #3872, CVE-2026-1484, CVE-2026-1485, CVE-2026-1489)
- Add
GSocketControlMessagesubclasses for receivingIP_TOSandIPV6_TCLASS
- Support polling more than 1024 FDs on macOS
- Remove platform-specific backward compatibility from GLib-2.0 as it’s impossible to support
- Improve introspection annotations for delimiters on
g_strsplit_set()(this may require changes in introspection bindings)
- Basic support for building and running some functionality on tvOS and watchOS
- Add
g_get_monotonic_time()variant with nanosecond precision
- Bugs fixed:
- #3628 Add test suite for gdbus tool
- #3741 GModule incorrectly searches for cyg....so instead of cyg....dll on Cygwin
- #3816 Local timezone wrongly considered to be UTC if timezone file in /usr/share/zoneinfo is a symlink
- #3829 [RFC] gatomic: Memory barriers should be reversed (Luca Bacci)
- #3839 Broken Unix/Win32 specific GIRs
- #3852 MSVC and GCC-fallback atomics are not sequentially consistent
- #3863 Iterating over a short (preallocated) GVariant bytestring invalidly refs a NULL GBytes
- #3865 callable-info/native-address test fails on big endian
- #3867 win32: Notifications without body won't show up
- #3869 gnotification-win32: Re-initialize tray icon if
explorer.exegot restarted - #3870 (CVE-2026-1484) (YWH-PGM9867-168) Integer Overflow -> Buffer Underflow on Glib through glib/gbase64.c via g_base64_encode_close() leads to OOB Write
- #3871 (CVE-2026-1485) (#YWH-PGM9867-169) Buffer underflow on Glib through gio/gcontenttype-fdo.c via parse_header() lead to OOB Read/Write (Marco Trevisan
- #3872 (CVE-2026-1489) (#YWH-PGM9867-171) Integer Overflow on Glib through glib/guniprop.c via output_marks() lead to OOB Write in glib/gutf8.c:g_unichar_to_utf8()
- #3877 hash test failing randomly on MSYS2
- #3880 Integer overflow in gio-launch-desktop from over-long environment variables
- #3881 Integer overflow in g_resource_find_overlay() from over-long environment variables
- #3883 Integer overflow in
g_path_get_basename()when passed an extremely long path (length ≈SSIZE_MAX) - #3886 Crash in gdbus-tool on invalid --method argument format
- #3895 date_time_lookup_era unsafely caches
setlocalepointer - !4846 gio: Add GSocketControlMessage subclasses for receiving IP_TOS and IPV6_TCLASS
- !4953 darwin: Support g_poll:maxfd >= FD_SETSIZE
- !4957 gstrfuncs: Annotate g_strsplit_set() as taking a byte array of delimiters
- !4966 gio-tool-{copy,move}: Fix incorrect transfer rate calculation and improve visualization
- !4968 markup: Better error reporting
- !4970 gutf8: Clarify docs about negative return values
- !4971 gutf8: Use size_t internally for some length calculations
- !4976 docs: Fix a typo and specify a codeblock is C
- !4977 gobject: Add nullable annotation to g_weak_ref_get return value
- !4982 markup: Initialize tag positions
- !4985 ci/fedora, glib/casemap: Add tests for the Azerbaijani cases
- !4987 giomodule: Simplify macro usage for getting the giomodule dir, don't use it on iOS
- !4991 gio/gdatainputstream: Mark bytes as potentially unused
- !4992 Disable or stub out fork/execv* usage when targeting tvOS and watchOS
- !4993 Windows: Add test-profile
- !4996 Fix some small regressions in the iOS build
- !4997 meson: Add guesses for compute_int to speed up cross-compile setup
- !5002 Update Lithuanian translation
- !5004 Add g_get_monotonic_time() variant with nanosecond precision
- !5006 gfileutils: Fix a regression in
g_path_get_basename()for plain files - !5012 Compilation fixes for CLangCL and older MSVC
- !5015 GApplication: make send_notification / withdraw_notification thread- safe
- !5028 gvalue: Update default terminology to initial
- !5034 Fix const qualifiers where discarded
- !5036 Address more size types issues
- !5040 gsettings-tool: Fix leaks when running set commands
- !5041 gsettings-tool: Fix leaks when specifying invalid schemas
verview of changes in GLib 2.87.2, 2026-01-19
- Add initial support for
GNotificationon Windows
- Bugs fixed:
- #3850 g_strsplit_set docs are misleading
- #3857 win32: Add support for notifications using Shell_NotifyIcon API
- #3858 glib-compile-resources: Incorrect compiler detection on Windows when building GTK causes a DoS
- #3863 Iterating over a short (preallocated) GVariant bytestring invalidly refs a NULL GBytes
- #3864 gir-tracker-bot posting diffs against too-recent-
main - #3867 win32: Notifications without body won't show up
- !4918 gio/unixmounts: use bsearch() to check for set inclusion
- !4949 gdesktopappinfo: Fix -Wsign-conversion warnings
- !4950 gobject: Fix -Wshorten-64-to-32 warnings and enable warning flag
- !4958 gtestutils: Avoid pointless logging string handling in gtestutils
- !4959 glib-unix: Implement g_unix_fd_query_path for Cygwin
- !4964 gio: Fix some -Wsign-conversion warnings
- !4965 gmodule: Enable -Wshorten-64-to-32 warnings for gmodule
- !4967 Fixup unicode 17
Overview of changes in GLib 2.87.1, 2025-12-30
- Several low-risk CVE fixes
- Fix return type of
gi_callable_info_get_closure_native_address()
- Tweak thread pool handling for
GTaskthreads to prevent stalls
- Respect
NO_COLORenvironment variable in log output
- Update file system type lists to mark more file system types as system ones
and to recognise
ntfs3file systems
- Add
G_GNUC_FLAG_ENUMattribute to mark enums as flags
- Add a static CRT constructor and fusion manifest XML for GLib utilities on
Windows so that
stderrcan be unbuffered and streams are flushed on exit
- Fix
G_FILE_MONITOR_WATCH_HARD_LINKSon Windows
- Bugs fixed:
- #74 ignore case and '-' vs '_' differences when maching on enum/flag nick/name
- #1181 Test failure: check_expected_events
- #3360 msys2-mingw32 CI failure: mingw-w64-i686-gcc and mingw-w64-i686-gcc- objc are in conflict
- #3733 gi-compile-repository.py test intermittently fails on Windows with empty stderr
- #3818 g_main_context_check with a NULL context crashes
- #3819 G_FILE_MONITOR_WATCH_HARD_LINKS flag does not monitor files on Windows
- #3827 (CVE-2025-13601) (#YWH-PGM9867-134) Incorrect calculation of buffer size in g_escape_uri_string()
- #3828 NTFS not detected by g_file_info_get_attribute_string
- #3834 (CVE-2025-14087) (#YWH-PGM9867-145) Buffer underflow on Glib through glib/gvariant via bytestring_parse() or string_parse() leads to OOB Write
- #3840 GTask: g_task_run_in_thread never starts pending tasks
- #3843 glib: Integer overflow in
g_bytes_new_from_bytes()leads to corruptedGBytesobject - #3845 (CVE-2025-14512) GIO: Integer overflow in file attribute escaping
- #3851 Integer overflow in
g_buffered_input_stream_peek()leads to segmentation fault - #3859 Return type of gi_callable_info_get_closure_native_address() should be void*
- !4883 ci: Do not use anymore only/except deprecated syntax
- !4885 ci: Track changes to gir files using artifacts and MRs comments
- !4898 glog: respect NO_COLOR environment variable
- !4899 genvironment: consider macOS behavior when testing g_getenv
- !4900 Add G_GNUC_FLAG_ENUM
- !4904 glog: guard NO_COLOR environment variable check with a GOnce for performance reasons
- !4907 completion: fix error on nounset mode unknown completions
- !4908 glocalfile: Complain if
faccessatsets an unusual error and use AT_FDCWD - !4909 glocalfile: Fix trash user cancellation not reported on Windows
- !4910 ci: Use issue bot native support for $ISSUE_BOT_API_TOKEN_FILE
- !4913 gdbusprivate: check length of path to GDBus binary
- !4916 gio/gunixmounts: mark some file-system types as system
- !4920 tests: Fix static-link test when running installed
- !4921 gutf8: Add tests and clarify documentation for g_unichar_to_utf8()
- !4922 ci: Enable the gobject-introspection build for the debian-stable-i386 job
- !4923 Added AIX implementation of g_unix_fd_query_path
- !4926 Fix g_strcompress docs (mod 256)
- !4928 Update of the Occitan translation
- !4930 gio/gunixmounts: Mark more file systems as system internal
- !4931 gio/gunixmounts: Replace /bin/efi with /boot/efi
- !4937 docs(GResource): Tweak overlays description
- !4939 gsocks4aproxy: Fix a buffer leak when finishing connecting
- !4941 gsignal: Cleanup handler disconnection avoiding unneeded operations
- !4942 gio: Fix a few -Wsign-conversion warnings
- !4943 ci: Some fixups on the gir checker
Overview of changes in GLib 2.87.0, 2025-11-03
- Update to Unicode 17.0.0
- Support runtime extensions to
gdbus-codegentool to allow modifying its output in project-specific ways
- Use document portal to open all the URIs for snaps
- Add g_markup_parse_context_get_offset() API for getting error locations in XML files
- Bugs fixed:
- GNOME/ptyxis#490 new tab does not open in current directory when hostname contains a period
- #672 hash resize broken for large sizes (Tobias Stoeckmann)
- #2608 Support nanosecond time resolution with stat() on macOS
- #2949 gdbus-server-auth test intermittently fails on macOS
- #3070 gio/g-file-info test fails on macOS
- #3523 g_filename_from_uri rejects valid host names according to RFC 1123
- #3745 GIRepository: union fields offsets for compiled typelibs all have offset 0xffff (unknown)
- #3771 Should opening a .desktop file fail if Exec key contains invalid escapes?
- #3780
gio/tests/socket-listenerrequires dlsym - #3781 GLib.OptionContext's get_help() includes width of invisible options
- #3783 [CI] Pipeline on 'main' failed for commit c31c4a52
- #3784 Memory leak related to g_get_home_dir
- #3785 "gio trash --empty" returns 0 even when it fails to remove files
- #3790 _g_log_abort() should check TracerPid from /proc before raising SIGTRAP
- #3798 Gio.AppInfo.launch_default_for_uri_async crashes with non-existent paths
- #3803 GNetworkMonitor's netlink backend doesn't notify connectivity change
- #3805 [CI] Pipeline on 'main' failed for commit e6c52881
- #3806 fake-document-portal needs to use _g_fd_query_path() rather than accessing /proc/self/fd directly (Marco Trevisan
- #3808 Uyghur language translation updated.
- #3809 GRegex tests fail with pcre2 10.47: different error for ^(a)\g{3 (Marco Trevisan
- #3811 g_get_user_special_dir doesn't strip trailing slash from $HOME/ (Tobias Stoeckmann)
- https://gitlab.gnome.org/Infrastructure/Infrastructure/-/issues/
- !4753 GIO/Win32: Remove custom definitions of system interfaces
- !4755 ghash: Fix entry_is_big for CHERI architecture
- !4756 ghash: Handle all table sizes in iterator
- !4759 GWin32AppInfo: Allow focus-stealing when requested via GAppLaunchContext
- !4760 gbookmarkfile: Escape icon href and mime-type
- !4764 subprojects: Update libffi, pcre2, proxy-libintl
- !4773 docs: Add Luca Bacci as a co-maintainer of the Windows code
- !4778 tests: Fix clang compilation warnings
- !4779 gmem: Replace SIZE_OVERFLOWS with g_size_checked_mul
- !4789 gio: add some nullable / zero-terminated annotations
- !4790 gstring: Support large strings in g_string_replace
- !4791 gstrfuncs: Check string length in g_strescape
- !4792 gtype: Define copy and free functions for GTypeClass and GTypeInterface
- !4793 gunicode: Update the code for Unicode 17.0.0
- !4794 CI/MSYS2: Use builtin b_coverage option
- !4795 Meson: Add arguments and defines to all C-like languages
- !4798 GDBus: Add
(out)annotation to quark in g_dbus_error_register_error_domain() - !4800 gutils: Improve load_user_special_dirs' user-dirs.dirs parser
- !4803 Add missing
(array length=n_values)annotation toGEnumClass/GFlagsClass - !4806 build: Post-release version bump
- !4807 Add missing "nullable" to parameter docs of GList/GSList
- !4810 gutils: Mark load_user_special_dirs unlocked
- !4811 Update Esperanto translation
- !4812 gdbus-codegen: Support extensions and changing the GDBusInterfaceSkeleton type to inherit from
- !4813 Update Serbian translation
- !4815 gfile: Expand documentation around file equality
- !4816 strfuncs: Check for overflows when joining strings
- !4817 Mark a couple of functions as constructors and not methods
- !4819 utils: Fix a leak when user-dirs.dirs declares a variable twice
- !4820 gio/tests: Fix a race condition in /gdbus/connection/flush
- !4822 GDesktopAppInfo: Use document portal to open all the URIs for snaps
- !4823 gio/gdocumentportal: Use the target name when opening a symlink
- !4825 gdbus-codegen: Supress coverity warning in skeleton finalization
- !4827 ghostutils: Treat 0x80 (and above) as non-ASCII
- !4829 docs: Fix typos in win32-build.md
- !4830 giowin32: Fix uninitialised variable error on msys2-clang64
- !4831 macros: Add C23/C++23 standards
- !4832 gtypes: Support more overflow check implementations
- !4835 Update Portuguese translation
- !4837 tests: Fix another clang compiler warning
- !4838 GLocalFile: keep suffix name when trashing
- !4840 gpattern: Support patterns/strings longer than G_MAXUINT
- !4843 tests: Use integer widths rather than maximum values for strfuncs check
- !4844 Forward-port !4839 “Update Romanian translation” to main
- !4847 GFile entity tags: Update HTTP reference link to point to RFC9110 ETags description
- !4851 Docs: New file-name-encodings image: light/dark, color
- !4855 glib-compile-resources: print error message when the temp file cannot be created
- !4856 Mark return value of g_dbus_interface_get_info() as
nullable - !4857 Docs: Migrate gvariant-*.svg licenses to comments
- !4858 gsocketcontrolmessage: Fix a minor typo in a doc comment
- !4860 Fix
g_memory_monitor_base_query_mem_ratioon Solaris - !4861 gio/tests/gapplication: Check the values received on action activation
- !4862 ci: Temporarily disable macos-arm64 CI as it has issues creating temp files
- !4863 ci: Temporarily disable msys2-mingw32 CI
- !4864 ci: Update Fedora CI image to Fedora 41
- !4866 Fix various scan-build errors
- !4870 Reenable MSYS2 CI
- !4874 ci: use APFS for macOS TMPDIR
- !4877 gresolver: Fix loopback detection of IPv6 addresses
- !4879 Add g_markup_parse_context_get_offset
- !4887 glib-unix: Add Solaris implementation of g_unix_fd_query_path
- !4893 ci: Use CI/CD file variable tokens for secrets
- !4894 gthread-win32: Ignore error when setting thread priority
- !4895 gunixmounts: fix out of bounds write in AIX mount table parser
- !4896 ci: Actually use token file for the issue bot
- !4897 Re-enable PCRE2 tests for 32-bit Visual Studio builds
comment:5 by , 6 months ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Fixed at commits:
a03d3de642 Update to gegl-0.4.70. 7e050ad13f Update to pciutils-3.15.0. 2b3d0f8cb2 Update to glib-2.88.0. 8599bb3e77 Update to glibmm-2.88.0.
Note:
See TracTickets
for help on using tickets.

Fix various integer overflow bugs