GLib 2.22 Stable Release

GLib 2.22 is a stable release adding an incremental improvement in functionality over GLib 2.20 while maintaining binary and source compatibility.

Major new features include:

  • GArray, GPtrArray, GByteArray, GTree and GMappedFile can be reference counted.
  • GLib can be forced to reload the XDG user directory mapping.
  • The GLib mainloop supports per-thread default contexts.
  • GIO now provides types and methods for IP addresses and UNIX domain socket addresses.
  • GResolver provides asynchronous and cancellable APIs for resolving hostnames, reverse lookup of IP addresses and resolving SRV records.
  • Support for network IO has been added to GIO, including low-level socket API and high-level API for network connections and services.
  • GIOStream and its subclasses have gained support for read-write access.
  • GIO supports starting and stopping of drives, which can be used in connection with external hard disk enclosures, disk arrays, iSCSI devices, etc.
  • GIO supports user interaction during unmount and eject operations.
  • GIO can store and retrieve per-file metadata.

For more details and lists of fixed bugs, see the announcements of the 2.21.x development releases: 2.21.0, 2.21.1, 2.21.2, 2.21.3, 2.21.4, 2.21.5 and 2.21.6

GLib 2.21.2 unstable release

This is the a development release leading up to GLib 2.22.

Overview of Changes from GLib 2.21.1

  • GIO:

    • g_socket_speaks_ipv4 is a new function to check if a socket can speak IPv4.
    • g_socket_listener_add_address gained a new effective_address out parameter.
    • GIO now returns special icons for XDG user directories, by the name folder-music, folder-documents, etc.
    • GIO gained support for starting/stopping of drives, which can be used in connection with external hard disk enclosures, disk arrays, iSCSI devices, etc. See g_file_start/stop_mountable.
  • GLib:

    • g_reload_user_special_dirs_cache is a new function to force GLib to reload the XDG user directory mapping from disk.

22 bugs fixed in this release!

See the original announcement for more info and downloads.

GLib 2.21.0 unstable release

This is the first development release leading up to GLib 2.22.

Overview of Changes from GLib 2.20.x

  • GIO
    • New helper functions g_cancellable_connect/disconnect to avoid race conditions when connecting to the “cancelled” signal on GCancellable.
    • New types and methods for dealing with IPv4 and IPv6 addresses (and UNIX domain socket addresses under UNIX). This does not include code for actual socket I/O.
    • GResolver provides asynchronous and cancellable APIs for resolving hostnames, reverse lookup of IP addresses and resolving SRV records.
  • Glib now provides hash and comparison functions for int64 and double types, suitable for use with GHashTable.
  • GArray, GPtrArray and GByteArray can be ref counted now, and have boxed types.

14 bugs fixed in this release!

See the original announcement for more info and downloads.

GLib 2.20 stable release

GLib 2.20 is a stable release adding an incremental improvement in functionality over GLib 2.18 while maintaining binary and source compatibility.

Major new features include:

  • Optimizations of GHashTable and GMarkup
  • Support for in-place decoding of base64 strings
  • When launching applications, always pass fuse file:// uris whe possible, and let gio convert such uris back to gio uris. This can be turned off using the X-GIO-NoFuse desktop file key.
  • GIO has a concept of ‘shadowed’ mounts

For more details and lists of fixed bugs, see the announcements of the 2.19.x development releases:

See the original announcement for more info and downloads.

GLib 2.19.10 unstable release

This is a development release leading up to GLib 2.20.

Changes from GLib 2.19.8

  • GMarkup: Considerable speedup
  • GIO: Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing the destination of a copying operation as if it did not exit before.
  • GIO: Be more careful when classifying files as desktop files
  • GIO: Support desktop file key X-GIO-NoFuse which disables the use of fuse pathnames for %u and %U arguments
  • 16 bugs fixed in this release!

    See the original announcement for more info and downloads.