Imported Upstream version 2.66.1
[platform/upstream/glib.git] / NEWS
1 Overview of changes in GLib 2.66.1
2 ==================================
3
4 * A performance problem where timezones were reloaded from disk every time a
5   `GTimeZone` was created has been fixed (#2204), but this means that changes to
6   `/etc/localtime` will not take effect until a process restarts; future changes
7   in a subsequent 2.66.x release will improve this
8
9 * Security fix for incorrect scope/zone ID parsing in URIs (!1669)
10
11 * Bugs fixed:
12  - #2077 Invalid Pointer Arithmetic in g_path_get_basename
13  - #2164 GDBus DBUS_COOKIE_SHA1 mechanism may use too old a key
14  - #2194 gtk3/glib crash on gimp
15  - #2204 Time zone cache is constantly invalidated if TZ is NULL
16  - #2209 gthreadedresolver: faulty logic in parse_res_txt
17  - !1187 Define G_MSVC_SYMBOL_PREFIX correctly for ARM
18  - !1643 Minor Coverity fixes
19  - !1645 Fix various signedness warnings
20  - !1648 glocalfile: Never require G_LOCAL_FILE_STAT_FIELD_ATIME
21  - !1652 trash portal: Handle portal failures
22  - !1654 gio-tool-trash: Prevent recursion to speed up emptying trash
23  - !1657 glist: Clarify that g_list_free() and friends only free an entire list
24  - !1658 utils: Limit the scope of the variable `max`
25  - !1665 Fix g_module_symbol() under Windows sometimes not succeeding
26  - !1669 guri: Fix URI scope parsing
27  - !1671 gdatetime: Avoid integer overflow creating dates too far in the past
28
29 * Translation updates:
30  - Danish
31  - Greek, Modern (1453-)
32  - Hebrew
33  - Latvian
34  - Portuguese
35  - Russian
36
37
38 Overview of changes in GLib 2.66.0
39 ==================================
40
41 * Bugs fixed:
42  - #2200 missing tab in makefile rule
43  - !1639 guri: Fix user passed to g_uri_split_with_user() not being NULL'd
44
45 * Translation updates:
46  - Croatian
47  - Hungarian
48  - Italian
49  - Serbian
50  - Slovak
51  - Swedish
52
53
54 Overview of changes in GLib 2.65.3
55 ==================================
56
57 * Fixes to the new `statx()` calls — note that since GLib 2.65.2 uses `statx()`
58   (if available) instead of `stat()`/`fstat()`/`lstat()`/`fstatat()`, syscall
59   sandboxing for third party applications might need to be updated
60
61 * Bugs fixed:
62  - #2189 g_file_query_info on ro file system: Numerical result out of range
63  - #2191 Calling nice(20) can lead to thread related warnings
64  - #2197 Segfaulting Integer Overflow in g_option_group_add_entries
65  - !1025 Big o notations
66  - !1626 gio: Document g_settings_new() missing schema behaviour
67  - !1627 gthread: Add a sysprof mark for thread creation
68  - !1628 Replace a bunch of fallthrough comments with an attribute
69  - !1631 Fix splice behavior on cancellation
70  - !1632 Fixing signedness warning in glib/gfileutils.c
71  - !1635 gcancellable: Mark a variable as unused if built with G_DISABLE_ASSERT
72
73 * Translation updates:
74  - Basque
75  - Catalan
76  - Chinese (China)
77  - Czech
78  - English (United Kingdom)
79  - Friulian
80  - German
81  - Japanese
82  - Kazakh
83  - Korean
84  - Lithuanian
85  - Polish
86  - Portuguese (Brazil)
87  - Slovenian
88
89
90 Overview of changes in GLib 2.65.2
91 ==================================
92
93 * Support `statx()` and `G_FILE_ATTRIBUTE_TIME_CREATED` (work by Andre Miranda) (#1970)
94
95 * Fix deadlock in `g_subprocess_communicate_async()` (work by Alexander Larsson) (#2182)
96
97 * Add `%f`/microsecond placeholder support to `g_date_time_format()` (work by Johan Bjäreholt) (!1605)
98
99 * Bugs fixed:
100  - #5 g_new0 performance
101  - #1970 Make G_FILE_ATTRIBUTE_TIME_CREATED support stx_btime
102  - #2176 Inconsistent introspection annotations for g_input_stream_read and g_socket_receive
103  - #2182 g_subprocess_communicate_async() can deadlock when writing
104  - !1593 CI support for Coverity Scan
105  - !1605 gdatetime: Add %f format specifier and microsecond precision to g_date_time_format_iso8601
106  - !1613 gfile: Document TOCTTOU avoidance using g_file_delete()
107  - !1615 docs: glib-compile-resources: json-stripblanks
108  - !1616 gioerror: Map WSAENETRESET on Windows to G_IO_ERROR_CONNECTION_CLOSED
109  - !1619 Minor Coverity fixes
110  - !1620 gvariant: Ensure GVS.depth is initialised
111  - !1622 gdatetime: Widen a variable before multiplication
112  - !1623 gcancellable: Assert that make_pollfd() call succeeds
113  - !1624 gdbusaddress: Drop an unnecessary NULL check
114  - !1625 gdbusmessage: Drop redundant uint ≥ 0 checks
115
116 * Translation updates:
117  - French
118  - Galician
119  - Greek, Modern (1453-)
120  - Indonesian
121  - Romanian
122  - Spanish
123  - Turkish
124  - Ukrainian
125
126
127 Overview of changes in GLib 2.65.1
128 ==================================
129
130 * Add `GUri` API for parsing, building and representing URIs according to
131   [RFC 3986](https://tools.ietf.org/html/rfc3986) (work by Marc-André Lureau) (#110)
132
133 * Fix handling of xattr data with embedded nuls (#422)
134
135 * Add `g_file_set_contents_full()` which gives more control over fsyncs (#1302)
136
137 * Fix cross-compilation on iOS (work by Nirbheek Chauhan) (#1868)
138
139 * Add a `x-gvfs-notrash` option to disable trash on certain mounts (work by Ondrej Holy) (!1549)
140
141 * Support ‘slim’ TZif files generated with `zic -b slim` (work by Paul Eggert) (#2129)
142
143 * Support emitting profiling marks from `GMainContext` to sysprof capture files (!1551)
144
145 * Accept IPv6 zone IDs in `g_hostname_is_ip_address()` (work by Marc-André Lureau) (!1604)
146
147 * Bugs fixed:
148  - #4 Include a UTF-8 safe escaping function
149  - #110 Basic URI operations
150  - #137 display_name should be always available
151  - #250 GTestCase's setup/teardown functions appear pointless
152  - #272 allow thread pools to adjust the number of threads to the number of cpu's/cores
153  - #422 Wrong assumption in libgio GFileInfo on xattr/acl string: it may contain binary data.
154  - #858 glib2 @2.40.0 issues a "Got weird mach timebase info" error (Macports, PPC)
155  - #1022 g_object_new Should Mention That it Zeroes Out Private Struct
156  - #1200 Make g_assert_null/nonnull clang static analyzer friendly
157  - #1203 Add a variant of g_file_set_contents() which accepts file mode
158  - #1288 gmacros: Introduce non-public G_CLANG_ANALYZER_NORETURN macro
159  - #1302 g_file_set_contents() can fill target with NUL bytes if it did not previously exist
160  - #1670 ThreadSanitizer data races
161  - #1764 cancellable test: on_mock_operation_ready: assertion failed (iterations_requested > iterations_done): (10 > 10)
162  - #1868 iOS cross compile impossible due to frexpl check not supporting cross compilation
163  - #1869 iOS doesn't have Cocoa, which thankfully isn't a requirement of this code that supposedly requires it
164  - #1982 GSocketAddressEnumerator documentation is inconsistent with existing usage
165  - #2127 Spurious GIO module initialization on Fedora Silverblue (and other ostree-based systems?)
166  - #2129 date_time bugs after 2038, or with today's date and 'zic -b slim' TZif files
167  - #2132 Valgrind reports "still reachable" after g_thread_pool_new/free
168  - #2136 Valgrind reports "still reachable" after g_option_context_parse
169  - #2140 calling malloc in fork child is undefined-behaviour
170  - #2141 g_value_copy is was recently broken
171  - #2149 Make G_URI_FLAGS_PARSE_STRICT the default
172  - #2156 Merge _g_uri_parse_authority() into GUri
173  - #2159 Thread-unsafe initialization in gportalsupport.c
174  - #2160 More guri regressions
175  - #2165 More guri breakage
176  - #2166 g_uri_build() functions should accept a NULL scheme
177  - !1328 guri: new URI parsing and generating functions
178  - !1527 Add g_tls_connection_get_channel_binding_data call and enums
179  - !1534 Various GLocalFile fixes related to the filesystem::remote attribute
180  - !1546 tree: Fix various ableist language
181  - !1549 Add support to ignore trash for certain mounts
182  - !1551 Add initial sysprof support
183  - !1553 gtestutils: Mark that g_assert_whatever() macros do not normally return
184  - !1554 GUri build fixes
185  - !1555 Remove c-format from the string that is not c-formatted
186  - !1556 fuzzing: Another fix for g_uri_parse() test
187  - !1557 A few g_uri_parse_params() improvements
188  - !1559 Fix buffer read overflows in GUri
189  - !1561 gconvert: Use a pointer array in extract_uris
190  - !1563 gdesktopappinfo: Fix unnecessarily copied and leaked URI list
191  - !1564 tests: limit number of threads to something reasonable.
192  - !1570 Reduce CI bandwidth requirements
193  - !1572 Add GUriParamsIter
194  - !1576 gtask: Only override g_task_set_source_tag() for GLib ≥ 2.60
195  - !1577 uri: add illegal_characters argument to unescape_bytes
196  - !1578 tests: Add tests for RFC 8536 v3 parsing of time zones
197  - !1579 glib: Use g_getenv everywhere instead of getenv
198  - !1582 appinfo: Add properties
199  - !1583 gio: Remove broken support for XP
200  - !1590 Use CI schedules and DAGs
201  - !1591 gfileutils: Fix O_NOFOLLOW handling on BSD systems
202  - !1594 GFile: Document that G_FILE_CREATE_REPLACE_DESTINATION can only be used with...
203  - !1595 uri: add ENCODED_PATH & ENCODED_FRAGMENT flags
204  - !1599 uri: do not add ipv6 brackets on non-ip host
205  - !1600 uri: do not encode ':' and ';' from userinfo
206  - !1601 timezone: Fix an uninitialized use
207  - !1602 Revert "Merge branch 'appinfo-properties' into 'master'"
208  - !1604 Make g_hostname_is_ip_address() accept ipv6 zoneid
209  - !1609 Fix multiple typos in guri.c
210  - !1611 guri: Always prepend `//` to the host when building a URI
211  - !1612 guri: Document and check restrictions on path prefixes
212
213 * Translation updates:
214  - Catalan
215  - Kazakh
216  - Lithuanian
217  - Romanian
218  - Slovenian
219  - Spanish
220  - Ukrainian
221
222
223 Overview of changes in GLib 2.65.0
224 ==================================
225
226 * Fix memory monitor tests to only be installed if installed-tests are enabled,
227   and to be skipped if GObject-Introspection is too old (!1407)
228
229 * Stability improvements for various unit tests
230
231 * D-Bus credentials support on macOS (#507)
232
233 * MSVC support for the files generated by `glib-compile-resource` and `gdbus-codegen` (#1215, !1452)
234
235 * Year 2038 fixes involving new API in `GBookmarkFile` (#1931)
236
237 * SOCKS5 proxy authentication fixes (#1986, #1988)
238
239 * Support for more than `MAXIMUM_WAIT_OBJECTS` FDs for `g_poll()` on Windows (#2107)
240
241 * Add `g_assert_no_errno()` test macro for testing POSIX-style functions (!1204)
242
243 * Update Unicode Character Database to version 13.0.0 (!1422)
244
245 * Support storing interned strings in `GValue`s efficiently, via `g_value_set_interned_string()` (#2109)
246
247 * Bugs fixed:
248  - #2 g_filename_from_utf8() should normalize?
249  - #176 the behaviour of constructors for GLib data types is not specified if memory allocation fails
250  - #480 /gdbus/connection/signals test intermittently fails: assertion failed (count_name_owner_changed == 2): (1 == 2)
251  - #507 GDBus credentials don’t work on OS X
252  - #602 GLib.Thread not usable from GObject-Introspection
253  - #1154 Missing documentation how to set a value in a GArray
254  - #1215 MSVC cannot build glib-compile-resource's output resource file
255  - #1323 meson, autotools: figure out if mem barrier is needed for arm64 host variant aarch64
256  - #1398 gdate: Add error handling for GetDateFormatW calls
257  - #1841 Signal handler disconnection race when finalising GCancellableSource
258  - #1851 Meson Build Failure on Windows: Undefined Reference to libiconv
259  - #1911 Memory leak in g_param_spec_flags and/or g_param_spec_enum
260  - #1931 GBookmarkFile API involves time_t
261  - #1954 gdbus-server-auth intermittent failure
262  - #1957 gdbus-connection test failure on FreeBSD
263  - #1986 Socks5 Proxy: Authentication seems broken
264  - #1988 Socks5 Proxy: Wrong error returned when using no authentication
265  - #2038 Bindings: g_tls_connection_set_database() does not allow None as argument
266  - #2051 GUnixOutputStream can block on close()
267  - #2057 Call malloc_trim() under memory pressure
268  - #2067 Glib uses _Static_assert in C++17 mode
269  - #2081 gdbus error messages contains mixed up body and head signatures
270  - #2082 AM/PM - specific variation support needed to Hebrew language
271  - #2083 Memory monitor tests fail if dbusmock isn't installed
272  - #2092 FreeBSD CI timing out in gdbus-connection filter test
273  - #2094 Deprecation warnings when compiling with -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_28 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_28
274  - #2106 Duplicated if - else if conditions in gtranslit.c
275  - #2107 g_poll() implementation on Windows stall when more than MAXIMUM_WAIT_OBJECTS FDs have passed
276  - #2109 GValue: Add support for interned string
277  - #2124 g_file_info_get_content_type() may return NULL
278  - #2132 Valgrind reports "still reachable" after g_thread_pool_new/free
279  - #2134 Valgrind reports "still reachable" after `g_uuid_string_random()`.
280  - #2135 Valgrind reports "still reachable" after g_key_file_new/free
281  - #2136 Valgrind reports "still reachable" after g_option_context_parse
282  - !1204 gtestutils: Add a new g_assert_no_errno() test macro
283  - !1302 gobject: new g_param_is_valid_property_name() function.
284  - !1329 Support nanoseconds in stat timestamps on Windows
285  - !1341 MUI capabilities for GWin32RegistryKey
286  - !1360 CI: Show execution environment before we start
287  - !1395 tests: Move memory_monitor_tests under installed_tests_enabled
288  - !1396 macros: Define G_GNUC_FALLTHROUGH for more compilers
289  - !1397 tests: Skip MemoryMonitor test if GObject-Introspection is too old
290  - !1398 gcontenttype: Fix crash in _get_generic_icon_name()
291  - !1402 ci: Update Android Docker image for aarch64 CPU naming change
292  - !1405 tests: Disable link-time warning for mem-overflow
293  - !1406 Replace fallthrough comments with G_GNUC_FALLTHROUGH
294  - !1408 tests: Don't compare strings by pointer
295  - !1409 gdummytlsconnection: Add missing overrides for ALPN properties
296  - !1413 gapplication: Fix a minor typo in the documentation
297  - !1414 gstrutils: Set locale explicitly for search-utils test
298  - !1415 meson: Don't use assert in test code
299  - !1418 ginetaddress, ginetsocketaddress: Add missing (nullable) annotations
300  - !1422 glib: Update Unicode Character Database to version 13.0.0
301  - !1423 gobject: Clarify assertion failure on ref-after-finalize
302  - !1424 docs: Fix configuration with gtk_doc=true and installed_tests=false
303  - !1425 gdbusconnection: GDBusSignalCallback can have a NULL sender_name
304  - !1426 gunidecomp: Update and reformat Unicode version support history
305  - !1427 gicon: Clarify GVariant refcounting in docs
306  - !1428 Add missing 'extern' to the dllexport version of GLIB_VAR/GOBJECT_VAR
307  - !1429 Fix arch detection ifdefs in glib/valgrind.h
308  - !1430 Use __builtin_trap() on Clang on any platform
309  - !1431 glib-unix.c: fix heap corruption in g_unix_get_passwd_entry
310  - !1432 docs: Mention new gio tool options
311  - !1433 meson: Fix buildtype usage
312  - !1434 gdbusconnection: Clarify nullability of SignalInstance.sender
313  - !1436 glib: Update internal copy of valgrind.h from Valgrind 3.15 release
314  - !1437 gmarkup tests: tab character escape/unescape
315  - !1439 Don't misdetect stpcpy on windows platforms on clang
316  - !1440 Silence clang errors about -Wformat-nonliteral due to missing intermediate attributes
317  - !1441 Meson: Override every dependency glib provides
318  - !1442 gfile: Fallback to fast-content-type if content-type is not set
319  - !1443 gio: use TAPTestRunner in the memory monitor tests
320  - !1444 Meson: Add glib-checks and glib-asserts options
321  - !1452 Make symbols generated by gdbus-codegen exportable on Visual Studio-style builds
322  - !1455 gdesktopappinfo: Note that search results are not filtered
323  - !1456 GCredentials documentation fixes
324  - !1458 meson: Exclude gosxutils.m when building for iOS
325  - !1459 meson: Fix the gnulib checks for isnan* functions
326  - !1460 glib: Sync the local modification to glib/valgrind.h to what was upstreamed
327  - !1462 gvariant-core: Add a note about memory safety of children
328  - !1463 gdesktopappinfo: Add several nullable annotation to GAppInfo getters
329  - !1464 Update Fedora CI
330  - !1466 CI: Switch to new Windows runners
331  - !1469 goption: Treat an empty option context parameter string as NULL
332  - !1475 Improve documentation of g_tls_database_verify_chain()
333  - !1476 tests: Fix remaining race in gdbus-connection filter test
334  - !1479 Improve documentation of client connection validation flags
335  - !1480 CI: Make sure we use meson 0.49.2 in MSYS2
336  - !1481 array: fix corrupt state of GPtrArray after g_ptr_array_extend_and_steal()
337  - !1482 [th/g-ptr-array-variable-cleanups] minor cleanup of variables for GPtrArray
338  - !1487 glib: annotate static inline functions with G_AVAILABLE-type macros
339  - !1488 Rebuild Fedora CI image
340  - !1491 gdatetime: update annotations
341  - !1492 glib-mkenums: allow optional 'since' tag
342  - !1493 meson: Remove stray ] in O_DIRECTORY check
343  - !1496 Fix GLIB_UNAVAILABLE_STATIC_INLINE declaration
344  - !1498 array: add internal ptr_array_new() helper for creating GPtrArray
345  - !1503 docs: Add indexes for symbols added in 2.66
346  - !1505 gobject: Handle runtime checks as such
347  - !1506 tests: Speed up the cancellable test
348  - !1508 tests: Speed up the file test and make it more reliable
349  - !1512 Various fixes when building for iOS
350  - !1513 Initialize the visited time of a new GBookmarkFile
351  - !1515 meson: check for stpcpy using cc.links()
352  - !1516 gthreadedsocketservice: Mark source_object of run signal as nullable
353  - !1517 GWin32RegistryKey: Move assertions
354  - !1518 strfuncs: Use a GPtrArray in strsplit()
355  - !1522 meson: Fix gnulib printf checks
356  - !1524 meson: Fix gnulib build where isnan*() is needed
357  - !1525 Normalize C source files to end with exactly one newline
358  - !1528 gtlsconnection: Improve documentation of peer-certificate[-errors]
359  - !1530 tree: Fix various typos and outdated terminology
360  - !1531 gvariant: Fix documentation for g_variant_get_string() to match reality
361  - !1532 win32: spelling fix
362  - !1535 glib.supp improvements
363
364 * Translation updates:
365  - Bokmål, Norwegian
366  - Catalan
367  - Catalan (Valencia)
368  - Chinese (Taiwan)
369  - Dutch
370  - French
371  - Galician
372  - German
373  - Hebrew
374  - Indonesian
375  - Italian
376  - Japanese
377  - Latvian
378  - Lithuanian
379  - Malay
380  - Romanian
381  - Serbian
382  - Slovak
383  - Slovenian
384  - Spanish
385  - Turkish
386  - Ukrainian
387
388
389 Overview of changes in GLib 2.64.0
390 ==================================
391
392 * Use `posix_spawn()` to speed up launching test D-Bus instances (!1388)
393
394 * Bugs fixed:
395  - #1783 Document using glib-mkenums with meson
396  - #2049 Crash in g_array_copy
397  - !1384 Some minor clang warning fixes
398  - !1386 docs: Document generated headers caveats for genmarshal
399  - !1387 ci: Correctly propagate exit status in run-style-check-diff.sh
400  - !1388 gtestdbus: Use posix_spawn() to spawn dbus-daemon
401  - !1389 Update GError docs to use G_DEFINE_QUARK
402
403 * Translation updates:
404  - Czech
405  - Danish
406
407
408 Overview of changes in GLib 2.63.6
409 ==================================
410
411 * Fix potential relative read when calling g_printerr(), which could lead to a
412   denial of service from a setuid-root process being used to block access to the
413   TTY for another user (#1919)
414
415 * Fix SOCKS proxy resolver sometimes not being used when resolving addresses
416   via Happy Eyeballs (CVE-2020-6750) (#1989)
417
418 * Several other Happy Eyeballs fixes for address resolution (#1871, #1872, #1902)
419
420 * Various race fixes in `GDBusConnection` and its unit tests (#1515)
421
422 * Fix a race condition with D-Bus name ownership (#1517)
423
424 * Drop `gio-launch-desktop` helper application in favour of calling `sh` directly (#1633)
425
426 * Fix win32 exception handling with C# exceptions (#2025)
427
428 * Fix thread safety of `GUnixMountMonitor` (#2030)
429
430 * Additional fixes to new thread pool attribute behaviour from GLib 2.63.4 to
431   check if sched_setattr() is allowed by system policies before depending on it (#2039, !1356)
432
433 * Fix memory leaks and corruption when freeing `GSource`s while freeing a `GMainContext` (!1353)
434
435 * Drop inappropriate installation of object manager example documentation (!1359)
436
437 * Bugs fixed:
438  - #938 gdbus call -a doesn't support message bus connections
439  - #1515 gio/gdbus-threading test sometimes fails in CI
440  - #1517 g_bus_own_name does not always call name_lost_handler when _REPLACE and _ALLOW_REPLACEMENT are set
441  - #1633 should not install gio-launch-desktop into PATH
442  - #1919 read from relative path in g_printerr() in 2.58.3
443  - #1995 Tracker issue for Happy Eyeballs regressions
444  - #2002 g_io_channel_read_line does not honour the line_term symbols set
445  - #2025 W32 exception handling misbehaves when C# exceptions are thrown when running inside the Visual Studio debugger
446  - #2030 Random nautilus test suite failures involving GUnixMountMonitor
447  - #2039 sched_setattr() still can cause EPERM through natural causes
448  - #2043 Low memory monitor test failed in CI
449  - #2044 GApplication docs suggest invalid GVariant type
450  - !1185 gtimezone: Tidy up UTC timezone creation
451  - !1281 ci: Update Docker packages
452  - !1283 gmodule: change _g_module_close to only take a handle.
453  - !1298 tests: Speed up the GIO actions test
454  - !1299 gapplication: Fix a minor typo in the documentation
455  - !1339 gsocketclient: Refactor g_socket_client_connect_async()
456  - !1353 GMainContext - Fix memory leaks and memory corruption when freeing sources while freeing a context
457  - !1354 GThreadPool - Add test for !1340
458  - !1355 glist: Add docs examples of how to combine with g_steal_pointer()
459  - !1356 GThread - Check if sched_setattr is allowed by the system policies before depending on it
460  - !1359 docs: Don’t install object manager example separately
461  - !1363 Make tests pass if we are euid != 0 with capabilities
462  - !1366 Fix oss-fuzz coverage link
463  - !1372 gobject: Fix strict aliasing warnings with g_set_object()
464  - !1376 gitlab-ci: 64-bit ARM is aarch64, not arm64
465  - !1381 ghash: Document the iteration order over a hash table is not defined
466  - !1382 tests: Bump the refcount timeout in gdbus-threading
467  - !1383 ci: Enable parallelisation when running installed tests
468
469 * Translation updates:
470  - Basque
471  - English (United Kingdom)
472  - French
473  - Galician
474  - German
475  - Greek, Modern (1453-)
476  - Hungarian
477  - Indonesian
478  - Japanese
479  - Korean
480  - Lithuanian
481  - Polish
482  - Portuguese (Brazil)
483  - Spanish
484  - Swedish
485  - Turkish
486
487
488 Overview of changes in GLib 2.63.5
489 ==================================
490
491 * Fix behaviour of `g_file_move()` fallback code to not follow symlinks (#986)
492
493 * Rename `--glib-min-version` argument of `gdbus-codegen` to `--glib-min-required`
494   (this is not an API break as `--glib-min-version` was added earlier in the
495   2.63 cycle) (#1993)
496
497 * Add gtk-doc checks to CI and fix a number of documentation issues
498   (thanks to Xavier Claessens) (!978)
499
500 * Add `G_SIZEOF_MEMBER()` macro (!1333)
501
502 * Add a debug message if `g_setenv()` or `g_unsetenv()` are used after any
503   threads have been spawned — this will be upgraded to a warning in future (!1337, #715)
504
505 * Skip memory monitor tests if xdg-desktop-portal or dbusmock are not available (!1296, !1338)
506
507 * Change the `libmount` configure option from a boolean to a Meson `feature` (!1344)
508
509 * Do not return `target-uri` from `g_file_peek_path()` when called on trash/recent files (!1346)
510
511 * Drop new TLS certificate API for PKCS #11 backed certificates, as the implementation
512   is not ready yet (this is not an API break as the API was added earlier in the
513   2.63 cycle) (!1347)
514
515 * Bugs fixed:
516  - #986 g_file_move: remove G_FILE_COPY_NOFOLLOW_SYMLINKS section
517  - #1551 CI: Add checks for `TODO` in MRs
518  - #1925 Large number of routes installed into kernel cause high cpu usage
519  - #1993 Rename gdbus-codegen --glib-min-version argument to --glib-min-required and add --glib-max-allowed
520  - #2012 spawn_thread_queue not initialised in GThreadPool
521  - #2020 g_network_monitor_base_add_network() improperly unrefs GInetAddressMask
522  - !978 Various fixes to make gtkdoc-check pass on glib
523  - !1018 docs: tag enclose 'all' and 'help' values
524  - !1170 Avoid C++20 deprecated assignment to volatile
525  - !1296 tests: Skip GMemoryMonitor tests if the dbusmock template is not available
526  - !1307 Remove global declaration of GMemoryMonitor
527  - !1322 gmain: Mark G_SOURCE_FUNC as available in 2.58
528  - !1333 Add and use G_SIZEOF_MEMBER() macro
529  - !1337 genviron: Message if g_setenv()/g_unsetenv() are used after threads spawned
530  - !1338 tests: Skip GMemoryMonitor tests if xdg-desktop-portal is not available
531  - !1344 meson: libmount autodectection
532  - !1345 gio-tool-info: Print unix mount information where available
533  - !1346 gfile: Do not return target-uri from g_file_peek_path()
534  - !1347 Revert "gtlscertificate: Add support for PKCS #11 backed certificates"
535  - !1348 ghash: Clarify that g_hash_table_add() always consumes the key
536  - !1349 doc: Clarify that _locker_new() does not actually allocate memory
537  - !1351 glib.supp: update g-threaded-resolver-getaddrinfo-config
538
539 * Translation updates:
540  - Japanese
541  - Lithuanian
542  - Malay
543  - Portuguese (Brazil)
544  - Swedish
545
546
547 Overview of changes in GLib 2.63.4
548 ==================================
549
550 * Fix various race conditions on signal emission in GDBus (#604, #978, #1232)
551
552 * Change thread pools so that thread attributes (in particular, priority) are
553   inherited from the thread which created the `GThreadPool` initially, rather
554   than from the thread which is pushing a new job into the pool (#1834, #2007)
555
556 * Expand support for running Windows apps with
557   `g_app_info_launch_default_for_uri()` using rundll32 on Windows (#1932)
558
559 * Support multiple directories in `GSETTINGS_SCHEMA_DIR` environment variable (#1998)
560
561 * Support full Julian day range in `TZ` environment variable (#1999)
562
563 * Apply recursion depth limits to variants in D-Bus messages (!1201)
564
565 * Support adding call flags and timeouts to method calls generated by
566   `gdbus-codegen` through the new `--glib-min-version` option (!1286)
567
568 * Fully deprecate TLS rehandshakes; they are now ignored due to TLS protocol
569   changes (!1305)
570
571 * Bugs fixed:
572  - #198 g_fopen and friends: should also state how to close a stream
573  - #604 GDBus name watching dispatch is buggy/excessively-complicated
574  - #833 g_object_set: document the need to cast varargs
575  - #978 SIGSEGV in on_name_lost_or_acquired
576  - #1232 Insufficient thread safety around GDBusObjectManagerClient
577  - #1416 Re-add macOS CI
578  - #1834 Unwanted priority/etc inheritance with GThreadPool and GThread and the POSIX implementation
579  - #1932 Windows: Gio.AppInfo.launch_default_for_uri seems not to work for local files/folders
580  - #1983 glib:gio / dbus-appinfo test fails: GLib-GIO:ERROR:../../../../Projects/glib/gio/tests/dbus-appinfo.c:326:on_flatpak_open: 'g_file_equal (files[0], f)' should be TRUE
581  - #1997 Base64 encoding with "break_lines" claims to wrap at 72 characters but seems to wrap at 76
582  - #1998 support multiple directories in GSETTINGS_SCHEMA_DIR
583  - #1999 GTimeZone fails to accept full Julian day range when parsing the direct $TZ string format
584  - #2007 Thread scheduler attributes fail under valgrind
585  - !388 ci: Avoid downloading subprojects for each job
586  - !1111 gio: test that launch_uris() exports files with the document portal when launching a flatpak
587  - !1201 gdbusmessage: Limit recursion of variants in D-Bus messages
588  - !1279 tests: Fix an error message set by foo_set_property()
589  - !1286 gdbus-codegen: Add a GDBusCallFlags arg to method calls
590  - !1291 gio-tool-list: Add an option to print display names
591  - !1294 GMemoryMonitor docs fixes
592  - !1295 gio: Fix socket test
593  - !1301 GThread - Inherit parent thread priority by default for new Win32 threads
594  - !1303 gvariant-core: Don't pass NULL second argument to memcpy
595  - !1305 Fully deprecate TLS rehandshakes
596  - !1308 gsocketclient: run timeout source on the task's main context
597  - !1309 Fix crash in gutils when application is prevented access to passwd file
598  - !1317 gfdonotificationbackend: remove notifications when bus name vanishes
599  - !1320 subprojects: Temporarily avoid using wrapdb while it’s down
600  - !1324 ci: Add some documentation to the style check CI test
601  - !1325 Check for SYS_sched_getattr before using it unconditionally
602  - !1330 W32: Correctly set st_ino when doing private stat()
603  - !1334 gthread: Ensure GThreadSchedulerSettings is always defined
604
605 * Translation updates:
606  - Catalan
607  - Galician
608  - Hungarian
609  - Indonesian
610  - Polish
611  - Portuguese (Brazil)
612  - Spanish
613
614
615 Overview of changes in GLib 2.63.3
616 ==================================
617
618 * Add a `--glib-min-version` argument to `gdbus-codegen` which controls breaks in the API of generated code (#1726)
619
620 * Add `g_clear_list()` API to clear `GList`s to `NULL` (#1943)
621
622 * Add a `GMemoryMonitor` API to be notified of memory pressure situations using the low-memory-monitor project (!1005)
623
624 * Add support for dispose functions for `GSource` implementations (!1175)
625
626 * Tighten up validation of GObject signal and property names, allowing performance improvements (!1224)
627
628 * Fix installation path of GIO modules on MSVC to be the bindir (!1254)
629
630 * Bugs fixed:
631  - #650 g_signal_lookup gives too many warnings
632  - #1011 GListStore, easily find if the item is already inserted
633  - #1130 gdbus-codegen: Add an option to strictly generate markdown in source comments
634  - #1687 glocalvfs.c uses non-thread-safe getpwnam()
635  - #1726 Warn when method/signal uses type 'h' but lacks GDBus.C.UnixFD annotation
636  - #1935 Assert in _kqsub_free seems to be too strict
637  - #1943 Consider g_clear_list()
638  - #1947 Documentation clarification for g_uuid_string_random()
639  - #1953 Documentation for g_type_init() and others missing from online gtk-doc documentation
640  - #1961 A typo in the comment of `g_settings_schema_get_path`: threfore -> therefore
641  - !1005 gio: Add GMemoryMonitor to monitor for low-memory
642  - !1172 gptrarray: Add an example to the g_ptr_array_steal() docs
643  - !1175 Implement a dispose function for GSource
644  - !1223 Add additional valgrind suppressions
645  - !1224 Signal name handling improvements
646  - !1230 ci: Run installed-tests on Fedora
647  - !1235 Add sudo to Fedora docker image
648  - !1239 tests: Run "timeout tests" sequentially
649  - !1248 ci: Update all Debian CI runners to use v5 of the Dockerfile
650  - !1249 gio-tool-mount: Allow mounting by the given UUID
651  - !1252 ci: Fix running all jobs on merge requests
652  - !1253 gthread: Fix "zero as null pointer" warning
653  - !1254 giomodule: gio modules are no longer installed in bindir on MSVC
654  - !1255 ci: Build Docker images rather than OCI images if using podman
655  - !1256 gdate: Add autoptr support
656  - !1258 Minor CI fixups
657  - !1261 gtk-doc: Ensure we have recent enough version
658  - !1262 tests: Add tests for the gdbus-codegen executable
659  - !1265 build: don't check for protected visibility
660  - !1267 Revert "doc: Workaround gtkdoc-scan bug leading to undocumented symbols"
661  - !1268 ci: Work-around successful installed tests having no logs
662  - !1269 gvariant: Add guard to g_variant_get()
663  - !1271 tests: Enable GDBus debug for a number of unreliable tests
664  - !1274 trash portal: Don't follow symlinks
665  - !1275 Small doc correction
666  - !1277 Various gtk-doc improvements
667  - !1278 Update installed tests CI
668  - !1280 clang-format-diff: Output diff for multiple files, not just one
669  - !1282 Revert "Revert "docs: remove GDBusObjectManager example""
670  - !1284 Update POTFILES.in 191212
671  - !1287 atomic/tests: test g_atomic_pointer_compare_and_exchange() with const pointers
672  - !1289 gtype: Define auto-cleanup functions for Module class
673
674 * Translation updates:
675  - Spanish
676
677
678 Overview of changes in GLib 2.63.2
679 ==================================
680
681 * Use `lldb` rather than `gdb` on macOS for debugging (#1004)
682
683 * Switch the atomic builtins from `__sync_fetch_*()` to the slightly more modern
684   `__atomic_*()` (#1750)
685
686 * Fix calculation of `gsize` width on various platforms (including OpenBSD) (#1777)
687
688 * Fix undefined behaviour causing brokenness in `g_utf8_find_prev_char()` when
689   compiling with GCC ≥ 8 (#1917)
690
691 * Revert UNIX mode changes in `G_FILE_ATTRIBUTE_ID_UNIX_MODE` which broke OSTree (#1934)
692
693 * Slightly improve performance for signal emissions when no handlers are connected (!1083)
694
695 * Add `g_task_return_value()` and `g_task_propagate_value()` APIs to allow
696   `GTask` to be used from language bindings more easily (!1216)
697
698 * Fix a file monitoring crash on kqueue-based systems (BSD) (!1221)
699
700 * Bugs fixed:
701  - #1004 [PATCH] Make gbacktrace use lldb on Mac OS X
702  - #1552 CI: Add code style checks
703  - #1750 Switch from  __sync_fetch_*() to __atomic_*() in glib/gatomic.h
704  - #1777 gsize: improper typedef on (at least) OpenBSD
705  - #1895 Regression: glib does not compile on centos 6: "objcopy: unrecognized option '--add-symbol'"
706  - #1917 Test utf8-pointer fails with static build, LTO, optimisations, and new GCC
707  - #1930 glib/tests/bookmarkfile.c:385:test_modify: assertion failed: (stamp == now)
708  - #1934 ostree tests broken since bfdc5fc4fc84ef8518d2d1a328c8482cf5a38e98: File '/tmp/test-tmp-libostree_test-basic-user.sh.test-QB4SA0/diff-test2' is not empty
709  - #1938 GDateTime doesn't support leap seconds
710  - #1940 atomics test fails on FreeBSD CI since !1123
711  - !1039 Improve documentation for footgun function g_tls_client_connection_copy_session_state()
712  - !1083 Use the GObject hole on 64bit arches for some flags to improve performance
713  - !1202 CI updates after !1177
714  - !1208 gutils: Slightly improve docs formatting for g_get_os_info()
715  - !1209 Make ld executable configurable
716  - !1210 gdbus-server-auth test: Include gcredentialsprivate.h
717  - !1213 gsocket: Improve diagnostics on bind() failure
718  - !1214 gvariant, gbytes: Avoid memcmp (NULL, ., 0) or memcmp (., NULL, 0)
719  - !1216 Make GTask more binding-friendly
720  - !1218 gdb: Fix GHashTable pretty printer off-by-one error
721  - !1220 gparam: fix memory leak in g_param_value_defaults()
722  - !1221 Add NOTE_REVOKE to the list of the monitoring events
723  - !1225 gtlsconnection: clarify handshake() documentation
724  - !1227 Deprecate old GTlsConnection functionality even harder!
725  - !1231 Fix build on old libc that does not define _SC_HOST_NAME_MAX
726  - !1238 gstrfuncs: use gsize type internally for strv functions
727  - !1242 gfileinfo: Clarify the documentation for G_FILE_ATTRIBUTE_UNIX_MODE
728  - !1243 docs: Fix "occurred" typos in API documentation
729
730 * Translation updates:
731  - Spanish
732
733
734 Overview of changes in GLib 2.63.1
735 ==================================
736
737 * Several usability improvements to command line `gio` tool (!1153)
738
739 * Add `g_array_steal()`, `g_ptr_array_steal()` and `g_byte_array_steal()` APIs (#285)
740
741 * Add `g_get_os_info()` API (!1063, !1160)
742
743 * Add `g_warning_once()` API (!1028)
744
745 * Always resolve `localhost` to loopback address in `GResolver` (!616)
746
747 * Add `GMainContextPusher` API (!983)
748
749 * Limit recursion in `g_variant_parse()` (!1173)
750
751 * Fix crash in `g_spawn()` with high FD numbers due to use of `select()` rather
752   than `poll()` (#954)
753
754 * Allow passing empty `GValue`s to `g_param_value_set_default()` (!1186)
755
756 * Escape header guards generated by `gdbus-codegen` better (#1379)
757
758 * Bugs fixed:
759  - #285 [PATCH] add array steal and memdup functions
760  - #954 The g_spawn_sync() function uses select() which has limitations
761  - #1318 rare failure in gdbus-peer test: invalid uninstantiatable type '(null)' in cast to 'GDBusServer'
762  - #1379 gdbus-codegen generates invalid header guards when build directory contains a + character
763  - #1622 NULL pointer derefs on g_vasprintf() failure
764  - #1813 g_option_context_add_main_entries() is missing array annotation for entries parameter
765  - #1831 No reply on private socket due to auth problem
766  - #1836 gobject.c uses undefined annotation “(not optional)”
767  - #1858 docs/reference/gobject/tut_gobject.xml: object properties example uses deprecated API
768  - #1877 g_cancellable_source_new annotated with 'skip'
769  - #1896 Use after free when calling g_dbus_connection_flush_sync() in a dedicated thread
770  - #1897 glib 2.62.0 fails test 'test_writev_no_vectors' wih gcc7
771  - #1903 use-after-free in mimeapps test causes intermittent segfault during testing
772  - #1906 test_os_info fails on FreeBSD
773  - #1916 objcopy not used from cross-compilation file in GIO tests
774  - #1923 Recent Versions of GLib Break Dolphin File-Manager's Thumbnailing when Using 'gtk2' Style
775  - !616 Always resolve localhost to loopback address
776  - !983 gmain: Add GMainContextPusher convenience API
777  - !1014 tests: Add a test for g_assert_finalize_object()
778  - !1028 gmessages: Add g_warning_once()
779  - !1035 Switching from C gnu89 to C gnu99 standard
780  - !1063 gutils: Add g_get_os_info()
781  - !1082 gdatetime: Document RFC 3339 extensions when parsing ISO 8601
782  - !1105 syscall flood on every time*() function call
783  - !1120 Update documentation with FreeBSD build instructions
784  - !1135 gmain: use atomic operation instead of GMutex to access g_main_context_default()
785  - !1146 Solaris build fixes
786  - !1147 gmodule: fix typo in doc comment
787  - !1148 gio/gfileinfo: fix parameter references
788  - !1149 gio/gfile: fix parameter reference for value_p
789  - !1150 gio/gfile: fix parameter references to @contents
790  - !1151 gio/gfile: fix typo in doc comment
791  - !1152 gwinhttpvfs: Handle g_get_prgname() returning NULL
792  - !1153 Several gio-tool bash completion fixes and improvements
793  - !1155 Strict-aliasing fixes to new atomic built-ins
794  - !1157 Fix various compiler warnings on Android
795  - !1160 Add Windows support to g_get_os_info()
796  - !1161 hash: Remove an assertion from the hot path
797  - !1163 gcharset: Expand the documentation for g_get_locale_variants()
798  - !1165 Use uname as a fallback to get OS info
799  - !1167 Fix some minor leaks in testfilemonitor
800  - !1168 Fix gdatetime tests on toolbox
801  - !1171 Revert "gdbus-codegen: emit GUnixFDLists if an arg has type 'h'"
802  - !1173 gvariant: Limit recursion in g_variant_parse()
803  - !1177 ci: Add libdbus development files to CI Docker images
804  - !1179 Improve GPtrArray doc-comments
805  - !1180 array: Avoid use of memcpy(dest, NULL, 0)
806  - !1181 gmain: Clarify thread safety of some common GSource functions
807  - !1182 gio: Fix typo in URL
808  - !1186 Allow using an empty GValue with g_param_value_set_default()
809  - !1189 gparamspecs: Fix type class leaks on error handling paths
810  - !1197 Fix GDBus test failures on non-Linux (in particular FreeBSD)
811  - !1200 Minor fixes from a scan-build run
812
813 * Translation updates:
814  - Catalan
815  - Chinese (Taiwan)
816  - Spanish
817
818
819 Overview of changes in GLib 2.63.0
820 ==================================
821
822 * Add g_fsync() API (#35)
823
824 * Fix regression in g_file_copy() when passing
825   `G_FILE_COPY_TARGET_DEFAULT_PERMS` flag; the destination permissions would be
826   private rather than following the process’ umask (!1142)
827
828 * Several `GDateTime` parsing fixes (!1127)
829
830 * Always build the tests if installed-tests are enabled, so that the tests can
831   actually be installed (!1141)
832
833 * Rework atomic function implementations to use memory barrier in the correct
834   place (when compiler intrinsics aren’t providing the atomics), and fix
835   signedness issues (#1449, #1565)
836
837 * Use the OS’ `fdwalk()` function (if safe) to speed up `g_spawn_*()` on BSD (#1638)
838
839 * Remove the macOS `dyld` `GModule` implementation in favour of `dl` instead (!1093)
840
841 * Bump Python requirement to ≥ 3.5, which we implicitly relied on anyway through
842   our Meson dependency (!1132)
843
844 * Bugs fixed:
845  - #35 add g_fsync to API
846  - #174 g_file_copy always preserves  permissions, even if G_FILE_COPY_ALL_METADATA flag is not set
847  - #259 docs: fix a misunderstanding in g_type_add_interface_*
848  - #767 g_signal_lookup fails if class is not referenced
849  - #1052 g_io_write_chars calls abort when given a null byte as input
850  - #1449 glib fallback atomic int/ptr get/set have memory barrier in wrong place
851  - #1565 Signedness of atomic operations
852  - #1638 g_spawn_*() is extremely slow under certain circumstances
853  - #1809 Provide API for working with PKCS11 backed certificates
854  - #1843 TSAN false positive with g_atomic_pointer_get/g_atomic_pointer_set under Clang
855  - #1865 g_variant_get_data_as_bytes fails after serializing a variant
856  - #1875 Segfault and Overflow in __gio_xdg_cache_mime_type_subclass() with Wps-Office installed
857  - #1887 glib 2.62.0 breaks loading dylibs as modules
858  - #1888 2.62: docs build on Windows broken
859  - #1897 glib 2.62.0 fails test 'test_writev_no_vectors' wih gcc7
860  - !1020 docs: Remove priv pointers from the tutorial example
861  - !1062 gtype: mark the inline functions in G_DECLARE_*_TYPE() as UNUSED
862  - !1080 tests: Fix skipping mkdir-with-parents-permission test
863  - !1088 Various small scan-build fixes
864  - !1090 giochannel: Clarify type of GSource callback in documentation
865  - !1093 gmodule: remove macOS dyld implementation
866  - !1095 Define G_IOV_MAX to 512 on macOS/iOS
867  - !1099 gmem: clarify that g_malloc always uses the system allocator
868  - !1109 doc: fix typo in gio/gsettings.c
869  - !1110 gio: Add missing "gio remove" option to bash completion script
870  - !1112 Add version macros for GLib 2.64
871  - !1115 gdatetime: Fix error handling in g_date_time_new_ordinal()
872  - !1116 gmarkup: Add a limit on the number of attributes in an element
873  - !1119 Annotate the return value of various utility functions
874  - !1124 docs: Fix typo in GConverter{Input,Output}Stream section titles
875  - !1125 gdatetime: Fix error handling in g_date_time_new_week()
876  - !1126 fileinfo: Mention that usec mtimes are set
877  - !1129 gdate: Fix tautological comparison warnings on Android
878  - !1130 Improve GLIB_DEPRECATED_MACRO_FOR output
879  - !1131 gio/gfileinfo: fix param reference in doc comment
880  - !1132 build: Bump Python requirement to ≥ 3.5
881  - !1137 gregistrysettings: bump key name length to 2048
882  - !1138 Always build tests if we enabled installed-tests
883  - !1139 g_file_info_get_modification_date_time: Calculate in integer domain
884
885 * Translation updates:
886  - Danish
887  - Italian
888  - Panjabi
889  - Serbian
890  - Turkish
891
892
893 Overview of changes in GLib 2.62.0
894 ==================================
895
896 * Fix new `GFileInfo` APIs to work when `G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC`
897   was not queried (!1087)
898
899 * Bugs fixed:
900  - #487 Add valgrind test runs to CI
901  - !1084 garray: Fix reference to GLIB_SIZEOF_INT
902  - !1086 glib.supp: make gobject_init() calloc also of the possible kind
903  - !1087 fileinfo: ignore USEC if not available
904
905 * Translation updates:
906  - Friulian
907  - Portuguese (Brazil)
908
909
910 Overview of changes in GLib 2.61.3
911 ==================================
912
913 * Support setting thread name on BSD systems (#1761)
914
915 * Install previously-uninstalled headers for public `GNativeSocketAddress`
916   object (#1854)
917
918 * Very initial support for Windows apps (UWP) (!1057)
919
920 * Add various new valgrind suppressions to `glib.supp` (#1879, !1075)
921
922 * Bugs fixed:
923  - #83 Optimisation for g_nearest_pow() in garray.c
924  - #512 GSignal: accumulator function not called to accumulate G_SIGNAL_RUN_CLEANUP object handler return values
925  - #873 allow NULL arguments to parse_strv
926  - #905 Patches from static analysis run on 2.40
927  - #1057 goption: add sanity check to input parameters
928  - #1309 GSettings object stops emitting "changed" signal on g_settings_reset after call to g_settings_delay
929  - #1620 GDBus criticals from GVfs with GLib master
930  - #1761 Setting thread-name on BSD systems
931  - #1803 GDK_SCALE=X is not respected when using "gio open"
932  - #1819 Invalid characters in Open Location dialog crashes GIMP
933  - #1852 Regression: g_mkdir_with_parents() returns 0 on failure
934  - #1854 glib/gio: GNativeSocketAddress headers not installed.
935  - #1860 g_clear_handle_id does not trigger GLIB_VERSION_MAX_ALLOWED warning
936  - #1863 Potential invalid writes on g_utf8_strreverse
937  - #1867 A couple of en_GBisms
938  - #1870 GSettingsBackend watches not thread-safe
939  - #1879 Incomplete valgrind suppressions - 16 KiB leak reported by valgrind from loading libglib-2.0.so
940  - #1880 glib/gbacktrace.c: If dup2 happened to return -1, don't call dup2 with same value
941  - #1881 GIO_USE_VOLUME_MONITOR and GIO_USE_FILE_MONITOR do not work as documented
942  - !1002 Remove mentions of mailing lists from the documentation
943  - !1011 gapplication: Fix a leaking GRemoteActionGroup member
944  - !1015 Post-release version bump
945  - !1016 gnetworkmonitornm fixups
946  - !1017 Improve ISO 8601 parsing by GDateTime
947  - !1023 g_object_get_property: Improve documentation for use of G_VALUE_INIT
948  - !1026 gutf8: Assert that written memory stays in bounds
949  - !1027 gfileutils: Fix error propagation for other than ENOENT
950  - !1031 meson: build gnulib if printf isn't good enough
951  - !1032 meson: small printf check cleanups
952  - !1033 win32: don't assume the format specifier for the stdlib printf/scanf like functions
953  - !1034 glib/tests/fileutils: Add a reproducer for #1852
954  - !1036 cond test: Don't make assumptions about struct sigaction member order
955  - !1037 Meson: Override glib-compile-resources/schemas
956  - !1044 Relax use of g_test_bug() to not require g_test_bug_base() to be called first
957  - !1049 minor typos in the documentation
958  - !1050 tests: Fix a pragma warning on FreeBSD
959  - !1054 gerror: Add a docs paragraph about not displaying errors verbatim in UI
960  - !1057 Some (probably) easy uwp patches
961  - !1059 Update win32 readme, add myself to codeowners
962  - !1066 libffi.wrap: Meson port has moved to FDO gitlab
963  - !1068 gsubprocesslauncher.c: fix documentation
964  - !1071 meson: Move libdl_dep to the top level
965  - !1074 Adjust README formatting
966  - !1075 glib.supp: add suppression for g_type_class_ref()
967
968 * Translation updates:
969  - Basque
970  - Catalan
971  - Czech
972  - English (United Kingdom)
973  - French
974  - Galician
975  - German
976  - Hungarian
977  - Indonesian
978  - Korean
979  - Lithuanian
980  - Polish
981  - Romanian
982  - Spanish
983  - Swedish
984
985
986 Overview of changes in GLib 2.61.2
987 ==================================
988
989 * Add various new array functions (#236, #269, #373)
990  - `g_array_copy()`
991  - `g_ptr_array_copy()`
992  - `g_ptr_array_extend()`
993  - `g_ptr_array_extend_and_steal()`
994  - `g_array_binary_search()`
995
996 * Add `g_assert_finalize_object()` helper function for writing tests (#488)
997
998 * Rework how D-Bus connections are closed/unreffed when `g_test_dbus_down()` is
999   called. Tests which leak a `GDBusConnection` may now time out and abort,
1000   rather than silently leaking. (#787)
1001
1002 * Add a deprecation macro for GLib macros, and use it; third-party uses of
1003   long-deprecated GLib macros may now start causing warnings. (#1060)
1004
1005 * Deprecate `GTime` and `GTimeVal`, and various functions which use them.
1006   Use `GDateTime` and `guint64` UNIX timestamps instead. (#1438)
1007
1008 * Stop using `G_DISABLE_DEPRECATED` to allow disabling deprecation warnings;
1009   third-party code should now be using
1010   `GLIB_VERSION_{MIN_REQUIRED, MAX_ALLOWED}` to control symbol usage (!871)
1011
1012 * Improve support for running `ninja test` when GLib is built statically (#1648)
1013
1014 * Improve `GNetworkMonitor` detection of offline states (#1788)
1015
1016 * Fix build failure on macOS related to missing `_g_content_type_get_mime_dirs`
1017   function (#1791)
1018
1019 * Add various installed utilities’ paths to `gio-2.0.pc` (#1796)
1020
1021 * Fix keyfile `GSettings` backend and portal (especially relevant to any version
1022   of GLib included in a flatpak runtime) (#1822, !985)
1023
1024 * More IPv6 ‘Happy Eyeballs’ fixes in `GNetworkAddress` (!865)
1025
1026 * Fix CVE-2019-12450, wide permissions of files when copying using GIO (!876)
1027
1028 * Bump the Meson dependency from 0.48.0 to 0.49.2; we won’t depend on anything
1029   higher than this for a while, as Debian 10 ships 0.49 (!924)
1030
1031 * Various test fixes for Windows (!930, !931)
1032
1033 * Initial support for Universal Windows Platform (UWP): certification, and use
1034   of packaged libraries (!951)
1035
1036 * Add experimental clang-cl support on Windows, allowing `g_autoptr()` support
1037   on Windows (!979)
1038
1039 * Bugs fixed:
1040  - #77 G_STDIO_NO_WRAP_ON_UNIX wraps
1041  - #236 Add a function to copy an array
1042  - #269 Additional convenience functions for g_ptr_array
1043  - #373 GArray could use a binary search function
1044  - #436 running tests leaves lots of coredumps
1045  - #453 find-enclosing-mount docs confusing
1046  - #488 Add g_object_assert_last_unref() helper macro to detect object leaks in tests
1047  - #590 A reader lock can be obtained even if a writer is already waiting for a lock
1048  - #638 g_atexit is defined when not declared
1049  - #737 Initialize GValue in g_object_get_property()
1050  - #787 gtestdbus: Properly close server connections
1051  - #804 gdbusproxy prefixes unstripped error
1052  - #870 Fix and enhance GDatetime for Windows
1053  - #872 ucs4 functions have wrong return transfer
1054  - #887 gdusmessage.c mishandles bounds of GDBusMessageType and related enums
1055  - #894 gvalue: Avoid expensive checks where possible
1056  - #940 Docs for g_socket_listener_set_backlog are not very helpful
1057  - #943 G_DEFINE_TYPE_WITH_PRIVATE docs not helpful
1058  - #1018 Allow guid key in dbus addresses
1059  - #1060 Add deprecation macro for macros
1060  - #1169 Tools can display gibberish messages from translations
1061  - #1270 g_get_charset always returns 8-bit codepage on Windows, crippling UTF-8 output
1062  - #1438 Deprecate GTimeVal- and GTime-based APIs
1063  - #1635 g_socket_join_multicast_group iface parameter fails on win32/64
1064  - #1648 2.58.2: Assorted asserts fail in Arch Linux when built statically
1065  - #1729 g_content_type_guess segfaults when passed an empty data buffer on Mac OS
1066  - #1788 GNetworkMonitor claims I am offline
1067  - #1790 documentation on g_file_info_get_attribute_as_string
1068  - #1791 _g_content_type_get_mime_dirs missing from libgio-2.0.0.dylib on MacOS
1069  - #1792 glib-genmarshal generated valist marshal does not respect static scope for some types
1070  - #1793 glib-genmarshal generates wrong code for va marshaler for VARIANT type
1071  - #1794 API Proposal: g_timer_is_active
1072  - #1796 Add gio-querymodules variable to pkg-config file
1073  - #1797 glib/tests/win32 test failing on 64-bit Visual Studio builds
1074  - #1798 /contenttype/tree reliably fails on FreeBSD since !863
1075  - #1807 g_dbus_server_new_sync() documentation references nonexistent function
1076  - #1808 Stopping a GDBusServer should clean up Unix socket paths (if not abstract) and nonce-tcp nonce files
1077  - #1811 Introspection info for g_unichar_compose's 3rd arg should be OUT
1078  - #1822 keyfile gsettings backend not loading
1079  - #1823 Documentation for disabling selinux is incorrect
1080  - #1825 GKeyFileSettingsBackend created without filename construct property and unchecked assertion
1081  - #1828 Small typo in gio manpage
1082  - #1837 Specify for each (optional) parameter, whether it is OUT or INOUT
1083  - #1838 Reword documentation for G_DECLARE_FINAL_TYPE
1084  - #1847 Setting GLIB_VERSION_{MIN_REQUIRED, MAX_ALLOWED} to before 2.56 triggers warnings
1085  - !533 docs: Document pitfall of deprecation pragmas
1086  - !563 ci: Add scan-build job in a new ‘analysis’ pipeline stage
1087  - !678 glib-compile-schemas: Improve translatable strings
1088  - !817 gdate: Officially mark GTime as deprecated
1089  - !851 gsettings: Document that lists are returned in no defined order
1090  - !853 gobject: Fix apostrophe usage in a few small bits of documentation
1091  - !859 gobject: Add a g_assert_finalize_object() macro
1092  - !863 gunicollate/cygwin: Don't use __STDC_ISO_10646__ for wchar_t related checks
1093  - !865 gnetworkaddress: fix "happy eyeballs" logic
1094  - !867 Post-release version bump
1095  - !871 Drop G_DISABLE_DEPRECATED
1096  - !873 Use atomic reference counting for GSource
1097  - !874 Clamp number of vectors to IOV_MAX / UIO_MAXIOV for GOutputStream writev()...
1098  - !875 CI/msys2: disable coverage reporting, lcov doesn't support gcc9 yet
1099  - !876 CVE-2019-12450: gfile: Limit access to files when copying
1100  - !877 gio: specify proper c_marshaller and va_marshallers
1101  - !883 tests: Fix small race in GSubprocess tests
1102  - !884 garcbox.c: Fix typo atomit => atomic
1103  - !885 goption: Clarify G_OPTION_ARG_FILENAME documentation
1104  - !889 Include <sys/filio.h> for FIONREAD
1105  - !901 gmain: Clarify that g_source_destroy() doesn’t drop a reference
1106  - !904 Add glib-genmarshal tests and fix some valist marshaller bugs
1107  - !906 property action: Add state hints
1108  - !908 Improve testfilemonitor test repeatability and debuggability
1109  - !909 D-Bus auth mechanism improvements
1110  - !914 ci: Run scan-build in a different build directory
1111  - !915 docs: fix typo on arrays examples in gvariant-text
1112  - !917 docs: Fix name of IRC channel in CONTRIBUTING.md
1113  - !919 glib/tests/refcount.c: Fix tests on non-GCC-isque compilers
1114  - !920 gmacros: Only use deprecated attributes on enumerators with GCC ≥ 6.5
1115  - !923 Check if compiler symbols are defined before using them
1116  - !924 Bump the required version of Meson
1117  - !930 glib/tests/convert.c: Skip tests that aren't meaningful for Windows
1118  - !931 glib/tests/fileutils.c: Fix stdio Wrapper Test on Windows
1119  - !934 build: Increase the slow test timeout to 180s
1120  - !935 Ignore */__pycache__/* directories
1121  - !937 Fix module tests on Visual Studio builds
1122  - !939 gstdio: minor cleanups
1123  - !941 list model: Expand items-changed docs
1124  - !944 gutils: Don't limit the length of the host name to 99
1125  - !945 Avoid overrunning stack at the end of the varargs.
1126  - !947 gobject/tests/signals.c: Fix tests on Windows
1127  - !948 GObject: Fix mkenums.py and genmarshal.py tests on Windows
1128  - !950 ci: Enable CI on FreeBSD 12
1129  - !951 Preliminary patches for Universal Windows Platform support
1130  - !952 gio: Make minor docs improvements
1131  - !953 g_utf8_normalize: Doc comment return missing nullable annotation
1132  - !954 Fix the ISO 15924 code for Manichaean
1133  - !955 gmacros: Use _Static_assert when C11 is available
1134  - !958 gthread: fix minor errno problem in GCond
1135  - !961 gmain: Fix g_main_context_prepare priority annotation
1136  - !962 gmacros: Use _Static_assert only for non-expr static assert
1137  - !964 gmacros.h: Use static_assert on MSVC if possible
1138  - !968 Fix typo in request handle
1139  - !970 gdatetime: Unset LC_ALL for the test as well
1140  - !971 docs.c: Forward link from g_auto* → G_DEFINE_AUTO*
1141  - !973 doc: fix typo in gio/gresource.c
1142  - !979 Experimental clang-cl support
1143  - !980 gmacros.h: Add better support for clang-cl
1144  - !981 gio: fix typo in g_settings_reset documentation
1145  - !982 Various doc fixes
1146  - !985 Keyfile portal fixes
1147  - !987 gio/tests: Remove code and comments referring to libtool
1148  - !991 fix atomic detection on older gcc versions
1149  - !992 docs: Add example to g_test_summary() documentation
1150  - !994 gio: Fix minor docs mistakes
1151  - !996 Small array test fixes
1152  - !997 gdbusaddress: Add missing transfer annotation
1153  - !1007 Resubmission of !832 “Try to create the complete path right away and fall back”
1154  - !1009 gapplication: remove inactivity_timeout source on finalize
1155
1156 * Translation updates:
1157  - Hungarian
1158  - Indonesian
1159  - Portuguese (Brazil)
1160  - Spanish
1161
1162
1163 Overview of changes in GLib 2.61.1
1164 ==================================
1165
1166 * `g_unichar_isxdigit()` and `g_unichar_xdigit_value()` now handle full-width
1167   characters (U+FF21–U+FF26 and U+FF41–U+FF46) (#58)
1168
1169 * Deprecate `gtester` utility and its test reporting format and enable TAP
1170   output by default instead — the `--tap` option to tests is now a no-op
1171   (#1441, #1619)
1172
1173 * Add `g_test_summary()` to allow test authors to programmatically summarise
1174   what each unit test in a test suite does (#1450)
1175
1176 * Upgrade to Unicode Character Database v12.1 (#1713, !822)
1177
1178 * More IPv6 Happy Eyeballs fixes to `GNetworkAddress` and `GSocketClient`
1179   (#1747, #1771, #1774)
1180
1181 * Fix valgrind and gdb support for the new `GHashTable` changes (#1749, #1780)
1182
1183 * Fix GTask wait times growing faster than the number of task threads (#1683)
1184
1185 * Change `GApplication` to ignore `-psn_*` arguments on the macOS command line,
1186   as they are irrelevant (#1784)
1187
1188 * Add `g_autoqueue()` helper macros, similar to `g_autolist()` (!474)
1189
1190 * Add pre-allocated link helpers for `GList` and `GQueue`:
1191  - `g_list_insert_before_link()`
1192  - `g_queue_insert_before_link()`
1193  - `g_queue_insert_after_link()`
1194
1195 * Improve network availability detection with NetworkManager to treat lower
1196   levels of connectivity as having reduced availability (!781)
1197
1198 * Add `g_clear_signal_handler()` to allow disconnecting from a `GObject` signal
1199   and clearing the signal handler ID to zero in a single call (!819)
1200
1201 * Add `g_autoptr()` support for `GRWLock` (!825)
1202
1203 * Define `G_OS_UNIX`, not `G_OS_WIN32`, when GLib is built agains Cygwin (!862)
1204
1205 * Bugs fixed:
1206  - #29 GScanner: should explicitly document modifiable fields (value, next_value, ...)
1207  - #58 g_unichar_isxdigit() and g_unichar_xdigit_value() should deal with full-width a-fA-F
1208  - #106 Boxed types should be documented better
1209  - #135 g_unichar_totitle(0) returns 0x00001F88 instead of 0
1210  - #429 g_format_size() is broken on Windows
1211  - #1441 Deprecate gtester
1212  - #1450 Add API for tests to describe what they're checking
1213  - #1619 GTest should have a way to default to TAP
1214  - #1683 GTask: task_wait_time is increased constantly when the number of running thread is greather than 10
1215  - #1713 Upgrade to Unicode Character Database v12
1216  - #1739 meson build failure libdl
1217  - #1747 Critical in g_socket_client_async_connect_complete
1218  - #1749 New GHashTable implementation confuses valgrind
1219  - #1753 Remove memory leaks from gio/test/resolver.c
1220  - #1755 Please revert #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
1221  - #1759 test_month_names: assertion failed
1222  - #1760 Document for g_resolver_lookup_records why it returns a list of list of gchar*.
1223  - #1763 tests: -p runs tests in the reverse of the specified order
1224  - #1768 g_strlcat(): Possible buffer overflow in implementation
1225  - #1771 GNetworkAddressAddressEnumerator unsafely modifies cache in GNetworkAddress
1226  - #1774 Leaks in gsocketclient.c connection code
1227  - #1776 glib/date test fails
1228  - #1780 GDB pretty-printer for GHashTable no longer works
1229  - #1782 Error in documentation for cross-compile.
1230  - #1784 MacOS adds a -psn_X_XXXXXX parameter to the command line
1231  - !474 Add g_autoqueue
1232  - !476 Add pre-allocated link helpers for GList and GQueue
1233  - !556 gtestutils: Make --tap compatible with -p and --GTestSkipCount
1234  - !732 gsocket: Clarify in docs that `flags` arguments can be platform specific
1235  - !766 W32: swap special g_get_prgname() for platform_get_argv0()
1236  - !774 Only build tests if certain conditions are met.
1237  - !780 Add copyright and licensing terms to test report generator
1238  - !781 gnetworkmonitornm: Fix network available detection
1239  - !782 build: Fix check for RTLD_NEXT
1240  - !785 Remove monitor test
1241  - !787 build: Remove */.gitignore files
1242  - !791 glib/gconstructor.h: Include stdlib.h for MSVC builds
1243  - !792 general: Remove a few unhelpful references to ‘master’
1244  - !795 gdesktopappinfo: Add support for MATE and Xfce4 terminals
1245  - !802 gio: tests, don't check for libdl on OpenBSD
1246  - !806 Get to 100% coverage on GQueue tests
1247  - !808 Update the Docker images used for CI
1248  - !809 Modified version of !784 — Adding tests cases for a better coverage of glib/tests/strfuncs.c
1249  - !813 gappinfo: Add precondition checks to GAppLaunchContext env methods
1250  - !814 gschema.dtd: Add target attribute to alias
1251  - !819 Clear signal handler
1252  - !820 ci: Keep JUnit report script working on Debian stable
1253  - !821 Various minor cleanups to autoptrs
1254  - !822 glib: Update Unicode Character Database to version 12.1.0
1255  - !825 Add autoptr support for GRWLock
1256  - !831 build: (Long time after) post-release version bump
1257  - !835 Fix typo in German translation
1258  - !836 Document the best practices for binding GInitiallyUnowned
1259  - !862 build: define G_OS_UNIX, not G_OS_WIN32 under cygwin
1260
1261 * Translation updates:
1262  - Basque
1263  - Catalan
1264  - German
1265  - Indonesian
1266  - Spanish
1267
1268
1269 Overview of changes in GLib 2.61.0
1270 ==================================
1271
1272 * Changes to `iconv` configure options, including the default iconv
1273   implementation on macOS — distributors may need to check their configure
1274   scripts (#1557)
1275
1276 * Build fixes when building GLib with `G_DISABLE_ASSERT` defined (#1708)
1277
1278 * Fix documentation for `gdbus-tool wait` to use correct units (#1737)
1279
1280 * Improvements to symlink handling on Windows (!269)
1281
1282 * Add exception handling for crashes on Windows (!582)
1283
1284 * Set `G_WITH_CYGWIN` again when GLib is built on Cygwin (this was a regression
1285   from the autotools build) (!736)
1286
1287 * Use `GCocoaNotificationBackend` by default on macOS, rather than
1288   `GGtkNotificationBackend` (!745)
1289
1290 * Use Windows symbol visibility when GLib is built on Cygwin, as PE binaries
1291   are subject to W32 visibility mechanics — this affects the definition of
1292   `_GLIB_EXTERN` (!752)
1293
1294 * Add coloured output support to `gdbus introspect` (!761)
1295
1296 * Bugs fixed:
1297  - #682 docs: advise not to use non-literal strings as qdata keys
1298  - #1177 gparted crashes due to g_quark_from_static_string used in global initialization
1299  - #1258 the buffer written to by g_input_stream_read is not marked as an out parameter
1300  - #1557 By default glib tries to use libc instead of native iconv on OSX
1301  - #1566 Meld Windows shows error on startup "There was a problem starting c:\Program"
1302  - #1614 GIO tests fail on FreeBSD CI with: Unexpected error from C library during 'pthread_mutex_lock': Invalid argument
1303  - #1708 Building GLib with G_DISABLE_ASSERT fails
1304  - #1709 GResource generation test incompatible with stable LLVM on Linux
1305  - #1710 Crash in g_cancellable_cancel
1306  - #1712 gdbus-proxy test is flaky
1307  - #1724 unconditional check in fuzzing/meson.build
1308  - #1725 gosxappinfo.h is not installed on macOS
1309  - #1727 Cannot use trash folder with an NFS mount using automount / autofs
1310  - #1728 GSocket does not support ENOTSOCK
1311  - #1732 Win32: lookup_by_name_async segfaults for not available domains
1312  - #1737 gdbus-tool wait command timeout argument incorrect unit reference
1313  - !67 glib: update internal gnulib from upstream
1314  - !269 Win32 symlink code refactoring
1315  - !493 tests: Check that cancelling g_file_replace don't overwrite existing file
1316  - !582 Basic W32 exception handling for glib
1317  - !680 Fix warnings glib
1318  - !690 Fix thread safety issues
1319  - !694 gvariant-parser: Fix pattern coalesce of M and *
1320  - !706 Fix data races in task test and gmenumodel test
1321  - !709 Bump release version for 2.62 series
1322  - !710 socket: Fix annotation for flags in g_socket_receive_message
1323  - !712 gwin32: Fix comment for g_win32_veh_handler
1324  - !716 Various minor documentation fixes
1325  - !717 Improve formatting of GCC attribute documentation
1326  - !718 GSocketClient - Free last error if a connection attempt fails and on retry the...
1327  - !719 Handle an UNKNOWN NetworkManager connectivity as NONE
1328  - !721 codegen: Fix use of uninitialised variable
1329  - !723 Provide examples for GNUC attribute macros
1330  - !724 meson: do a build-time check for strlcpy before attempting runtime check
1331  - !728 gsocket: Remove (type) annotation from flags arguments
1332  - !730 Improve gdbus-address parsing tests
1333  - !735 docs: Use the right g_autoptr function when using an auxiliary function
1334  - !736 Set G_WITH_CYGWIN again
1335  - !737 gresolver: Don’t use gai_strerror() on Windows, as it isn’t threadsafe
1336  - !741 Fix use-after-free triggered by gnome-session-binary
1337  - !745 gcocoanotificationbackend: give more priority than the gtk one
1338  - !749 gio: Add missing autocleanup definition for GSettingsSchema{Key,Source}
1339  - !750 Check for RTLD_NEXT
1340  - !752 Use W32 visibility for Cygwin
1341  - !754 Check for /proc/self/cmdline
1342  - !757 Fix gnulib build on older Visual Studio builds
1343  - !760 Properly ensure the cocoa notification backend type
1344  - !761 RFC: gdbus-tool: Add --color option for introspect
1345  - !762 gutils: Add (nullable) annotation to g_get_prgname()
1346  - !765 gslice: Use a convenience macro
1347  - !769 ci: Generate a cover report for the test suite
1348  - !772 tests: Check that option-argv0 test succeeds on Linux
1349  - !776 tests: Only run --external-data test on GNU ld/objcopy
1350  - !779 Fix 2.62 documentation symbols
1351
1352 * Translation updates:
1353  - Dutch
1354
1355
1356 Overview of changes in GLib 2.60.0
1357 ==================================
1358
1359 * Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1653, #1679, #1693)
1360
1361 * Add support for the XDG trash portal (#1676, !276)
1362
1363 * Bugs fixed:
1364  - #1653 gsocketclient-slow test is flaky
1365  - #1658 keyfile settings backend: Consider tightening permissions
1366  - #1668 Fill in CODE-OWNERS file
1367  - #1675 glib-compile-resources: c_name generation issue
1368  - #1676 Trash portal tries to open files as read-only but D-Bus API documents against that
1369  - #1679 socket-service test is flaky
1370  - #1693 Happy Eyeballs failure in gsocketclient-slow test
1371  - #1697 gthreadresolver: do_lookup_records does res_ninit with an uninitialized state
1372  - #1698 g_base64_encode(NULL, 0) causes critical warnings
1373  - !276 Support the trash portal
1374  - !639 gvariant-parser: Fix error handling when type coalescing fails
1375  - !666 Socket fixes to W32 test suite
1376  - !674 Update gvdb submodule
1377  - !676 Initialize a variable
1378  - !677 gerror: Add a missing precondition assertion in documentation
1379  - !686 gio: Also support modules built with MSVC
1380  - !688 gsocketclient: Fix critical on cancellation
1381  - !689 glib-compile-resources: Fix a minor leak
1382  - !691 gtask: Separate GTask fields memory locations to avoid data races
1383  - !692 glib.supp: Add more variations of existing suppressions
1384  - !696 Move closures refcount test to gobject/tests/
1385  - !698 gthreadedresolver: Remove unused thread pool
1386  - !699 tests: Fix closure-refcount to preserve old semantics
1387  - !702 Rename gobjectenumtypes.[ch] to glib-enumtypes.[ch]
1388  - !703 Clean up gmarshal.[ch]
1389
1390 * Translation updates:
1391  - Catalan
1392  - Czech
1393  - French
1394  - Friulian
1395  - German
1396  - Italian
1397  - Korean
1398  - Romanian
1399  - Serbian
1400
1401
1402 Overview of changes in GLib 2.59.3
1403 ==================================
1404
1405 * Fix support for g_get_user_special_dir() on macOS, including support for the Downloads directory (#1048)
1406
1407 * Ensure that cancelling a GTask cannot cause its callback to be called synchronously (in the same call chain as the original *_async() call) (#1608)
1408
1409 * Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1644, #1680)
1410
1411 * Various fixes for installation of installed tests (thanks to Iain Lane) (!649, !651)
1412
1413 * Various fixes for tests when run on Windows (thanks to LRN) (!665, !667)
1414
1415 * Bugs fixed:
1416  - #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
1417  - #875 gio-gvfs on Windows: Don't mishandle other non-native URIs in gwinhttpvfs.c
1418  - #1048 "Desktop" shortcut appears twice in file chooser sidebar on OSX
1419  - #1608 Cancellation might not be asynchronous under certain circumstances
1420  - #1644 network-address test failure in CI: IPv6 Broken (g-io-error-quark, 24)
1421  - #1680 Regression: g_socket_client_connect_to_host_async() sometimes gets "Connection refused" when connecting to localhost
1422  - #1686 gdbus-peer test is sometimes timing out
1423  - !613 Use win32 io channel on windows for the protocol test
1424  - !634 Win32: gio/gsocket.c: Set WSAEWOULDBLOCK on G_POLLABLE_RETURN_WOULD_BLOCK
1425  - !638 gvariant-parser: Fix parsing of G_MININT* values in GVariant text format
1426  - !640 tests: Tag socket-service test as ‘flaky’
1427  - !641 Minor typo fixes to GSpawn documentation
1428  - !645 gsocketlistener: Fix multiple returns of GTask when accepting sockets
1429  - !647 gsocketclient: Ensure task is always returned on cancel
1430  - !648 gio/tests/task: Run the worker indefinitely until it's cancelled
1431  - !649 gio tests: Install test1.overlay file when building installed tests
1432  - !650 gstring: fully document semantics of @len for g_string_insert_len
1433  - !651 tests: Install the slow-connect-preload.so library and use it
1434  - !667 GSubprocess fixes for W32 test suite
1435  - !668 tests: Mark gdbus-peer test as flaky
1436  - !669 GWin32VolumeMonitor: Sort the volumes correctly
1437  - !670 gpollableoutputstream: Fix the description of the interface
1438  - !672 Fix some tests when running as root
1439
1440 * Translation updates:
1441  - Catalan
1442  - Danish
1443  - French
1444  - Indonesian
1445  - Kazakh
1446  - Portuguese (Brazil)
1447  - Slovenian
1448  - Turkish
1449
1450
1451 Overview of changes in GLib 2.59.2
1452 ==================================
1453
1454 * Fix check on GDBusMessage size when reading it. (#1642)
1455
1456 * Add async GIO API: g_file_query_default_handler_async(), g_app_info_launch_uris_async() (#1249, #1347)
1457
1458 * Fix some bugs in the Happy Eyeballs implementation. (#1646, #1649)
1459
1460 * Install a new generated header with enum types for Unicode enums. (!481)
1461
1462 * Support the XDG trash portal. (!276)
1463
1464 * Bugs fixed:
1465  - #1224 TSAN patches
1466  - #1249 xdg-open/gnome-open doesn't work if service isn't started
1467  - #1347 g_app_info_launch_default_for_uri_async  is not really async
1468  - #1376 gmarkup: Optimize g_markup_escape_text()
1469  - #1642 minor mismatch between error and code in g_dbus_message_bytes_needed
1470  - #1646 Criticals in g_socket_client_enumerator_callback()
1471  - #1649 Critical in g_socket_client_connected_callback
1472  - #1673 G_MININT constants broken in g-i
1473  - !276 Support the trash portal
1474  - !481 Define enum types for Unicode enums
1475  - !585 gio: do not pass O_PATH file descriptors to portal APIs
1476  - !593 Don't fail trash test if ~/.local doesn't exist or mount points can't be determined (master)
1477  - !609 Make `g_app_info_launch_uris_async()` really asynchronous
1478  - !619 gvariant: Fix a mistake in docs
1479  - !622 Fixing warnings
1480  - !626 gdbus: Avoid printing null strings
1481  - !627 gsocketclient: Fix criticals
1482  - !629 Various memory leak cleanups to GSettings tests (subset)
1483  - !630 docs: Ignore more version macros
1484
1485 * Translation updates:
1486  - Galician
1487  - Hungarian
1488  - Lithuanian
1489  - Polish
1490  - Spanish
1491
1492
1493 Overview of changes in GLib 2.59.1
1494 ==================================
1495
1496 * Autotools support is gone. (!580)
1497
1498 * g_format_size() now uses a no-break space to separate digits and units;
1499   translations will need to be updated accordingly. (#1625)
1500
1501 * New g_queue_clear_full() API. (#1464)
1502
1503 * Fix argument quoting on win32 when spawning subprocesses. (!419)
1504
1505 * Allow polling more than 64 handles on win32 using g_poll(). (#1071)
1506
1507 * Tag various tests as ‘flaky’. These are no longer run routinely on our
1508   upstream CI machines, and downstream packagers may want to not run them (or
1509   not treat those test failures as package build failures) on their test
1510   machines either. They are in the `flaky` test suite. (!579)
1511
1512 * Add overlay support to g_resources_get_info(). (#1445)
1513
1514 * Support defaults and locks in the keyfile GSettings backend. This will be
1515   used for flatpaks. (!450)
1516
1517 * Accept unquoted strings in the keyfile GSettings backend to simplify things
1518   for sysadmins. (!603)
1519
1520 * Update our contribution guidelines (`CONTRIBUTING.md`). (!590)
1521
1522 * Add writev() and writev_all() APIs to GOutputStream and GPollableOutputStream,
1523   and provide implementations of them for many subclasses. (#1431)
1524
1525 * Bugs fixed:
1526  - #424 Add 'proxy' debugging support
1527  - #1055 Provide alignment macros
1528  - #1071 Eliminate MAXIMUM_WAIT_OBJECTS limitation in g_poll() on Windows
1529  - #1445 g_resources_get_info doesn't respect resource overlays
1530  - #1464 Add g_queue_clear_full() API
1531  - #1500 GListStore needs double checking on some warnings
1532  - #1623 xdg-open: file with colon results in “The specified location is not supported”
1533  - #1625 Unbreakable space needed when showing size of folder/file
1534  - #1636 GTask getters don’t return TRUE/FALSE after bitfield changes
1535  - #1637 EXCEPTION_ACCESS_VIOLATION in g_clear_pointer
1536  - #1639 GListStore implementation of g_list_model_get_item() returns wrong results on integer overflow
1537  - #1655 gvariant-parser warnings
1538  - #1663 G_MININT32 triggers compiler warning C4146 with Visual C++
1539  - #1666 `G_DEFINE_DYNAMIC_TYPE_EXTENDED` causes warnings with -Wcast-function-type
1540  - !319 giomodule: Print the type of each default GIO module
1541  - !333 Add writev() API to GOutputStream and GPollableOutputStream
1542  - !419 gspawn, win32: qouted args - escape end backslash
1543  - !450 Settings portal
1544  - !512 gtype: Clarify type of GInterfaceInitFunc
1545  - !516 gthread: Add g_private_set_alloc0() convenience API
1546  - !535 win32 gpoll: overcome the 64 handles limit
1547  - !545 goption: Fix an annotation on g_option_context_parse_strv()
1548  - !560 docs: Fix dconf GSETTINGS_BACKEND name in gio overview
1549  - !564 gtype: Document type for iface_default_init() function
1550  - !568 Add separate definitions of g_assert_[non]null() for C++
1551  - !571 docs: Add note on how to check a gboolean condition
1552  - !575 gio: Update bad cert error in accept-certificate and GTlsError docs
1553  - !579 Temporarily disable flaky tests
1554  - !580 Drop autotools support
1555  - !583 gmacros: MSVC supports the noreturn function attribute
1556  - !587 Remove unused .pc.in files
1557  - !588 MSVC: Move dirent implementation to glib/dirent/
1558  - !590 Update contribution documentation
1559  - !591 gfileinfo: Fix annotation for g_file_info_set_attribute_stringv
1560  - !592 Remove leftover build/ directory
1561  - !595 gtestutils: pass open file descriptors to subprocess
1562  - !597 tests: Tag gsocketclient-slow test as ‘flaky’
1563  - !598 gdbus-proxy test fails with GLib-GIO:ERROR:glib/gio/tests/gdbus-proxy.c:832:fail_test: code should not be reached
1564  - !599 gdtlsconnection: do not return on a void method
1565  - !601 gio: Support "help" in extension point env vars
1566  - !602 Update POTFILES.in
1567  - !603 keyfile settings: Accept unquoted strings
1568  - !608 build: Add -Wno-pedantic flag to compiler arguments
1569  - !611 gnetworkaddress: fix use-after-free for network address
1570  - !612 gdir: shutup a warning when building with msvc
1571  - !615 Fix a couple of wrong compiler warnings
1572
1573 * Translation updates:
1574  - Spanish
1575  - Swedish
1576
1577
1578 Overview of changes in GLib 2.59.0
1579 ==================================
1580
1581 * This will be the last development release with autotools support. As our
1582   Meson support has been around since 2.56.x, and was used to release tarballs
1583   in 2.58.x, the next development release (2.59.1) will drop autotools as used
1584   to build GLib. The macros installed for other packages to use will remain.
1585
1586 * Add `G_TEST_OPTION_ISOLATE_DIRS` to redirect `XDG_*_HOME` to a temporary
1587   directory for each unit test. (#538)
1588
1589 * Support `Property.EmitsChangedSignal` annotations in `gdbus-codegen`. (#542)
1590
1591 * Add `g_assert_cmpvariant()` API for unit tests. (#1191)
1592
1593 * Hide bind mounts from GIO mount listings. (#1271)
1594
1595 * Automatically realign data passed to `g_variant_new_from_bytes()` or
1596   `g_variant_new_from_data()` if it is not correctly aligned. This prevents
1597   misaligned accesses on architectures which don’t support them. Callers should
1598   still aim to correctly align data to get higher performance. (#1342)
1599
1600 * Support `ld -b binary` (on platforms which support it; i.e. Linux) to provide
1601   large pre-compiled `GResource` resources with a fast compilation time. (#1489)
1602
1603 * Unconditionally install GLib m4 macros, so that projects which depend on GLib
1604   and which still build using autotools can continue to build even once GLib has
1605   ported entirely to Meson. (#1520)
1606
1607 * Various fixes to the Meson build.
1608
1609 * Drop Python 2 support and require Python 3.4+. See discussion on
1610   https://mail.gnome.org/archives/desktop-devel-list/2018-July/msg00004.html.
1611   (!196)
1612
1613 * `GHashTable` performance and memory improvements for common cases. See
1614   https://hpjansson.org/blag/2018/07/24/a-hash-table-re-hash/. (!208)
1615
1616 * Add flags that allow a `GApplication` to signal and replace a currently
1617   running other instance of the same `GApplication`. This will be used for app
1618   upgrades with flatpak. (!250)
1619
1620 * Autostart xdg-desktop-portal when using the network monitor and proxy monitor
1621   portal backends. (!317)
1622
1623 * Add a g_task_set_name() API to allow `GTask`s to be described; useful for
1624   debugging. (!384)
1625
1626 * Enable FreeBSD CI on every commit for upstream GLib. (!387)
1627
1628 * Various GVariant, GMarkup and GDBus fuzzing fixes, including buffer overflow
1629   fixes. (!411)
1630
1631 * Various fixes to eliminate thread races, found by thread sanitizer (tsan).
1632
1633 * Deprecate TLS/DTLS rehandshaking, as it has been removed from the protocol in
1634   TLS 1.3. (!478)
1635
1636 * Support reading arguments from a file with `glib-mkenums`, which is useful
1637   for long argument lists due to having deeply nested build directories, on
1638   systems with a low limit on the command line length. (!489)
1639
1640 * Make `g_environ_*()` case-insensitive on Windows, as the environment itself
1641   is case-insensitive on Windows. (!500)
1642
1643 * Add Application Layer Protocol Negotiation (ALPN) support to `GTlsConnection`
1644   and `GDtlsConnection`, so that higher layer protocols can be negotiated when
1645   setting up a TLS connection, without additional round trips and latency. This
1646   is needed for eventual HTTP/2 support. (!520)
1647
1648 * Add support for TPM keys in PEM files when loading TLS certificates. (!522)
1649
1650 * Add a `GRecMutexLocker` auto-pointer wrapper for `GRecMutex`. (!528)
1651
1652 * Bugs fixed:
1653  - #107 The "g_key_file_get_comment" interface returns comment with unexpected new line symbol at the end
1654  - #179 g_object_unref assert in debug code
1655  - #277 'destroy_data' in g_cclosure_new is registered as finalize notifier instread invalidate.
1656  - #538 Add helpers to redirect XDG_*_HOME to a temp dir for unit tests
1657  - #542 gdbus-codegen does not honor "Property.EmitsChangedSignal" annotations
1658  - #656 check for -Werror=format-security broken
1659  - #734 Provide a way to instantiate a GDBusProxy-derived class from a GDBusConnection and a object path without blocking
1660  - #827 gmain: Clarify that g_source_set_callback() is safe on attached sources
1661  - #1055 Provide alignment macros
1662  - #1119 GVolumeMonitor: Results don't reflect current state but state when application was launched
1663  - #1191 add g_assert_equal_variants
1664  - #1261 Add option to leave <default> in gschema empty
1665  - #1271 fstab binds appear as mounts (x-gvfs-hide is being ignored)
1666  - #1310 gdbusproxy: make g-name-owner property useful with unique names
1667  - #1313 Meson: Rework the config.h generation
1668  - #1342 Automatically realign data passed to g_variant_new_from_bytes() or g_variant_new_from_data()
1669  - #1343 g_date_set_parse: Parses "September" in Polish incorrectly
1670  - #1362 Incorrect documentation about GSettings child add/remove notifications
1671  - #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
1672  - #1471 Incorporate oss-fuzz fuzz targets into GLib
1673  - #1489 Use `ld -b binary` to speed up GResource generation for linking
1674  - #1498 distcheck fails in distclean
1675  - #1506 error: redefinition of typedef 'GKqueueFileMonitor'
1676  - #1509 test_timeval_to_iso8601_overflow: 'out' should be NULL
1677  - #1513 GIcon regression?
1678  - #1514 gio/appinfo test sometimes fails in CI
1679  - #1518 /network-monitor/create-in-thread fails in (LXC) containers on glib-2-56
1680  - #1520 Change conditions for installing m4 macros
1681  - #1522 Trash not working on NTFS folder accessed from symlink
1682  - #1523 GIO NetworkMonitor doesn't reflect the current network state
1683  - #1525 GTask allows (buggy) application code to cause callback to be called twice, without warning
1684  - #1527 Meson doesn't install data for installed-tests
1685  - #1528 Meson tests are hard to debug in an autobuilder environment
1686  - #1530 tests/mainloop-test appears to be flaky
1687  - #1535 meson: installed-test metadata not run in TAP mode
1688  - #1536 meson: spurious dependencies on convenience libraries in .pc files
1689  - #1537 meson: absolute paths to ${builddir} included in gtk-doc HTML
1690  - #1538 meson: G_HAVE_GROWING_STACK defined differently
1691  - #1539 meson: Some files are unnecessarily installed executable
1692  - #1541 meson: timeloop-closure test not installed
1693  - #1542 meson: /usr/lib/glib2.0/installed-tests/glib/gdbus-peer: error while loading shared libraries: libgdbus-example-objectmanager.so: cannot open shared object file: No such file or directory
1694  - #1544 meson: gtester-report #! not replaced with ${PYTHON}
1695  - #1546 Cross-compilation fails in 2.58
1696  - #1556 build: Too long file path issue with meson on Windows
1697  - #1562 GDate test suite fails with latest glibc
1698  - #1570 ghash.c:694:27: left shift of 1 by 31 places cannot be represented in type 'int'
1699  - #1572 Flags validation fails
1700  - #1575 g_date_time_format() should have format attribute
1701  - #1576 Fails to build with Meson on Debian armel (armv5te EABI softfloat little-endian)
1702  - #1580 glib-compile-resources using strings breaks building e.g. GTK+ on MS Visual C, which limits strings to 65535 chars
1703  - #1581 Memory used for reference counted data might be misaligned.
1704  - #1588 Moving a bookmark item to the same URI causes a crash
1705  - #1589 g_log_writer_is_journald memoizes a single result, even though it accepts a parameter
1706  - #1590 tests: g-file-info-filesystem-readonly fails if run more than once with fuse & bindfs installed
1707  - #1594 Return value of g_dbus_connection_get_unique_name not annotated as nullable
1708  - #1600 g_timeout_source_new_seconds overflows when given interval > (G_MAXUINT / 1000)
1709  - #1601 appinfo test fix is defective
1710  - #1605 g_date_time_format fails when used with non ASCII format string on POSIX locale
1711  - #1615 gdbus-codegen not generating nullable annotation
1712  - !196 [RFC] build: Drop Python 2 support and require Python 3.4+
1713  - !200 Add a new GTlsError to indicate protocol downgrade attacks
1714  - !208 GHashTable improvements
1715  - !219 glocalfilemonitor: Fallback to poll file monitor for NFS
1716  - !238 W32 GFileInfo improvements
1717  - !250 Application replace
1718  - !264 glib-compile-resources: encode data as string
1719  - !268 build: simplify alloca checks. See #1313
1720  - !272 dtrace: Add missing const attributes to types in glib_probes.d
1721  - !273 gtlsbackend: add support for setting the default TLS database
1722  - !277 Use "command -v" instead of "which"
1723  - !282 meson: Add macOS libtool versioning for ABI compatibility
1724  - !286 gspawn: Fix build on systems without O_CLOEXEC
1725  - !287 glib-compile-resources: Fix generated code compiling with C++ compilers
1726  - !289 tests: Add more tests to finish branch coverage of GHashTable
1727  - !290 build: fix installation dir of glib-gettextize
1728  - !292 Remove all ChangeLog files
1729  - !293 Document new volume class `loop`
1730  - !294 portal network monitor: Always emit changed signal on changed
1731  - !295 meson: fix typo
1732  - !296 Add G_GNUC_FALLTHROUGH for __attribute__(fallthrough))
1733  - !297 build: Drop AC_C_CONST from configure.ac
1734  - !302 Document that GTimeVal is subject to the year 2038 problem on 32-bit systems
1735  - !303 liststore: Simplify code
1736  - !304 Add more GListStore/GListModel tests
1737  - !309 codegen: Change pointer casting to remove type-punning warnings
1738  - !312 Enable GIO tests on Windows
1739  - !316 gdbus: Improve error when well-known name is unowned
1740  - !317 Autostart xdg-desktop-portal if needed
1741  - !322 gnetworkmonitornm: Set a GError properly on an error handling path
1742  - !332 gmarkup: Make the documentation even more explicit about untrusted input
1743  - !334 gio: automake: Add libgmodule dependency
1744  - !338 gcharset: fix leaking g_get_language_names_with_category
1745  - !339 Add g_desktop_app_info_get_string_list(); fix g_key_file_free()
1746  - !340 tests: Mark two more tests as slow
1747  - !345 Fix build failure on systems without POSIX spawn
1748  - !347 Use Meson 0.48.0 for CI
1749  - !348 Documentation tweaks for g_array_free
1750  - !353 Meson: Do not run tests/refcount with --tap
1751  - !354 Fix spelling mistakes detected by Debian's Lintian tool
1752  - !358 Autotools: Move libmount from Libs.private to Requires.private
1753  - !360 CI: Test static build on installed glib
1754  - !363 Tests: Mark printf wrappers with G_GNUC_PRINTF
1755  - !364 ci: Enable FreeBSD CI
1756  - !366 gunixmounts: Mark mounts as system internal instead of filtering out
1757  - !372 gmacros: Fix G_[UN]LIKELY to not mask -Wparentheses
1758  - !374 gthreadpool: Include prgname in thread name
1759  - !375 m4macros: Allow information from pkg-config to be overridden
1760  - !376 gthread: Clarify priority handling in GRWLock
1761  - !379 Ignore g_return_*if_fail() branches in lcov coverage report
1762  - !381 Add UTF-8 communication tests for GSubprocess
1763  - !384 gtask: Add a g_task_set_name() method
1764  - !387 ci: Enable FreeBSD CI in the official repository
1765  - !396 m4: Fix AM_PATH_GLIB_2_0 macro
1766  - !400 grefcount: add missing gatomic.h
1767  - !403 build-sys: Pass CFLAGS to $(DTRACE)
1768  - !405 ci/msys2: fix path to the lcov config file
1769  - !406 meson: Mark 1bit-emufutex test as slow
1770  - !407 meson: Increase test timeouts
1771  - !410 gfileutils: Add examples to g_path_get_dirname() documentation
1772  - !411 Various GVariant, GMarkup and GDBus fuzzing fixes
1773  - !412 Enable compile time check of g_date_time_format() format
1774  - !413 Add support for g_auto(s)list to G_DECLARE'd types
1775  - !414 gio, tests: ensure objectmanager sources are generated
1776  - !415 gseekable: fix 'attmepting' typo
1777  - !416 gdbus-peer: Make sure to not include objectmanager-gen.c source
1778  - !417 Fix ^*ay handling in g_variant_iter_loop()
1779  - !418 Meson: Cleanup a FIXME now that we have dict addition
1780  - !420 gdbus-codegen: add autocleanup for FooObject
1781  - !422 GMarkup buffer overflow fixes for error handling, round 2
1782  - !423 gutils: Check whether getauxval function exists
1783  - !424 ci: Fix Docker image version
1784  - !425 gdate: Reinitialize using_twodigit_years and locale_era_adjust.
1785  - !435 gdatetime: Fix formatting of time zones offsets in range -01:00 to +00:00
1786  - !436 valgrind: Add glib_init()-related suppressions
1787  - !440 Fix minor memory leaks in tests
1788  - !443 tests: Avoid multithreaded use of g_test_rand_int_range
1789  - !444 gvarianttypeinfo: Consistently use atomics to access ref_count
1790  - !446 gmain: Fix data races in GUnixSignalWatchSource and GChildWatchSource
1791  - !451 closures test: Avoid timeout on ARM64 CPUs
1792  - !452 Atomic reference count in GVariant, ContainerInfo and GDBus introspection
1793  - !453 tests: Fix some data races in tests
1794  - !454 gdbusproxy: make g-name-owner property useful with unique names
1795  - !458 glib-compile-resources: Fix size allocation for compressed streams
1796  - !460 gatomicrefcount: Make g_atomic_ref_count_init non-atomic
1797  - !461 Meson: Fix build error in gdbus-example-objectmanager
1798  - !462 meson: add aarch64 memory barrier handling
1799  - !463 gio, tests: fix leak of dbus connection.
1800  - !467 Update documentation of g_tls_connection_handshake() again
1801  - !469 docs: add index of new symbols for gio > 2.52
1802  - !470 docs: Clarify return/error behaviour of D-Bus signal subscriptions
1803  - !472 gdbusmessage: Gracefully handle message signatures with invalid types
1804  - !477 gthread: Remove unsynchronized access to g_once_init_list from assertion
1805  - !478 Deprecate TLS rehandshaking
1806  - !480 docs: add a missing semicolon
1807  - !482 Check for 'z' library before fallbacking to subproject
1808  - !483 meson: Turn selinux into a meson feature and make it auto by default
1809  - !484 Meson: Add 'nls' option to disable translation
1810  - !485 gdbus-codegen: Tag interfaces and properties so annotated with G_PARAM_DEPRECATED
1811  - !486 Check for zlib header
1812  - !489 glib-mkenums: Support reading @rspfiles for arguments
1813  - !490 gspawn: Fix g_spawn deadlock in a multi-threaded program on Linux
1814  - !491 Meson: Add missing include_directories when using glib as subproject
1815  - !492 g_value_get_variant: return value is transfer-none not transfer-full
1816  - !494 Resolve "Follow-up from "gunixmounts: Stop considering cifs/nfs as system file systems""
1817  - !500 genviron: make g_environ_* case-insensitive on Windows
1818  - !504 tests: Unset LANGUAGE when running gdatetime tests
1819  - !505 Support isolating directories for unit tests
1820  - !508 ci: Install additional locales used during tests
1821  - !510 Add new Linux Testing project version number to configure script
1822  - !511 gvariant: Fix error handling for parsing Unicode escapes
1823  - !514 fix gdbus-codegen --interface-info-{header,body}
1824  - !515 binding: Clarify the use of g_object_unref() to remove a binding
1825  - !517 Meson: Fix deprecation warning with upcoming 0.49.0 release
1826  - !518 Meson: Fix declare_dependency() calls
1827  - !520 GTlsConnection: add ALPN support
1828  - !521 tests: Rename macro to avoid conflict with encoding prefix
1829  - !522 gtlscertificate: Add support for TPM keys in PEM files
1830  - !524 gdatetime: Fix typo in the comment
1831  - !528 Add GRecMutexLocker
1832  - !530 tests: Minor improvements to mkenums.py and taptestrunner.py used by it
1833  - !534 gtlscertificate: Fix bug in PEM private key parser
1834  - !536 Various minor docs fixes
1835  - !541 gtimezone: Fallback to /etc/timezone on Gentoo
1836  - !546 spawn: add shebang line to script
1837  - !547 Do not check for NULL when calling free()
1838  - !549 Improve documentation of g_assert_error()
1839  - !551 Revert "tests: Fix GOptionContext leak in GSubprocess tests"
1840  - !554 Only subscribe to owner-changed signals on message bus connections
1841  - !555 Suppress -Wint-in-bool-context warning with G_DEFINE_INTERFACE and g++
1842
1843 * Translation updates:
1844  - Brazilian Portuguese
1845  - Czech
1846  - Danish
1847  - Greek
1848  - Hungarian
1849  - Lithuanian
1850  - Norwegian bokmål
1851  - Polish
1852  - Slovak
1853  - Slovenian
1854  - Spanish
1855  - Swedish
1856  - Turkish
1857
1858
1859 Overview of changes in GLib 2.58.0
1860 ==================================
1861
1862 * Tarball built with `ninja dist`, so if you want to build this release with
1863   autotools (which is supported), you will need to re-run autogen.sh. This
1864   release, and all micro releases in the 2.58.x series, support being built
1865   with Meson or autotools. See:
1866   https://mail.gnome.org/archives/gtk-devel-list/2018-June/msg00012.html
1867
1868 * Fix cancellation of g_subprocess_communicate_async() calls. See !266.
1869
1870 * Drop support for the __int64 type, which further breaks compilation on old
1871   MSVC versions (before VS2013). See #1313.
1872
1873 * Expose GSettings schema directory in gio-2.0.pc as `schemasdir`. See !274.
1874
1875 * Support v3 of the xdg-desktop-portal network monitor API. See !265, !279.
1876
1877 * Fix G_MODULE_SUFFIX on macOS when GLib is built with Meson — it should be `so`
1878   rather than `dylib`. Projects that use Meson and the `g_module_build_path()`
1879   API such as glib-networking should pass `name_suffix:` to `shared_module()` to
1880   ensure that plugins continue to be called libfoo.so on macOS. See !280.
1881
1882 Bugs fixed:
1883  !280 meson: Always set G_MODULE_SUFFIX to `so` on macOS
1884  !266 subprocess: Fix communicate_cancelled signature
1885  !279 Revert "Add a gnet utility" (see !265)
1886  !265 Network monitor again
1887  !274 gio: Provide schemas directory information in pkg-config file
1888  !239 gvariant: Fix more bounds checking in GVariant text format parser
1889  !195 garray: add overflow checks before expanding array
1890  #1497 g_strdup_printf warns on invalid format specifier with G_GUINT64_FORMAT on Win32
1891  !270 autotools: remove support for the __int64 type. See #1313
1892  !267 ci: Add an autotools job
1893
1894 * Translation updates:
1895  Czech
1896  Galician
1897  Indonesian
1898  Italian
1899  Kazakh
1900  Korean
1901  Turkish
1902
1903
1904 Overview of changes in GLib 2.57.3
1905 ==================================
1906
1907 * G_GNUC_MALLOC’s definition has been tightened up to match an updated
1908   definition from GCC. Many uses of G_GNUC_MALLOC which were previously
1909   appropriate may cause miscompilation with newer GCC versions. Check your uses
1910   of it against the updated documentation. See #1465.
1911
1912 * Many minor documentation fixes.
1913
1914 * Fix for gint64 and int64_t compatibility on macOS and BSD. See #972.
1915
1916 * Fix free space metadata on some file systems (notably FAT). See #328.
1917
1918 * Support installed-tests with our Meson build system. See #1444.
1919
1920 * Forbid @filename@/@basename@ in glib-mkenums templates, which is a change to
1921   its long-standing behaviour (which was long-standing nonsensical). See !241.
1922
1923 * Various stat() fixes on Windows. See #1452, #1476.
1924
1925 * MinGW-w64 ABI warning: In case you build 64 bit glib without LFS support by
1926   passing --disable-largefile (not the default) and use GStatBuf, you need to
1927   rebuild your application as the size of GStatBuf has changed for this case.
1928   See #1476.
1929
1930 * Improve TAP compatibility of g_test_incomplete(). See #1474.
1931
1932 * Change fallback preferences when loading icons. See !72.
1933
1934 Bugs fixed:
1935  !263 build: Clean files left behind after gio/tests/gresource.c test
1936  !262 gmem: Only evaluate pointer argument to g_clear_pointer() once
1937  #1465 Many uses of G_GNUC_MALLOC are incorrect
1938  #1448 g_error does not abort() as documented
1939  #1494 g_clear_pointer may not use the correct calling convention with its callback
1940  #972 Mismatch between gint64 and int64_t on 64-bit macOS/BSD
1941  !251 gtestdbus: Fix watcher crash on FreeBSD
1942  #1492 gcc-8: -Wcast-function-type: new warnings for g_list_copy_deep()
1943  !252 tests: fix gnotification tests broken due to the recent icon name fallback changes
1944  #328 filesystem::{free,size,used} not set for full FAT fs
1945  !248 network monitor portal: update properties initially
1946  #1373 Incorrect transfer annotation for g_binding_unbind.
1947  #1444 the meson build doesn't support installed tests
1948  #1027 Fix trashing on overlayfs
1949  #1454 gvdb does not treat corrupt files as empty as promised; dconf suffers
1950  !243 tests: Explicitly set TZ=UTC for g_time_val_from_iso8601() testing
1951  #1488 ‘O_CLOEXEC’ undeclared (first use in this function)
1952  !241 glib-mkenums: forbid @filename@/@basename@ in fhead and ftail
1953  !240 gtimer: Ensure arithmetic is correctly signed for ISO 8601 parsing
1954  #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
1955  !234 DOC: Documentation fix in GTask description
1956  #1363 Meson: Review cross compilation properties
1957  !225 gtimer: Add overflow checks to g_time_val_from_iso8601()
1958  !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
1959  !229 Fix up g_bytes_compare() documentation
1960  #1476 g_stat - possbile memory corruption causing SEGFAULT
1961  !199 Update TLS documentation
1962  #1474 g_test_incomplete() makes test_case_run() return FALSE
1963  #1475 glib/tests/atomic.c test_types() trips -Werror=bad-function-cast on Debian armel
1964  #1472 Test for BROKEN_IP_MREQ_SOURCE_STRUCT is broken on Windows / Mingw
1965  !220 date test: Use g_test_skip(), not g_test_incomplete()
1966  #1467 malloc difference causes refstring test to fail on FreeBSD
1967  !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
1968  #1466 Not Able to Build glib 2.57.2 in Mingw-w64 x64 bits
1969  #1433 test_posix_parse: assertion failed (g_time_zone_get_abbreviation (tz, 0) == "UTC"): ("LMT" == "UTC")
1970  #1446 Follow-up from "Document difference between g_assert() and g_assert_*() wrt G_DISABLE_ASSERT"
1971  !206 grefstring: Avoid an unnecessary NUL assignment
1972  #1458 g_volume_get_mount returns NULL value after g_volume_mount_finish is called with no error
1973  !72 gio: icons should fallback to non-preferred style appropriately.
1974
1975 * Translation updates:
1976  Brazilian
1977  Chinese (Taiwan)
1978  French
1979  German
1980  Lithuanian
1981  Polish
1982  Romanian
1983  Turkish
1984
1985
1986 Overview of changes in GLib 2.57.2
1987 ==================================
1988
1989 * Require pcre 8.31
1990 * Require meson 0.47.0
1991
1992 * Bugs fixed:
1993  742456 Add g_steal_pointer() convenience function to mark ownership...
1994  795569 MinGW CI: fix tests
1995  796341 gmem.h: Use typeof() in g_steal_pointer() macro
1996  #1013 Support for per-session overrides
1997  #1360 glib-mkenums breaks if option specified but no nick
1998  #1175 Add names and tags to various GSources and GTasks constructed in GLib
1999  #903 g_main_context_wait() not deprecated in API, but emits a g_critical()...
2000  #786 Fix memory leaks in libgio tests
2001  #927 gio/gresource.c:do_lookup check for terminating "/"
2002  #976 Document difference between g_assert() and g_assert_*()...
2003  #1447 glib 2.57.1: test_month_names: assertion failed...
2004  #1407 Update to Unicode Character Database 11
2005  #1455 glib python tools have full python path in shebang, limits to 128 characters
2006  #1459 Missing g_return_val_if_fail in g_async_queue_timeout_pop
2007
2008 * Translation updates:
2009  Friulian
2010  German
2011  Romanian
2012  Spanish
2013
2014
2015 Overview of changes in GLib 2.57.1
2016 ==================================
2017
2018 * New api:
2019  - g_hash_table_steal_extended
2020  - G_GNUC_NO_INLINE 
2021
2022 * Bug fixes:
2023  668132 Use libmount and expose mount options on GUnixMountEntry type
2024  736741 Update private copy of valgrind.h
2025  748620 g_regex_* utf-8 validity requirements are not stated clearly
2026  784995 meson: some Windows improvements
2027  788771 NODELETE missing when built with meson
2028  788773 meson does not install correct pc files
2029  789968 Add g_autoptr() support for GTypeClass
2030  794325 Various fixes to compile on OSX
2031  795152 gdesktopappinfo: Mark GDesktopAppInfo constructors as nullable.
2032  795165 Add g_date_time_get_timezone() and g_time_zone_get_identifier()
2033  795180 Investigate performance impacts of recent compiler features on hot functions
2034  795302 Add g_hash_table_steal_extended() API
2035  795376 Add g_ptr_array_steal()
2036  795544 Add binary/textfile/zero size detection
2037  795569 MinGW CI: fix tests
2038  795636 gitlab-ci: generate test coverage reports
2039  795735 Fix comparison for GVariant property values
2040  795802 gdbus-codegen doesn't accept --output-directory with --output for --body and --header
2041  795849 gwin32: Fix detection of MinGW32 vs MinGW-w64
2042  795876 meson: Fix checks for posix_memalign and stpcpy
2043  795960 g_format_size_for_display() is deprecated since 2.30
2044  796085 Meson: Many apps breaks on non-glibc because of missing libintl
2045  796138 Fix typo in g_file_info_set_attribute docs
2046  796139 Add g_autoptr() support for GParamSpec
2047  796164 Fix atomic ops check in meson.build
2048  796186 Typo: "instead off" in gsignal.c
2049  796213 Meson: Fail to build on macosx
2050  796220 meson: do not run atomic test with msvc
2051  796264 Add android CI
2052  796325 meson: Add exception for atomic ops test for Android
2053  796328 gengiotypefuncs.py: Read and parse files in binary mode 
2054
2055 * Translation updates:
2056  Czech
2057  Indonesian
2058
2059
2060 Overview of changes in GLib 2.57.0
2061 ==================================
2062
2063 * Bug fixes:
2064  739424 Rewrite kqueue GFileMonitor backend to drop threading
2065  751826 Use g_get_language_names() for other locale categories
2066  788773 meson does not install correct pc files
2067  793400 g_application_id_is_valid() not strict enough
2068  793578 gdatetime tests depend on Japanese translation of month names
2069  793645 test_month_names: Updated translations needed for el_GR, hr_HR, ru_RU
2070  793729 gitlab-ci: Add Windows MinGW support
2071  793994 GUnixVolumeMonitor doesn’t show user mounts when run as root
2072  794170 gdbus: hexdecode() and hexencode() do not return/use decoded/encoded s...
2073  794194 gobject_gdb.py: 'address' is a property of gdb.Value not a function
2074  794207 leak: g_socket_listener_add_inet_port increases ref-count on socket-li...
2075  794284 Support whitespace stripping for JSON resources
2076  794285 glib-compile-resources should not noisily g_printerr() when xmllint is...
2077  794473 Remove duplicated option in gio.xml
2078  794506 glib-mkenums: Enters infinite loop if using typedef enum SomeIdentifier
2079  794528 Fix segfault caused by use-after-free in GPollFileMonitor
2080  794555 glib meson build fails on MinGW due to misdetected functions
2081  794557 gtkdoc-scangobj fails on gio in meson builds
2082  794606 glib-2.56.0 fails to compile when res_nquery is not available
2083  794635 gmacros: Don't define bogus __has_* macros
2084  794636 G_HAVE_GNUC_VISIBILITY is defined in meson MinGW builds
2085  794686 Date (except weekday) displayed in English
2086  794732 Fix various compiler warnings 
2087
2088 * Translation updates
2089  Hungarian
2090  Slowak
2091  Slovenian
2092  Spanish
2093
2094
2095 Overview of changes in GLib 2.56.0
2096 ==================================
2097
2098 * Bugs fixed:
2099  672777 Error in gdummyfile.c
2100  732184 GObject: warn on use of deprecated properties
2101  733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
2102  742124 g_data_input_stream_read_upto()'s documentation should say that the...
2103  749206 GDateTime: month names in the genitive case
2104  768507 simplify qguark functions
2105  791457 Slow transfer rate when writing to smb/cifs
2106  793272 fix GCC 8.0's -Wcast-function-type warnings
2107  793300 g_hash_table_add() return value change in 2.40 not mentioned in docs
2108  793399 Fix some cases of -Wduplicated-branches
2109  793555 -Wimplicit-function-declaration when using g_abort()
2110  793565 GLib does not compile on macOS 10.13 due to .m file naming
2111  793597 gdbus-tool: Make --dest optional for emit again
2112  793635 Enable CI for GLib
2113  793880 gnetworkmonitor: Minor fixes based on code review 
2114  793578 gdatetime tests depend on Japanese translation of month names 
2115  794180 test_month_names fails unless installed
2116
2117 * Translation updates:
2118  Brazilian Portuguese
2119  British English
2120  Catalan
2121  Czech
2122  Danish
2123  Dutch
2124  Finnish
2125  French
2126  Friulian
2127  Galician
2128  German
2129  Hungarian
2130  Indonesian
2131  Italian
2132  Kazakh
2133  Korean
2134  Lithuanian
2135  Polish
2136  Scottish Gaelic
2137  Serbian
2138  Serbian Latin
2139  Spanish
2140  Swedish
2141  Turkish
2142
2143
2144 Overview of changes in GLib 2.55.2
2145 ==================================
2146
2147 * GFile now has API to get the path without copying
2148
2149 * A network monitor implementation for Windows has been added
2150
2151 * Bugs fixed:
2152  520116 g_utf8_strlcpy()
2153  584284 g_data_input_stream_read_until_async behaves confusingly different f...
2154  605700 request for g_key_file_get_locale()
2155  658713 ngettext (plural forms) needed for "Message has %d file descriptors ...
2156  685442 windows GNetworkMonitor implementation
2157  723003 gsettings list-recursively reports some keys multiple times
2158  749583 GSequence performance improvements
2159  757284 Move G_DIR_SEPARATOR* and G_SEARCHPATH_SEPARATOR* into glibconfig.h
2160  760324 [PATCH] gkeyfile.c: find_file_in_data_dirs fails to return the path ...
2161  761102 Increase performance for main loop
2162  767976 GFile: Add g_file_peek_path()
2163  770335 gdbus-codegen: generated getter for 'ao' property is actually (trans...
2164  772989 Totem allows invalid urls that might cause segfault that's irrecover...
2165  790698 convert: test failure on NetBSD
2166  791015 gdbus-codegen: Split generation of header and source
2167  791622 Disable strict-aliasing in GLib
2168  792050 GResolver is not thread-safe
2169  792217 Deprecate GTlsClientConnection:use-ssl3
2170  792338 meson, autotools: figure out if mem barrier is needed for arm64 host...
2171  792351 gbookmarkfile: check length before dereferencing groups
2172  792364 gdbus-threading test method-calls-in-thread: assertion failed (elaps...
2173  792370 GNetworkMonitor: Rename "network-changed" signal argument
2174  792410 GDateTime new_from_iso8601 test broken in 2.55 on i386
2175  792432 flush stdout after logging (debug) messages
2176  792455 Improve docs of GSequence
2177  792499 deadlock on startup with TCP session bus
2178  792516 gconvert: More consistent handling of embedded NUL bytes
2179  792777 g_notification_set_urgent() unconditionally sets G_NOTIFICATION_PRIO...
2180  792780 gbytes should reference toplevel bytes when slicing with g_bytes_new...
2181  792856 off64_t isn't a part of C standard
2182  792862 gpollableoutputstream: document side effects of WOULD_BLOCK on D/TLS
2183  792903 Clarification between g_try_.. functions and their counterparts
2184  793006 High CPU load for GUnixMountsMonitor consumers
2185  793026 possible mem leak in g_mutex_impl_new
2186  793074 g_message() does not get -Wformat warnings when compiling with G_LOG...
2187
2188 * Translation updates:
2189  Hungarian
2190  Indonesian
2191  Polish
2192
2193
2194 Overview of changes in GLib 2.55.1
2195 ==================================
2196
2197 * Build:
2198  - The --enable-rebuilds configure option has been removed
2199  - The --with-charsetalias-dir configure option has been added
2200
2201 * GList and GSList now have autoptr support
2202
2203 * The gsettings list-schemas command has gained a --print-paths option
2204
2205 * Bugs fixed:
2206  346816 Refactor LIBDIR in libcharset Makefile
2207  508976 Does g_slist_sort preserve the order of equal elements?
2208  562334 2.18.2 break libglade on Solaris
2209  662802 systemtap multiarch issue
2210  684282 Add support static link of GIO modules
2211  692034 Install an invalidation notifier for GClosure in g_source_set_closure()
2212  694723 Get rid of REBUILD stuff in configure.ac
2213  697715 floating point precision problem in check test gst/gstvalue
2214  701156 testgobject assumes that the priv data follows the instance data
2215  720380 Segfault when using GDBusMenuModel on a peer-to-peer connection
2216  724383 glib: document restrictions on various foreach() functions
2217  724412 GLib mappedfile.c test uses g_get_user_runtime_dir instead of a tempo...
2218  724794 Fix "on on" typo in tap-driver.sh comment
2219  732003 gnode: Eliminate implicit signed-to-unsigned integer conversion
2220  734479 G_VALUE_HOLDS etc. cause -Wcast-qual warnings for a const GValue *
2221  737677 gmain: Make GSourceCallback thread-safe
2222  741167 gdbus-codegen fix for boxed out parameters
2223  748534 gtest: if a subprocess assertion fails, print its stdout and stderr
2224  749527 add weak pointer helpers similar to g_set_object
2225  749652 compilation errors with gcc 4.8
2226  754634 Update the list of Linux filesystem magic numbers used in get_fs_type
2227  756011 Fix up annotations for GBookmarkFile
2228  761102 Increase performance for main loop
2229  773980 GIR scanner doesn't interpret array type properly
2230  776147 gio/glocalfilemonitor.c doesn't handle case G_FILE_MONITOR_EVENT_MOVE...
2231  776195 -z nodelete configure check does not work on Solaris
2232  777075 Potential leak of memory pointed to by 'list'
2233  779413 Translated X-Geoclue-Reason string not used in a dialog window
2234  780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
2235  780893 Reword licensing header for gdbus-codegen
2236  782057 Unit tests fail in run-assert-msg-test.sh
2237  784995 meson: some Windows improvements
2238  786796 gtk-doc build fails with meson
2239  788806 Impossible to build static glib via meson
2240  788936 Show mime type icons on OS X
2241  790416 g_date_time_format returns empty string on %r with German locale
2242  790588 Generated file missing from .gitignore
2243  790697 g_object_ref API should propagate parameter type
2244  790785 glib-tap: Add missing mkdir for .test generation rule
2245  790829 glib-genmarshal --body must not generate alias implementations
2246  790830 Mismatch between number of interface methods in text and example code
2247  790837 Meson: missing many configure options
2248  790839 GApplication command line: lacks parameter_string, summary and descri...
2249  790877 fix non-portable check in G_GNUC_CHECK_VERSION
2250  790894 Do not connect to the session bus when trying GProxyResolverPortal io...
2251  790896 docs/reference/README has broken link to http://www.gtk.org/rdp/
2252  790914 gdesktopappinfo: Downgrade a warning to a debug message
2253  790934 gtester doesn't handle skipped tests
2254  790948 GSourceFuncs documentation is confusing: when will dispatch be called?
2255  791036 Guard for g_output_stream_vprintf makes no sense
2256  791128 C runtime complains about bad arguments on each g_log() call
2257  791221 po/README.translators has no useful information in 2017
2258  791235 Fix gschema.dtd regarding flags.
2259  791267 Make gschema.dtd usable.
2260  791296 gtester-report: fix range usage when running as python3 app
2261  791318 GBytes: Improve documentation
2262  791325 Gio handling of thumbnail:: attribute namespace causes inconsistent b...
2263  791334 gbinding.c:898: The target object of type GNetworkAddress has no prop...
2264  791337 Crash opening URIs with g_desktop_app_info_launch_uris_with_spawn()
2265  791342 Add autoptr support for lists
2266  791460 meson: fixes for OSX
2267  791532 Implicit declaration of function ‘memcmp’ in gtestutils.h
2268  791622 Disable strict-aliasing in GLib
2269  791720 Criticals in gio/xdp-dbus.h leading to crash under flatpak
2270  791744 gmenumodel test sometimes fails: assertion failed (items_changed_coun...
2271  791745 not immediately clear whether g_test_slow() is in effect by default
2272  791906 GSocketListenerClass.event has wrong signature
2273  792064 gsettings list-schemas --print-paths
2274  792098 Binding: bind_property’s @notify func is nullable
2275  792099 gdbus-test-codegen: Cast to void* to printf "%p"
2276  792129 meson: skip optional linux/unix deps that default to true when buildi...
2277  792322 GLib-GIO:ERROR:gschema-compile.c:51:test_schema: child process (/gsch...
2278  792324 gkeyfile: Document need for KEEP_TRANSLATIONS with get_locale_string()
2279
2280 * Translation updates
2281  Hebrew
2282  Indonesian
2283
2284
2285 Overview of changes in GLib 2.55.0
2286 ==================================
2287
2288 * New API:
2289   - g_clear_handle_id, to simplify removing sources from the default mainloop
2290   - g_file_load_bytes, to make it more convenient to load files into GBytes
2291
2292 * Bugs fixed:
2293  330458 Sample code for the GLib Key-value parser
2294  483341 g_error and friends create warnings when not used in MSVC
2295  569375 g[u]intptr undocumented
2296  573251 documentation for g_seekable_truncate() needs some love
2297  629347 Missing annotations in GFile (was: Perf throws an exception in cur...
2298  630983 [PATCH] Type accuracy for result of strlen() in string utilities.
2299  632953 Clarify documentation of GValueTransform.
2300  636210 Document that pre-unmount is not guaranteed and backend-dependant
2301  656502 type information for GSettings::backend missing from .gir
2302  661442 Nautilus crashes when refreshing home folder after modifying ~/.co...
2303  668035 gtester-report broken with python 2.7.2 and glib 2.30.1
2304  670139 gbytes.c:try_steal_and_unref nit
2305  677233 (transfer full) annotation not correct for g_closure_new_simple re...
2306  679347 glocalfile seems to leak 'fstype'
2307  679467 Mention translation in g_warning() documentation
2308  689323 Variable scoping in gunixmounts.c
2309  691436 glib-mkenums output arch dependent
2310  695681 gsettings bash completion put error messages
2311  705331 AM_PATH_GLIB_2_0 macro fails with -Wstrict-prototypes -Werror
2312  706667 Fix permission denied error when installing from an nfs directory
2313  711809 gdbus-proxy: Fix erroneous timeout during following tests
2314  722256 gslist: Simplified node removal and got rid of some code duplication
2315  723655 Socket source is left in the poll after the socket is closed
2316  723743 g_child_watch_add() doesn't check for non-pids
2317  725014 g_settings_schema_source_ref should check for NULL pointer
2318  727346 docs: Escape some backslashes for markdown
2319  730296 gsignal: Fix a potential NULL pointer dereference
2320  731625 Improve test for darwin printf format-strings
2321  731705 gio/tests/desktop-app-info assumes /bin/true
2322  737278 Clarify relationship of g_application_quit() to hold count
2323  738176 Skip GSpawnChildSetupFunc closures in introspection
2324  740223 source_object for GAsyncResult should be nullable
2325  740791 gio: cannot specify the source when joining a multicast group (IGM...
2326  740826 glib doesn't know fuse filesystems
2327  742548 configure.ac: stay out of autoconf's namespace
2328  742997 Don't skip invalid enum values in schemas
2329  745723 -Wunused-but-set-variable work-around no longer sufficient
2330  749371 Use a GHashTable as a set when possible
2331  751738 Unused-variable warnings in glib/tests/autoptr.c
2332  752239 Missing dependency for python files in build file
2333  752240 Add DTLS support to GIO
2334  753459 GDateTime: Add conversion functions from/to ISO 8601 strings
2335  753521 g_subprocess_launcher_set_environ misses argument annotations
2336  754026 gfileutils: add some sanity checks
2337  756009 'const gchar* const *' gets incorrectly defaulted to utf8
2338  756103 Skip g_base64_decode_step() in introspection
2339  756128 Fix up annotations in gconvert
2340  756430 g_rw_lock_reader_lock() can return without locking, or error
2341  756470 Fix up annotations in gdataset.c
2342  756588 Fix up annotations on data/qdata API of GObject
2343  760022 Memory leak in gvariant-parser.c
2344  760109 [PATCH] Invalid GDate can't be g_boxed_copy()'d
2345  760716 Fix documentation regarding <glib/gprintf.h>
2346  765063 Update annotations for gio
2347  765552 Please set serial in .m4 files to prevent autoreconf failure on up...
2348  767215 GCC version number is interpreted as start of a list in docs for g...
2349  767239 Tautological comparisons in convert tests
2350  769674 some GIO tests' arbitrary timeouts are too short
2351  769846 gmessages: Add timestamp to g_log_writer_format_fields()
2352  770459 Tutorial article is slightly wrong
2353  773355 Incorrect documentation about stopping a signal emission from a hook
2354  774083 spelling mistakes in glib: charater
2355  776562 Add Intel C Compiler support for G_GNUC_BEGIN/END_IGNORE_DEPRECATI...
2356  777308 GModule win32: disable error dialog popup
2357  777310 gio/gasynchelper.c: fix cast from pointer to smaller int type on w...
2358  777956 gmessages: Update advice for G_LOG_DOMAIN
2359  779182 xdg-open fails with gio open for some uris
2360  779501 Type of GIConv given wrongly on web
2361  780202 introspection: Don't expose GValueArray.free
2362  780296 xdg-open/gnome-open doesn't work if service isn't started
2363  781598 gstdio.h should #include what it needs to work
2364  781867 various gvfsd-* wants to look in /boot/efi, causes unnecessary/ina...
2365  783210 build: Switch to sassc for generating style
2366  783270 Improve Visual Studio support for Meson builds
2367  783825 Suggest that asynchronous operations should invoke the callback in...
2368  786737 No g_variant_get() example for dicts
2369  786785 Commit #fe2a9887a8 breaks gdbus-codegen, cannot find its module so...
2370  787271 Make GListModel usable from G-I bindings
2371  787485 g_tls_backend_supports_dtls () returns true when the backend doesn't
2372  787551 Factor out some duplicated code in GParamSpec validation
2373  787581 tests: Add tests for g_slist_copy() and g_slist_copy_deep()
2374  787671 meson: Fix permissions of installed scripts
2375  787731 g_file_query_filesystem_info() wrongly reports "filesystem::readon...
2376  788138 glib-compile-resources: Fix leak of a GHashTable
2377  788180 G_FILE_ATTRIBUTE_ID_FILE is useless on W32
2378  788270 gmodule - failed to load symbol on Android 64bit
2379  788368 Race condition in GDbusObjectManagerClient
2380  788384 gtypes: Fix signedness of __builtin_bswap() usage
2381  788385 gtestutils: Explicitly cast args to g_assertion_message_cmpnum()
2382  788401 PATCH: MacOS build cannot detect content type from content - xdgmi...
2383  788467 Fatal errors and warnings should be reported as TAP
2384  788488 GFile-based API for g_build_filename()
2385  788489 gmain: add g_clear_source API
2386  788561 Document how to integrate GTest into your project
2387  788594 gdbus-tool doesn’t handle non-message-bus connections correctly
2388  788705 Allow building GLib on older Linux platforms
2389  788766 fixed a doc-typo in socket_get_remote_address
2390  788772 meson installs gdb scripts incorrectly
2391  788863 Add more filename type annotations for strings which can contain f...
2392  788880 gunixmounts: Update list of virtual file systems to ignore
2393  788927 Expose better API for detecting ‘system’ mounts
2394  788936 Show mime type icons on OS X
2395  788948 Document Autotools best practices for genmarshal/mkenums
2396  788975 Meson + Visual Studio: Can't find zlib.h with subprojects/zlib
2397  788978 Document XML has a syntax error
2398  788989 Use subdir-objects with Autotools
2399  788990 Include licensing information in output from glib-mkenums, glib-ge...
2400  789087 gint and guint misrepresented as functions
2401  789170 GFormatSizeFlags should have a value for bits
2402  789245 g_settings_bind() not conforming to lifecycle specification
2403  789444 Fix handling of length in g_utf8_make_valid
2404  789637 glib-mkenums: Fails when --ouput file does not exist
2405  789681 meson: Libmount support not built
2406  789723 [PATCH] gdbus-codegen: Call abspath() earlier
2407  789755 g_get_host_name: ensure return value is always UTF8 encoded
2408  789820 GPollFileMonitor is not cleaning up correctly
2409  790015 docs: Various linking and syntax fixes
2410  790030 GResource/GVariant fails to load from non-pointer aligned memory
2411  790093 gio-tool: fix inverted logic in monitor tool
2412  790126 gengiotypefuncs.py is missing from tarballs
2413  790147 build: Drop data-to-c.pl in favour of data-to-c.py
2414  790157 gmessages: Give examples of G_DEBUG with gdb in the documentation
2415  790272 file: add g_file_load_bytes()
2416  790275 avoid temporary string allocations in g_resources_enumerate_children
2417  790310 speedup path canonicalization in GResourceFile
2418
2419 * Translation updates:
2420  Catalan (Valencian)
2421  Czech
2422  German
2423  Nepali
2424  Norwegian bokmål
2425  Slovak
2426  Slovenian
2427  Spanish
2428
2429
2430 Overview of changes in GLib 2.54.0
2431 ==================================
2432
2433 * Bugs fixed:
2434  780861 Crash in GnomeWallClock
2435  786983 Please make the output of gio-querymodules deterministic
2436  787109 Valgrind false positive in ioctl() in btrfs file copy
2437  787123 glib: Slighty update GIOChannel documentation
2438  787146 GMainLoop: match of parameter pair of LOCK_CONTEXT/UNLOCK_CONTEXT
2439
2440 * Translation updates:
2441  Basque
2442  Catalan
2443  Romanian
2444  Swedish
2445
2446
2447 Overview of changes in GLib 2.53.7
2448 ==================================
2449
2450 * Bugs fixed:
2451  736710 remove unnecessary executions of libtool from configure
2452  785260 gio/tests/appmonitor fails if local dir not writeable
2453  786456 g_subprocess_wait[_check]_async() breaks when cancelled...
2454  786555 g_array_free() is not thread safe w.r.t. g_array_unref()
2455  786580 gdesktopappinfo.c: Add Tilix as a fallback terminal
2456  786807 g_uuid_string_random undefined when built with meson
2457
2458 * Translation updates:
2459  Brazilian Portuguese
2460  Catalan
2461  Czech
2462  Danish
2463  Finnish
2464  French
2465  Friulian
2466  German
2467  Italian
2468  Kazakh
2469  Korean
2470  Latvian
2471  Nepali
2472  Polish
2473  Spanish
2474  Turkish
2475
2476
2477 Overview of changes in GLib 2.53.6
2478 ==================================
2479
2480 * Bugs fixed:
2481  766358 glib doesn't respect XDG_* envvars on W32, ever
2482  783270 Improve Visual Studio support for Meson builds
2483  785955 pthread_setname_np misdetected with meson
2484  786060 Sequences documentation does not make it clear...
2485  786360 gobject: add autoptr support for GClosure
2486  786452 crash on Linux without stderr stream
2487  786460 gio-tool: Unify buffer sizes
2488  786462 Use g_output_stream_write_all instead of while
2489  786463 gio-tool-save: Prevent overwriting error
2490
2491 * Translation updates:
2492  Catalan
2493  Galician
2494  Hungarian
2495  Indonesian
2496  Lithuanian
2497  Nepali
2498  Serbian
2499
2500
2501 Overview of changes in GLib 2.53.5
2502 ==================================
2503
2504 * Bugs fixed:
2505  695573 Untranslatable strings in glib-compile-schemas
2506  725950 GApplication: call dbus_unregister only once, and before destruction
2507  731703 giomodule test misbuilds its test modules as libraries
2508  769135 External control for g_test_add/g_test_run
2509  779332 Rewrite mkenums in Python
2510  779607 Race between mounts-changed signal and g_unix_mounts_get() function
2511  784000 Improve strerror_r() detection
2512  784815 Map G_NOTIFICATION_PRIORITY_HIGH to NOTIFY_URGENCY_NORMAL
2513  784965 Use the glib preset for i18n in Meson
2514  784995 meson: some Windows improvements
2515  785113 glib-mkenums Python port fixes
2516  785130 G_LOG_DOMAIN shouldn't be left undefined for applications
2517  785438 Spurious -Wmaybe-uninitialized in gdatetime.c
2518  785468 glib/gpoll: Unnecessary if conditional included in the poll_rest() function
2519  785520 Replace advice to use removed gdk_spawn functions
2520  785577 clobbers errno while setting GError
2521
2522 * Translation updates:
2523  Slovenian
2524  Spanish
2525
2526
2527 Overview of changes in GLib 2.53.4
2528 ==================================
2529
2530 * Unicode support has been updated to Unicode 10.0.0
2531
2532 * glib-genmarshal and glib-mkenums have been rewritten in python.
2533   Every effort has been made to keep compatibility. Please report
2534   problems related to these tools
2535
2536 * GLib can now be built with meson. autotools are still supported
2537
2538 * Bugs fixed:
2539  722047 drop makefile.msc?
2540  733821 g_strerror() uses strerror(3) instead of strerror_r(3)
2541  773842 g_utf8_find_next_char() won't signal the end of a NUL-terminated string
2542  779332 Rewrite mkenums in Python
2543  780095 g_utf8_get_char_validated() stopping at nul byte even for length specified...
2544  780634 Remove remaining old codepage ABI comapt code
2545  783841 test_GDateTime_new_from_timeval_overflow fails on 32 bit systems
2546  784000 Improve strerror_r() detection
2547  784020 GKeyFile – Add array length annotations to to_data(), get_keys() and get_g...
2548  784037 gio: Mention the ALL_METADATA flag in g_file_copy()
2549  784433 gdbus-codegen with variant type parameters result in nested variant
2550  784456 Update to Unicode 10.0.0
2551  784528 Rewrite glib-genmarshal in Python
2552  784579 Calling g_dir_open on Missing Directory When Executable File Path Contains...
2553  784581 docs: Fix cut'n'paste error in g_resources_get_info() doc
2554  784739 Minor typo in configure error message
2555  784792 Just fixing a little typo in comments
2556
2557 * Translation updates:
2558  Hebrew
2559
2560
2561 Overview of changes in GLib 2.53.3
2562 ==================================
2563
2564 * Bugs fixed:
2565  658446 Add translation comment for wrong password notice string
2566  661926 Improve the default logging setup in GLib
2567  674885 type initialisation deadlock in GObject
2568  775593 GIO cannot write symlinks on FreeBSD and NetBSD
2569  776169 Various gio-tool fixes
2570  776333 Fix annotation on g_file_copy_async()
2571  776504 Upgrade license from LGPLv2+ to LGPLv2.1+
2572  777307 race condition between gdbus signal callback and g_bus_unwatch_name...
2573  778422 gsubprocesslauncher: Clarify the behavior of set_environ()
2574  781301 Stack pointer corrupted by incorrect call of NtNotifyChangeMultipleKeys
2575  782336 Add additional documentation of the GResource XML format
2576  782996 build: Use AM_TESTS_ENVIRONMENT rather than TESTS_ENVIRONMENT
2577  783061 GApplication: Remove some unused members
2578  783130 Make dbus activation sandbox-aware
2579  783193 Adapt to OpenURI api change
2580  783201 gdbus-codegen: Apply --output-directory to generated docs as well
2581  783340 win32: port monotonic times to use QPC
2582  783350 length parameter can be NULL g_data_input_stream_read_line
2583  783392 incorrect (out) annotation for g_dbus_interface_info_generate_xml
2584  783593 GGtkNotificationBackend should use /org/freedesktop/DBus to call Ge...
2585
2586 * Translation updates:
2587  Esperanto
2588  German
2589  Indonesian
2590  Kazakh
2591  Spanish
2592
2593
2594 Overview of changes in GLib 2.53.2
2595 ==================================
2596
2597 * A few new number parsing functions have been added:
2598   - g_ascii_string_to_signed
2599   - g_ascii_string_to_unsigned
2600   These have better error handling than the existing ones.
2601
2602 * glib-mkenums now supports /*< private >*/ and /*< public >*/
2603
2604 * GSettings now consider XDG_DATA_HOME in addition to XDG_DATA_DIRS.
2605
2606 * Bugs fixed:
2607  674885 type initialisation deadlock in GObject
2608  698064 Add g_ptr_array_contains()
2609  732000 gdatetime: Remove an unnecessary NULL pointer check
2610  734946 Implement GContentType on OSX
2611  741335 Possible differences in use of XDG_DATA_DIRS versus XDG base directory specification
2612  748263 Use-after-free in g_dbus_connection_call_internal()
2613  776876 gmodule – Various Android bug-fixes
2614  777030 build error where minor() and major() cant be resolved in gio/gdbusmessage.c
2615  780300 gio/gosxappinfo.c uses deprecated LSFindApplicationForInfo
2616  780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
2617  781755 Avoid compiler warnings in generated marshallers code
2618  781826 portal support: Read /.flatpak-info
2619  781830 Fix some typos and errors in GVariant documentation
2620  781847 Use-after-free under send_message_with_reply_cleanup():gdbusconnection.c:1792
2621  781867 various gvfsd-* wants to look in /boot/efi, causes unnecessary/inappropriate auto...
2622  782068 doc: Trivial typo fixes
2623  782075 gtimer: Handle gmtime() failure in g_time_val_to_iso8601()
2624  782089 gdatetime: Fix overflow checks when constructing from timestamps
2625  782162 Support public/private trigraph in glib-mkenums
2626  782237 make check error
2627  782311 inode/directory is treated as a subclass of application/octet-stream
2628  782628 libmount build dependency check not requiring the right version?
2629
2630 * Translation updates:
2631  Hungarian
2632  Indonesian
2633  Spanish
2634
2635
2636 Overview of changes in GLib 2.53.1
2637 ==================================
2638
2639 * The gdbus tool gained a wait command
2640
2641 * g_unix_signal_source_new support SIGWINCH now
2642
2643 * There are now g_enum_to_string and g_flags_to_string functions
2644
2645 * A new function to instantiate objects: g_objet_new_with_properties
2646
2647 * GParameter and related APIs have been deprecated
2648
2649 * Bug fixes
2650  447907 enum/flags from string + type transform + tests
2651  668962 GUnixMountPoint/GUnixMountEntry not usable through gobject-introspection
2652  669355 gdbus-codegen output contains stray semicolons at file scope (forbidden in C99)
2653  674885 type initialisation deadlock in GObject
2654  698064 Add g_ptr_array_contains()
2655  709865 Add boxing to GParameter
2656  725894 build: Include gettext libraries for static compilation on Mac OS X
2657  734946 Implement GContentType on OSX
2658  741229 gio: Handle NULL cached properties in NetworkManager monitor
2659  745971 gdbus-tool: Add a command to wait for a well-known name on the bus
2660  755046 gfileutils: Add precondition checks to g_file_test()
2661  761102 Increase performance for main loop
2662  761889 GDateTime: %p does not always print AM/PM string
2663  766660 Please clarify the extent to which GInitable, GAsyncInitable must be idempotent
2664  769534 g_unix_signal_source_new does not support SIGWINCH
2665  772221 Take advantage of Unicode
2666  775879 g_log_default_handler should not check G_MESSAGES_DEBUG
2667  776169 various gio-tool fixes
2668  777961 Documentation for g_app_info_equals() could be clearer
2669  778049 race in gsource detected by TSan
2670  778207 gio-querymodules: fix memory leak
2671  778287 G_MODULE_EXPORT and -fvisibility=hidden
2672  779409 Fix false positive g_warning() in remove_filter()
2673  780066 g_base64_encode_close() in glib/gbase64.c produces invalid base64 encoding
2674  780095 g_utf8_get_char_validated() stopping at nul byte even for length specified buffers
2675  780306 Unused function in gunicollate.c for CARBON
2676  780310 g_tls_database_verify_chain doesn't set the GError for failures other than cancell...
2677  780384 gio/tests/contenttype fails on OS X: "public.directory" != "public.folder"
2678  780441 Make the portal implementation of g_app_info_launch() synchronous
2679  780634 Remove remaining old codepage ABI comapt code
2680  780908 gobject: remove duplicate GType sanity check
2681  780924 Memory leak in gdbusmethodinvocation.c
2682  781125 gio-tool: Fix errors format string
2683  781234 the buffer written to by g_input_stream_read is not marked as an out parameter
2684  781298 gfileutils.c:330:3: error: ISO C90 forbids mixed declarations and code
2685
2686 * Translation updates
2687  Catalan
2688  Friulian
2689  German
2690  Hebrew
2691  Indonesian
2692  Polish
2693  Russian
2694
2695
2696 Overview of changes in GLib 2.52.0
2697 ==================================
2698
2699 * Bug fixes:
2700  779799 gdatetime test fails with tzdata 2017a
2701  780032 Add missing attributes to two functions
2702  780144 gio/fam: Remove leftover debug print
2703
2704 * Translation updates:
2705  French
2706  Friulian
2707  Latvian
2708
2709
2710 Overview of changes in GLib 2.51.5
2711 ==================================
2712
2713 * OS X implementations of GContentType and GAppInfo
2714   have been added
2715
2716 * Bugs fixed:
2717  673047 gunicollate is broken on OS X (patch included!)
2718  734946 Implement GContentType on OSX
2719  747146 Implement GNotification on OSX
2720  769983 glib-mkenums generates non-reproducible Makefile snippets
2721  777203 gnulib license information is not correct in glib2.0
2722  778515 Crash in the gio kqueue backend
2723  779456 Make g_utf8_make_valid optionally take a length
2724
2725 * Translation updates:
2726  Danish
2727  Friulian
2728  German
2729  Hungarian
2730  Korean
2731  Lithuanian
2732
2733
2734 Overview of changes in GLib 2.51.4
2735 ==================================
2736
2737 * Memory leak fixes
2738 * Fix the released tarball
2739
2740
2741 Overview of changes in GLib 2.51.3
2742 ==================================
2743
2744 * Bugs fixed:
2745  771997 gchecksum: Add SHA-384 support
2746  778422 gsubprocesslauncher: Clarify the behavior of set_environ()
2747  778581 gdbus-codegen: Fix -Wconversion warning
2748  778801 gdbus-codegen: Add --outdir flag
2749  778991 Plug a mem leak in gdbusauth
2750  779183 g_io_extension_point_get_extensions should check for NULL pointer
2751
2752 * Translation updates:
2753  Basque
2754  Chinese (Taiwan)
2755  Danish
2756  Indonesian
2757  Italian
2758  Serbian
2759
2760
2761 Overview of changes in GLib 2.51.2
2762 ==================================
2763
2764 * Minimal support for UUIDs has been added
2765
2766 * A new file attribute, G_FILE_ATTRIBUTE_RECENT_MODIFIED has been added
2767   to improve sorting of recent files
2768
2769 * Bugs fixed:
2770  639078 UUID support feature request
2771  777135 gkeyfile: Be more specific about error codes in documentation
2772  777307 race condition between gdbus signal callback and g_bus_unwatch_name...
2773  777481 goutputstream: docs: fix typos
2774  777493 g_mkdtemp() not introspectable
2775  777507 Recent view sorting incorrectly
2776  777592 Add minor examples to GDBus and GVariant documentation
2777  778002 race in gdbusprivate.c detected by the ThreadSanitizer
2778  778096 race in gdbusconnection reported by TSan
2779
2780 * Translation updates:
2781  Norwegian bokmål
2782  Polish
2783  Simplified Chinese
2784  Slovak
2785  Spanish
2786  Swedish
2787
2788
2789 Overview of changes in GLib 2.51.1
2790 ==================================
2791
2792 * glib-compile-resources grew a --generate-phony-targets flag
2793
2794 * GLib now installs a valgrind suppressions file for GLib and GIO
2795
2796 * Bugs fixed:
2797  666114 should have infrastructure to run its tests under valgrind
2798  729730 GDBusMessage: Fix segfault if DEBUG_SERIALIZER is enabled
2799  730932 statically assert that reasonable assumptions about enums are true
2800  735731 gobject: Document behaviour of GType checking macros on NULL
2801  736810 gdbus: Fix leak in g_dbus_message_print()
2802  762283 GSocket – Fix race conditions on Win32 if multiple threads are waiting on cond...
2803  767609 Test suite problems
2804  767952 g_dbus_method_invocation_return_*, g_dbus_method_invocation_take_error: They d...
2805  769672 Assert threads for testcase 642026 are sucessfully created
2806  769745 gtask: Add guards for public functions
2807  770175 Add command line argument to mkenums and genmarshal to write output to a file
2808  770646 glib: Namespace global tapset variables by soname
2809  772160 Add g_unix_mount_for() support
2810  772989 Totem allows invalid urls that might cause segfault that's irrecoverable
2811  773823 gio: Bump copy buffer size to 256k by default
2812  774086 fix g_main_context_check declaration
2813  774368 Dependency file output of resource scanner breaks Ninja
2814  774421 Two minor patches
2815  774520 GSocket allocates and processes control messages even if not requested
2816  775309 Crash in gdbusauth
2817  775468 Improve log write supports color method on windows
2818  775510 testing with -fsanitize=undefined reports various undefined behaviour
2819  775517 Password input is echoed in the terminal
2820  775621 gmessages: Fix compilation on Android
2821  775765 FDO notification withdrawal backend sends wrong ID to the server
2822  775913 subprocesslauncher: potential infinite loop in verify_disposition()
2823  776198 Stray semicolon after g_variant_print() function in gvariant.c
2824  776586 License headers cleanup
2825  777077 Use of memory after it is freed
2826
2827 * Translation updates:
2828  Brazilian Portuguese
2829  Czech
2830  Galician
2831  German
2832  Hebrew
2833  Kazakh
2834  Lithuanian
2835  Spanish
2836  Swedish
2837
2838
2839 Overview of changes in GLib 2.51.0
2840 ==================================
2841
2842 * glib-genmarshal and glib-mkenums have gained --output options
2843   for better build system integration
2844
2845 * New API: g_utf8_make_valid
2846
2847 * Bugs fixed:
2848  591603 Make _g_utf8_make_valid public
2849  610969 Nice to have g_utf8_make_valid as public
2850  767882 Bit shift overflow (-Wshift-overflow) warning in gparam.h
2851  769135 External control for g_test_add/g_test_run
2852  769630 gfile: G_FILE_MONITOR_WATCH_MOVES was actually introduced in 2.46
2853  772160 Add g_unix_mount_for() support
2854  772221 Take advantage of Unicode
2855  773303 GApplication leaks option_strings 
2856
2857 * Translation updates:
2858  French
2859  Galician
2860  German
2861  Hungarian
2862  Lithuanian
2863  Norwegian bokmål
2864  Occitan
2865  Polish
2866  Slovak
2867  Turkish
2868
2869
2870 Overview of changes in GLib 2.50.1
2871 ==================================
2872
2873 * Update Unicode support to Unicode 9.0.0
2874
2875 * Bugs fixed:
2876  662946 gunixmounts monitoring doesn't work correctly with libmount
2877  771591 Update to Unicode 9.0.0
2878  772054 glib/gspawn-win32-helper.c: unexpected behavior re CommandLineToArgvW()
2879  772255 gresolver: Mark GResolver as an abstract class
2880  772269 Add --version options to glib-compile-resources and glib-compile-schemas
2881  772297 completion: Complete gsettings describe
2882  772511 g_log_default_handler crashes windows apps with "Unspecified fatal err...
2883
2884 * Translation updates:
2885  Brazilian Portuguese
2886  Catalan
2887  Croatian
2888  Czech
2889  Danish
2890  Hungarian
2891  Italian
2892  Latvian
2893  Polish
2894  Swedish
2895
2896
2897 Overview of changes in GLib 2.50.0
2898 ==================================
2899
2900 * Bugs fixed:
2901  771438 Turn on libmount by default on linux
2902         Fix the annotation for g_log_variant
2903
2904 * Translation updates:
2905  British English
2906  French
2907
2908
2909 Overview of changes in GLib 2.49.7
2910 ==================================
2911
2912 * Add g_log_variant, binding-friendly api for structured logging
2913
2914 Bugs fixed:
2915  646926 arg_data invalid after g_option_context_parse() fails
2916
2917 * Translation updates:
2918  Danish
2919  Finnish
2920  Galician
2921  German
2922  Hebrew
2923  Kazakh
2924  Korean
2925  Latvian
2926  Lithuanian
2927  Polish
2928  Portuguese
2929  Serbian
2930  Slovak
2931  Spanish
2932  Swedish
2933  Thai
2934
2935
2936 Overview of changes in GLib 2.49.6
2937 ==================================
2938
2939 * The gsettings commandline tool now has a describe command
2940
2941 Bugs fixed:
2942  745754 Add gcc-style dependency output to glib-compile-resources
2943  769076 Fix warning: attempt to override closure->va_marshal with new marshal
2944  770372 gdbus-codegen: Strip @since parameters before comparison
2945
2946 Translation updates:
2947  Brazilian Portuguese
2948  Czech
2949  German
2950  Hungarian
2951  Polish
2952  Portuguese
2953  Spanish
2954
2955
2956 Overview of changes in GLib 2.49.5
2957 ==================================
2958
2959 * Structured logging:
2960  - drop libsystemd dependency
2961  - document that g_test_expect_message does not work with structured logs
2962
2963 * Use libmount for unix mount support
2964
2965 * Add an async variant of g_app_info_launch_default_for_uri
2966
2967 Bugs fixed:
2968  522053 GUnixMountMonitor needs to use /proc/self/mountinfo on recent Linux
2969  682794 Add usage guidance to logging documentation
2970  744456 Structured logging API
2971  766370 Add a macro for initializing g_auto(GVariantBuilder)
2972  767240 Regex failures with pcre 8.38
2973  768198 Can't build glib with systemtap enabled
2974  768453 Gdbus test: compilation fails due to -Werror=format-y2k errors
2975  768752 Add async variant of g_app_info_launch_default_for_uri
2976  769027 Docs misleadingly imply G_CHECKSUM_SHA512 is available since 2.16
2977  769029 gmessage: compiler complains about -Wformat-nonliteral
2978  769042 'O_CLOEXEC' undeclared (first use in this function)
2979  769087 gmessages: support NULL log domain
2980  769089 Fix gsettings uint64 testcase
2981  769104 Build failure when using _GLIB_CHECKED_ADD_U32 with the Intel compiler
2982  769139 g_log_writer_journald uses non-standard 'htole64' function
2983  769238 memory increases every time I umount and mount my secondary hard disk.
2984  769245 is_valid_heap_iter define misses NULL pointer check
2985  769507 gmessages: Don’t require is_journald() call before writer_journald()
2986  769785 gmessages: Expand documentation further for structured logging
2987  769995 gdbus-codegen: Allow '@since: UNRELEASED' in documentation comments
2988
2989 Translation updates:
2990  Catalan
2991  Hebrew
2992  Lithuanian
2993  Slovak
2994  Spanish
2995
2996
2997 Overview of changes in GLib 2.49.4
2998 ==================================
2999
3000 * Change the just-introduced structured logging API. The arguments
3001   of g_log_structured() had to be reordered to enable an implementation
3002   within the limits of what the standards guarantee about var args.
3003
3004 Bugs fixed:
3005  744456 Structured logging API
3006  768936 gio doc build fails because of missing gio.xml in the tarballs
3007  768963 improper va_list use in g_log_structured()
3008  768968 gio/tests/socket-listener hangs since e4ee307
3009
3010 Translation updates:
3011  Spanish
3012
3013
3014 Overview of changes in GLib 2.49.3
3015 ==================================
3016
3017 * GLib has a structured logging API, g_log_structured, with support
3018   for writing to the systemd journal. It also supports colored output
3019   in terminals
3020
3021 * Some new GBytes API has been added:
3022  - g_key_file_load_from_bytes
3023  - g_compute_hmac_for_bytes
3024
3025 * Stack-allocated GVariantBuilder and GVariantDict objects can now be
3026   initialized with G_VARIANT_BUILDER_INIT and G_VARIANT_DICT_INIT
3027
3028 * gio:
3029  - Add a way to register handlers for custom uri schemes
3030  - Add a G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE attribute to
3031    have these heuristics in a single place
3032  - Include a gio tool that makes the functionality of the
3033    various gvfs commandline tools available in a single place
3034  - Add portal support to g_app_info_launch_default_for_uri
3035  - Add portal support to GNetworkMonitor
3036  - Add portal support to GProxyResolver
3037  - Add portal support to g_application_send_notification
3038
3039 Bugs fixed:
3040  547200 g_utf8_find_next_char() issues
3041  662802 systemtap multiarch issue
3042  723506 fork/exec from non-main thread when autolaunching could be avoided...
3043  725902 build: simplify dtrace configuration
3044  728207 gsocketservice: Documentation does not mention that is already act...
3045  729914 instead of DEBUG_CODE and IF_DEBUG, provide a common macro to supp...
3046  744456 Structured logging API
3047  744678 Unable to delete relocatable schemas
3048  746685 clarify that g_variant_get_data() can be used instead of g_variant...
3049  747134 glib-compile-resources --generate should detect common C++ file ex...
3050  750257 GSettings changed signal should clearly state the order required
3051  753231 Memory is potentially used after free
3052  754012 missing filename in "Error loading css: Failed to import: Error op...
3053  760115 gtestutils: add missing dash in seed argument's --help documentation
3054  760423 gio-querymodules prints error messages as question marks on some l...
3055  761102 Increase performance for main loop
3056  765338 GLib.compute_hmac_for_data throws every time
3057  766370 Add a macro for initializing g_auto(GVariantBuilder)
3058  766899 Superflous HTML/XML comments in GDBusProxyTypeFunc documentation s...
3059  766933 GSocketAddress leaks in gnetworkmonitornetlink.c:read_netlink_mess...
3060  767765 Add names and tags to various GSources and GTasks constructed in GLib
3061  767880 gkeyfile: add g_key_file_load_from_bytes() API
3062  767887 vfs: add g_vfs_register_uri_scheme()
3063  767949 [patch] Typos in glib docs
3064  768029 infinite loop in parse_name_internal()
3065  768119 Fix fallout from get_supported_schemes() changes
3066  768357 Build the gio tool on Windows/MSVC
3067  768498 portal support for glib
3068  768504 keyfile: g_key_file_get_double behavior doesn't follow documentation
3069  768549 Test failure: test_ip_sync_dgram
3070  768551 Test failure: test_socket_address_to_string
3071  768560 gio/tests/gsettings: fix GSettings reference leaks in some tests
3072  768780 O_PATH is a non-standard flag which may be unavailable on non-Lin...
3073  768806 gdbus tool must swallow -- argument
3074
3075 Translation updates:
3076  Chinese (Taiwan)
3077  French
3078  Hebrew
3079  Indonesian
3080  Lithuanian
3081  Portuguese
3082  Spanish
3083
3084
3085 Overview of changes in GLib 2.49.2
3086 ==================================
3087
3088  * GMainContext and GTask have gained more systemtap probes
3089
3090 Bugs fixed:
3091  673101 resource compiler dependency generation not working for gen...
3092  700756 GFile.new_for_path arguments misses (type filename) annotation
3093  730187 glocalfileoutputstream: Fix an FD leak in an error path
3094  755439 Memory leak in gdbusproxy.c
3095  759813 Add more SystemTap/DTrace probes for main context and GTask
3096  761810 gio: Support using GDBusObjectManagerServer at path ‘/’
3097  767172 docs: Move GIO_USE_VFS to "okay for production" section
3098  767218 Remove a UTF-8 ellipsis from gsignal.h
3099  767245 Add filename type annotations
3100  767824 Some UTC timezones incorrectly recognized on Windows 7
3101
3102 Translation updates:
3103  Occitan
3104
3105
3106 Overview of changes in GLib 2.49.1
3107 ==================================
3108
3109  * GDesktopAppInfo now allows bus activation with dashes. This is
3110    not technically allowed per the Desktop Entry specification, but
3111    it happens in the wild. Rather than forcing people to go through
3112    another traumatic desktop file rename, accept it and translate - to _.
3113
3114  * The support for giving names to threads has been improved. Thread names
3115    are now supported on Solaris as well, and the Linux support no longer
3116    uses prctl() but the pthread api.
3117
3118  * GIO resources can now be overridden at runtime, using the G_RESOURCE_OVERLAYS
3119    environment variable.
3120
3121  * gdbus-codegen can now generate autocleanup definitions for the types
3122    it generates. Use the --c-generate-autocleanup option to control this
3123
3124 Bugs fixed:
3125  665446 Use g_abort() instead of abort()
3126  731988 glocalfile: Avoid a potential NULL pointer dereference
3127  742898 g_value_type_transformable() description differs from the code
3128  747107 GVariant varargs documentation: g_variant_get() example
3129  747478 g_system_thread_set_name() is not implemented for gthread-win32
3130  748474 g_get_language_names() is not thread-safe
3131  748530 gthread: W32 implementation of g_get_num_processors() has lame fallback
3132  748806 GVariant: Better introduction to the concepts and its uses
3133  749583 GSequence performance improvements
3134  749606 tests: always remove app.desktop
3135  755898 [PATCH] settings: add get/set uint64
3136  758174 Fix documentation typos
3137  758738 Usage of GType properties causes crashes due to gulong/gpointer mismatch
3138  760186 namespace clash with gdb pretty-printing code
3139  762994 Race condition in GIO/AppFileChooser crashes Firefox/Gtk3
3140  763379 codegen: Add support for g_autoptr to gdbus-codegen–generated objects
3141  763821 build: Also dist Systemtap files always for gobject/
3142  764092 gstrfuncs: Document the behaviour of g_strjoinv()
3143  764163 g_task_had_error doesn't remember the error after g_task_propagate_*
3144  764415 Very High CPU usage in g_poll() Windows implementation
3145  764574 build: Fix all statfs() tests failing
3146  764575 tests: Fix compilation errors due to Y2K format problems
3147  764685 GApplication documentation about handling command-line options is confusing
3148  764754 '-' in application id: unbreak bus activation and notifications
3149  765173 documentation of g_main_context_push_thread_default() regarding GIO...
3150  765668 GResources: add support for resource overlays
3151  765710 gdbus-tool: only print note about expected argument types if that...
3152  765712 tests: Fix compilation
3153  765861 task: avoid context lock when setting source name
3154  765900 Add g_drive_is_removable() support
3155  765924 Improve external drives detection
3156  765959 socket: set fd field to -1 after closing socket
3157  765990 Visual Studio: Define inline only when necessary
3158  765991 Compilation of gresource.c is broken due to S_ISDIR
3159  766092 Incorrect locale handling in g_date_time_format_locale()
3160  766211 Fix the upper bound in g_unichar_iswide_bsearch
3161  766407 Some build-related defects in glib testsuite
3162  766570 build: Fix a misnamed variable in glib-tap.mk
3163
3164 Translation updates:
3165  Basque
3166  Catalan
3167  Chinese
3168  Occitan
3169  Portuguese
3170  Turkish
3171  Vietnamese
3172
3173
3174 Overview of changes in GLib 2.48.0
3175 ==================================
3176
3177  * a minor build fix in the name of determinism
3178
3179  * a few coverity fixes
3180
3181 Bugs fixed:
3182  763617 giotypefuncs.c: Sort _get_type functions in the 'C' locale
3183
3184 Translations updated:
3185  Danish
3186  Italian
3187
3188 Overview of changes in GLib 2.47.92
3189 ===================================
3190
3191  * gdbus-codegen now supports g_autoptr()
3192
3193  * g_get_user_runtime_dir() now reliably returns an existing directory
3194
3195  * g_array_remove_range() can now remove 0 items from the end of an array
3196
3197  * Many fixes for Windows
3198    * build fixes
3199    * file monitoring
3200    * gsettings backend
3201    * streams
3202    * random numbers
3203    * wide character support
3204
3205  * documentation improvements
3206
3207  * other small bugfixes
3208
3209 Bugs fixed:
3210  724847 Segmentation fault on "gsettings list-recursively"
3211  743933 gapplication: add --app-id command line option
3212  756706 [PATCH] gio/gtestdbus.c: don't use non-standard %m printf modifier
3213  757506 gsettings: schema_list should use the passed schema's source
3214  760694 W32: Apps linked with -mwindows make cursor busy sometimes
3215  762202 g_win32_error_message improvements
3216  762637 build: Unconditionally dist tapset files
3217  762748 Undefined behavior
3218  762937 Mention that g_clear_error can be used with an "empty" GError
3219  763339 array: Support clearing an empty array with g_array_remove_range()
3220  763344 g_get_user_runtime_dir(): ensure directory exists
3221  763379 codegen: Add support for g_autoptr to gdbus-codegen–generated objects
3222
3223 Translations updated:
3224  Brazilian Portuguese
3225  Czech
3226  Finnish
3227  French
3228  Galician s
3229  German
3230  Greek
3231  Hebrew
3232  Hungarian
3233  Italian
3234  Kazakh
3235  Korean
3236  Latvian
3237  Lithuanian
3238  Occitan
3239  Polish
3240  Russian
3241  Serbian
3242  Slovak
3243  Slovenian
3244  Spanish
3245  Swedish
3246
3247 Overview of changes in GLib 2.47.6
3248 ==================================
3249
3250 * Windows usupport:
3251  - Fixes and improvements to the GSettings registry backend
3252  - Handle readability and writability of registry keys
3253  - Use Unicode registry APIs
3254
3255 * Bugs fixed:
3256 760852 744772 761126 747927 761337 744570 761504 761550 761843
3257  744570 GString is missing (transfer none) annotations on many of its methods
3258  744772 systemtap and gdb scripts install in wrong place
3259  747927 Documentation: various small improvements
3260  760852 gdbusobjectmanagerserver: Clarify recommended ObjectManager paths
3261  761126 winiconv: update to upstream version
3262  761337 Fix some annotations
3263  761504 W32 registry GSettings backend does not use Unicode
3264  761550 Cannot build with default flags under Fedora rawhide (-Werror=format-...
3265  761843 gmacros.h is testing attributes with __has_feature (when compiling wi...
3266
3267 * Translation updates:
3268  Brazilian Portuguese
3269  Bulagarian
3270  Chinese (Taiwan)
3271  Hungarian
3272  Polish
3273  Slovak
3274  Slovenian
3275  Spanish
3276  Swedish
3277
3278
3279 Overview of changes in GLib 2.47.5
3280 ==================================
3281
3282 * the system copy of PCRE is now used by default to implement GRegex.
3283   Configure with --with-pcre=internal if a system PCRE version
3284   is unavailable or undesired.
3285
3286 * interfaces for DTLS support have been added.  A new version of
3287   glib-networking will also be required.
3288
3289 * GDBusMethodInvocation now drops replies if the sender set the
3290   NO_REPLY_EXPECTED flag
3291
3292 * several GApplication fixes, including fixes for commandline arguments
3293   in interpreted languages on Windows
3294
3295 Bugs fixed:
3296  624186 Deprecate glib-gettext macros
3297  734095 gtk-demo.py of PyGObject fails to run on Windows (and likely other binding scripts using g_application_run())
3298  735754 Implement close on TLS GOutputStream
3299  748064 gnulib vfprintf returns desired (not actual) number of bytes, ignores errors
3300  752240 Add DTLS support to GIO
3301  755421 GDBus ignores NO_REPLY_EXPECTED flag in messages, leading to warnings on system bus
3302  756875 Include ntdef.h for NTSTATUS
3303  759554 g_application_run() calls g_main_context_default() repeatidly
3304  760199 gsettings: Install gettext ITS rules
3305  760215 G_LIKELY/_UNLIKELY macros need more parentheses
3306  760683 regex test: Check the expected PCRE exceptions at runtime
3307
3308 Translations updated:
3309  Brazilian Portuguese
3310  Czech
3311  German
3312  Lithuanian
3313  Swedish
3314
3315 Overview of changes in GLib 2.47.4
3316 ==================================
3317
3318 * The GApplication documentation has been improved in several areas.
3319
3320 * Bugs fixed:
3321  749092 gdb pretty-printers fail on Python 3 with a TypeError...
3322  757374 macros: clean up "inline" mess
3323  758641 Memory leak in g_dbus_proxy_new_for_bus_sync()
3324  759134 Add missing checks for gnulib vasnprintf()
3325  759408 Do not use uninitialized var 
3326  756475 Stop supporting non-POSIX getpwuid_r, getgrgid_r
3327  757372 GApplication: destroy the impl on shutdown
3328  728099 macros: add G_GNUC_CHECK_VERSION() for compiler checks
3329  757299 glib-compile-resources: do not leak c_name
3330  758553 Fix gettext use
3331  758823 file monitors: reorder some code to avoid segfault
3332  756214 gsettings: Don't translate ""
3333  710243 Add GParamSpec object ref management annotations
3334  735696 xdgmime: Finer handling for cases where mmap() is not available
3335  752983 gapplication: Acquire the main context before running
3336
3337 * Translation updates:
3338  Swedish
3339
3340
3341 Overview of changes in GLib 2.47.3
3342 ==================================
3343
3344 The inline cleanup in the last release accidentally removed three
3345 symbols from libglib-2.0.so.  It is unlikely that this will have caused
3346 any problems because these symbols were only backup symbols for
3347 definitions exported as inlines in the header files, but ABI is ABI.
3348
3349 This release corrects only this problem.
3350
3351 Overview of changes in GLib 2.47.2
3352 ==================================
3353
3354 * We have formalised the assumption that all compilers that are
3355   interested in support 'static inline' and simplified the macros around
3356   this considerably.  Please watch for and report unintentional fallout.
3357
3358 * New API: hardware-assisted helpers for overflow-checked integer math.
3359
3360 * other fixes
3361
3362 Bugs fixed:
3363  696324 gtester-report doesn't work with Python 3.x
3364  719966 glib: Add missing (nullable) and (optional) annotations
3365  752837 gobject and glib-compile-resources rely on .CRT$XCU section, no longer works with Win 10 UCRT (VS 2015)
3366  755364 make gtkdoc-check happy again
3367  756134 Segmentation fault on calling g_simple_action_group_add_action with bad action constructor call
3368  756179 gwin32.c: Replace VerifyVersionInfoW() with RtlGetVersion() due to API deprecation
3369  756988 GSequence should document each function's complexity
3370  757294 Move G_POLLFD_FORMAT to glibconfig.h
3371  757374 macros: clean up "inline" mess
3372  757451 doc: fix g_task_attach_source() example
3373  757628 gio tests fail to build when cross compiling 2.46.1
3374  757693 Invalid free in g_local_file_trash()
3375  757742 Fix up annotations in ghash.c
3376  758181 GTask: fix wrong example code
3377
3378 Translations updated:
3379  Greek
3380  Hebrew
3381  Hungarian
3382  Norwegian bokmål
3383  Portuguese
3384  Scottish Gaelic
3385  Simplified Chinese
3386  Spanish
3387
3388 Overview of changes in GLib 2.47.1
3389 ==================================
3390
3391 * The Unicode support has been updated to version 8.0 of the Unicode standard
3392
3393 * GDesktopAppInfo no longer sets the DISPLAY environment variable when
3394   launching apps. This is now done in the GAppLaunchContext implementations
3395   when appropriate
3396
3397 * Bug fixes:
3398  664740 Key-value file parser, space after integer
3399  687223 cleverer GThreadPool management
3400  692085 stderr and stdout are not always file descriptors 1 and 2
3401  697907 Add interface for socket-like things (GSocket, DTLS, etc)
3402  735754 Implement close on TLS GOutputStream
3403  737116 Add functions to print GSocketConnectables and addresses as strings
3404  743011 Minor additions to GError documentation
3405  749161 undefined reference to `__imp__stat32i64'
3406  749314 Cannot restore a just-trashed file
3407  751924 Add recvmmsg()-like API on GSocket
3408  752240 Add DTLS support to GIO
3409  752837 gobject and glib-compile-resources rely on .CRT$XCU section, no longer...
3410  753310 Remove `#pragma GCC system_header` from gmessages.h
3411  753935 Update example namespace and class names in GObject tutorial
3412  754855 Object instantiation documentation refers to example that no longer ex...
3413  754983 Wayland: g_desktop_app_info_launch_uris_with_spawn() forces DISPLAY va...
3414  754994 g_date_time_get_second () sometimes returns an off-by-one result
3415  755083 Clarify in G_ADD_PRIVATE that it is safe to call _get_instance_private...
3416  755351 Example still contains g_autoptr(gchar)
3417  755355 Move GStrv to glib.h so it can be used with g_auto()
3418  755374 g_variant_get_child(): flatten-first logic on '&'
3419  755496 glib 2.46 fails GStreamer test suite
3420  755609 glib 2.46.0 breaks Sun Java JVM 1.8.0.60
3421  755766 gvalue: The g_auto cleanup function assert if value is G_VALUE_INIT
3422  755795 2.46 considers empty files as octet-stream rather than text (leads to...
3423  755961 Fix up annotations in gbytes.c
3424  756053 MSVC doesn't understand the symbol 'msghdr'
3425  756054 MSVC linker error due to 'g_socket_send_message_with_timeout()'
3426  756077 testutils: remove internal ABI comment
3427  756099 g_main_context_query(): Annotate @n_fds as (in) parameter
3428  756139 musl: ctors called in the wrong order
3429  756179 gwin32.c: Replace VerifyVersionInfoW() with RtlGetVersion() due to AP...
3430  756251 The documentation of G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START is confusing
3431  756255 GOutputStream swallowing errors in splice with G_OUTPUT_STREAM_SPLICE...
3432  756316 GSequence should provide fast api to check if empty
3433  756382 snprintf used on Windows with VS2015 doesn't support %n
3434  756477 gio/gthreadedresolver.c has outdated copy of bionic headers (for android)
3435  756550 gtypes.h: Make G_MININTn literals negative
3436  756875 Include ntdef.h for NTSTATUS
3437  756952 giomodule: return a copy of module name
3438
3439 * Translation updates:
3440  Basque
3441  Czech
3442  Serbian
3443  Serbian Latin
3444  Vietnamese
3445
3446
3447 Overview of changes in GLib 2.46.0
3448 ==================================
3449
3450 * Disable runtime-deprecation warnings
3451
3452 * Fix marshalling of flags on bigendian 64bit architectures
3453
3454 * Translation updates
3455  Brazilian Portuguese
3456  Danish
3457  German
3458  Latvian
3459  Russian
3460  Turkish
3461
3462
3463 Overview of changes in GLib 2.45.8
3464 ==================================
3465
3466 * utf8 validation and utf8-to-ucs4 conversion are faster
3467
3468 * Small speedups to property change notification
3469
3470 * Various other small optimizations for GQuark, GData
3471
3472 * Bugs fixed:
3473  696426 GParamSpecTypeInfo do not need to be static
3474  735429 Cleanup MSVC Project Files Generation
3475  738504 Optimize UTF-8 decoding by unrolling branches and expressions
3476  742903 Add missing (transfer) annotation to GString
3477  748633 g_set_object order of operations
3478  754431 Fix build of glib/gstrfuncs.c on Windows
3479  754560 gioerror: Add more mappings for WinSock error codes
3480  754582 Glib cannot compile
3481  754601 Make g_strerror work with non-glibc POSIX systems
3482  754636 tests/unicode-encoding test fails for glib 2.45.7 on x86-64
3483  754788 more g_strerror stuff
3484  754831 autocleanups: Add GString type
3485  754924 Improve test coverage of g_utf8_validate() by added known-...
3486  754986 Avoid unnecessary signal emission during draw
3487
3488 * Translation updates:
3489  Italian
3490  Kazakh
3491  Korean
3492  Lithuanian
3493  Slovenian
3494  Swedish
3495
3496
3497 Overview of changes in GLib 2.45.7
3498 ==================================
3499
3500 * Add G_FILE_ATTRIBUTE_STANDARD_IS_VOLATILE for use by non-POSIX-like
3501   backends (e.g. cloud storage).
3502
3503 * GFileMonitor: Make the inotify backend work with atomic renames again
3504
3505 * GSettings: change notification is again working unconditionally
3506
3507 * GListStore has a sort function now
3508
3509 * Test infrastructure:
3510  - Tests are now required to have unique names
3511  - TAP support has been improved
3512  - A macro for asserting that two memory regions have identical content
3513    has been added
3514
3515 * Bugs fixed:
3516  708525 A "g_file_query_info" on the file path "/sys/kernel/debug/hid"...
3517  742849 inotify: send paired events to both sides
3518  744060 Update GObject tutorial documentation to use G_DECLARE_FINAL_T...
3519  747364 Fix GError leak in g_file_query_writable_namespaces()
3520  749492 Support file creation time on FreeBSD and NetBSD
3521  752769 (g_socket_receive_message | g_socket_send_message) performance
3522  753745 glib-genmarshal still needed for cross-compilation
3523  754152 Add g_list_store_sort
3524  754211 Memory leak in g_file_enumerator_iterate ()
3525  754264 GLib 2.44 certificate chain construction fails if the PEM incl...
3526  754283 gtestutils: add g_assert_cmpmem()
3527  754284 gtestutils: print the TAP test plan first, not last
3528  754286 misc gtestutils fixes
3529  754307 size of array '_GStaticAssertCompileTimeAssertion_3387' is neg...
3530
3531
3532 * Translation updates:
3533  Chinese (Taiwan)
3534  French
3535  Galician
3536  Greek
3537  Hebrew
3538  Hungarian
3539  Indonesian
3540  Polish
3541  Portuguese
3542
3543
3544 Overview of changes in GLib 2.45.6
3545 ==================================
3546
3547 * Fix a test failure and a build failure
3548
3549 Overview of changes in GLib 2.45.5
3550 ==================================
3551
3552 * GNetworkMonitor now provides information about metered networks
3553
3554 * g_mem_set_vtable has been deprecated; it has not been working for
3555   quite a while. The recommendation is to use valgrind, or replace
3556   malloc itself.
3557
3558 * Bugs fixed:
3559  656325 Make GDBusInterfaceVTable binding friendly
3560  741779 Documentation tweaks addressing real-world API misuses
3561  741822 Fails to build with VS 2015
3562  742386 gdbusconnection: Don't g_printerr() when exiting
3563  743018 gobject: Add more cross-links between documentation pages
3564  750282 Add g_network_monitor_get_network_metered() to get if the connection...
3565  751358 GFileMonitor doesn't react to "mv some-file watched-file"
3566  751592 Stop using GMemVtable
3567  751598 Stop 'handle-local-options' propagation when callback reports an err...
3568  751610 g_str_hash produces collisions with strings of length 2
3569  751751 Wrong docs of g_async_queue_remove
3570  752210 gdbus command crashes with SIGSEGV
3571  752656 gdbusconnection: Fix signal subscription documentation
3572  752767 Fix typo in g_hash_table_replace() documentation
3573  753278 gdbus: Don't use g_assert_no_error() GDBusObjectManagerServer
3574  753285 g_menu_item_set_icon fails if called with NULL icon
3575
3576 * Translation updates:
3577  Catalan
3578  Czech
3579  French
3580  Indonesian
3581  Lithuanian
3582  Norwegian bokmål
3583  Slovak
3584  Spanish
3585  Thai
3586  Turkish
3587
3588
3589 Overview of changes in GLib 2.45.4
3590 ==================================
3591
3592 * Bugs fixed:
3593  727829 win32: glibconfig.h.win32 updates
3594  741901 Clang cannot know that g_error don't return
3595  746339 GSocket kills process when fd is not a socket
3596  747676 gio/tests/socket fails: test_fd_roundtrip
3597  748610 Some tests fail with non-English locales
3598  749911 g_inet_address_to_string broken on XP/2003
3599  749912 g_inet_address_new_from_string broken on XP/2003
3600  750625 Should dismiss Software Updates Available notification after...
3601  750807 G_BREAKPOINT doesn't work as intended on Darwin
3602  751160 gtask does unnecessary work
3603  751672 -Wduplicate-decl-specifier in glib/tests/keyfile.c
3604  751731 GFile/DirectoryMonitor emit move events with other_file=NULL
3605  751737 gio/tests/appmonitor test fails in 2.45.3
3606  751798 Wrong enum type used in some test-cases
3607  752089 make gsocketservice::active a property
3608  752293 small cleanup: use list_free_full
3609
3610 * Translation updates:
3611  Greek
3612  Hebrew
3613  Portuguese
3614
3615
3616 Overview of changes in GLib 2.45.3
3617 ==================================
3618
3619 * Improve performance of g_signal_handler_disconnect for signals
3620   with many handlers
3621
3622 * GDBus has gained a new call flag to allow interactive authorization
3623
3624 * GSettings:
3625  - New API: g_settings_schema_list_keys
3626  - Deprecated: g_settings_list_keys
3627
3628 * OS X:
3629  - Implement GNotification
3630  - Bump the OS X requirement to 10.9
3631
3632 * Windows:
3633  - Add registry reading API
3634  - Reimplement GAppInfo using registry information
3635
3636 * Bugs fixed:
3637  666831 Support URI opening on W32
3638  728489 property action with inverted boolean state
3639  730168 Incorrect annotation on g_action_group_get_action_state_type return...
3640  733325 Several regex tests fail with pcre3 8.35
3641  734888 GLib has no helper functions to work with W32 Registry
3642  737009 signal handler lookup doesn't scale
3643  738185 Misleading language about "file name encoding" in the docs on g_env...
3644  738504 Optimize UTF-8 decoding by unrolling branches and expressions
3645  739122 glib not handling -1 return ("no limit") from sysconf (_SC_THREAD_S...
3646  739424 gnome-shell crashes when files are added, deleted, or modified in $...
3647  739616 DBus; Add new call flag to allow interactive authorization
3648  740308 Add g_settings_schema_list_keys() method
3649  740516 RFE: please provide an introspectible version of g_log_set_handler
3650  741788 Document GSettings build system integration
3651  745013 GBinding not thread safe
3652  747146 Implement GNotification on OSX
3653  747941 try XDG_RUNTIME_DIR/bus before falling back to X11 autolaunch (dbus...
3654  748727 Filechooser dialog shows no icons for directories on W32
3655  749693 GActionGroupExporter: flush queue on requests
3656  750203 GNetworkMonitorNetlink hangs in user namespace
3657  750322 gapplication: Make sure --help output is translated
3658  750344 GTlsInteractionClass is missing from doc
3659  750369 Various GBinding cleanups
3660  750386 Race condition in g_io_condition_get_type
3661  750399 Typo "equilalent" in glib documentation's glib-Error-Reporting.html...
3662  750573 GTlsDatabaseClass is not documented
3663  750918 genmarshal: silence register storage class warnings
3664  751122 gsocket: avoid unnecessary g_socket_cond_wait() in _send_messages()
3665  479730 The "g_key_file_set_comment" interface prepends '#' character to...
3666
3667 * Translation updates:
3668  Hungarian
3669  Spanish
3670
3671
3672 Overview of changes in GLib 2.45.2
3673 ==================================
3674
3675 * Improve error reporting in glib-compile-schemas.
3676
3677 * Add introspection annotations to GListStore.
3678
3679 * Bugs fixed:
3680  696749 win32 : failed to compile because of careless mistake in the code
3681  723394 const parameter to GtkPopover gtk_popover_set_pointing_to
3682  724113 gdbus-connection-loss test can fail on slow machines
3683  725981 tap-driver.sh: internal error getting exit status
3684  733325 Several regex tests fail with pcre3 8.35
3685  744895 Unknown or unsupported transport 'this-should-not-be-used-and-will...
3686  747882 gtype: Bump allowed number of children
3687  748534 gtest: if a subprocess assertion fails, print its stdout and stderr
3688  748612 de_DE locale used in option-context test is not supported by FreeBSD
3689  748614 Double unref in g_socket_listener_add_inet_port
3690  748834 glocalfilemonitor: Emit notification on rate limit change
3691  749079 gdbus-peer test: TCP tests can fail with ECONNRESET due to a race...
3692  749080 gdatetime test: fails if close to rollover between seconds
3693  749180 gnetworkaddress: add return type annotation to parse methods
3694  749352 g_binding_unbind() fails when source is also the target
3695  749353 GBinding does not connect to the detailed notify signal
3696
3697 * Translation updates:
3698  Catalan
3699  French
3700  Slovak
3701  Thai
3702
3703
3704 Overview of changes in GLib 2.45.1
3705 ==================================
3706
3707 * The GSettings schema compiler, glib-compile-schemas has been changed
3708   to reject schema xml that has duplicate <summary> or <description>
3709   elements. Such elements typically occur when translations are merged
3710   into the schema, with xml:lang attributes. This is not the correct
3711   way to translate schemas. Instead keep the translations in the .mo
3712   file and set the gettext-domain attribute on the <schemalist> element.
3713
3714 * The file monitoring infrastructure has been rewritten, and all backends
3715   have seen major improvements.
3716
3717   The inotify backend is reporting events with less delay (no event will
3718   be delayed more than 10ms) and wakeups due to file monitoring have been
3719   significantly reduced. A CHANGES_DONE event will also be sent when new
3720   files appear.
3721
3722   The poll implementation is now using the thread default main context.
3723
3724   The fam implmentation is now running in the worker thread.
3725
3726   The fen implementation has been removed, since it was unmaintained.
3727
3728 * The GSettings schema compiler, glib-compile-schemas, is more strict
3729   about rejecting schemas with xml:lang style merged translations.
3730   Schema translations should be done by specifying the gettext domain
3731   in the xml, and keeping the translations in gettext. To avoid breaking
3732   already-installed schemas, this change is only taking effect when
3733   you use the --strict option.
3734
3735 * The hardcoded 10-thread limit of GTask's thread pool has been removed,
3736   since it was prone to causing deadlocks. The thread pool is now allowed
3737   to grow dynamically and will shrink back over time.
3738
3739 * GSimpleAsyncResult has been deprecated in favor of GTask.
3740
3741 * The algorithm used by GAppInfo to find default handlers for mime types
3742   has been tweaked to prefer apps that handle the specific subtype over
3743   default handlers for a generic supertype.
3744
3745 * Bug fixes:
3746  627285 inotify file monitor hardwired delay
3747  631597 Segmentation fault in append_escaped_text
3748  661767 merge/improve various bits of run-in-thread functionality
3749  687223 cleverer GThreadPool management
3750  711547 win32: silence some build warnings
3751  719966 glib: Add missing (nullable) and (optional) annotations
3752  726447 Possibly an error in text string
3753  728663 W32: wrong stat struct is used when built with MinGW-w64
3754  728669 W32: GLocalFile can't measure size of files larger than 2^32...
3755  730188 gsocket: Document FD ownership with g_socket_new_from_fd()
3756  733325 Several regex tests fail with pcre3 8.35
3757  738207 Add a way to set SO_SENDBUF and SO_RECVBUF on listener (and...
3758  739850 GClosure: add valgrind hints
3759  741791 gmain: Save errno when handling unix signals
3760  744282 gvfs-open for application/x-virt-viewer changed behaviour bet...
3761  745255 Add support for copying sessions between GTlsClientConnections
3762  745745 gdbus: fix out-of-bound array access
3763  745821 Don't use __alloc_size__ attribute with clang
3764  746749 GLib-GIO:ERROR:inotify-kernel.c:327:ik_source_dispatch: ass...
3765  746753 Glib-compile-resources --generate-header not using ".h" as ...
3766  747209 glib-compile-schemas ought to reject repeated <summary> and...
3767  747349 Conversion of gdbus to use GTask causes deadlocks
3768  747363 gatomic: Add missing new line in API doc comment
3769  747472 Don't ignore already-installed schemas with multiple <summa...
3770  747541 gdbus segfaults with invalid --dest
3771  747772 Having hardcoded utf8 strings in the source code does not p...
3772  748019 gsocketconnection: Fix copy-pasto in documentation
3773  748177 not all test schemas are distributed, "make distcheck" fails
3774
3775 * Translation updates:
3776  Basque
3777  Czech
3778  Danish
3779  Finnish
3780  German
3781  Hebrew
3782  Icelandic
3783  Norwegian bokmål
3784  Russian
3785  Turkish
3786
3787
3788 Overview of changes in GLib 2.43.92
3789 ===================================
3790
3791 GLib is now considered frozen.  We do not expect any major changes
3792 before the release of 2.44.0.
3793
3794  * GUnixMountMonitor now properly supports multiple main contexts
3795
3796  * many documentation improvements and cleanups.  We are now
3797    approaching a point where the documentation is 100% complete and the
3798    xml will build without warnings.  This will probably be enabled by
3799    default in the next cycle.
3800
3801  * new support for HTTP proxies in GIO
3802
3803  * new GTask:completed property
3804
3805  * use "private" futexes in order to further improve the performance of
3806    the contended case of GMutex and g_bit_lock()
3807
3808 Bugs fixed:
3809  614684 Make various parts of GObject const-correct
3810  730352 Use inet_pton(), if_nametoindex() and if_indextoname() for newer versions of Windows
3811  733876 Proxy protocol 'http' is not supported.
3812  741442 threads: use FUTEX_WAIT_PRIVATE and FUTEX_WAKE_PRIVATE if possible
3813  742599 Clean up GUnixMountMonitor
3814  743636 gtask: Add a GTask:completed property
3815  743661 g_win32_check_windows_version() is missing from doc
3816  744722 docs: Expand introduction to mention using async calls over sync ones
3817  745589 [Patch] gio: add some missing autocleanup
3818  745634 [GNotifications] Use themed icon as icon-name
3819
3820 Translations updated:
3821  Bosnian
3822  Bulgarian
3823  Catalan
3824  Czech
3825  French
3826  German
3827  Greek
3828  Hungarian
3829  Italian
3830  Kazakh
3831  Korean
3832  Latvian
3833  Lithuanian
3834  POTFILESin
3835  Polish
3836  Russian
3837  Serbian
3838  Slovak
3839  Slovenian
3840  Spanish
3841  Swedish
3842  Vietnamese
3843  pa  for Gnome
3844
3845 Overview of changes in GLib 2.43.91
3846 ===================================
3847
3848 We have now added 'g_autofree' as a libgsystem-style autocleanup macro
3849 that calls g_free() on the content of a local variable when it leaves
3850 scope (working only on GCC and clang).
3851
3852 GApplication now has an "is-busy" property, allowing one to query the
3853 effective busy state.
3854
3855 There have been various other bugfixes and cleanups.
3856
3857 Bugs fixed:
3858  661554 GIO's use of GError is wrong
3859  744263 Fix format specifier for __LINE__ in G_OBJECT_WARN_INVALID_PSPEC
3860  744565 gapplication: add bind_busy_property()
3861  744747 Add g_autofree
3862  744756 Can't find out if gapplication is marked as busy
3863  744830 autocleanups: Add GArray and GPtrArray
3864  744876 Unclean exit from from g_application_run
3865  745239 g_property_action_new missing type annotation
3866
3867 Translations updated:
3868  Chinese (Taiwan)
3869  French
3870  Galician
3871  Lithuanian
3872  Slovak
3873
3874 Overview of changes in GLib 2.43.90
3875 ===================================
3876
3877 * new GSimpleIOStream class to construct a GIOStream from an arbitrary
3878   GInputStream and GOutputStream
3879
3880 * GApplication: new API for marking 'busy' state according to the value
3881   of a boolean property on another object
3882
3883 * GOptionGroup: add binding support (boxed type, annotation fixes, etc.)
3884
3885 Bugs fixed:
3886  739724 Test functions should have async scope
3887  741024 glist: Mention that g_list_length() is bad for checking list emptiness
3888  741630 Add GSimpleIOStream class
3889  743349 goption: Add boxed type for GOptionGroup
3890  743990 GDBus connection closing is broken
3891  744565 gapplication: add bind_busy_property()
3892
3893 Translations updated:
3894  Greek
3895  Italian
3896  Norwegian bokmål
3897  Russian
3898  Slovenian
3899  Swedish
3900
3901 Overview of changes in GLib 2.43.4
3902 ==================================
3903
3904 * GType now has type declaration macros G_DECLARE_DERIVABLE_TYPE,
3905   G_DECLARE_FINAL_TYPE and G_DECLARE_INTERFACE, which significantly reduce
3906   the boilerplate needed for GObject types and interfaces.
3907
3908 * g_autoptr and g_auto are macros for declaring variables with automatic
3909   cleanup. They only work with gcc and clang.
3910
3911 * GListModel is a new interface that represents a dynamic list of GObjects.
3912
3913 * GListStore is a GSequence-based implementation of GListModel.
3914
3915 * Support thread names on OS X
3916
3917 * g_simple_action_set_state_hint: New function to set the state hint
3918   of GSimpleActions
3919
3920 * g_win32_check_windows_version: New function to check Windows version
3921
3922 * g_settings_schema_list_children and g_settings_schema_key_get_name
3923   are new functions to complete the GSettingsSchema API.
3924
3925 * Bugs fixed:
3926  389585 G_DEFINE_TYPE hack for header files
3927  729351 Add GListModel
3928  736914 Docs: various fixes and improvements
3929  741807 Add thread name support on OS X and iOS
3930  741895 gwin32: Add Simple API to check whether we are on at least a v...
3931  742456 object: Add g_steal_pointer() convenience function to mark own...
3932  743508 polkitd fails to start: patch for gio/gcredentialsprivate.h
3933  743517 GSettings API is missing some introspection functions
3934  743521 GSimpleAction: add g_simple_action_set_state_hint
3935  743596 G_DECLARE_DERIVABLE_TYPE() should allow additional typedef for...
3936  743640 add __attribute__((cleanup)) support
3937  743827 Fix build of GListModel (on Visual Studio)
3938  743927 GListStore: add sorted insert function
3939  743936 glib: handle unsigned modifier for long long in internal printf
3940  744012 Add GMutexLocker
3941  744190 Fix build on Compilers That Do Not Use inline for Plain C Code
3942
3943
3944 Overview of changes in GLib 2.43.3
3945 ==================================
3946
3947 * add g_set_object() convenience function
3948
3949 * GNetworkMonitor: check if NM is not running and don't crash
3950
3951 * fix some races with g_mkdir_with_parents
3952
3953 * fix some warnings in MSVC
3954
3955 * avoid use of G_STRLOC in G_OBJECT_WARN_INVALID_PSPEC in order to save
3956   on static strings
3957
3958 * fix some content type vs. mime issues
3959
3960 * documentation improvements
3961
3962 * Bugs fixed:
3963  719455  g_file_make_directory_with_parents() can erroneously throw G_IO_ERROR_EXISTS
3964  732439  GSocket: avoid unnecessary g_socket_wait_condition() for blocking sockets
3965  734946  Implement GContentType on OSX
3966  741589  gobject: Add g_set_object() convenience function to set GObject pointers
3967  741653  gnetworkmonitornm: Check if network-manager is running
3968  741654  [patch] gobject: don't use G_STRLOC in G_OBJECT_WARN_INVALID_PSPEC() macro
3969  741707  Gsocket blocks trying to send data
3970  741788  Document GSettings build system integration
3971  742548  configure.ac: stay out of autoconf's namespace
3972  742851  avoid MSVC warnings in G_STMT_END
3973  742972  ggettext: Include an example of setlocale() and friends in the i18n docs
3974  743014  gtestutils: Add an example of using test fixtures 
3975
3976 * Translations updated:
3977  Basque
3978  Brazilian Portuguese
3979  Spanish
3980
3981 Overview of changes in GLib 2.43.2
3982 ==================================
3983
3984 * New function: g_strv_contains
3985
3986 * New function: g_network_address_new_loopback
3987
3988 * New function: g_socket_send_messages
3989
3990 * A new GNetworkMonitor implementation using NetworkManager provides
3991   more detailed connectivity information
3992
3993 * Bugs fixed:
3994   11059 Linux poll issue
3995  664562 captive wifi portal support for GNetworkMonitor
3996  685880 Add g_strv_contains()
3997  712570 Hang in g_threaded_socket_service_func
3998  719646 GSocket: add g_socket_send_messages() to send multiple messages...
3999  728928 Provide separate error code for "Connection reset by peer"
4000  732317 Support GSocketConnectable for loopback addresses
4001  740814 "make check" should ensure that every symbol is documented
4002  740848 Backend subscription fails when connecting to a signal with a d...
4003  741016 gio: add G_IO_ERROR_NOT_CONNECTED
4004  741226 keyfile: Add "in group" to GError message consistently
4005
4006 * Translation updates:
4007  Gujarati
4008  Hebrew
4009  Hungarian
4010  Kannada
4011  Turkish
4012  Vietnamese
4013
4014
4015 Overview of changes in GLib 2.43.1
4016 ==================================
4017
4018 * GQueue now accepts NULL as a sibling in g_queue_insert_before() and
4019   g_queue_insert_after()
4020
4021 * Bugs fixed:
4022   11059 Linux poll issue
4023  726037 Add G_PARAM_READWRITE value to the GParamFlags enumeration
4024  727988 GMemoryOutputStream hangs when writing more than 1GiB
4025  729739 tlscertificate: add support for loading certificate chains
4026  733791 GSettings: delay backend subscription
4027  736286 Clarify g_file_replace behavior with etags
4028  736620 GQueue: accept NULL sibling for insert_before() and insert_after()
4029  737150 GLib-GIO-WARNING **: Failed to parse translated string 'visible-name...
4030  737160 unhelpful error message
4031  738259 GDBusInterfaceVTable: clarify memory handling for the method() virt...
4032  738551 'interface' variable conflicts with Windows defines
4033  738633 Need to disable SSLv3 in glib-networking
4034  740157 <app> --help doesn't work even when options were added
4035  740309 Fix docs in g_strfreev
4036  740413 Fix the GSettings Registry Backend 
4037
4038 * Translation updates:
4039  Norwegian bokmål
4040
4041
4042 Overview of changes in GLib 2.43.0
4043 ==================================
4044
4045 * GObject gained a debug option to provide instance counts. To use it,
4046   set GOBJECT_DEBUG=instance-count and call g_type_get_instance_count().
4047
4048 * GOption now has a strict POSIX mode in which it stops parsing arguments
4049   as soon as a non-option argument is encountered.
4050
4051 * Bugs fixed:
4052  354457 Feature Proposal: Per-Type Statistics for Instantiable GTypes
4053  695082 g_hash_table_remove_all is not save against a call to g_hash_table_remove
4054  723160 GOption: add strict posix mode
4055  728256 gcredentials: add NetBSD support
4056  729739 tlscertificate: add support for loading certificate chains
4057  733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
4058  736273 gdesktopappinfo: Use symbolic names in the code
4059  736284 Keep only one list of signal emissions
4060  736806 gtask: Fix reference count loop causing leaks
4061  736914 Docs: various fixes and improvements
4062  737143 Include <stdint.h> in glib/valgrind.h
4063  737259 gcancellable: Clarify that GSources hold references to GCancellables
4064  737338 gmain: Unref child sources when finalising a GSource
4065  737446 tests: Fix some minor leaks in the unit tests
4066  737451 Provide api to read_all_async
4067  737741 g_datalist_id_get_data assertion fails for non-existant keys
4068  737869 GApplication command line handling breaks --help
4069  738170 g_byte_array_new_take() doesn't initialize array->alloc
4070  738197 g_cond_timed_wait() doesn't time out on Mac OS X
4071  738374 gfile: g_file_equal (x, x) is TRUE
4072  738675 GSubprocessLauncher is missing some data on the docs 
4073
4074 * Translation updates:
4075  Bengali (India)
4076  Bulgarian
4077  Gujarati
4078  Italian
4079  Telugu
4080
4081
4082 Overview of changes in GLib 2.42.0
4083 ===================================
4084
4085 All changes in this release are trivial in nature.
4086
4087  - introspection warning fixes
4088
4089  - g_application_add_main_option now uses an enum instead of an 'int'
4090    for the type of a parameter
4091
4092  - added a G_OPTION_FLAG_NONE so that people don't need to use 0
4093
4094  - gresource: Use GError in more places
4095
4096  - gresource commandline tool: improve extraction from multiple sections
4097
4098  - GSource now takes the context lock (if any) in g_source_set_name()
4099
4100  - new documentation to clarify the use of some APIs related to
4101    GVariant, GSource, GApplication
4102
4103  - other minor updates to docs
4104
4105 * Bugs fixed
4106  736683 Thread safety issues with g_main_context_find_source_by_id
4107  736975 [patch] please document that GVariant serialization needs an
4108         out-of-band length field
4109
4110 * Translation updates
4111  Danish
4112  Hindi
4113  Marathi
4114  Punjabi
4115  Serbian
4116  Simplified Chinese
4117
4118 Overview of changes in GLib 2.41.5
4119 ==================================
4120
4121 * Bug fixes:
4122  735819 single native credential struct used for two purposes
4123  735915 glib-building.html uses --enable-gcov instead of --enable-coverage
4124  736350 GDesktopAppInfo: avoid polling on missing desktop dirs
4125  736351 Don't use issetugid() on Android
4126         Fix the default application logic in GDesktopAppInfo
4127  736458 Only use rand_s() when targetting Visual Studio >= 2005
4128
4129 * Translation updates
4130  Galician
4131  Hungarian
4132  Indonesian
4133  Kannada
4134  Latvian
4135  Polish
4136  Russian
4137  Slovenian
4138  Tamil
4139
4140
4141 Overview of changes in GLib 2.41.4
4142 ==================================
4143
4144 * GApplication now has binding-friendly API to handle
4145   commandline options: g_application_add_main_option
4146
4147 * G_GNUC_BEGIN_IGNORE_DEPRECATIONS works with clang
4148
4149 * Bugs fixed:
4150  583330 poll list of mounted file systems (no mtab support)
4151  727455 Command line option parsing from bindings
4152  734126 add G_GNUC_BEGIN_IGNORE_DEPRECATIONS macro for clang
4153  735179 gsocketclient: Handle cancellation between CONNECTING...
4154  735297 Docs claim that GThread struct is deprecated 
4155
4156 * Translation updates:
4157   Assamese
4158   Catalan
4159   Catalan (Valencian)
4160   Czech
4161   French
4162   German
4163   Greek
4164   Hebrew
4165   Korean
4166   Oriya
4167   Traditional Chinese
4168
4169
4170 Overview of changes in GLib 2.41.3
4171 ==================================
4172
4173 * g_clear_pointer and g_clear_object no longer use atomics
4174
4175 * Bugs fixed:
4176  711547 win32: silence some build warnings
4177  725511 Compiled resource files should have the same /-separators everywhere
4178  725513 Some tests fail to build on W32
4179  725514 W32: gfileutils does not preserve errno correctly
4180  725515 test-printf fails on W32
4181  728730 gsocket: Set SO_NOSIGPIPE on sockets on Darwin
4182  729703 Leaks a GError in g_file_move
4183  730932 statically assert that reasonable assumptions about enums are true
4184  732085 gtype: Fast-path for g_type_is_a
4185  732754 GDBusMessage: optimise (de)serialisation of fixed arrays
4186  733345 ginetaddress: Add a precondition to g_inet_address_new_from_string()
4187  733576 Patches from static analysis run on 2.40
4188  733715 glib's configure.ac makes accidentally use of nested function
4189  733934 win32: improve the package installation dir lookup
4190  733960 W32: spawning a console process creates a new window when stdout...
4191  733969 Remove atomic aspects of g_clear_pointer/object
4192  733982 Do not crash when checking whether an instance type is of a given...
4193  734035 gedit hangs up when there's no GSettings key in the registry 
4194
4195 * Translation updates:
4196  Basque
4197  Brazilian Portuguese
4198  Lithuanian
4199  Slovenian
4200  Spanish
4201
4202
4203 Overview of changes in GLib 2.41.2
4204 ==================================
4205
4206 * The Unicode support has been updated to version 7.0
4207   of the Unicode standard
4208
4209 * GNotification now supports priorities for notifications
4210
4211 * GCredentials has gained NetBSD support
4212
4213 * GMutex now uses a faster, native implementation on Linux
4214
4215 * Bugs fixed:
4216  699132 Pluggable event loop backends
4217  720708 g_assert_warning(): number of arguments doesn't match for...
4218  722092 Add GtkApplication resources support
4219  724986 Change gio/data-to-c.pl to /usr/bin/env perl.
4220  727974 Fix up failure-to-see-expected-message logging
4221  728256 gcredentials: add NetBSD support
4222  728401 GDateTime: Add guards to g_date_time_new()
4223  729825 Formatting of g_alloca documentation
4224  729914 instead of DEBUG_CODE and IF_DEBUG, provide a common macro...
4225  730293 clang++-3.4: error: 'register' storage class specifier is ...
4226  731339 giochannel: avoid setting uninitialised length
4227  731424 #ifdef spaghetti for load_user_special_dirs() implementations
4228  731623 GNotification: add support for a priority setting
4229  731929 update tables to unicode 7.0.0
4230  731950 gvalue: New g_value_from_instance
4231  731986 GLib: implement GMutex natively on Linux
4232  732184 GObject: warn on use of deprecated properties
4233  732357 Docs: various fixes and improvements
4234  732429 GActionEntry: improve documentation
4235  732465 Fix build on x64 Visual C++ builds
4236  732704 Docs: various fixes and improvements
4237  732739 ginetsocketaddress: Explicitly initialise flags for getaddr...
4238  732754 GDBusMessage: optimise (de)serialisation of fixed arrays
4239  732984 g_object_ref(NULL) in g_dbus_object_manager_client_finalize
4240  733084 Typos in g_bytes_hash() and g_time_zone_find_interval() docs
4241  733146 spawn helper does not use correctly the parameters 
4242
4243 * Translation updates:
4244  Lithuanian
4245
4246
4247 Overview of changes in GLib 2.41.1
4248 ==================================
4249
4250 * Bug fixes:
4251  697229 Custom Interface implementations will be broken with glib 2.37/38
4252  698614 GObject: prevent installing properties after init
4253  729269 gvariant: Fix confusion between type and format strings in the docs
4254  730198 broken valgrind.h leads to crashes in g_type_free_instance on mingw64
4255  730807 GMutex performance regression
4256  730963 gconvert: mention that the g_convert len should be in bytes
4257  730984 Faster instance type check for fundamentals
4258  731050 <structname> tags appear in documentation
4259  731200 unconditional 'notify' during g_object_set() is problematic
4260  731335 gtype: guard uses of new fundamental type check
4261  731341 gparam: change value of G_PARAM_EXPLICIT_NOTIFY
4262  731366 run-assert-msg-test.sh gdb leaves assert-msg-test zombie
4263  731425 giomodule protects function-call with different token than function...
4264  731513 clang: build failure: implicit declaration of function '__atomic_load_4'
4265  731584 gbookmarkfile: Cleaner error handling code to pacify static analysis
4266  731657 Prevent an invalid @CARBON_LIBS@ from appearing in the .pc files
4267  731979 docs: Correct param to interface's default_init()
4268  731996 Return folder as icon for directories
4269  732002 gwakeup: Clarify buffer sizing in g_wakeup_signal()
4270  732005 Remove unused assignments
4271  732019 gtestdbus: Don’t close stdout for dbus-daemon
4272  732068 gsignal: Add an example to the g_signal_connect_swapped() documentation
4273  732081 gsocket: Document that g_socket_create_source() holds a socket ref
4274  732107 gsocketlistener: Reconsider closing sockets on listener finalisation
4275
4276
4277 Overview of changes in GLib 2.41.0
4278 ===================================
4279
4280 * Many bugfixes found by static analysis, including potential fd leaks
4281   and NULL pointer dereferences.
4282
4283 * Increased use of (nullable) attribute on out values and return types
4284   now that it is supported (mostly from porting Vala metadata).
4285
4286 * use XDG_CURRENT_DESKTOP for OnlyShowIn/NotShowIn handling of desktop
4287   files, deprecating g_desktop_app_info_set_desktop_env()
4288
4289 * add support for g_desktop_app_info_get_implementations() to find
4290   desktop files that have an Implements= line for a given interface
4291
4292 * GHmac has gained SHA-512 support
4293
4294 * support the new mimeapps specification (most notably, moving the
4295   assoications/defaults configuration to ~/.config/mimeapps.list).
4296
4297 * libgobject is now linked -Wl,-z,nodelete when possible to avoid errors
4298   when gobject is used from a module for a program that does not itself
4299   use gobject and that module is unloaded/reloaded
4300
4301 * ... and many other bug fixes.
4302
4303  623552 glib warns if backtrace.py is not present
4304  667468 glib-2.30.2: ipv6 tests fail when no ipv6 support is available
4305  668152 -framework Carbon linker flag not passed to pkg-config .pc files
4306  707298 libgobject should be linked with -Wl,-z,nodelete
4307  712391 Add g_desktop_app_info_get_implementors()
4308  722723 Infinite recursion when calling g_io_stream_close_async() from libsoup
4309  724741 hmac: Fix support for SHA-512 in GHmac
4310  726040 networkaddress: fix parsing of uri with @ after authority
4311  726318 gio: Document that GSocket is not thread safe
4312  726611 socketclient: Leak on cancellation
4313  726872 gio: Add names to idles and timeouts
4314  727119 wrong IN6_IS_ADDR_MC_LINKLOCAL usage break android build
4315  727123 GNotification: Some small documentation fixes
4316  727320 docs: Remove escaping '\' from literals
4317  727551 Check use_count of GApplication in g_application_release()
4318  727559 g_file_copy: Don't set GError when we intend to ignore errors
4319  727692 gio/gtlscertificate.c -- broken PEM-file processing (affects local CA root stores, for starters)
4320  727890 soup_content_sniffer_real_sniff segfault
4321  727900 gio: Add newer dbus UnknownXxxx and PropertyReadOnly errors
4322  727928 gapplication-tool fixes
4323  727939 INTLLIBS are always appended in configure checks
4324  727964 g_io_extension_point_get_extension_by_name: Warn, but don't crash, for NULL inputs
4325  728040 Implement new mimeapps spec
4326  728066 Deal with startup notify id being NULL
4327  728280 platform_get_argv0: fix sysctl(3) use on OpenBSD
4328  728285 docs: Use markdown links in .h files, too
4329  728350 gaction: Minor clarifications in the GAction documentation
4330  728380 docs: Remove <!-- --> comment before plural s
4331  728565 gfile: More explicitly document the context for GFileProgressCallback
4332  728983 Docs: various fixes and improvements
4333  729167 gobject: Document that classes/objects/interfaces are zero-filled
4334  729563 GOption: A short option's value is included in G_OPTION_REMAINING
4335  729813 AppInfo: use XDG_CURRENT_DESKTOP for OnlyShowIn
4336  729875 gio: cleanup gdbusmessage.c file
4337  730045 Avoid overeager warning about deprecated properties
4338  730189 gtestutils: Fix a very unlikely FD leak in test fork handling
4339  730190 gsocket: Add missing preconditions to g_socket_send_message()
4340  730277 gthread: Fix use of a local variable after it went out of scope
4341  730278 gsubprocess: Add a missing va_end() call
4342  730295 gdbus-tool: Remove dead variables
4343  730493 Port annotations from Vala metadata
4344
4345 Translations updated:
4346  Basque
4347  Brazilian Portuguese
4348  Catalan
4349  Czech
4350  Danish
4351  Greek
4352  Hebrew
4353  Hungarian
4354  Punjabi
4355  Serbian
4356  Slovenian
4357  Spanish
4358  Ukrainian
4359
4360 Overview of changes from GLib 2.39.91 to GLib 2.39.92
4361 =====================================================
4362
4363 This is a release candidate for 2.40.0.
4364
4365 There are no major changes in this release, but a few serious bugs have
4366 been fixed.
4367
4368 * Bugs fixed:
4369  710367 Crash in g_settings_backend_dispatch_signal()
4370  723899 G_DEFINE_TYPE() causes compiler warnings with clang due to foo_get_instance_private
4371  724859 Let the test_wait_until() test also run on non-*nix
4372  724916 gio unmount code makes XFCE's Thunar crash
4373  725651 GSubprocessLauncher: Does not copy the calling process environment.
4374  725656 Unskip GVariantDict
4375  725891 gio tests: add codegen to BUILT_SOURCES
4376  726046 Recent commit created symbolic icons issues
4377
4378 * Translations:
4379  Chinese
4380  French
4381  Korean
4382  Latvian
4383  Norwegian bokmål
4384  Portuguese
4385  Russian
4386  Traditional Chinese
4387
4388 Overview of changes from GLib 2.39.90 to GLib 2.39.91
4389 =====================================================
4390
4391 This release introduces a hard dependency on present and functioning
4392 clock_gettime() and CLOCK_MONOTONIC.  It also introduces a dependency on
4393 pthread_condattr_setclock() unless your system happens to have
4394 pthread_cond_timedwait_relative_np() (as do Mac OS and Android).  This
4395 release is known to be broken with at least GNU/Hurd, pending addition
4396 of working pthread_condattr_setclock(CLOCK_MONOTONIC) there.
4397
4398 New API: g_str_to_ascii()
4399
4400 * Fixed bugs:
4401  670144 unconditional use of CLOCK_MONOTONIC is broken
4402  673607 invalid assumption in g_cond_wait_until() / g_get_monotonic_time() API
4403  710142 Add more impressive transliteration to GLib
4404  722360 make check fails
4405  722604 (partial) Various tests are failing with 2.39.3
4406  723316 g_hash_table_iter_remove() should be explicit whether or not it is safe while iterating the table
4407  724609 Fix build of GIO on Windows
4408  724687 gmain: make monotonic time really monotonic, everywhere
4409  724706 gsource: document priority of child sources
4410  724707 some GSocket source improvements
4411  724839 GMainContext: some source ID cleanups
4412  724858 Dist gtranslit-data.h
4413  724994 Missing icons for bookmarks in file chooser
4414  725023 Can no longer find apps by executable/desktop file name
4415
4416 * Translations:
4417  Lithuanian
4418  Polish
4419  Thai
4420
4421 Overview of changes from GLib 2.39.4 to GLib 2.39.90
4422 ====================================================
4423
4424 * Fixed bugs:
4425  625408 make GVariant dictionaries more useful
4426  660809 document that if you fail a precondition check, documented guarantees do not apply
4427  661576 fix handling of constructors that destroy half-constructed objects
4428  679957 g_inet_address_new_from_string is not able to handle dots and numbers IPv4 addresses
4429  712837 gvariant: Document the need to cast varargs when constructing GVariants
4430  721458 g_simple_async_result_is_valid has a NULL check for the wrong source_tag
4431  721977 improve split handling of command line arguments
4432  722033 win32: fixup lib.exe invocation
4433  723422 Fix g_socket_get_available() with TCP on Windows
4434  723616 gio/tests: fix race when generating code
4435  724001 gsubprocess: Fix a broken link in the documentation
4436  724124 glib/tests/collate.c fails if no en_US locale
4437  724126 intermittent GApplication test failure: /gapplication/local-actions: lines of output permuted
4438  724233 gsocketservice: Note g_socket_listener_close() for closing open sockets
4439  724239 soup_session_queue_message - Connection terminated unexpectedly
4440  724278 gsocketconnection: Document closing connections with g_io_stream_close()
4441  724330 configure.ac: tweak inotify check
4442  724385 gtestutils: make the new assert messages more detailed
4443  724401 gsubprocess: Mutex leak
4444  724417 glib master build broken on OpenBSD
4445  724434 Build failure in gio/gresolver.c
4446
4447 * Updated translations:
4448  Brazilian Portuguese
4449  Galician
4450  Indonesian
4451  Italian
4452  Kannada
4453  Norwegian bokmål
4454  Spanish
4455  Thai
4456
4457 Overview of changes from GLib 2.39.3 to GLib 2.39.4
4458 ===================================================
4459
4460 * Fixed Bugs:
4461  139699 Correction for g_main_context_unref()
4462  583036 g_strchomp and g_strchug are not declared const
4463  683388 improve documentation for application developers
4464  685204 ./configure fails to add the '-g' flag to CFLAGS
4465  688406 GStaticMutex broke ABI on at least ARM EABI during 2.31.x
4466  693299 cannot compile on Solaris: error in gbitlock.c
4467  707111 Clarify type transformability and compatibility
4468  711547 win32: silence some build warnings
4469  719344 Fix the various test programs (or GLib itself) on Windows
4470  722025 cleanup/clarify command line argument encoding on Windows
4471  722323 remove unused include 'gslist.h' in 'gbookmarkfile.c'
4472  722326 gstringchunk: Use g_slist_free_full() where possible
4473  722357 gio: fix small memory leak on local xattr
4474  722436 Adjust doc to Makefile.decl renaming
4475  722503 GSimpleAction: add default activate handler
4476  722526 glib/deprecated/gthread.h error on FreeBSD
4477  722591 [documentation] broken link to GtkAction from GAction.html
4478  722973 Broken example in GApplication reference
4479  723048 'network-access' test can fail to guess interface index
4480  723360 gmain: Note that g_source_destroy() can be called multiple times 
4481
4482 * Updated Translations:
4483  Assamese
4484  Tamil
4485  Traditional Chinese
4486
4487
4488 Overview of changes from GLib 2.39.2 to GLib 2.39.3
4489 ===================================================
4490
4491 No major changes this release -- mostly lots of small fixes and
4492 improvements in test coverage.
4493
4494  * fix a crasher in code from gdbus-codegen
4495
4496  * improvements to gobject gdb helper script
4497
4498  * portability:
4499
4500    - fix a deadlock issue with kqueue on FreeBSD
4501
4502    - work around a quirk in the sunstudio compiler
4503
4504    - rename a variable to avoid clashing with a macro definition of
4505      'environ' on some platforms (like mingw)
4506
4507    - use POSIX-specified <poll.h> over <sys/poll.h>
4508
4509    - many improvements to Visual Studio projects and and some build
4510      fixes for Windows
4511
4512  * tests
4513    - a very large number of improvements in test coverage
4514
4515    - don't report skipped tests as failures
4516
4517    - return 77 if we skip all tests in an executable
4518
4519    - improve gtest documentation and fix some minor issues
4520
4521    - fix g_test_trap_reached_timeout() return value
4522
4523    - remove some dead code uncovered during test coverage expansion
4524
4525    - Use tap mode for installed tests too, when using tap
4526
4527  * fix races in unix signal handling
4528
4529  * make our GVariant-based commandline tools (glib-compile-schemas,
4530    gdbus, gapplication) print out GVariant parse errors in context
4531
4532  * GApplication now has a --gapplication-service command line switch to
4533    turn any GApplication into a service
4534
4535  * improve compatibility of GApplication and GOptionContext
4536
4537  * fix gsettings.m4 wrt. builddir != srcdir with non-recursive make
4538
4539  * use a directory monitor in GKeyfileSettingsBackend
4540
4541  * improve robustness of some GIcon classes
4542
4543 Bugs fixed
4544  141251  poll(2) is in <poll.h>, not <sys/poll.h> per SUS standard
4545  613732  [PATCH] gobject.py: Don't install frame filters when GDB does not support them
4546  708212  g_variant_parser_error_get_quark() has unexpected name.
4547  710965  GApplication: add --gapplication-service switch
4548  711090  periodic failure of spawn-multithreaded async testcase
4549  712171  gsettings.m4: @GSETTINGS_RULES@: Support srcdir != builddir with nonrecursive make
4550  712630  Revert "gsettings m4: check for .xml in src/builddir"
4551  715028  GVariant: add way to print context of parse errors
4552  719344  Fix the various test programs (or GLib itself) on Windows
4553  720263  gtestutils: skipping a test should count as success, not failure
4554  720539  gdbus-codegen: Fix crasher in goa-using apps
4555  720635  Make gdb pretty-printers compatible with Python3
4556  720891  g_settings_get_child does not inherit the backend
4557  721034  glib 2.38.2 cannot be compiled with SunStudio Compiler under Solaris
4558  721059  g_subprocess_launcher_set_environ vs "environ"
4559  721074  kqueue: deadlock
4560  721087  Missing -lselinux in pkg-config --libs --static gio-2.0
4561  721324  Error message is printed to stdout
4562  721624  Regression in GTest framework reorders existing test cases
4563  721625  backwards NEWS entry about g_source_remove change
4564  721796  insufficient escaping in g_dbus_annotation_info_generate_xml()
4565  721947  Improve GApplication ⇔ GOptionContext compatibility 
4566
4567 Translations updated:
4568  Brazilian Portuguese
4569  Galician
4570  Greek
4571  Hebrew
4572
4573 Overview of changes from GLib 2.39.1 to GLib 2.39.2
4574 ===================================================
4575
4576 * Portability
4577
4578   - Remove alleged support for OS/2
4579
4580   - Remove alleged support for BeOS
4581
4582   - Remove alleged support for last-millennium Unixes
4583
4584   - Require C90 compliance
4585
4586   - Require POSIX.1 (1990) compliance on Unix
4587
4588   - Require GNU make
4589
4590 * Bugs fixed:
4591  113075 support "nonnull" attribute
4592  159528 g_ptr_array_remove_range()
4593  307947 The check for growing stack pointer in configure can fail
4594  607016 docs should mention property notification order
4595  671557 Fun with integers and g_key_file_load_from_data()
4596  676761 don't use g_critical for a runtime error
4597  690525 g_file_replace_contents_async doesn't copy its @conten...
4598  691608 Support compilation with clang 3.2
4599  697585 g_variant_builder_add's doc example is leaking
4600  697828 g_hash_table_add() should return a boolean
4601  702862 gdbus-codegen : look for deps in default install path
4602  703522 Reference leak in GvariantBuilder documentation
4603  705902 g_get_current_dir() should check PWD env var and retur...
4604  708274 Added GObject Introspection annotations to genums.c
4605  710519 Portability schmortability
4606  710741 some mainloop instrumentation
4607  710983 Test failures on powerpc
4608  711047 Enable the build of the various test programs on Windo...
4609  711051 Add basic test for the GNotification gtk backend
4610  711088 gbacktrace: Don't close stderr when running gdb
4611  711103 gmessages: Add g_info macro for G_LOG_LEVEL_INFO
4612  711178 appinfo test problems
4613  711546 utf8: report allocation error
4614  711640 gdesktopappinfo: Rank Keywords matches higher than Gen...
4615  711751 Fix memory leaks in libglib tests
4616  711753 gthread-posix: Don't use gslice allocated GRecMutex
4617  711796 glib-tap.mk: fix to actually use the TAP driver
4618  711800 fix g_test_set_nonfatal_assertions()
4619  711801 giomodule: Allow overriding source directory gio modul...
4620  711805 gdbus-connection: Fix race condition in test
4621  711806 gtestdbus: Don't destroy GSource twice
4622  711807 gtestdbus: Properly close server connections
4623  711871 Broken and misleading configure check for growing stack
4624  712136 'O_CLOEXEC' undeclared (first use in this function)
4625  712148 Add system bus support to GTestDBus
4626  712171 gsettings.m4: @GSETTINGS_RULES@: Support srcdir != bui...
4627  712314 AIX port: splice(); major()/minor(); libtool library order
4628  712315 GSettings: More docs for deprecated _list_schemas()
4629  712393 gobject: Box GMappedFile
4630  712547 GSocketClient "event" not useful for determining resol...
4631  715164 Clang static analysis fixes
4632  719395 GPtrArray add g_ptr_array_insert
4633  719402 Crashes when startup
4634  719472 leak in generated proxy-side property-setter
4635  719687 fix or remove g_trap_object_ref
4636  719809 Signal connection ids are always > 0 if successful
4637  719837 gdbus-connection: Work around race in connection tests
4638  719884 Fix documentation typos in GTask and GCancellable examples
4639  719979 g_settings_get: check validity of format string
4640  720080 Truncating a GMemoryOutputStream to a larger size cause...
4641  720210 gdataset: Remove unused define
4642  720236 Allow clean simple use of g_test_trap_subprocess() 
4643
4644 * Translations updates:
4645  Italian
4646  Lithuanian
4647  Simplified Chinese
4648  Spanish
4649
4650
4651 Overview of changes from GLib 2.39.0 to GLib 2.39.1
4652 ====================================================
4653
4654  * GSettings fixes/improvements
4655
4656    - GSettingsSchema API is now more powerful and consistent
4657
4658    - new GSettingsSchemaKey API allows accessing metadata for keys:
4659      type, default value, range and the long-awaited support for summary
4660      and description
4661
4662    - GSettingsSchemaSource gains support for listing schemas within a
4663      source.  Deprecate the global API that did this for the default
4664      source.
4665
4666    - 'gsettings list-schemas' now works properly with --schemadir
4667
4668    - deprecate a bunch of now-redundant functionality on GSettings
4669
4670    - add API to GSettings for getting the default value of a key (as set
4671      by the sysadmin)
4672
4673    - add API to GSettings for determining if the user has assigned a
4674      particular value to a key (ie: we are not just reading the default)
4675
4676    - ignore qualified tags and attributes appearing in schema files
4677
4678  * Applications/Actions
4679
4680    - make GSimpleAction a bit more strict with respect to state changes
4681      that would violate the interface (ie: by changing the state type
4682      after construction)
4683
4684    - throw an error when attempting to 'Describe' a non-existent action
4685      via D-Bus instead of returning a bogus description
4686
4687    - throw an error when attempting to invoke unsupported methods on an
4688      Application (eg: 'Open' on an app that doesn't HANDLES_OPEN)
4689      instead of emitting a g_critical() in context of the app (which is
4690      not itself at fault for the errant call)
4691
4692  * Appinfo
4693
4694    - substantially rework GDesktopAppInfo to reduce the amount of disk
4695      accesses that are performed in common situations
4696
4697    - add a new class: GAppInfoMonitor for discovering when applications
4698      are installed/removed
4699
4700    - add a new g_desktop_app_info_search() API for searching for
4701      installed applications by name, keywords, etc.
4702
4703  * GMarkup: add new G_MARKUP_IGNORE_QUALIFIED flag for skipping over
4704    "qualified" tags and attributes (those with a colon in the name, such
4705    as 'my:tag')
4706
4707  * GDBus
4708
4709    - ignore qualified tags, as above
4710
4711    - GTestDBus: unset all D-Bus addresses (such as STARTER) to ensure
4712      that test programs don't pick them up
4713
4714    - add new session_bus_run() convenience in the tests and use it
4715
4716  * GRand: use real random data as a seed on win32 and use the
4717    timestamp/pid/uid fallback only on UNIX machines where we can't open
4718    '/dev/urandom'.  This may cause issues with older mingw32 releases
4719    due to a missing prototype for the rand_s() API.
4720
4721  * Many win32 (and particularly MSVC) portability fixes.  Many
4722    additional tests are now runnable when building with MSVC.
4723
4724  * Due to early testing of the (soon to land) GCleanup framework, a very
4725    large number of memory errors have been found and fixed (mostly in
4726    the testcases, but some in glib itself).
4727
4728  * GIO:
4729
4730    - some more seeking cleanups: particularly on GLocalFileInputStream
4731
4732    - don't leave a .trashinfo file around if trashing a file fails
4733
4734    - Add a request_certificate virtual method to GTlsInteraction
4735
4736 Translations updated:
4737  Assamese
4738  Galician
4739  Greek
4740  Spanish
4741  Tamil
4742
4743 Bugs fixed:
4744  635641 schema compiler should ignore unknown attributes
4745  637257 g_tls_client_connection_gnutls_retrieve_function needs to be able to block
4746  637956 GKeyfileSettingsBackend should ignore file deletions
4747  645453 keys from base schema missing from extended schema
4748  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes in XML files
4749  668232 Unable to get description and summary for a key
4750  668233 Unable to determine if a key is set to the default / what the default value is
4751  680838 Need g_settings_schema_source_get_schemas()
4752  683017 API for accessing GSettings Schema metadata
4753  687185 org.gtk.Actions.Describe doesn't return an error for non-existing action names
4754  687202 If trashing fails, the ".trashinfo" file is not removed
4755  695558 The --schemadir option has no effect
4756  696424 GSimpleAction.state property is not right
4757  697348 GTestDBus should unset DBUS_STARTER_ADDRESS, DBUS_STARTER_BUS_TYPE
4758  710133 Emit backward compatible code with gdbus-codegen
4759  710691 glib-networking: locking during implicit handshake
4760  710738 GRand has lame fallback for Windows
4761  710859 Typo in gio docs
4762  710885 Two fixes for GApplication
4763  710962 error: 'F_DUPFD_CLOEXEC' undeclared (first use in this function)
4764  710964 Add g_hash_table_get_key_array()
4765  710991 test: g_debug messages shouldn't affect g_assert_expected_messages
4766  711016 g_settings_list_keys () segfaults for empty schemas
4767  711048 glocalfileinputstream.c allows skip past end of file
4768  711049 Fix build of GLib-GIO 2.39.x on Windows/MSVC
4769  711064 Adding child source to blocked source can cause a segfault
4770  711070 Copying a symlink over another one segfaults
4771  711099 gapplication test failure
4772  711520 GDesktopAppInfo: allow more than one level of legacy folder prefixes
4773  711556 Add GAppInfoMonitor
4774  711557 Add g_desktop_app_info_search()
4775  711600 trivial portability fix
4776  711632 The desktop-app-info test fails during make check
4777  711754 gmain: Fix use of uninitialized memory in sigaction structure
4778  711755 private: Use threading primitives correctly in private test
4779  711756 gthreadpool: Don't pass bad data to GThreadPool sorter
4780  711768 Fix memory leaks in libgmodule tests
4781  711775 utils: Don't free memory owned by glib in test
4782  711782 boxed: Fix double free in boxed unit tests
4783  711803 gsubprocess: Fix a number of leaks and a segfault
4784  711808 gtestdbus: Fix leak of GMainLoop 
4785
4786 Overview of changes from GLib 2.38.0 to GLib 2.39.0
4787 ====================================================
4788
4789  * prep for the 2.40 series (version macros, docs index, etc.)
4790
4791  * GNotification
4792
4793    - new API for sending persistent notifications via the desktop shell
4794
4795    - notifications persist when the application has quit and clicking on
4796      them can restart the application with an action (via
4797      DBusActivatable)
4798
4799  * GSubprocess
4800
4801    - new API for launching subprocesses
4802
4803    - nice GIO integration like async functions, cancellability, etc.
4804
4805    - a convenient communicate() API inspired by the same API in Python
4806
4807    - related: the gspawn API now has a CLOEXEC flag for the created
4808      pipes for stdin/stdout/stderr
4809
4810  * New gapplication(1) commandline tool
4811
4812    - intended to be used with DBusActivatable apps
4813
4814    - can be used for launching apps, opening files, invoking application
4815      actions and listing apps and actions
4816
4817    - bash tab completion is supported
4818
4819  * GDesktopAppInfo changes:
4820
4821    - g_file_get_path() can implicitly cause a FUSE mount so don't call
4822      it until we know we need it (for an app that doesn't support URIs)
4823
4824    - don't crash when trying to load from a keyfile with
4825      DBusActivatable=true
4826
4827    - remove some dead code, refactor the search path handling a bit and
4828      do a large-scale whitespace cleanup (prep work for the pending
4829      desktop file index)
4830
4831  * File monitors
4832
4833    - fix broken handling of mount point monitoring
4834
4835    - remove some strange use of GObject::constructor() from the base
4836      class and inotify backend
4837
4838    - fix GFileMonitor to work in the non-default main context even when
4839      the main context is not running (or is blocked)
4840
4841    - add internal private API for easily creating a file monitor in the
4842      GLib worker thread
4843
4844  * GSettings
4845
4846    - g_settings_list_children: only list viable schemas.  This fixes a
4847      longstanding issue where 'gsettings list-recursively' will crash
4848      when there are invalid schemas installed
4849
4850    - don't accept invalid paths on g_settings_new_with_path, etc.
4851
4852  * GIO
4853
4854    - GFile now has a thumbnail::is-valid attribute to check if the
4855      thumbnail in thumbnail::path needs to be regenerated
4856
4857    - GDBusProxy now has a flag to control autostarting of services at
4858      construction time
4859
4860    - for GSeekable, properly introduce the concept of "resizable" vs.
4861      "fixed-sized" streams in the docs, explaining the expected
4862      semantics of the interface in each case
4863
4864    - fix some cases in GMemoryOutputStream that were violating the above
4865      expectations (which may cause a slight API incompatibility)
4866
4867    - clean up GCredentials code and add support for Hurd and Solaris
4868
4869    - improve splicing by using different codepaths for the case where we
4870      have real _read_async() and _write_async() implementations on the
4871      stream vs. the case where they are internally emulated (via
4872      dispatching the sync variant of the call in a thread)
4873
4874  * GKeyFile
4875
4876    - fix a leak in g_key_file_get_(u)int64 when we fail to parse the
4877      value as an integer
4878
4879    - add long-requested API g_key_file_save_to_file()
4880
4881  * Portability improvements
4882
4883    - avoid using O_DIRECTORY on platforms that don't have it
4884
4885    - be careful about systems that define SOCK_CLOEXEC but don't
4886      actually support it (like Hurd)
4887
4888    - only use SA_RESTART if it exists
4889
4890  * Other small API changes/additions
4891
4892    - a pair of functions to support matching strings for the type of
4893      search functionality that you'd expect to have with things like
4894      GtkSearchBar.  This will also be used by the desktop file index.
4895
4896    - g_str_is_ascii() with obvious purpose
4897
4898    - g_test_expect_message() no longer appears to allow you to catch
4899      G_LOG_ERROR messages
4900
4901  * GMainContext/GSource
4902
4903    - fix handling of overflowing the 'next source id' counter
4904
4905    - g_source_remove() will now throw a critical in the case that you
4906      try to remove a non-existent source.  We expect that there is some
4907      code in the wild that will fall afoul of this new critical but
4908      considering that we now reuse source IDs, this code is already
4909      broken and should probably be fixed.
4910
4911    - simplify handling of the 'current dispatching source' to not
4912      require use of a linked list
4913
4914  * GObject
4915
4916    - the long-broken (and leaky) pattern of destroying a just-allocated
4917      object from inside of a custom GObject::constructor is now
4918      officially completely illegal and will abort the program
4919
4920  * Unicode: update to 6.3.0
4921
4922  * Bug fixes
4923
4924    - g_file_copy() now falls back to pathname queryinfo.  This should
4925      clear up the bugs with copying from some GVfs backends (afp,
4926      gphoto, archive, at least).
4927
4928    - fix an out-of-bounds read in the xdgmime code
4929
4930    - fix a typo in the /org/freedesktop/DBus path on the object manager
4931      client
4932
4933    - skip emitting path_namespace='/' in match rules in order to
4934      workaround a bug in the D-Bus daemon and fix our own implementation
4935      (which shared exactly the same bug)
4936
4937    - fix crashes on precondition violations for GParamSpec constructors
4938
4939    - many other small fixups (see bug list)
4940
4941   * Many documentation improvements
4942
4943 Bugs fixed:
4944  309224 g_key_file_save_to_file missing
4945  583321 QNX: no SA_RESTART
4946  661576 fix handling of constructors that destroy half-constructed objects
4947  672102 GSubprocess class
4948  684842 Seeks on GMemoryOutputStream don't have opaque semantics
4949  688492 Add a notification API
4950  691581 g_output_stream_real_splice_async doesn't use overriden read/write_async functions
4951  702516 gfileutils: Make -Werror=format-nonliteral happy
4952  704218 New gapplication(1) tool
4953  704593 g_setenv: on some systems (BSD, OSX…), setting a variable to NULL crashes the system
4954  704882 GLocalDirectoryMonitorClass mount_notify field is useless
4955  704887 file monitoring improvements
4956  705029 Support for Solaris credentials
4957  705688 g_settings_list_children: only list viable schemas
4958  706254 Afp backend cannot copy files
4959  707887 Attempting to create GObject Property with underscore prefix segfaults
4960  708042 gapplication: don't rely on cmdline being finalized immediately
4961  708265 add support for GNU/Hurd in GLib D-Bus Library
4962  708266 fix error code checks when SOCK_CLOEXEC is defined but not supported
4963  708529 xdgmime: valgrind warns about invalid reads
4964  708677 incorrect object path 'deskop' used in gio/gdbusobjectmanagerclient.c
4965  708714 Typo in docs of GLIB_VERSION_2_40 macro.
4966  708753 gdesktopappinfo: Call g_file_get_path() on demand
4967  708793 glib build fails with clang < 3.1: error: expected ';' after top level declarator
4968  708828 GDBusProxy: add the ability to call methods on non autostarted proxies
4969  708860 glib-2.38.0 doesn't build on Solaris 10
4970  708972 gnetworking.h in tarball screws up out-of-source builds
4971  709113 [PATCH] Main loop dispatch path has needless linked list
4972  709227 Update to unicode 6.3.0
4973  709301 goutputstream: Add clear warning about short writes to _write_bytes() and async version
4974  709326 GDesktopAppInfo crashes creating a DBusActivatable app without a filename
4975  709440 Fix overloading of "source" and "target" terminology in GBinding
4976  709615 Cannot use g_test_expect_message with g_error
4977  709753 Add helpers for string matches when using GtkSearchBar-like widget
4978  709898 Expose thumbnail validity in GFile attributes
4979  709966 Remove outdated documentation
4980  709994 Minor fix for HACKERS doc to direct hackers to proper help file
4981  709995 Obsolete makefile rules
4982  710002 G_MAXUINT may be assigned as duplicate source id
4983  710313 Memory leak in g_key_file_get_(u)int64 with invalid integer values
4984  710345 [Patches] Fix some redundant-decls
4985  710496 g_locale_to/from_utf8() doc updated.
4986  710625 g_file_error_from_errno: Remove unneeded breaks
4987  710666 Frame clock related bug fixes
4988  710724 gmain: Warn when g_source_remove() fails
4989  710726 Work around D-Bus bug with path_namespace='/' match rules
4990
4991 Translations:
4992  Assamese
4993  Brazilian Portuguese
4994  Indonesian
4995  Russian
4996  Tamil
4997  Traditional Chinese
4998
4999 What's new in Glib 2.38
5000 ========================
5001
5002  * Application support
5003
5004   - GIO now provides an implementation of Desktop Actions from the
5005     desktop entry specification
5006
5007   - GApplication now implements the org.freedesktop.Application
5008     interface as per the desktop entry specification, allowing for
5009     standards-based D-Bus launching of GLib-based applications
5010
5011   - GDesktopAppInfo now supports DBusActivatable as per the desktop
5012     entry specification, allowing GLib-based applications to use D-Bus
5013     to launch other applications
5014
5015   - GApplication now has a "busy" flag that can be set on an application
5016     to allow the shell to show that it is busy
5017
5018  * GObject
5019
5020   - the private offset for a given class type is now always constant.
5021     This was done by reorganising the memory layout of instances so that
5022     the private data comes before the "official" pointer for the object
5023     (ie: at a negative offset).  Valgrind macros were added to mitigate
5024     any problems that this may have caused.
5025
5026   - a new G_DEFINE_TYPE_WITH_PRIVATE has been added along with a
5027     generated function *_get_instance_private() that can now serve as an
5028     equally-performing alternative to ->priv pointers in instances
5029     (allowing memory savings)
5030
5031   - new G_PRIVATE_FIELD, G_PRIVATE_FIELD_P and G_PRIVATE_OFFSET macros
5032     provide a convenient method of converting between named variables in
5033     private structures and their (now constant) offsets
5034
5035   - installing properties on a GObjectClass must now be done from
5036     class_init.  It is no longer valid to install them after class_init
5037     has returned.
5038
5039   - it is now possible to manually break a GObject property binding
5040     without destroying one of the objects involved
5041
5042  * Icons
5043
5044   - the requirements for implementing the GIcon interface have changed
5045     in order to make it possible to consume all implementations of GIcon
5046     with a finite number of cases
5047
5048   - a new GBytesIcon type was added for an icon represented by an
5049     in-memory binary blob in a known image format (ideally png).
5050
5051   - new APIs g_icon_serialize() and g_icon_deserialize() replace the old
5052     to/from_string APIs and will always work, irrespective of which
5053     types have been initialised in the calling process, allowing for a
5054     serialised GdkPixbuf to be deserialised in a process that doesn't
5055     have GdkPixbuf
5056
5057   - support for icons has been added to GMenuModel using the new APIs
5058
5059  * Actions and menus
5060
5061   - GPropertyAction provides a convenient way of creating a stateful
5062     property corresponding to a property on a GObject, such as the
5063     "visible-child-name" property of a GtkStack
5064
5065   - new API g_menu_remove_all()
5066
5067   - we now have established rules about what is a "valid" action name
5068     and an API to check them
5069
5070   - a new API for converting detailed action names to and from the
5071     split-out name and parameter value (as GVariant)
5072
5073   - for backwards compatibility, invalid action names can still be used
5074     with most functions, but this is not recommended
5075
5076  * Other GIO
5077
5078   - GDBus now supports services that wish to handle some of all
5079     properties on an interface asynchronously, without requiring the
5080     service to reimplement the entire org.freedesktop.DBus.Properties
5081     interface
5082
5083   - GFile now has a new _measure_disk_usage() (and async) API for
5084     recursively determining the amount of disk space used by a
5085     particular directory (akin to 'du').
5086
5087   - asynchronous version of g_file_trash() and g_file_make_directory()
5088     have been added
5089
5090  * Other new API
5091
5092   - GRegex has a new function to query the maximum lookbehind length to
5093     allow for regexp matching on streams
5094
5095   - GVariant has two new APIs for constructing strings that allow
5096     avoiding copies in some cases: g_variant_new_take_string() and
5097     g_variant_new_printf()
5098
5099  * Testing
5100
5101   - we can now generate TAP output
5102
5103   - new support functions for simplifying the process of dealing with
5104     data files for srcdir != builddir and installed test cases
5105
5106   - g_test_trap_subprocess() provides a portable alternative to
5107     g_test_trap_fork()
5108
5109  * Other
5110
5111   - GLib now builds on Android against the bionic C library
5112
5113 Overview of changes from GLib 2.37.93 to 2.38.0
5114 ================================================
5115
5116 * fix the documentation for GSourceFuncs
5117
5118 * fix compilation on OS X/ppc64
5119
5120 Bugs fixed: 708445, 647145
5121
5122 Translations updated:
5123  Danish
5124  French
5125  Portuguese
5126  Punjabi
5127
5128 Overview of changes from GLib 2.37.92 to 2.37.93
5129 ================================================
5130
5131 * a couple of bugfixes in the new g_file_measure_disk_usage() API
5132
5133 * updated Traditional Chinese translation
5134
5135 Overview of changes from GLib 2.37.7 to 2.37.92
5136 ===============================================
5137
5138 * new API g_file_measure_disk_usage() similar to du(1)
5139
5140 * minor fixes
5141
5142 * Translation updates:
5143  Assamese
5144  Belarusian
5145  Brazilian Portuguese
5146  Catalan
5147  Czech
5148  Galician
5149  German
5150  Hungarian
5151  Indonesian
5152  Italian
5153  Korean
5154  Korean
5155  Latvian
5156  Lithuanian
5157  Polish
5158  Serbian
5159  Slovenian
5160  Spanish
5161
5162 Overview of changes from GLib 2.37.6 to 2.37.7
5163 ==============================================
5164
5165 * GDateTime now supports %:z formatting variations
5166   for timezones. This is a GNU date extension.
5167
5168 * Bugs fixed:
5169  685387 Segfault with GObject.signal_handler_is_connected()...
5170  686786 g_socket_get_available_bytes() returns wrong value ...
5171  705027 GSocket GSource not threadsafe on Windows
5172  706469 Fix G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE documentation
5173  706706 Fix Gir annotations on g_loadable_icon_load_finish
5174  706888 gtype: fix a no-op assertion
5175  706958 configure.ac: fix atomic opts detection
5176  707092 "File Utilities" page for GLib documentation doesn'...
5177  707151 gdatetime: Extend the '%z' timezone format
5178
5179 * Translation updates:
5180  Catalan
5181  Hungarian
5182  Japanese
5183  Polish
5184  Slovak
5185  Tamil
5186
5187
5188 Overview of changes from GLib 2.37.5 to 2.37.6
5189 ==============================================
5190
5191 * Tests using the g_test facilities can now generate TAP output
5192
5193 * Bugs fixed:
5194  680926 generic type fallback logic is broken for -symbolic
5195  684327 setting null icon to icon list
5196  689245 GSocket unable to reuse (address,port) on Mac OS X
5197  692125 Support TAP as GTest output format
5198  693335 build: fix dtrace-related warnings
5199  696633 gdbus-codegen trips over unicode chars when using python 3.x
5200  696970 Compiling 2.36.0 for win64 fails
5201  697185 GSocket – Allow specifying the multicast interface from...
5202  700268 Add support for using the clang analyzer
5203  701318 Add G_SPAWN_DEFAULT to GSpawnFlags
5204  701529 glib/tests/gdatetime: use UTC time in test_GDateTime_diff()
5205  701800 a new approach to reporting critical errors
5206  702674 g_date_time_new_utc crash
5207  704165 GLib.IOChannel read_unichar() fails
5208  705075 Simplify g_get_tmp_dir()
5209  705152 Race in glib/task.test
5210  705398 gtype: Fix typo in g_type_class_add_private() error message
5211  705570 Check ref_count in g_object_notify_by_pspec
5212  705600 Deprecate GSimpleActionGroup functions?
5213
5214 * Updated translations:
5215  Assamese
5216  Brazilian Portuguese
5217  Czech
5218  Dutch
5219  Galician
5220  Gujarati
5221  Hebrew
5222  Italian
5223  Lithuanian
5224  Marathi
5225  Norwegian bokmål
5226  Russian
5227  Slovenian
5228  Spanish
5229  Thai
5230  Traditional Chinese
5231
5232
5233 Overview of changes from GLib 2.37.4 to 2.37.5
5234 ==============================================
5235
5236 * Implement the Desktop Action specification: In the case that the
5237   application is a GApplication and DBusActivatable, actions from the
5238   desktop file are translated into GActions that have been added to
5239   the  application with g_action_map_add_action().
5240
5241 * GPropertyAction is a new type of GAction that represents the value
5242   of a property on an object, and allows to change the value when
5243   activated.
5244
5245 * GNetworkMonitorNetlink can now handle default routes via a device.
5246
5247 * The gsettings tool now reports failure to write a key (e.g. because
5248   the key was locked down)
5249
5250 * Miscellaneous new api:
5251  - g_variant_new_printf
5252  - g_action_print_detailed_name
5253  - g_regex_get_max_lookbehind
5254
5255 * Bugs fixed:
5256  664444 Support additional application actions in .desktop files
5257  684123 glib build only tries -D_GNU_SOURCE if glibc is detected
5258  689794 support incremental matching
5259  699259 add org.freedesktop.Application support to GIO
5260  700460 rewrite tests to not rely on precise timing of timeouts
5261  701511 updates to various GSource types
5262  701609 gnetworkmonitornetlink: handle default route via device
5263  703270 add GPropertyAction
5264  704157 GAction: add function for printing detailed names
5265  704250 Doc: various fixes
5266  704267 regression gsourceclosure: segfault in gedit file chooser
5267  704322 glib-unix: fix handling of multiple signal source for the...
5268  704424 No error when failing to override a locked key
5269  704447 Fix build/use of g_child_watch_closure_callback on Windows
5270  704523 g_thread_create_full() can dereference NULL pointer
5271  704543 Add implementations for G_GNUC_*_IGNORE_DEPRECATIONS for ...
5272  704567 gdbusnameowning: Don't spew an error if we're releasing a...
5273  704585 libc printf can give mixed-case strings for NaN and Inf
5274  704587 FTBFS: statfs_result is undeclared for statvfs()
5275  704699 gmain: Reset signal handlers to default when source is
5276  704704 AI_NUMERICSERV cannot be used with ai_socktype = 0
5277  704873 inotify: don't assume mainloop is running
5278  704999 glib/convert.test crashing due to lack of iconv cache
5279  704931 GMenuModel: add annotations to virtual functions
5280
5281 * Translation updates:
5282  Assamese
5283  Czech
5284  German
5285  Gujarati
5286  Spanish
5287  Tamil
5288
5289
5290 Overview of changes from GLib 2.37.3 to 2.37.4
5291 ==============================================
5292
5293 * Bugs fixed:
5294  701283 g_source_add_child_source() segfault
5295  702147 inconsistency of G_STRFUNC
5296  703191 new private macros interact poorly with versioning macros
5297  703254 Doc: various fixes
5298  703407 g_spawn_async() keeps child_pid_report_pipe open in child process
5299  703437 GDBusConnection: be more careful with async GetAll
5300  703478 Missing G_BEGIN/END_DECLS in gsettingsschema.h
5301
5302 * Translation updates:
5303  Catalan
5304
5305 Overview of changes from GLib 2.37.2 to 2.37.3
5306 ==============================================
5307
5308 * add a new API for instance private data: G_DEFINE_TYPE_WITH_PRIVATE
5309
5310 * fix timestamps in tarball to prevent automake from being required to
5311   build the unmodified source
5312
5313 * add new D-Bus API for async property handling
5314
5315 * add back fsync() on ext4 for g_file_set_contents() after it was
5316   discovered that despite statements in the ext4 documentation
5317   suggesting that this is safe, it is not safe.
5318
5319 * Translations:
5320  Italian
5321  Norwegian bokmål
5322
5323 * Bugs fixed:
5324  698375 - D-Bus async properties
5325  700350 - timestamp issue
5326  701560 - fsync issue (fixed again)
5327  700035 - new API for instance private data
5328
5329 Overview of changes from GLib 2.37.1 to 2.37.2
5330 ==============================================
5331
5332 * The GLib test utilities have grown some file-related APIs
5333   to support tests that can be used installed and uninstalled.
5334
5335 * Installing properties after class initialization is deprecated,
5336   and will trigger a warning.
5337
5338 * GApplication:
5339  - Support org.freedesktop.Application, including D-Bus activation
5340    from desktop files
5341  - Set prgname to appid for services
5342
5343 * Bugs fixed:
5344  549783 gtester lacks framework for tests with data files
5345  692848 Fix property example in gobject tutorial
5346  698018 Add an explicit g_binding_release()
5347  698614 GObject: prevent installing properties after init
5348  699259 add org.freedesktop.Application support to GIO
5349  699959 g_file_copy(): Ensure we create private files by default
5350  700123 Test failure: g_inet_socket_address_get_scope_id
5351  700725 GIcon: NULLify the `type' out param in the sync methods too
5352  701401 gtest: add function for testing for WINE
5353  701456 Error in gnome/glib/gio/tests/file.c
5354  701474 Error building glibmm due to extra comma in glib/gtestutils.h
5355  701560 various improvements for g_file_set_contents()
5356  701680 GFileEnumerator: Add some documentation about ordering
5357  701878 Check wakeup() before iteration(TRUE) doesn't block
5358
5359 * Translations:
5360  Assamese
5361  Czech
5362  Galician
5363  Gujarati
5364  Kannada
5365  Marathi
5366  Odia
5367  Polish
5368  Slovenian
5369  Spanish
5370  Telugu
5371
5372
5373 Overview of changes from GLib 2.37.0 to 2.37.1
5374 ==============================================
5375
5376  * add support for installed tests:
5377    https://live.gnome.org/GnomeGoals/InstalledTests
5378
5379  * add a new g_test_trap_subprocess() that works on Windows as a
5380    replacement for the (now deprecated) g_test_trap_fork()
5381
5382  * support for explicitly cancelling a gobject property binding
5383
5384  * performance improvements for signal argument handling
5385
5386  * stop using `quotes' in very many log messages generated by GLib, for
5387    favour of 'this style'.  This may cause testcases in other packages
5388    to fail if they were matching on the previous text.
5389
5390  * improve manpages: add missing arguments and flags
5391
5392 Translations: 
5393  Aragonese
5394  Assamese
5395  Gujarati
5396  Hindi
5397  Kannada
5398  Norwegian bokmål
5399  Odia
5400  Slovenian
5401  Spanish
5402  Tamil
5403  Telugu
5404
5405 Bugs fixed:
5406  679683 replace g_test_trap_fork()
5407  694380 Improve signal argument collection performance
5408  695233 Strings require plural forms
5409  697849 spelling fixes in cross.xml and running.xml
5410  698877 GProxyAddressEnumerator calls g_network_address_parse_uri without port
5411  698981 [PATCH] test /gdbus/connection/large_message could hang forever
5412  699079 Prototype support for installed tests
5413  699485 [PATCH] tests/mappedfile: Also handle ENOMEM
5414  699493 SOCKS5 proxy code crashes if it cannot authenticate
5415  699500 gbitlock: fix this to not unconditionally use futex emulation
5416  699779 [PATCH] G_GNUC_FORMAT: documentation error
5417  700263 m4macros/glib-gettext.m4: Don't use AC_HEADER_STDC
5418  700714 [PATCH] gtestutils: Ensure test subprocesses don't dump core
5419  700746 Use 'dumb quotes' rather than `really dumb quotes'
5420
5421 Overview of changes fron GLib 2.36.0 to 2.37.0
5422 ==============================================
5423
5424 * The syntax for detailed action names has been documented,
5425   and a parser API for them is now provided
5426
5427 * GApplication has gained a busy state. This feature is intended for
5428   clients that want to signal a desktop shell their busy state, for
5429   instance because a long-running operation is pending.
5430
5431 * GLib can now be built with the bionic C library
5432
5433 * GIcon can now be serialized to a GVariant
5434
5435 * Bugs fixed:
5436  548353 Finish implementing GFile interface (mostly asynchron...
5437  645881 Full port of glib-2.28.1 onto Android-ARM
5438  665445 Glib mistakes nl_langinfo() from plibc for the real t...
5439  672018 Need API to set global application state (busy, count...
5440  687659 drop support for adding interfaces after class_init
5441  688820 GIcon is a bad interface
5442  688954 extend 'detailed action' syntax, provide parser
5443  689223 Fix compilation on Android with the bionic C library
5444  695156 Add support for arg0namespace matching in signal_subs...
5445  696108 gdbus-codegen: avoid warnings in generated code
5446  696629 fix sed(1) usage
5447  696652 GTask won't free its error member variable on finalize
5448  696857 GThreadedResolver: set an error if no records could b...
5449  696973 Compiling 2.36.0 for win64 fails in gdbusmessage.c
5450  697131 No --version
5451  697160 [PATCH] gmacros: Mark G_UNAVAILABLE() functions as de...
5452  697229 Custom Interface implementations will be broken with ...
5453  697250 Documentation glitch of G_DEFINE_TYPE_EXTENDED causes...
5454  697365 Fix usage of hasmntopt in gunixmounts.c
5455  697367 Remove warning on gio/gunixmounts.c
5456  697386 Except const argument with atomic is not lock free
5457  697595 g_main_context_unref unlocks a mutex twice
5458  697601 reduce GMenuModel D-Bus traffic
5459  697626 Allow posix threads to be used on w32
5460  697652 Help options generated even when help disabled
5461  697771 fix a typo of "fo" to "of" in building.xml
5462  697887 GVariant: fix transfer annotation
5463  697942 abicheck.sh fails on mips
5464  698056 rewrite g_object_new()
5465  698081 Pidgin hangs in g_spawn_command_line_sync
5466  698455 GVariant: add new g_variant_new_take_string() API
5467  698457 g_variant_get_data_as_bytes() always returns toplevel...
5468  698478 gactionmap: don't require GActionGroup
5469  698595 the valgrind/priv-before-instance bug
5470  698655 desktop-app-info test relies on true being in /usr/bin/
5471  698686 GUnixSocketAddress: fix construct parameter issue
5472  698716 Use of g_mem_set_vtable() breaks after gobject automa...
5473  698999 bytesicon: fix a memory leak
5474  699001 bytesicon: don't use g_object_unref() on GBytes
5475  699361 gio: fix small leak
5476
5477 * Translation updates:
5478  Assamese
5479  Gujarati
5480  Hungarian
5481  Italian
5482  Kannada
5483  Norwegian bokmål
5484  Polish
5485  Spanish
5486  Tamil
5487
5488
5489 Overview of changes fron GLib 2.35.9 to 2.36.0
5490 ==============================================
5491
5492 This release contains only small bugfixes and translations updates.
5493
5494  - g_file_copy(): fix bug where attributes were not applied properly to
5495    the destination file
5496
5497  - fix some 'available since' annotations
5498
5499  - fix gdbus-codegen to produce more pedantically-correct code
5500
5501 * Bugs fixed:
5502  696108 gdbus-codegen: avoid warnings in generated code
5503  696014 g_file_copy(): Ensure G_FILE_COPY_OVERWRITE preserves permissions
5504
5505 * Translations updated:
5506  Basque
5507  Czech
5508  Gujarati
5509  Hindi
5510  Hungarian
5511  Japanese
5512  Malayalam
5513  Marathi
5514  Odia
5515  Punjabi
5516  Russian
5517  Tadjik
5518  Tamil
5519  Telugu
5520
5521 Overview of changes from GLib 2.35.8 to 2.35.9
5522 ==============================================
5523
5524 This release drops the old codepage ABI from gutils.c. This is a
5525 source-compatible change and only breaks ABI with respect to truly
5526 ancient binaries (and those binaries are already broken for other
5527 reasons).  This change only affects Windows.
5528
5529 * Bugs fixed:
5530  682896 glib doesn't build on mingw32
5531  693204 split up g_get_{hostname,username,realname,home_dir} etc.
5532  694181 Handle GNetworkAddress better in g_network_monitor_base_...
5533  694253 occasional /gdbus/unref-pending test failure
5534  694350 Add type names to gsignal warnings
5535  694757 Use separate GLIB_WARN_CFLAGS that can be overridden ext...
5536  568405 Which is the correct replacement for g_strncasecmp, if...
5537  630284 g_hash_table_get_keys docs
5538  659428 docs: Small clean-up of howto subsection headers
5539  675333 Cannot forget association in Open With dialog: program...
5540  694669 consider unicode corrigendum #9
5541  694843 g_base64_decode_step () produces invalid data
5542  695147 Don't use PATH_MAX as it's not guaranteed to be defined
5543  695191 Commit f641699 broke /appinfo/mime/api test case
5544  695339 Swapped msgid plural forms for translation
5545  695376 GDBusMethodInvocation leak and potential crash
5546  695425 Untranslatable message in gsettings-tool
5547  695887 Improvements to GObject API documentation
5548  695925 GUINT32/64_SWAP_LE_BE macros do not enclose val argume...
5549  696015 PATCH Add doc warning to g_base64_decode()
5550
5551 * Translation updates:
5552  Assamese
5553  Belarusian
5554  Brazilian Portuguese
5555  Catalan
5556  Catalan (Valencian)
5557  Danish
5558  French
5559  Galician
5560  German
5561  Greek
5562  Gujarati
5563  Italian
5564  Korean
5565  Latvian
5566  Lithuanian
5567  Polish
5568  Portuguese
5569  Punjabi
5570  Serbian
5571  Simplified Chinese
5572  Slovak
5573  Slovenian
5574  Spanish
5575  Thai
5576  Traditional Chinese
5577  Uyghur
5578  Vietnamese
5579
5580
5581 Overview of changes from GLib 2.35.7 to 2.35.8
5582 ==============================================
5583
5584 This release contains one major change that may cause problems: type
5585 modules are now never unloaded.  This is implemented by (effectively)
5586 leaking the last reference on dynamic types.  Some testcases that check
5587 for unloading of types have been observed to be broken by this change,
5588 but we know of no actual cases of "real code" breaking.  Please report
5589 any problems.
5590
5591 Other changes:
5592  * A couple of build fixes for Solaris
5593  * Fix signal emission for GDBusObjectManagerClient
5594  * annotations fixes
5595  * new API: g_dbus_address_escape_value()
5596  * GSocketClient: add proxy-resolver property
5597  * GSimpleProxyResolver: new simple GProxyResolver class
5598  * documentation fixes
5599  * gnetworkaddress: preserve IPv6 scope ID in IP literals
5600
5601 Bugs fixed:
5602  691105 Allow GSocketClient to override GProxyResolver for per client proxy settings.
5603  692827 configure test fails for arpa_nameser.h
5604  692829 new Btrfs support causes build failure on Solaris
5605  693285 GDBusObjectManagerClient: won't emit object-added|removed if name-owner arrives later
5606  693502 Cross-compiling documentation: typo (np -> no)
5607  693673 add g_dbus_address_escape_value()
5608  693694 gio: Fix annotations on g_[async_]initable_new() and friends 
5609
5610 Translations:
5611  Dutch
5612  Galician
5613  Polish
5614  Serbian
5615
5616 Overview of changes from GLib 2.35.6 to 2.35.7
5617 ==============================================
5618
5619 This is a quick follow-up release with a few bug fixes.
5620
5621 * Fix the build on systems with strict linkers by adding -pthread back
5622   to the LDFLAGS for a testcase.
5623
5624 * Re-enable native atomic operations on some buggy versions of clang
5625   that ship as part of the MacOS X SDK.
5626
5627 * Make G_IO_FLAG_IS_WRITEABLE an enum again (the #define broke bindings)
5628
5629 * a small docs fix
5630
5631 * Bugs fixed:
5632  657045
5633  636683
5634  682818
5635  693105
5636
5637 * Translations:
5638  Italian
5639
5640 Overview of changes from GLib 2.35.4 to 2.35.6
5641 ==============================================
5642
5643 * GUnixFdSource is a new way to add file descriptors
5644   to the mainloop
5645
5646 * g_source_set_ready_time lets you mark a source to become
5647   ready at a specified monotonic time
5648
5649 * The internal visibility handling of GLib has been reworked
5650
5651 * GFileMonitor will now automatically use fam instead of inotify
5652   if $HOME is on NFS
5653
5654 * The file monitor implementation can now be overridden with
5655   the GIO_USE_FILE_MONITOR environment variable
5656
5657 * Bugs fixed:
5658  570572 2 make check errors on
5659  592211 No monitoring over NFS mounts
5660  625552 wrong behaviour of GVolume GVolumeMonitor related func...
5661  657729 modernise GMainLoop
5662  658020 GSource for a single GPollFD
5663  678223 g_mutex_free
5664  682560 leak fixes
5665  682819 EINTR-harden all the things
5666  684404 When using g_network_address_address_enumerator_next()...
5667  686853 new GSource fd API
5668  688169 G_DISABLE_DEPRECATED doesn't cover deprecated/gthread....
5669  688681 build: Make .symbols file canonical on all platforms
5670  690118 Crash when closing last tab of a window using Ctrl-w
5671  691624 glib/gtester.c: missing include
5672  691812 gioinputstream - give task as callback_data not task_data
5673  691866 fails out of source build directory - gnetwork.h not f...
5674  692029 Add new API checking utility
5675  692034 Install an invalidation notifier for GClosure in g_sou...
5676  692058 Broken makefile for gio tests
5677  692079 build failure in gmarkup.c when using gcc 4.8 and buil...
5678  692201 inotify: fix a memleak
5679  692202 gfile: don't report completion twice on g_file_load_co...
5680  692229 Incorrect string formatters in a translation string
5681  692332 GNetworkMonitorNetlink: make the netlink socket cloexec
5682  692360 possibly non-threadsafe code in g_content_type_guess()?
5683  692404 tester: Use FD_CLOEXEC when creating pipes
5684  692408 nautilus SIGSEGV in g_file_info_get_size()
5685  692544 [PATCH] gfile: Ensure we create internal pipe with FD_C...
5686  692583 atomic get doesn't accept a const argument on architect...
5687  692618 Use g_timeout_add_seconds
5688  692815 Using g_hash_table_insert() when using a hash table as ...
5689  692865 Invalid docbook generated by gdbus-codegen
5690  692928 Document G_MENU_{ATTRIBUTE,LINK}_*
5691
5692 * Translation updates:
5693  Hebrew
5694  Kannada
5695  Lithuanian
5696  Norwegian bokmål
5697  Polish
5698  Serbian
5699  Slovenian
5700  Spanish
5701  Uyghur
5702
5703
5704 Overview of changes from GLib 2.35.3 to 2.35.4
5705 ==============================================
5706
5707 * New features:
5708  - New API: g_get_num_processors
5709  - New API: g_application_command_line_get_stdin
5710  - New GFileMonitor flag: G_FILE_MONITOR_WATCH_HARD_LINKS
5711  - Parse more timezone offset formats
5712  - Better timezone support on Windows
5713  - Make GParamSpec constructors introspectable
5714
5715 * Removed or deprecated features:
5716  - Disallow adding interfaces after class_init
5717
5718 * Bug fixes:
5719  532815 gio + inotify support for hardlinks
5720  614930 add g_get_num_processors (), return the max concurrent...
5721  626497 Btrfs clone/reflink ioctl support in g_local_file_copy
5722  633117 glib fails stests if /etc/localtime is not properly set
5723  661767 merge/improve various bits of run-in-thread functionality
5724  668210 Add g_application_command_line_get_stdin()
5725  675856 Use GDbus via gobject-introspection instead dbus-python
5726  684103 make glib work with python3
5727  684723 run-assert-msg-test.sh fails
5728  686058 OpenBSD: disable ipv6_v4mapped test
5729  686128 GTimeZone should be able to parse POSIX format for...
5730  687223 cleverer GThreadPool management
5731  687659 drop support for adding interfaces after class_init
5732  687920 GCredentials should have an accessor for the process ID
5733  688681 build: Make .symbols file canonical on all platforms
5734  688829 Variable overflow in utils.c test on 32-bit machine
5735  689324 Variable scoping in gunixmounts.c
5736  689810 Include guard optimization
5737  690043 Broken link for gsettings tutorial: gnome-utils in...
5738  690084 gmarkup: Make GMarkupParseContext a boxed type
5739  690388 Check if CMSG_FIRSTHDR() returns NULL when there is...
5740  690538 gschema DTD is invalid
5741  690543 Add test coverage for testing in-tree DBus services...
5742  690670 local_command_line not introspectable/annotated
5743  690902 G_END_DECLS needs to be at the end of gutils.h
5744  690970 Unhelpful deprecation message for g_value_array_get_nth
5745  691001 building docs is broken on master branch
5746  691011 Automake-1.13 errors on obsolete AM_PROG_CC_STDC
5747  691077 gio-querymodules crashes with SIGSEGV
5748  691110 g_cond_wait() docs incomplete
5749  691489 Crash in Oscars 2013 page
5750  691558 Only check for .hidden files if standard::is-hidden...
5751  691608 Support compilation with clang 3.2
5752
5753 * Translation updates:
5754  Assamese
5755  Bulgarian
5756  Estonian
5757  Galician
5758  Greek
5759  Hebrew
5760  Norwegian bokmål
5761  Polish
5762  Slovak
5763  Slovenian
5764  Spanish
5765  Tamil
5766
5767
5768 Overview of changes from GLib 2.35.2 to 2.35.3
5769 ==============================================
5770
5771 * This release contains an incompatible change to the g_get_home_dir()
5772  function. Previously, this function would effectively ignore the HOME
5773  environment variable and always return the value from /etc/password.
5774  As of this version, the HOME variable is used if it is set and the
5775  value from /etc/passwd is only used as a fallback.
5776
5777 * We now install a public "gnetworking.h" header that can be used to
5778  include the relevant OS-dependent networking headers. This does not
5779  really abstract away unix-vs-windows however; error codes, in
5780  particular, are incompatible.
5781
5782 * Bugs fixed in this release:
5783  142568 Allow $HOME to override passwd entry if the user really wants
5784  587806 The file selector should honor .hidden files
5785  602715 [GChecksum] Please add support for SHA512
5786  623187 provide some support for arbitrary setsockopt()s?
5787  629301 .goutputstream files left behind when cancelling I/O
5788  652650 Optimize GDBusMessage serialization
5789  664627 /gapplication/basic test intermittently fails: cmdline re-or...
5790  675516 Win32: Don't start a DBus server when built as static library
5791  679683 replace g_test_trap_fork()
5792  684145 Current Git sources fails to cross-compile for Windows in Li...
5793  686895 file-info: catch thumbnail files in large directory as well
5794  687092 IPv6 <-> IPv4 mismatch when subscribing to multicast (send)
5795  688180 GObject: Minor error in description of floating reference
5796  688319 gthread: add missing AVAILABLE_IN_2_32 annotations
5797  688377 configure: add missing square bracket in AS_IF for memmove
5798  688419 gtask: source_object arguments and return values not annota...
5799  688497 AppInfo: Add sufficient api to port gnome-session from Egg...
5800  688681 build: Make .symbols file canonical on all platforms
5801  688704 Add boxed GType for GThread
5802  688886 Improve the i18n documentation
5803  688931 GMemoryOutputStream: Add new _resizable() constructor usab...
5804  689037 need helper for creating a GFile from a remote commandline...
5805  689377 Fix a compiler warning in GDBus
5806  689538 Source object tag set too late in gsocketlistener
5807  689800 Treat lost+found directory as a hidden file
5808  689847 Add fast repeated typename -> GType resolver
5809  689982 Make GChecksum more fully introspectable
5810  690069 g_unix_open_pipe: Add missing F_SETFD
5811  690083 gfileenumerator: Add a g_file_enumerator_get_child method
5812  690163 Add a pre-configured gio/gnetworking.h for Visual C++ builds
5813  690346 Remove an unneeded escaping in NAMESER_COMPAT_INCLUDE
5814  690348 Fix g_type_add_class_private() name in g_warning
5815
5816 * Translation updates:
5817  Assamese
5818  Galician
5819  Hebrew
5820  Hindi
5821  Kannada
5822  Odia
5823  Polish
5824  Spanish
5825
5826
5827 Overview of changes from GLib 2.35.1 to 2.35.2
5828 ==============================================
5829
5830 Note that the incompatible change to the ->constructed() vfunc that was
5831 made in the last unstable release (2.35.1) has been reverted due to
5832 causing regressions in applications.
5833
5834 A new incompatible change has been introduced in this version: it is no
5835 longer permitted to add interfaces to a class after the first
5836 instantiation (or more strictly: after g_type_class_ref()).  Bug #687659
5837 is tracking this.
5838
5839 Two private symbols (g_menu_{attribute,link}_hash_iter_get_type) which
5840 were accidentally exported have also been properly hidden.  This may
5841 cause some tools to issue warnings about ABI mismatch.
5842
5843 The remaining changes should be relatively harmless: 
5844
5845  * GIO now has kqueue support for GFileMonitor (BSDs, Mac OS)
5846
5847  * New g_variant_new_from_bytes() API
5848
5849  * UNIX signal sources now allow watching SIGUSR1 and SIGUSR2
5850
5851  * Many pedantic cleanups to adhere to a higher level of -W use
5852
5853  * GTask changes to avoid a deadlock
5854
5855  * many cleanups/fixes for Windows
5856
5857  * Boxing for GPollFD, GIOChannel, GBytes, GByteArray
5858
5859  * Fix URL-encoding of trashed files
5860
5861  * Many other docs and annotations fixes
5862
5863 Translations:
5864
5865  Galician
5866  Gujarati
5867  Lithuanian
5868  Serbian
5869  Slovak
5870  Slovenian
5871
5872 Bugs closed:
5873
5874  649302 Add support for GNU/FreeBSD
5875  668842 [GSocket] Add caching for the sender address in g_socket_receive_from()
5876  672924 Add annotations for g_filename_from_uri()
5877  673229 glib: Use Returns:, not @returns
5878  677062 (partial) GVariant: Make g_variant_new_from_bytes() public, add more GBytes API
5879  686185 g_date_time_format Transcoding Fails on OSX      
5880  686191 g_mutex_get_impl() should use g_atomic_pointer_get()
5881  686797 Box GPollFD to make it introspectable
5882  686810 [regression] Infinite wait in g_task_run_in_thread_sync()
5883  686822 possible dlopen()/dlclose() issue with automatic g_type_init()
5884  686839 mkinstalldirs: Move to glib-mkinstalldirs
5885  686895 file-info: catch thumbnail files in large directory as well
5886  686898 g_unix_signal_source_new: Allow SIGUSR1 and SIGUSR2
5887  686920 gdbus: Allow GDBusObjectManagerClient to work on peer connections
5888  686921 Remove some of the repetition from gio/tests/Makefile.am
5889  687075 g_spawn_sync diagnostic incorrectly complains about SIGCHLD
5890  687089 g_dbus_connection_export_menu_model(): fix a crash
5891  687098 Repeated g_timeout_add* use can lead to guint overflow
5892  687385 Add some stricter CFLAGS, fix up the code
5893  687441 ABI break in master: g_menu_attribute_hash_iter_get_type, g_menu_link_hash_iter_get_type removed
5894  687516 typo in string: KB should be kB
5895  687540 In Trash folder, Nautilus misinterprets "\n" in filename as a line break
5896  687541 GSignalQuery param_types field needs array annotation
5897  687600 gfileutils.c performs invalid cast of (varargs) open to non-vararg type
5898  687698 plural forms needed
5899  687700 ending spaces
5900  687742 Add support for internal linkage to glib-compile-resources
5901  687801 tests/buffered-input-stream: Fix size of parameter passed
5902  688109 win32 warning/error fixes
5903  688255 'make check' regressed in 138f4c1 because GMarkup error messages changed
5904  688338 [PATCH] gobject/gtype.c: Fix spelling of »exceed«
5905  688370 GDBusError documentation improvement for client-side
5906  688378 g_socket_join_multicast_group not working
5907  688518 gio-kqueue: use O_EVTONLY on MacOS
5908
5909
5910
5911 Overview of changes from GLib 2.34.0 to 2.35.1
5912 ==============================================
5913
5914 These two changes in particular may be slightly incompatible.  Please
5915 give feedback if they cause trouble:
5916
5917   * Signal handlers connected with g_signal_connect_object() are now
5918     automatically disconnected on target object destruction
5919
5920   * The ->constructed vfunc is now called after all properties are set
5921
5922 The remaining changes should not cause problems.
5923
5924   * g_type_init() is no longer necessary and has been deprecated
5925
5926   * GTask (the new GAsyncResult implementation) has landed 
5927
5928   * GLib version macros updated
5929
5930   * Update to Unicode 6.2
5931
5932   * Thread safety fixes for GFileMonitor in non-default main contexts
5933
5934   * GTimeZone support for old-format zoneinfo database (as on Mac OS)
5935
5936   * g_settings_bind() now works with non-canonical property names
5937
5938   * Fix crashes related to NULL connection passed to
5939     GBusNameVanishedCallback and document this situation
5940
5941 * Bugs fixed:
5942  118536 Make g_signal_connect_object'ed handlers disconnect when the data object is destroyed
5943  661767 merge/improve various bits of run-in-thread functionality
5944  682950 GFileMonitor crashing on high event count when running in different thread
5945  683642 Missing g_content_type_get_symbolic_icon
5946  684882 Gsettings should spaw a warning when binding against a low_underscored_property
5947  684909 codegen: Explicitly close output
5948  684912 Update to Unicode 6.2
5949  685037 g_strcmp0: Returns shall include values less and greater than zero
5950  685069 Leak in glib-compile-resources
5951  685208 missing g_return_if_fail
5952  685608 [Patch] Port gio tests from pygobject to pygi
5953  685697 Documentation typo in g_dbus_interface_skeleton_has_connection()
5954  685733 Call ->constructed() after all properties are set
5955  685787 gtestdbus: correct documentation typos
5956  685995 Crash in g_menu_exporter_name_vanished
5957  686091 Invalid reads in g_bytes_unref_to_data
5958  686119 dtrace, gobject_probes.d, the last three probes - semicolon missing
5959  686161 Deprecate g_type_init()
5960  686231 GBusNameVanishedCallback: document NULL connection
5961  686458 slightly increase poll duration in test_timed_wait 
5962
5963 * Translations updated
5964   Catalan (Valencian)
5965   Czech
5966   Danish
5967   Italian
5968   Lithuanian
5969   Norwegian bokmål
5970   Slovenian
5971
5972 Overview of changes from GLib 2.33.14 to 2.34.0
5973 ===============================================
5974
5975 * Bug fixes:
5976  654239 g_type_init()'s docs have no statement about how to...
5977  674620 Update GSettings migration guide for intltool updates
5978  676034 Fix doc annotation for g_ptr_array_ref()
5979  684278 Fix GIO build on Windows
5980
5981 * Translation updates:
5982  Brazilian Portuguese
5983  British English
5984  Bulgarian
5985  Catalan
5986  Galician
5987  German
5988  Hebrew
5989  Hindi
5990  Hungarian
5991  Kannada
5992  Latvian
5993  Marathi
5994  Spanish
5995  Telugu
5996
5997
5998 Overview of changes from GLib 2.33.12 to 2.33.14
5999 ================================================
6000
6001  * CVE-2012-3524: don't run dbus-launch from setuid binaries
6002
6003  * g_content_type_get_generic_icon_name():
6004      new API for getting the icon name for a mime type
6005
6006  * Introspection fixes:
6007   - GDBusConnection nullability fixes
6008   - give a box type to GTimeZone
6009
6010  * Drop GVFS_INOTIFY_DIAG
6011
6012  * Add a new "Writing GLib Applications" section to the reference
6013    documentation with general info on security, threads, etc.
6014
6015  * gwin32mount.c: Fix syntax error
6016
6017  * gresource tests: srcdir != builddir fixes
6018
6019  * tests/gvariant: Fix test on big endian architectures
6020
6021  * Fix regression in g_shell_parse_argv()
6022
6023 Bugs fixed:
6024  562907 g_shell_parse_argv() mishandles # (hash)
6025  683167 g_time_zone_new not introspectable
6026  683384 /gvariant/checksum-basic failure on big endian machines
6027  683641 Typo in gwin32mount.c
6028  683744 have a way to get the generic icon name for a mime type
6029
6030 Translation updates:
6031  Assamese
6032  Belarusian
6033  British English
6034  Czech
6035  Danish
6036  French
6037  Galician
6038  German
6039  Greek
6040  Hebrew
6041  Indonesian
6042  Indonesian
6043  Korean
6044  Lithuanian
6045  Marathi
6046  Marathi
6047  Polish
6048  Portuguese
6049  Punjabi
6050  Russian
6051  Serbian
6052  Slovenian
6053  Traditional Chinese
6054
6055 Overview of changes from GLib 2.33.10 to 2.33.12
6056 ================================================
6057
6058 * Add a G_DEFINE_QUARK macro
6059
6060 * Add symbolic icon support to drive, volume, and mount, file
6061   and content types
6062
6063 * Add API to allow thread-safe access to the same qdata item
6064
6065 * Bugs fixed:
6066  562907 g_shell_parse_argv() mishandles # (hash)
6067  627240 add G_DEFINE_QUARK
6068  672329 memory leaks in gutils.c and glib tests
6069  673012 Stable byte-level specification for normal form
6070  674805 gdbusproxy async test is broken
6071  679835 gvariant format string parsing (and assertions)...
6072  682075 gdbus: Fix double free and use after free of ob...
6073  682101 Provide a way to get a symbolic icon for a device
6074  682222 test_method_calls_on_proxy: assertion failed (e...
6075  682284 mount-op: use gint64 instead of guint64 for tim...
6076  682386 "make check" fails due to sys/resource.h not be...
6077  682560 leak fixes
6078  682586 gsettings-tool: make list-recursively really re...
6079  682819 EINTR-harden all the things
6080  682833 Handle EINTR for open()
6081  682849 drop the global lock for g_object_weak_ref
6082  682965 gdbus-tool: Check return value of strrchr()
6083  683088 gdbus-codegen: fix error when wrong interface n...
6084         Fix the build with gtk-doc-stub
6085         Don't crash if set_app_info is called before ad...
6086
6087 * Translation updates
6088  Assamese
6089  Galician
6090  Greek
6091  Indonesian
6092  Japanese
6093  Latvian
6094  Lithuanian
6095  Norwegian bokmål
6096  Polish
6097  Portuguese
6098  Punjabi
6099  Russian
6100  Spanish
6101  Traditional Chinese
6102  Vietnamese
6103
6104
6105 Overview of changes from GLib 2.33.8 to 2.33.10
6106 ===============================================
6107
6108 * New GTest API for testcases where log output is expected:
6109   g_test_expect_message()
6110
6111 * GMenuItem now has 'get' accessors and a construct-from-GMenuModel API
6112
6113 * GVariant now has a function to check a format-string for type
6114   compatibility
6115
6116 * win32: We now use overlapped IO to support multiple asynchronous
6117   operations (ie: reading and writing) at the same time.
6118
6119 * GMappedFile: Add g_mapped_file_get_bytes()
6120
6121 * The problems with g_file_make_directory_with_parents() should be
6122   resolved.
6123
6124 * The long-standing issues with placeholder generation of manpages are
6125   now resolved.
6126
6127 * gtlscertificate: Add GBytes based certificate and private-key props
6128
6129 * build: Switch back to using AS_IF for conditionals
6130
6131 * test coverage improvements, documentation improvements, leak fixes
6132
6133 * Bugs fixed
6134  326931 Better docs for G_GNUC_*
6135  550433 g_test_init doesn't recognize --help
6136  600751 GCompletion should better document if and how items memory is managed
6137  628193 Miscellaneous string fixes
6138  637460 man glib-genmarshal is hard to use
6139  674483 broken configure results when cross-compiling with gcc >= 4.5
6140  677065 GMappedFile: Add g_mapped_file_get_bytes()
6141  679288 win32: use overlapped events for streams
6142  679556 it's hard to use gtest when g_warning() is expected
6143  680823 g_file_make_directory_with_parents: Fix error propagation
6144  681319 gtlscertificate: Add certificate-bytes and private-key-bytes props
6145  681336 man pages not built if --enable-gtk-doc not specified
6146  681413 build: Switch back to using AS_IF for conditionals
6147  681501 gmem: array only partially filled with memcpy
6148  681854 Documentation fix for Howto compile a program with glib
6149  682025 Documentation correction
6150  682067 Fix problems with CLEANFILES and automake-1.11.1 
6151
6152 * Translations updated:
6153  Lithuanian
6154  Spanish
6155  Galician
6156  Telugu
6157  Serbian
6158  Assamese
6159  Marathi
6160  Indonesian
6161  Traditional Chinese
6162
6163 Overview of changes from GLib 2.33.6 to 2.33.8
6164 ==============================================
6165
6166 * GIO now has a g_file_delete_async function
6167
6168 * The defaults for GThreadPools max_unused_threads
6169   and max_idle_time values have been changed to
6170   2 and 15*1000, respectively.
6171
6172 * Bugs fixed:
6173  661767 merge/improve various bits of run-in-thread functionality
6174  680074 undefined symbol "get_C_locale"
6175  680121 g_cancellable_source_new: don't use a file descriptor
6176  680148 gthread: check for definition of PR_SET_NAME
6177  680310 Sorting of access points by strengh not working
6178  680704 g_utf8_strup() crash
6179  68076a0 GFile: Add g_file_delete_async()
6180  680787 Add .dir-locals.el to tell Emacs users not to use tabs...
6181  680823 g_file_make_directory_with_parents: Fix error propagation
6182  680994 STATIC_ASSERT in GDBusError docs don't have much utility
6183  681116 gtlscertificate: Add g_tls_certificate_equal() function
6184  681118 gtlsdatabase: Don't complain if no callbacks for async...
6185  669331 try to get gio tests working a little better on win32
6186  674314 Make gtk-doc not a hard dependency of GLib
6187  674800 gclosure: generic marshaller leaks return value
6188  675524 gsocket: FIONREAD undeclared (needs sys/filio.h)
6189  679509 use after free in g_dbus_action_group_describe_all_done()
6190  679996 gobject docs minor cleanup
6191  680459 Extra newline char in local implementation of g_applic...
6192  680505 object_path memory leak in gdbusobjectproxy.c
6193  680831 Deprecate and remove g_slice_[sg]et_config.*
6194  680912 gchecksum: Add g_compute_checksum_for_bytes()
6195  681151 checksum: Use functions instead of macros when buildin...
6196  681158 gtlscertificate: Don't confuse certificate and public ...
6197
6198 * Translation updates:
6199  Galician
6200  German
6201  Gujarati
6202  Hebrew
6203  Norwegian bokmål
6204  Serbian
6205  Slovenian
6206
6207
6208 Overview of changes from GLib 2.33.4 to 2.33.6
6209 ==============================================
6210
6211 * GAsyncInitable: partially revert the init_finish changes,
6212   some applications were found to rely on behaviour that
6213   was broken by these changes
6214
6215 * Bugs fixed:
6216  679617 win32: fix g_get_environ()
6217  679968 Add some annotations to GBytes, GVariantType...
6218  680111 GIOScheduler assumes GCancellable "cancelled...
6219
6220 * Translation updates:
6221  Spanish
6222
6223 Overview of changes from GLib 2.33.3 to 2.33.4
6224 ==============================================
6225
6226 * GMainContext: the source list has been reorganzied to
6227   avoid O(n) behaviour
6228
6229 * GRegex: Update included PCRE to 8.31 and expose new
6230   functionality in 8.x versions of PCRE
6231
6232 * GMountOperation gained a ::show-unmount-progress signal
6233   which provides information about slow unmount operations
6234
6235 * Bugs fixed:
6236  616892 gio: Add a boxed type for GFileAttributeMatcher
6237  619329 g_source_attach() O(n) in number of sources
6238  639771 g_dir_read_name() can also return NULL on error
6239  661767 merge/improve various bits of run-in-thread fun...
6240  667375 GAsyncInitable subclassing (and async subclassi...
6241  671545 Constify collect and lcopy strings in GTypeValu...
6242  674452 SEGFAULT in gio contenttype test
6243  674898 Deal with GLIB_VERSION_MIN_REQUIRED/MAX_ALLOWED...
6244  675504 Fix up GObject interface documentation
6245  677064 GString: Tweak documentation, add g_string_free...
6246  677578 error in PCRE error code conversion
6247  677579 update GRegexError for newer PCRE error codes
6248  678066 gdbus codegen does not work with python3
6249  678273 unicode othercasing is wrong in gregex
6250  678576 GIOScheduler performance enhancements
6251  678758 GTlsInteraction unlocks an unlocked mutex
6252  678808 GTestDBus issues
6253  678881 Test failures in /socket/timed_wait in some cas...
6254  678941 /contenttype/guess test case failure
6255  678944 gio returns the wrong default applications for ...
6256  678949 wrong definition of ulong_bool for 64 bit big e...
6257  678959 /mainloop/timeouts race condition: assertion fa...
6258  679193 update included pcre to 8.31
6259  679258 The 'Since' tag for G_SOURCE_CONTINUE and G_SOU...
6260  679473 Don't generate invalid property names
6261  679691 Add g_spawn_check_exit_status()
6262  679671 GDBusNodeInfo: the XML string must contain exac...
6263  676111 mount-operation: add show-unmount-progress signal
6264  679691 win32: fix build g_spawn_check_exit_status() wi...
6265  679813 Documentation bug on http://developer.gnome.org...
6266
6267 * Translation updates:
6268  Assamese
6269  Belarusian
6270  Bulgarian
6271  Galician
6272  Greek
6273  Norwegian bokmål
6274  Polish
6275  Spanish
6276  Traditional Chinese
6277  Vietnamese
6278
6279
6280 Overview of changes from GLib 2.33.2 to 2.33.3
6281 ==============================================
6282
6283 This release contains mostly bugfixes, cleanups and performance
6284 improvements (including many fixes contributed by Colin on the advice of
6285 Coverity).  There are a few notable externally-visible changes:
6286
6287 * Thumbnails are now in XDG_CACHE_HOME
6288
6289 * new GDBus API: per-thread g_dbus_connection_get_last_serial()
6290
6291 * GUnixOutputStream now has a can_poll() implementation
6292
6293 * New deep copy APIs for G(S)List: g_(s)list_copy_deep
6294
6295 * Bugs fixed:
6296  518309 Incorrect data*dir path in glib-gettextize output
6297  566994 Safer passing of -framework flag
6298  672889 GLib.utf8_validate does segfault
6299  673253 Not strict enough autconf test for libelf
6300  675024 adds g_list_copy_deep() and g_slist_copy_deep
6301  675168 prepare for thumbnails to move to XDG_CACHE_HOME
6302  675966 gresolver: More robust parsing of DNS responses
6303  676594 [Patch] fix g_reload_user_special_dirs_cache
6304  676825 Implement g_dbus_connection_get_last_serial ()
6305  677235 Clarify the comment at the top of gmarshal.list
6306  677527 OS X: gthread/spawn-async selftest failure
6307  677718 GDBusProxy: treat org.freedesktop.systemd1.Masked error as non-fatal
6308  677770 GUnixOutputStream does not implement can_poll
6309  677782 Install bash completion files in /usr/share
6310  677817 g_key_file_to_data adds extra blank lines in some cases
6311  677952 Missing annotation for GDBusConnection signal "closed"
6312  678052 g_wakeup_acknowledge is called too often.
6313  678273 unicode othercasing is wrong in gregex
6314  678333 gdbus-codegen code causes warnings under -Wfloat-equal
6315
6316 * Translations updated:
6317  Arabic
6318  Assamese
6319  Galecian
6320  Greek
6321  Spanish
6322  Telugu
6323
6324 Overview of changes from GLib 2.33.1 to 2.33.2
6325 ==============================================
6326
6327 * GLIB_VERSION_MIN_REQUIRED now defaults to the current stable version
6328
6329 * GIO input and output stream classes have grown GBytes-based methods
6330
6331 * GApplication now has hooks to register D-Bus objects before the bus
6332   name is taken
6333
6334 * Bugs fixed:
6335  605976 add g_type_ensure(), to ensure that a type has...
6336  660851 Breakage of code due to changes in the GThread...
6337  666386 Empathy doesn't open Redirect URI with particu...
6338  671139 need (transfer async) for io stream buffers
6339  672329 memory leaks in gutils.c and glib tests
6340  672548 g_utf8_validate: @str shouldn't end up annotat...
6341  674111 Provide an accessor for MimeType desktop entry...
6342  674483 broken configure results when cross-compiling ...
6343  674634 Add g_clear_pointer()
6344  674777 What's the (transfer) of g_variant_lookup()?
6345  675309 gkeyfile: Fix annotations for g_key_file_load_...
6346  675446 gfile: Plug memory leak in g_file_make_directo...
6347  675509 add extra dbus hooks
6348  675832 Incomplete gsettings bash auto-completion
6349  676208 The tmpl parameter to g_file_new_tmp can be NULL
6350  676265 GNetworkMonitor leaks a lot of memory
6351  676277 Document that g_app_info_create_from_commandli...
6352  676397 g_environ_* should work with NULL envp
6353  676398 g_spawn_* should take PATH from the passed env...
6354  676478 Broken gzip decoding
6355  676594 [Patch] fix g_reload_user_special_dirs_cache
6356  676816 Add more GLIB_AVAILABLE_IN_*
6357  676937 Document notify signal deduplication with free...
6358
6359 * Translation updates:
6360  Czech
6361  French
6362  German
6363  Greek
6364  Japanese
6365  Russian
6366  Slovenian
6367  Spanish
6368
6369
6370 Overview of changes from GLib 2.32.1 to 2.33.1
6371 ==============================================
6372
6373 * GApplication
6374  - can now have a NULL application ID
6375  - add accessors for determining dbus connection and object path
6376
6377 * g_clear_object: fix warnings when using it on C++ (due to lack of
6378   ability to implicitly cast void*)
6379 * add g_clear_pointer as a generic form of g_clear_object
6380
6381 * GDBus:
6382  - add our own implementation of the message bus for use on Windows only
6383  - fix up a few bugs that use of this bus uncovered in GDBus
6384  - escape nonce files in dbus addressess (think 'c:\')
6385  - support initial underscores in dbus codegen namespace (for private)
6386  - add GTestDBus for bringing up a session bus for testing purposes
6387  - gdbus-codegen: Avoid warnings in generated code
6388  - GDBusAuthObserver: Add a way to control what authentication mechanisms to use
6389  - 
6390
6391 * Fix misdetection of GNUstep as Cocoa (for the MacOS GSettings backend)
6392
6393 * make sure configure fails if AC_CHECK_ALIGNOF cannot detect the alignment
6394
6395 * GAppInfo
6396  - overwrite the DISPLAY only if it is set in the launch context
6397  - add accessor for StartupWMClass
6398
6399 * glib/tests/date: force US locale running the GDateTime tests
6400
6401 * Resources:
6402  - fix broken use of GVDB on big endian machines
6403  - set a 'display name' so that pretty file names appear in Gtk CSS
6404    warning messages
6405
6406 * GMainContext:
6407  - block child sources when blocking the parent
6408  - introduce more testcases for child sources
6409
6410 * GResolver: add support for MX, TXT, NS and SOA records
6411
6412 * GSocketControlMessage: Don't warn about unknown messages
6413
6414 * GIO:
6415  - implement GSeekable for the data and buffered stream classes
6416  - implement GPollable for many more classes as well
6417  - fix GConverterInputStream infinite loop when fill_buffer returns an error
6418  - fileinfo: document the correct type for trash::orig-path
6419
6420 * test coverage improvements and general fixes
6421
6422 * new 2.34 stuff: version macros, docs index section, etc.
6423
6424 * Build:
6425  - add --disable-modular-tests build option
6426  - don't require host binaries if tests are not enabled for cross-builds
6427
6428 * Translations updated
6429  Brazilian Portuguese
6430  Bulgarian
6431  Czech
6432  French
6433  Galician
6434  German
6435  Hebrew
6436  Hindi
6437  Italian
6438  Norwegian bokmål
6439  Polish
6440  Russian
6441  Russian
6442  Serbian
6443  Simplified Chinese
6444  Slovenian
6445  Spanish
6446  Telugu
6447
6448 Overview of changes from GLib 2.32.0 to 2.32.1
6449 ==============================================
6450
6451 * Bugs fixed:
6452  670254 glib-2.30.2: Fails /GDateTime/new_from_unix test
6453  672541 glib-compile-resources prepends --sourcedir to absolute paths
6454  673139 URL to mailing lists in README incorrect
6455  673174 g_input_stream_read[_finish]: document returning 0 on EOF
6456  673191 glib/gchecksum.c warning: dereferencing type-punned pointer...
6457  673216 [W32] gtestutils does not use path separators consistently
6458  673439 Properly deprecate g_value_{set,get}_char
6459  673612 Fails to decode dictionaries wrapped in two layers of array
6460  673803 gclosure: Support return values of GVariants
6461  669285 glib/tests/markup-parse fails under non-english locale
6462  673911 gio-2.0.pc lists full path to executables, breaking cross com..
6463  673762 gnextstepsettingsbackend.c:343: error: parse error before 'in'
6464
6465 * Updated translations:
6466  Belarusian
6467  British English
6468  Bulgarian
6469  Catalan
6470  Czech
6471  French
6472  German
6473  Hebrew
6474  Hindi
6475  Hungarian
6476  Italian
6477  Japanese
6478  Kannada
6479  Latvian
6480  Lithuanian
6481  Marathi
6482  Norwegian bokmål
6483  Odia
6484  Polish
6485  Serbian
6486  Slovenian
6487  Spanish
6488  Swedish
6489  Telugu
6490
6491
6492 Overview of changes from GLib 2.31.22 to 2.32.0
6493 ===============================================
6494
6495 * Bugs fixed:
6496  671988 Quickly registering / unregistering objects on bus...
6497  672095 glib needs stable sort function
6498  672406 glib/tests/include.c fails to build on FreeBSD
6499
6500 * Updated translations:
6501  Telugu
6502
6503
6504 Overview of changes from GLib 2.31.20 to 2.31.22
6505 ================================================
6506
6507 * Bugs fixed:
6508  531901 Use __builtin_bswap* for GUINT*_SWAP_LE_BE if building...
6509  653167 Out of tree build is broken on windows
6510  668973 Test /gvariant/parser fails on Solaris 10
6511  669797 gvfs now lists its fuse mounts
6512  670846 deadlock: GStreamer-WARNING **: wrong STREAM_LOCK count 0
6513  671664 gio-querymodules: unlink instead of writing empty cache
6514  671676 Glib can't be cross-compiled any more after merge of...
6515  671918 gnome-shell is inaccessible unless started while an AT...
6516  671942 GSocketMsgFlags: annotate as a flags
6517  671997 Unix signal handling assumes that volatile 1-byte writes...
6518  672013 GSimpleAsyncResult: support reliable cancellation
6519  672026 default log output should include pid and/or prgname
6520  672095 glib needs stable sort function
6521  672201 G_SPAWN_SEARCH_PATH should continue on ENODEV and ETIMEDOUT
6522  672239 request NO_REPLY from g_dbus_connection_call() with no as...
6523  672249 gdbusproxy leaks asyncresult in an error case instead of...
6524
6525 * Translation updates:
6526  Assamese
6527  British English
6528  Catalan
6529  Catalan (Valencian)
6530  Danish
6531  Esperanto
6532  Finnish
6533  French
6534  German
6535  Hungarian
6536  Korean
6537  Lithuanian
6538  Norwegian bokmål
6539  Polish
6540  Portuguese
6541  Russian
6542  Traditional Chinese
6543
6544
6545 Overview of changes from GLib 2.31.18 to 2.31.20
6546 ================================================
6547
6548 * Update to Unicode 6.1
6549
6550 * Update PCRE to 8.30
6551
6552 * Deprecations are now versioned, and new API is
6553   marked with the version it was introduced.
6554   Use these with GLIB_VERSION_{MIN,MAX}_REQUIRED
6555
6556 * The performance of signal emissions has been
6557   improved for simple cases
6558
6559 * Bugs fixed:
6560  529806 Cannot build in 64-bit Mac OS X due to libiconv
6561  580873 Documentation of register type functions incomplete
6562  592666 Document how to unset an attribute
6563  597785 g_type_class_add_private code snippet is a bad example
6564  621368 glib-2.24.1: FAIL: run-assert-msg-test.sh when updating...
6565  622149 --disable-regex breaks glib2 build
6566  639873 GBinding: Crash when binding two properties on the same...
6567  640202 For GLIB v. 2.23.6 and above: impossibility to build mu...
6568  668295 Need a way to classify GVolume instances
6569  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
6570  670542 Add version information for deprecations
6571  670557 gvaluetransform: Fix an infinite loop with GFlagsValue...
6572  670721 global variable for signal ID should be hidden
6573  670751 IceWM build fails due to the G_DEPRECATED_FOR macro
6574  670909 g_dbus_connection_call leaks when it receives an error...
6575  670922 Include path to gdbus-codegen in the pkgconfig file
6576  670969 GSequence lookup may fail if there was no sort prior to...
6577  671025 Constants and identifiers starting with a number are no...
6578  671270 make distclean failures
6579  671281 glib-compile-resources.xml is missing from the dist tar...
6580
6581 * Translation updates:
6582  Basque
6583  Belarusian
6584  Brazilian Portuguese
6585  Bulgarian
6586  Galician
6587  Hebrew
6588  Lithuanian
6589  Persian
6590  Punjabi
6591  Serbian
6592  Simplified Chinese
6593  Slovenian
6594  Telugu
6595  Traditional Chinese
6596  Uyghur
6597  Vietnamese
6598
6599
6600 Overview of changes from GLib 2.31.16 to 2.31.18
6601 ================================================
6602
6603 * GDBusProxy has now a flag, G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,
6604   which can be set to make GDBus automatically reload
6605   changed properties even if the propertychanged signal
6606   does not contain the new values.
6607
6608 * GApplication puts non-unique applications on the bus
6609
6610 * GApplication now has g_application_quit()
6611
6612 * g_async_queue_timed_pop has been deprecated in favor of
6613   the new g_async_queue_timeout_pop, which uses relative
6614   delays in microseconds instead of a GTimeVal.
6615
6616 * a huge number of API documentation fixes
6617
6618 * Bugs fixed:
6619  647986 put non-unique apps on D-Bus
6620  658484 vpn connection vs NetworkSecretDialog
6621  664237 GDateTime falls back to UTC if TZ is set
6622  669329 gthread-win32: update for g_get_monotonic_time() changes
6623  669330 glocalfile: fix error code when opening a directory on win32
6624  669372 glib/tests memory leaks.
6625  669412 mem leak in g_environ_unsetenv
6626  669538 Fix compilation of glib-compile-resources.c on Windows
6627  669544 gdbus-codegen example introspection XML is not complete
6628  669595 glib-mkenums: fix handling of forward enum declarations
6629  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
6630  669671 gobject: use #pragmas to avoid deprecated function warnings
6631  669689 Retrieve cwd and environ in local GApplicationCommandLine
6632  669810 socket/win32: flush pending read before signaling HUP
6633  669865 g_regex_fetch()
6634  670085 memory leak in g_output_stream_write_async
6635  670138 gbytes.h is missing the G_BEGIN/END_DECL guards
6636  670485 Simplify session API (shared bug with gtk+)
6637
6638 * Updated translations:
6639  Belarusian
6640  Danish
6641  Galician
6642  Serbian
6643  Telugu
6644  Hebrew
6645
6646
6647 Overview of changes from GLib 2.31.14 to 2.31.16
6648 ================================================
6649
6650 * GResource:
6651  - The resource compiler can now convert pngs into
6652    pixel data that can be used without parsing at runtime
6653    (requires gdk-pixbuf-pixdata to be present)
6654
6655 * Bugs fixed:
6656  669123 resource compiler: failing to-pixdata should...
6657  669173 resource: fix xml preprocess entity handling
6658  669224 Cross-compilation broken by data-to-c
6659  669253 gsettings set buggy on array values
6660  669334 fix memory leak in bookmark file parser
6661
6662 * Translation updates:
6663  Norwegian bokmål
6664  Spanish
6665
6666
6667 Overview of changes from GLib 2.31.12 to 2.31.14
6668 ================================================
6669
6670 * GResource:
6671  - GLib now includes a commandline utility, gresource,
6672    to explore resources in ELF files
6673  - The resource compiler can now optionally strip
6674    ignorable whitespace from XML resources
6675  - The resource compiler can now generate build dependencies
6676  - The resource compiler will now autoselect output formats
6677
6678 * GApplication:
6679  - The menu markup parser API has been dropped, the
6680    menu XML support lives in GTK+ now
6681
6682 * GValueArray has been deprecated
6683
6684 * Bugs fixed:
6685  626258 N-ary Trees - 'nodes' can be inserted before and after...
6686  634232 Core Dump / Aborted using g_key_file_to_data
6687  639099 schema compiler chokes on valid schema
6688  667228 Deprecate GValueArray
6689  667243 Add an element clear function to GArray
6690  667929 glib-compile-resources: xml resources doesn't need to...
6691  668250 g_date_time_format() produces a non-UTF8 string
6692  668468 'IP_ADD_SOURCE_MEMBERSHIP' undeclared
6693  668532 resources: add dependency generator to the resource compiler
6694  668539 resources: compiler should autoselect output format...
6695  668561 gresource-tool not internationalized
6696  668572 glib_cv_g_atomic_lock_free config.cache setting not honored...
6697  668650 GRealArray->clear_func should be initialized
6698  668756 GKeyFile: allow loading from empty strings
6699  668857 fix couple of typos in comments
6700  669024 goption: implement platform_get_argv0() for OpenBSD
6701
6702 * Updated translations:
6703  Galician
6704  Norwegian bokmål
6705  Spanish
6706  Traditional Chinese
6707
6708 Overview of changes from GLib 2.31.10 to 2.31.12
6709 ================================================
6710
6711 * GApplication:
6712  - Drop support for exporting menus - this functionality
6713    will be provided in GtkApplication
6714  - Add a way to create actions that change settings
6715
6716 * Bugs fixed:
6717  629503 Add async versions of g_unix_connection_{receive,send}_credentials
6718  656301 glib-compile-schemas should not create an empty file
6719  668071 mingw-gcc build fails on gio/gsocket.[c|h]
6720  668118 the big appmenu switcheroo
6721  668158 base64 encode and line termination
6722  668163 GDBusConnection: note that exit-on-close is sometimes TRUE
6723  668269 gsignal: add g_signal_handlers_disconnect_by_data
6724  668279 create GAction from GSettings
6725
6726 * Translation updates:
6727  Norwegian bokmål
6728
6729
6730 Overview of changes from GLib 2.31.8 to 2.31.10
6731 ===============================================
6732
6733 * GResource:
6734  - A new facility to allow linking data files into binaries
6735    and make them available as resources
6736  - Resources are compiled using glib-compile-resources
6737  - GIO supports resource:/// uris to access resources
6738
6739 * Bugs fixed:
6740  619126 Missing dependency libs
6741  658315 g_key_file_get_keys() should set length to 0...
6742  660371 is it ever valid to have 0 as a GError domain?
6743  666700 Add some missing (allow-none) annotations
6744  667375 GAsyncInitable subclassing (and async subclassing...
6745  667447 Missing many introspection annotations
6746  667790 Protect call to pthread_condattr_setclock with define
6747  667938 wrong gtypes generated for empty flags enums
6748
6749 * Translation updates:
6750  Hebrew
6751  Spanish
6752
6753
6754 Overview of changes from GLib 2.31.6 to 2.31.8
6755 ==============================================
6756
6757 * GObject:
6758  - The type checks for overriding properties have been loosened.
6759    In particular, it is now possible to add the CONSTRUCT flag
6760    to an overridden property
6761  - GWeakRef is a new API for weak references; unlike g_object_weak_ref
6762    and g_object_add_weak_pointer, it is thread-safe.
6763
6764 * GHashTable has grown new convenience api for use as a set:
6765   g_hash_table_add, g_hash_table_contains
6766
6767 * GSocketConnection has gained API for managing connection status
6768
6769 * GSettings: a native OS X backend has been added, under the
6770   name 'nexstep'
6771
6772 * Bugs fixed
6773  455640 Something fishy with GRegex and unicode
6774  548954 weak references are not threadsafe
6775  625751 Add G_FILE_ATTRIBUTE_FILESYSTEM_USED
6776  658871 gbacktrace: g_get_prgname () isn't called for a NULL argu...
6777  664069 gvariant: Never break out of g_variant_iter_loop
6778  664830 g_strescape doesn't natively handle \v (vertical tab)
6779  665211 GDBusConnection singleton access can race with disposal
6780  665805 Add GSocketClient::action, for tracking socket client status
6781  666116 some tests provoke undefined behaviour, which is undesira...
6782  666422 Unreachable code in gio gnetworkmonitornetlink.c
6783  666551 Crash in g_thread_xp_SleepConditionVariableSRW
6784  666595 menu parser disallows id='' on submenu and section
6785  666615 loosen property override flag restrictions
6786  666616 gobject: fix property override type checks
6787  666803 g_utf8_validate() fails to validate strings with known size
6788  666804 g_ateaxit deprecation warning in devhelp points in wrong ...
6789  666951 g_mkdtemp: Since version incorrect in docs
6790  666978 Fails to compile glib applications with ISO C90 compiler
6791  667098 ginetaddressmask leaks its address property
6792  667225 GSocket: add missing type checks to public methods
6793  667226 GSocket: fix an error return value
6794  667279 Sometimes crashes when launching commandline-crea...
6795  667285 Wrong keyname listed in documentation for g_deskt...
6796  667331 Use g_queue_free_full() convenience function
6797  667420 GHashTable GDB pretty printing is broken
6798
6799 * Updated translations
6800  Belarusian
6801  Bulgarian
6802  Hebrew
6803  Norwegian bokmål
6804  Norwegian Nynorsk
6805  Spanish
6806  Vietnamese
6807
6808
6809 Overview of changes from GLib 2.31.4 to 2.31.6
6810 ==============================================
6811
6812 * GApplication no longer has APIs for setting menus.  Those have been
6813   moved to GtkApplication.
6814
6815 * the GActionGroup import/export functionality has been decoupled from
6816   GApplication by the introduction of a new interface for the purpose of
6817   handling platform data: GRemoteActionGroup.  This allows Gtk to
6818   properly deal with platform data (and gdk threads) on window actions.
6819
6820 * lots of documentation improvements
6821
6822 * bug fixes and a huge number of memory leak fixes
6823
6824 * the test suite now passes on ARM and some of the GDBus testcase hangs
6825   we've been seeing have been resolved (although others could remain)
6826
6827 * g_bytes_get_data() API changed: now includes 'size' out parameter
6828
6829 * new g_queue_free_full() API similar to g_[s]list_free_full()
6830
6831 * desktop files: use standard "Keywords" now, not "X-GNOME-Keywords"
6832
6833 * gsettings commandline tool now has --schemadir option for schemas not
6834   installed in the usual place (ie: as part of plugins)
6835
6836 * Bugs fixed:
6837  643736 GApplication doesn't emit dbus signals on action updates
6838  657433 g_queue_free_full() missing
6839  664699 glib: documentation fixes
6840  665737 acquire/release gdk threads lock on incoming dbus
6841  665879 GBytes: add a size argument to g_bytes_get_data
6842  666113 various leaks in GLib, GIO are visible in the regression tests
6843  666115 various tests leak memory, obscuring real leaks in the library
6844  666145 Doc could be more explicite that g_thread_init calls can be droped
6845  666173 Configure warning - linux/netlink.h usability... no
6846  666296 Race condition in g_thread_xp_get_srwlock
6847  666415 Settings tools should allow specifying a schema directory 
6848
6849 * Translations updated:
6850  French
6851  Spanish
6852
6853 Overview of changes from GLib 2.31.2 to 2.31.4
6854 ==============================================
6855
6856 * EXPERIMENTAL: Menu support has been added to GApplication.  Menus
6857   are exported on the bus, alongside the actions that are already there.
6858   There have also been many related improvements to action group
6859   functionality.
6860
6861   These new APIs are subject to changes in the coming releases.  In
6862   particular, it seems somewhat likely that the APIs for registering
6863   menubars may change in order to accommodate windows with different
6864   types of menubars.
6865
6866 * GDBusConnection previously directly dispatched destroy notifies when
6867   unregistering objects if the current main context was the same context
6868   the object was exported on.  It now unconditionally dispatches these
6869   through an idle on the context.
6870
6871 * Clean up Requires in pc files. Linking against GIO no
6872   longer drags in gmodule. This may require dependency
6873   fixes here and there.
6874
6875 * Introduce GBytes, a data type for immutable, fixed-size
6876   byte sequences. This makes the pre-existing GBuffer
6877   API available outside GLib
6878
6879 * GDBusInterfaceSkeleton can now be exported on multiple
6880   connections
6881
6882 * Bugs fixed:
6883  600161 Do not use static GTypeInfo and GInterfaceInfo
6884  640077 GFileMonitor: Always send CHANGES_DONE_HINT after a move...
6885  641720 Misleading definition for local_command_line() in GApplic...
6886  648516 Little comment error and 2 useless lines of code
6887  651997 Dummy backend for gapplication
6888  652560 Test for g_ascii_strtod is failing
6889  662208 failure to initialize a GInitable should be considered...
6890  662718 GDBusInterfaceSkeleton should be able to export on multi...
6891  663291 GBytes: Immutable, refcounted sequence of bytes
6892  664406 Need context for a proper translation
6893  664455 Build fixes for GLib GIT master (2.31.x)
6894  664558 GDBusWorker.frozen has a value > 1 in a gboolean
6895  664559 sys/wait.h not available on windows
6896  664617 gdbus segfault error 4 in libgio-2.0.so.0.3102.0
6897  664635 GMemory{Out,In}putStream _async functions break sub-class...
6898  664809 Add command line option to gtester to allow skipping tests
6899  665067 cryptic assertion failure if nonsensical flag combinations...
6900  665184 Check ref. count before reffing/unreffing
6901  665298 Add 'Requires.private: libpcre' to glib-2.0.pc
6902  665391 update documentation around mainloops
6903  665607 ./configure is there for fiddling with cross-compile enviro...
6904  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes...
6905  665685 Add a #define for the max length of a Unicode decomposition
6906  665733 GDBusConnection holds lock while calling destroynotify
6907
6908 * Translation updates:
6909  Norwegian bokmål
6910  Spanish
6911
6912
6913 Overview of changes from GLib 2.31.0 to 2.31.2
6914 ==============================================
6915
6916 * Monotonic time is now properly supported on Windows
6917
6918 * glib-mkenums: fix @ENUMPREFIX@ with /*< underscore_name=... >*/
6919
6920 * EXPERIMENTAL: introduce new GSettingsSchema and GSettingsSchemaSource
6921   APIs for the convenience of plugin system authors and those who wish
6922   to introspect the contents of schemas.  This API may change.
6923
6924 * Improve the performance of GObject property notifies.
6925
6926 * GDBus:
6927  - fix a race when unowning a name immediately after owning it
6928  - thread safety improvements on GDBusConnection
6929  - fixes for exit-on-close functionality
6930
6931 * Deprecations:
6932  - add G_SIGNAL_DEPRECATED
6933  - don't use G_DISABLE_DEPRECATED masking for functions anymore
6934
6935 * docs
6936  - tmpl/ is finally dead for glib
6937
6938 * GIO:
6939  - GInetAddressMask: new type for internet address range matching
6940  - various GIO file and stream fixes
6941  - improvements to attribute and fileinfo handling
6942
6943 Overview of changes from GLib 2.29/2.30 to 2.31.0
6944 =================================================
6945
6946 This release contains a huge number of changes (500 commits worth).  The
6947 list below attempts to summarise, but not every change is listed.
6948
6949 * Major changes to threading and synchronisation
6950  - threading is now always enabled in GLib
6951  - support for custom thread implementations (including our own internal
6952    support for errorcheck mutexes) has been removed
6953  - a whole lot of dead code (to deal with the non-threaded case) has
6954    been ripped out.  This includes the racy path of GMainContext that
6955    caused deadlocks with respect to child process exits in
6956    single-threaded programs (such as gtester).
6957  - libgthread is now an empty shell and g_thread_init() is no longer
6958    required (and has been deprecated)
6959  - GMutex and GCond can now be statically allocated without explicit
6960    initialisation.  Dynamic allocation for these types is deprecated.
6961  - new types GRecMutex and GRWLock can also be statically allocated
6962    without explicit initialisation.
6963  - GPrivate can now be statically allocated and has an improved API.
6964    Dynamic allocation of GPrivate is deprecated.
6965  - GStaticMutex, GStaticRecMutex, GStaticRwLock, GStaticPrivate are
6966    deprecated.
6967  - GCond now uses monotonic time internally and a new API takes
6968    monotonic time for timed waits, deprecating the wallclock API
6969  - removal of the insane macro indirection used in the previous
6970    implementation of threading and synchronisation APIs
6971  - use SRWLock and CONDITION_VARIABLE APIs when available on Windows
6972    (Vista and later) and emulate them on XP
6973  - leaks of G(Static)Private-allocated data on some cases of thread exit
6974    have been fixed
6975  - simplified new thread creation API with the old API deprecated.  The
6976    concept of joinability has disappeared (all threads are joinable) as
6977    have priority levels, 'bound'ness (ie: kernel vs. userspace threads)
6978    and ability to manipulate the stack size.
6979  - GThread is now a refcounted type
6980  - other implementation details changed
6981
6982 * Move headers for some deprecated functionality to a separate
6983   deprecated/ directory.
6984
6985 * New support for attribute-based deprecations to issue compiler
6986   warnings instead of breaking the build and/or giving warnings about
6987   implicit declarations (and possibly miscompiling).
6988
6989 * GCache has been deprecated (after its last use was removed from our
6990   platform over a year ago).
6991
6992 * It is no longer possible to include individual headers (like
6993   "ghash.h") -- you must #include <glib.h>.
6994
6995 * The misguided experiment of allowing the program to stumble along with
6996   missing GSettings schemas is now over -- the abort is back.
6997
6998 * Clarify that fork() is not valid while using GMainContext.  This is
6999   because the internal resources of the GMainContext end up being shared
7000   by both processes.  We had an assert here but it was breaking existing
7001   (valid) use cases as well, so it has been removed for now.
7002
7003 * GApplication
7004   - add ::shutdown signal as logical dual to ::startup
7005   - don't use a GMainLoop: iterate the GMainContext directly (improves
7006     quit logic)
7007
7008 * Several portability fixes for Windows, OpenBSD, Solaris
7009
7010 * Add new GValue API to specifically deal in signed chars (in case the
7011   platform defines 'char' as unsigned)
7012
7013 * some new API to mitigate the problems associated with calling setenv()
7014   in a multi-threaded program
7015
7016 * Use CLOCK_MONOTONIC unconditionally if the libc has support at compile
7017   time (ie: stop checking for kernel support at runtime).
7018
7019 * pkg-config files:
7020   - drop -uninstalled variants
7021   - remove gobject dependency on gthread
7022
7023 * New macro G_ATOMIC_LOCK_FREE is defined if the atomic operations are
7024   implemented without use of a mutex.  Cleaned up atomic-related
7025   compilation issues with mingw compilers on win32 systems.
7026
7027 * SOCKS proxy and resolver improvements
7028
7029 * Fix the spelling of G_IO_FLAG_IS_WRITABLE (was WRITEABLE) and
7030   introduce a macro for backwards compatibility.
7031
7032 * GDBus:
7033   - many code generation updates and improvements
7034   - some race condition fixes, including testcase hangs
7035
7036 * GVariant:
7037   - new g_variant_new_from_fixed_array() API
7038   - substantial docs improvements/clarifications
7039
7040 * GKeyFile is now refcounted and boxed
7041
7042 * mount monitoring is now based on /proc/mounts (where available)
7043   instead of mtab
7044
7045 * new macros G_SOURCE_CONTINUE and G_SOURCE_REMOVE for returning from
7046   GSourceFunc (so you don't have to remember what TRUE and FALSE mean)
7047
7048 * use xlocale functions where available to avoid too much heavy lifting
7049   in functions like g_ascii_strtod()
7050
7051 * GMappedFile can now be created from an fd
7052
7053 * error message strings grammar/i18n fixes
7054
7055 * many docs updates
7056
7057 * Partial list of bugs closed:
7058  70598  Unify GStaticMutex and GMutex.
7059  320888 optimization for g_main_context_wakeup
7060  398418 GChildWatch race condition?
7061  527214 g_timer_elapsed() returns random values
7062  580505 add a way to set/get name for a thread
7063  583511 race condition means g_main_loop_quit() does not work
7064  590808 GKeyFile should have a refcount and a boxed type in GObject
7065  592715 Document that g_str_hash() and g_int_hash() are not NULL safe
7066  631413 Add macros for GSourceFunc return values
7067  632049 not immediately clear what g_variant_get_fixed_array expects
7068  640212 "Error stating file" is not a friendly message
7069  640293 Use xlocale functions to implement g_ascii_strtod()
7070  640975 Check that error exists before trying to set it
7071  643934 GApplication lacking a logical dual for the ::startup signal
7072  651268 assertion failed in GDBus worker thread
7073  653987 g_key_file_get_integer cannot interpret trailing spaces
7074  654412 Documentation for g_variant_get_child_value unclear
7075  654563 info capplet: Failed to calculate disk space
7076  655366 missing GSettings schemas lead to obscure crashes
7077  656621 g_spawn_*() calls executables in current directory
7078  656679 [gi] Add two annotations to gio
7079  657992 Add glib__private__() API to share between glib,gio
7080  658188 _set_as_last_used_for_type generates a broken mimeapps.list
7081  658206 gsocks5proxy.c has invalid gettext use
7082  658207 glib-compile-schemas says "can not"
7083  658558 simpleaction: Fix documentation of :enabled
7084  658683 clean up charset/language threading issues
7085  658692 add introspection annotations to g_time_val_from_iso8601()
7086  658715 Duplicite strings
7087  658769 Invalid reuse of GError in GThreadedResolver
7088  658806 sign error in string hash implementation
7089  658976 gdbus-codegen's C namespace option needs to support Ugly_Case
7090  659070 gdbus-codegen generated code segfaults when property changes
7091  659082 gdbus-codegen: Single letter namespaces get dropped from names
7092  659212 GMappedFile should fail on non-regular files
7093  659324 _SPLICE_CLOSE_TARGET doesn't mark the output stream as closed
7094  659423 Use adaptive mutexes when available
7095  659427 Move deprecated code to a separate directory
7096  659646 gdbus-codegen produce code that warnings at build
7097  659690 Possible build warning in code generated by gdbus-codegen
7098  659699 property name collision when generating code for "Connection"
7099  659754 Add API to GMappedFile that allows to pass FD
7100  659838 incorrect types in introspection for g_object_bind_property
7101  659866 pthread_rwlock_t requires defined __USE_UNIX98
7102  659870 gvalue: Fix signedness of g_value_get_char()
7103  659889 glib-2.29.92/gio-2.0.pc.in has a wrong line.
7104  659916 GObject size of 64K is not actively enforced
7105  659920 Missing setter for read/write property 'closed' of GIOStream
7106  659923 Add g_variant_new_fixed_array() function
7107  660013 Remove old g_atomic configure cruft
7108  660096 glib/rwlock tests failure (tests asserted)
7109  660130 Possible loss of user data when updating mimeapps.list
7110  660147 tracker causes g_critical in "gsettings list-recursively"
7111  660413 Make G_ASSERT_STATIC work with clang
7112  660498 Generated test code fails when the codegen changes
7113  660511 Use /proc/mounts for monitoring mounts, not /etc/mtab
7114  660536 Expose options for /etc/fstab entries
7115  660635 Deprecate g_thread_foreach
7116  660637 Pending dbus method calls not canceled on connection loss
7117  660739 kill off g_{mutex,cond}_{new,free}()
7118  660740 make GThread more standard
7119  660741 g_cond_timedwait is a disaster
7120  660743 macro wrappers for g_once_init_enter/leave
7121  660744 finish killing g_thread_init()
7122  660745 GPrivate leaks on Windows
7123  660791 [gio] Improve doc for g_file_make_directory_with_parents()
7124  660843 asyncqueue-test is broken
7125  660849 Remove cruft from g_strerror and g_strsignal
7126  660886 GDBusProxy: don't drop/complain about unknown props/signals
7127  660887 g_slice_set_config() is broken
7128  660994 Add g_main_context_ref_thread_default()
7129  661255 gio: enable test_peer regression test for OpenBSD
7130  661257 giomodules.c uses ":" instead of G_SEARCHPATH_SEPARATOR_S
7131  661318 tests use pthread without appropriate compiler/linker flags
7132  661421 Applications fail to initialize on GNU Hurd - commit
7133  661438 Implement G_GNUC_DEPRECATED/G_GNUC_DEPRECATED_FOR on Visual C++
7134  661711 Sorting keys for GDrive, GVolume and GMount instances
7135  661763 desktop-app-info: Add support for X-GNOME-Keywords
7136  661896 /gdbus/connection/life-cycle is racy
7137  661914 Gstreamer/Totem locks up
7138  662100 regression: g_dbus_connection_close() triggers exit-on-close logic
7139
7140 * Translations updates:
7141  Belarusian 
7142  Brazilian Portuguese
7143  British English 
7144  Bulgarian 
7145  Catalan 
7146  Catalan (Valencian)
7147  Czech 
7148  Danish 
7149  Esperanto
7150  French 
7151  Gujarati
7152  Hebrew 
7153  Hungarian 
7154  Italian 
7155  Japanese
7156  Lithuanian
7157  Norwegian bokmål
7158  Oriya
7159  Polish 
7160  Russian 
7161  Serbian
7162  Simplified Chinese
7163  Slovak 
7164  Slovenian
7165  Spanish 
7166  Tamil
7167  Vietnamese
7168
7169 Overview of changes from GLib 2.29.18 to 2.29.90
7170 ================================================
7171
7172 * API/ABI changes:
7173  - unix signal watches now match the API of all of the other sources
7174  - revert the addition of g_date_time_source_new () from last release
7175
7176 * networking and other fixes for Solaris
7177  - we no longer support symbolic port names (ie: from /etc/services)
7178  - check if -lsocket is needed
7179  - fix g_socket_details_from_fd()
7180  - avoid getmntinfo
7181  - fix some harmless warnings
7182
7183 * GDateTime improvements:
7184  - generally improved standards compliance (with C99)
7185  - support C99-specified format strings: %g, %G, %V, %c, %C, %w
7186  - consult the locale for the preferred 12-hour time format (%r)
7187  - drop support for non-standard %N and broken %W
7188  - better support for formatting non-POSIX (eg: Arabic) numerals
7189  - locale-related test case fixups, and fix some leaks
7190
7191 * GTlsInteraction: add interaction method invocation guarantees
7192
7193 * gdbus-codegen: post-process all interfaces when parsing >1 file
7194
7195 * make GMainLoop, GMainContext and GSource boxed types
7196
7197 * fix a race condition in the first use of g_get_monotonic_time()
7198
7199 * lots gtk-doc cleanups
7200
7201 * better intltool compatibility when generating pot file
7202
7203 * avoid GCC-specific compiler options when not using GCC
7204
7205 * Translation updates:
7206  Belarusian
7207  Brazilian Portuguese
7208  Canadian English
7209  Galician
7210  Indonesian
7211  Korean
7212  Lithuanian
7213  Norwegian bokmål
7214  Portuguese
7215  Spanish
7216  Swedish
7217
7218 Overview of changes from GLib 2.29.16 to 2.29.18
7219 ================================================
7220
7221 * GDateTime is now respecting LC_TIME when formatting
7222
7223 * GTimeZoneMonitor has been removed again
7224
7225 * A new API for wallclock functionality has been added:
7226   g_date_time_source_new(). This API is still experimental
7227   and may be changed or removed before 2.30.
7228
7229 * Bugs fixed:
7230  628904 Add credential support for FreeBSD and fix a socket issue
7231  650763 gdbus-codegen is broken with python 2.7
7232  655129 GDateTime could provide api for implementing wall clocks
7233  656341 gtlsconsoleinteraction.c uses getpass() which isn't avail...
7234  656387 GCancellable can be used concurrently
7235  656443 Make GTlsInteraction ask_password cancellable
7236  656675 void functions should not return in glib 2.29.16
7237  656772 g_variant_compare for uint64 incorrect
7238  656914 Load GIO_EXTRA_MODULES first, and ignore duplicates
7239  657083 The header langinfo.h is not available on all systems
7240  657084 gfileutils: fix docs/annotations for temp file methods
7241  657138 Some files missing in POTFILES.in
7242  657206 GInputStream leaked in g_file_icon_load_async()
7243  657243 g_cancellable_set_error_if_cancelled() documentation
7244  657274 Use detected PYTHON variable as shebang for gdbus-codegen
7245  657336 Speling fixes for glib found with codespell
7246  657452 plural forms needed
7247  657454 Translation comment needed
7248  657540 Print out file:// URL to coverage HTML report after building
7249  657593 g_test_trap_fork calls close(-1)
7250  646082 Addresses from GSocket should be normalized before returning
7251  657517 fix gio/tests/gdbus-peer on bsd
7252
7253 * Translation updates:
7254  Brazilian Portuguese
7255  Galician
7256  Norwegian bokmål
7257  Punjabi
7258  Russian
7259  Serbian
7260  Spanish
7261  Swedish
7262  Traditional Chinese
7263  Uighur
7264
7265
7266 Overview of changes from GLib 2.29.14 to 2.29.16
7267 ================================================
7268
7269 * GTlsDatabase: an abstract class that provides support
7270   or certificate and key lookup. An implementation will
7271   be provided in glib-networking
7272
7273 * GHmac: Support or HMAC digests
7274
7275 * Misc new API:
7276  - g_ptr_array_add_full: creates a GPtrArray with
7277    a preallocated size and a destroy function
7278  - g_desktop_app_info_get_show_in: checks if a GDesktopAppInfo
7279    should be shown in a given desktop environment
7280  - g_mkdtemp, g_mkdtemp_full, g_dir_make_tmp: create
7281    temporary directories
7282
7283 * Unify thread wakeup implementations of GMainContext
7284   and GCancellable, and use eventfd for it when available
7285
7286 * Show mounts in $XDG_USER_DIR in addition to /media and $HOME
7287
7288 * Bugs fixed:
7289  636572 GTlsCertificateDB
7290  644601 Some tests need a running dbus session
7291  652284 deal with small key lengths
7292  652827 glib-2.29.8 no longer builds with mingw.org's toolchain
7293  653063 PEM parser fails parsing private key when put first
7294  654078 Fail to static linking with Glib library
7295  654450 New functions: g_ptr_array_new_full()
7296  654793 Add G_VALUE_INIT
7297  655044 GDesktopAppInfo: Add g_desktop_app_info_get_show_in()
7298  655148 gdbusconnection is broken when compiling with mingw
7299  655241 glocalfile.c no longer compiles with MinGW GCC
7300  655598 g_cancellable_get_fd: silently return -1 for NULL cancellable
7301  655664 gdbus should not abort if no dbus session is available
7302  655769 Use ZLIB_CFLAGS when compiling gio
7303  656031 Improve GVariant annotations
7304  656048 glib-codegen requires Python >= 2.5
7305  656151 configure test logic inverted, doesn't match comments
7306  656152 GCC only syntax used, yet other compilers allowed by configure.
7307  656162 allow use of lcov 1.9 for coverage
7308  656282 GDBusProxy: uninitialized local variables can be freed
7309  656283 Failing tls connection cause assertion
7310  118563 Add g_mkdtemp in the spirit of g_mkstemp
7311  636405 Add g_return_if_fail() to g_settings_bind_with_mapping()
7312  656039 race condition between GDBusProxy signals and public API
7313  656492 g_io_channel_new_file failure (open(2) behavior wrt POSIX)
7314
7315 * Translation updates:
7316  Bulgarian
7317  Esperanto
7318  French
7319  Galician
7320  German
7321  Hebrew
7322  Indonesian
7323  Italian
7324  Norwegian bokmål
7325  Russian
7326  Spanish
7327  Swedish
7328
7329
7330 Overview of changes from GLib 2.29.12 to 2.29.14
7331 ================================================
7332
7333 * Unicode improvements
7334  - add g_unicode_script_{to,from}_iso15924
7335  - add G_UNICODE_SPACING_MARK define
7336  - more normalisation improvements
7337  - stop using deprecated g_unicode_canonical_decomposition()
7338
7339 * GParamSpec:
7340  - mark the 'name' field as 'const' and add a comment to the header to
7341    help avoid future problems caused by bad hacks
7342
7343 * Merge some (modified) patches from Debian:
7344  - 03_blacklist-directories.patch
7345    - add some blacklisted mount directories
7346  - 60_wait-longer-for-threads-to-die.patch
7347    - sleep longer in a test case, if needed to avoid failing
7348
7349 * Units policy change: prefer use of SI units
7350  - deprecate g_format_size_for_display, add g_format_size(_full)
7351
7352 * GSettings: don't call g_error() when the schema is missing
7353
7354 * GVariant support for arrays of object paths:
7355  - new g_variant_{new,get,dup}_objv API
7356  - support for g_variant_{new,get} '^ao' and '^a&o' similar to '^as'
7357
7358 * GDBus:
7359  - use new improved array-of-objects support and pass 'ao' as char**
7360    instead of GVariant*
7361  - improve handling of 'h' type (Unix file descriptor index)
7362
7363 * GIO:
7364  - fix compilation without USE_STATFS and USE_STATVFS
7365
7366 * Documentation fixes
7367
7368 * Bugs fixed:
7369  622921 Migrate from dbus-glib to glib's GDBus
7370  648271 Add g_unicode_script_to_iso15924()
7371  654948 Stop using deprecated g_unicode_canonical_decomposition()
7372  654988 g_atomic_int_add should document behaviour change
7373  655025 #define G_UNICODE_SPACING_MARK G_UNICODE_COMBINING_MARK
7374  655076 normalization misses some Full_Composition_Exclusion=True. 
7375
7376 * Translations updated:
7377  Spanish
7378
7379 Overview of changes from GLib 2.29.10 to 2.29.12
7380 ================================================
7381
7382 * Add new API to do Unicode (de-)composition in atomic steps,
7383   for use in Harfbuzz.
7384
7385 * Bugs fixed:
7386  615895 (indirectly) support non-NULL-terminated regexes in GRegex
7387  617949 glib trunk fails to compile on Solaris w/ Studio 12...
7388  620423 Document the possibility to unset attributes
7389  627974 Floating reference headaches
7390  644687 Not finding cross-links in current doc set
7391  649246 g_output_stream_splice() cannot be used on 32-bit machines...
7392  653841 a helper script to build glib from git master on win32
7393  653935 g_slist_free_full/g_list_free_full iterates twice in the list
7394  654017 tests: fix glib_translations_work() in gsettings unit test
7395  654085 Don't needlessly use "echo -e" when creating .def files
7396  654195 Add g_unichar_compose() and g_unichar_decompose()
7397  654232 GCancellable eventfd problems
7398  654394 suspicious use of floating references in GDBusInterfaceSkeleton
7399  654536 GSettings: lift key name length restriction to 64
7400  654627 GParamSpec: intern property names
7401  654651 Better g_unicode_canonical_decomposition()
7402  654917 Make g_cclosure_marshal_generic the default signal handler
7403
7404 * Translation updates:
7405  Belarusian
7406  Finnish
7407  Korean
7408  Latvian
7409  Lithuanian
7410  Norwegian bokmål
7411  Turkish
7412
7413
7414 Overview of changes from GLib 2.29.8 to 2.29.10
7415 ===============================================
7416
7417 * New features:
7418  - g_desktop_app_info_get_nodisplay: a function that is required
7419    to port gnome-menus to GDesktopAppInfo
7420  - g_hash_Table_iter_replace: new function to replace a value
7421    while iterating over a hash table
7422  - g_utf8_substring: convenience API to extract substrings from
7423    UTF-8 strings
7424  - g_action_group_add_entries: convenience API for creating lots
7425    of actions quickly
7426  - Use eventfd instead of pipes for waking up main contexts and
7427    for cancellation when available
7428  - GMatchInfo is now a refcounted boxed type
7429
7430 * API changes in GAction:
7431  - the 'set_state' entry in the GActionInterface vtable has been
7432    renamed to 'change_state
7433  - g_action_set_state has been renamed to g_action_change_state
7434  - the 'state' property has been changed to read-only
7435  - GSimpleAction can no longer be subclassed
7436
7437 * Bug fixes
7438  647796 g_variant_new_variant is not marked as constructor
7439  652072 gmain: make use of signalfd()
7440  652168 Crosscompiling Fails if build<=2.24 and host >2.24
7441  652750 make dist fails
7442  652758 GDataInputStream: Clarify g_data_input_stream_read_line docs...
7443  652822 Add a g_hash_table_iter_replace
7444  652897 tiny docs clarification for g_utf8_to_ucs4_fast
7445  653140 gmain: use Linux eventfd() for main context wake up
7446  653429 drop AM_MAINTAINER_MODE or enable it by default
7447  653484 GAsyncCallbacks should default to allow-none
7448         Add missing fundamental types to the generic marshaller
7449
7450 * Translation updates
7451  Belarusian
7452  Galician
7453  Russian
7454
7455 Overview of changes from GLib 2.29.6 to 2.29.8
7456 ==============================================
7457
7458 * Bug fixes
7459  646608 export_symbols variable for gio dynamic library is wrong
7460  646635 Fix introspection of GLib
7461  647930 Documentation: GDataInputStream _read_upto() version
7462  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
7463  651920 Improve qsort_r detection
7464  651959 gbitlock: "asm goto" is not available in gcc < 4.5
7465  651998 gdbus-codegen: Use relative Python imports
7466  652000 Fix for gatomic.c on Windows/MSVC
7467  652002 Proposal to clean up gvaluetransform.c for MSVC
7468  652025 g_dbus_connection_register_object: error is not set...
7469  652081 Typos in a GBinding warning message
7470  652197 Improper handling of double values in GDBusMessage
7471         Fix a deadlock in gobject finalization
7472
7473 * Translation updates:
7474  Czech
7475  Galician
7476  German
7477  Hebrew
7478  Norwegian bokmål
7479  Spanish
7480  Uighur
7481
7482
7483 Overview of changes from GLib 2.29.4 to 2.29.6
7484 ==============================================
7485
7486 * Atomic operations have been rewritten from scratch to make use
7487   of gcc builtins where possible. As a side-effect of this, calls
7488   to g_atomic_ API with explicit casts may now be problematic; if
7489   that happens to you, try first to remove the casts. Another
7490   side-effect of the rewrite is that g_atomic_int_exchange_and_add
7491   has been deprecated in favor of g_atomic_int_add.
7492
7493 * A full set of atomic operations on pointers has been added,
7494   including bit locks in pointer-size locations.
7495
7496 * Access to quarks is now lockless
7497
7498 * GObject data scalability has been greatly improved
7499
7500 * g_data_time_format now supports alternative digits and padding
7501
7502 * Introspection improvements:
7503  - Add a boxed type for GVariantBuilder
7504  - Annotation fixes in GDBus, GVariant, g_base64_
7505
7506 * Bugs fixed:
7507  502560 g_rand_double_range returns 'inf'
7508  612729 g_mkdir_with_parents can fail if the directory already exists
7509  617491 g_once() implementation is inefficient
7510  619418 Add a performance test for UTF-8 decoding functions
7511  619435 Make g_utf8_to_ucs4_fast() yet faster
7512  626549 G_STATIC_ASSERT_EXPR
7513  631231 bitlock: Fix detection and usage of futexes with Bionic
7514  632294 g_queue_remove() should return a boolean
7515  640518 GMainLoop has quadratic complexity when all pollfd's...
7516  642026 Race condition in g_static_private_free
7517  646635 Fix introspection of GLib
7518  648678 g_date_time_format(): support %O flags for localized numbers
7519  649480 Use MSG_CMSG_CLOEXEC in recvmsg in gio/gsocket.c
7520  649506 GTestFunc et al lacking Since tag
7521  649657 Don't return gboolean for functions that throw
7522  649775 glib-gio-gdbuscodegen-Makefile.patch
7523  649915 gsettings accepts unquoted strings longer than two characters
7524  649973 gthread: build unix tests only on unix
7525  649988 gdbus-codegen: Drop dependency on argparse
7526  650078 forkbomb building glib/tests/protocol
7527  650211 Optimization in key file parsing
7528  650236 Application over DBus implements action state incorrectly
7529  650345 g_key_file_has_key_full: New function to fix g_key_file_has_key...
7530  650458 reduce overhead in g_object_set/get_data
7531  650459 hash table consistency while calling destroy notify funcs
7532  650688 enforce rules about hash table modification
7533  650823 expand the set of atomic ops
7534  650874 codegen chokes on docs
7535  650882 use stdout instead of stderr for informational messages
7536  650884 fix compilation with gcc2
7537  650885 implement glib credentials on OpenBSD (hackish)
7538  650935 G_GNUC_MAY_ALIAS and atomic ops
7539  651009 minor documentation fix
7540  651034 Regarding g_cond_wait after g_thread_pool_push in gthreadedresolver
7541  651133 race condition in GDBusConnection's emit_signal_instance_in_idle_cb
7542  651141 hashtable infinite loop
7543  651219 fix path to true(1) on OpenBSD
7544  651223 Fix some compile warnings on OpenBSD
7545  651327 Minor fixes for the gsocket API
7546  651467 Add pointer sized bitlocks
7547  651650 gdbus: Avoid busy wait loop
7548  651725 gmain: Cleanups and a new test case
7549  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
7550
7551 * Updated translations:
7552  Catalan (Valencian)
7553  Esperanto
7554  Hebrew
7555  Hungarian
7556  Russian
7557  Spanish
7558
7559
7560 Overview of changes from GLib 2.29.2 to 2.29.4
7561 ==============================================
7562
7563 * GDBus:
7564  - Includes several new types to support modeling D-Bus
7565    objects and interfaces more fully, and also introduces
7566    an 'object manager' pattern:
7567    GDBusInterface, GDBusObject, GDBusObjectManager
7568    These interfaces have client-side implementations:
7569    GDBusProxy, GDBusObjectProxy, GDBusObjectManagerClient
7570    And server-side implementations:
7571    GDBusInterfaceSkeleton, GDBusObjectSkeleton, GDBusObjectManagerServer
7572  - The new gdbus-codegen utility uses these new classes
7573    to generate C code and documentation from D-Bus interface
7574    descriptions in XML
7575
7576 * GTest:
7577  - There is now a g_test_fail() function to mark
7578    tests as failed
7579
7580 * GDesktopAppInfo
7581  - Now has a binding-friendly filename property
7582  - Other new API to more fully expose desktop file contents:
7583    g_desktop_app_info_get_categories(),
7584    g_desktop_app_info_get_generic_name()
7585
7586 * GHashTable:
7587  - Several optimizations to reduce space consumption of
7588    large hash tables, in particular tables that are used
7589    to store sets.
7590
7591 * Unix-specific APIs:
7592   GLib now installs a separate header, glib-unix.h, that is
7593   meant to collect Unix-specific APIs. For now, it contains
7594   g_unix_open_pipe(), g_unix_set_fd_non_blocking() for dealing
7595   with pipes and fds, as well as APIs to create mainloop
7596   sources which can trigger callbacks on certain Unix
7597   signals (SIGTERM, SIGHUP, SIGINT).
7598
7599 * Bugs fixed:
7600  631379 GDBus nonce-tcp test failing
7601  632631 GLib-CRITICAL **: g_variant_new_string: assertion `g_utf8_validate (string, -1, NULL)' failed
7602  635694 gdbus aborting due to unauthorized socket in DBUS_SESSION_BUS_ADDRESS
7603  637561 Crash when using G_DBUS_SERVER_FLAGS_RUN_IN_THREAD
7604  642935 g_date_time_format() prints wrong value for %z and timezone -0800
7605  643134 g_dbus_message_copy
7606  644941 glib-unix: New Unix-specific API
7607  646013 g_hash_table_remove_all_nodes optimization
7608  646309 glib cannot be cross-compilled for mingw32
7609  646435 GTimeZone doesn't seem to be thread-safe
7610  646957 GIO chained calls don't work with a thread default context
7611  647594 README link to mailing list is broken
7612  647602 Cannot connect to remote message bus via TCP
7613  647746 The GSocketService documentation is incomplete.
7614  647826 API: gtester: Add g_test_fail()
7615  647903 GDesktopAppInfo: Add g_desktop_app_info_get_categories()
7616  648416 g_app_info_create_from_commandline ignores SUPPORTS_STARTUP_NOTIFICATION
7617  648423 Support G_DEBUG=trap-warnings
7618  648425 GDesktopAppInfo: Add "filename" property for bindings
7619  648966 Update g_unichar_iswide and g_unichar_iswide_cjk
7620
7621 * Updated translations
7622  Norwegian bokmål
7623  Spanish
7624  Turkish
7625  Uighur
7626
7627
7628 Overview of Changes from GLib 2.28.0 to 2.29.2
7629 ==============================================
7630
7631 * GApplication
7632  - The documentation has been enhanced and clarified
7633  - An opt-out for uniqueness has been added: G_APPLICATION_NON_UNIQUE
7634  - GApplication now syncs settings before g_application_run() returns
7635
7636 * GDBus
7637  - Interface lookups are now happening in constant time
7638  - Signature checking and handling of various unexpected
7639    situations has been improved
7640
7641 * GVariant
7642  - The format accepted by the GVariant parser has beend documented
7643  - GVariant accepts G_VARIANT_TYPE_VARDICT for a{sv}
7644
7645 * GDateTime:
7646  - The return value of g_datetime_compare() has been fixed to
7647    match strcmp() semantics
7648  - In order to handle problems with changing timezones, a GTimeZoneMonitor
7649    has been added to GIO, and g_time_zone_refresh_local() can be
7650    called to update the cached information about the local timezone
7651
7652 * GOption now uses /proc/self/cmdline to set the program name instead
7653   and only falls back to "<unknown>" if that is unavailable
7654
7655 * GSettings:
7656  - The schema compiler now warns about references to non-existing schemas
7657
7658 * Commandline utilities are now fully translated
7659
7660 * Signals can now indicate that collecting their arguments must
7661   always happen, even in the absence of connected signal handlers,
7662   using the G_SIGNAL_MUST_COLLECT flag.
7663
7664 * Bugs fixed:
7665  635099 Memory leak in gdbus introspection when parsing xml
7666  640489 $ and ^ do not match lines if G_REGEX_MULTILINE|G_R...
7667  642042 Overriding GDBus org.freedesktop.DBus.Properties im...
7668  642052 g_timeout_add(_seconds) cannot handle large intervals
7669  642490 notify_desktop_launch() "g_variant_new_bytestring:...
7670  613269 g_type_get_qdata() doesn't work as I expected on subtypes
7671  624943 G_VALUE_NOCOPY_CONTENTS is undocumented
7672  637738 object_interface_check_properties never actually executes
7673  638185 GIOCondition should be annotated as "flags"
7674  639478 GDBusServer's g_dbus_server_new_sync() function should just...
7675  641755 Add g_settings_get/set_uint() helpers
7676  641768 dconf gsettings backend silently drops writes if it can't...
7677  642797 g_app_info_get_default_for_type() broken for subtypes
7678  642825 Unnecessary assertion failure in g_option_context_parse()
7679  642944 NULL key lookup using g_hash_table_lookup_extended()
7680  643074 Incorrect documentation for g_socket_receive() and g_socket...
7681  643197 g_application_id_is_valid docs imply no valid ids
7682  643468 GApplication docs: Warn that handling "command-line" means...
7683  643478 GApplication::local_command_line vfunc documentation seems wrong
7684  643624 Can g_variant_unref() on an already free'd variant
7685  643649 g_application_run() should say that argc/argv can be NULL
7686  643780 shouldn't need to create an action group to use actions...
7687  643795 g_timeout_add_seconds fires with intervals 1 second longer...
7688  644309 Program name is not set when using GtkApplication
7689  644428 Crash in failure section of g_markup_collect_attributes()
7690  644465 undefined reference to `_usleep'
7691  644552 g_timeout_add_seconds(1, ...) may have a latency of up to 2...
7692  644607 Correct internal definition of C_()
7693  645789 annotations for g_file_*_contents
7694  646039 g_settings_list_children() returns child that cannot be opened
7695  646310 Accept range with only min or max
7696  646420 g_dbus_method_invocation_get_parameters() docs should say...
7697  646843 occasional abort on autologin
7698  646985 add G_APPLICATION_NON_UNIQUE flag
7699  647579 gsettings: Implement reset-recursively
7700  647600 gsettings description has typo
7701
7702 * Translation updates
7703  Afrikaans
7704  Bulgarian
7705  Bengali India
7706  British English
7707  Bulgarian
7708  Catalan
7709  Czech
7710  Danish
7711  French
7712  Galician
7713  German
7714  Greek
7715  Gujarati
7716  Hebrew
7717  Hungarian
7718  Italian
7719  Japanese
7720  Korean
7721  Lithuanian
7722  Polish
7723  Portuguese
7724  Romanian
7725  Serbian
7726  Simplified Chinese
7727  Spanish
7728  Swedish
7729  Traditional Chinese
7730  Uighur
7731  Vietnamese
7732
7733
7734 Overview of Changes from GLib 2.27.93 to 2.28.0
7735 ===============================================
7736
7737 * Bugs fixed:
7738 641363 GInitable documentation isn't clear about that finalize...
7739 641395 Add more data about the origin application to the "Lau...
7740 641411 gdesktopappinfo signals lost if it's the session bus...
7741 641477 glib-mkenums uses unportable #! line
7742 641572 Add @EXEEXT@ to pkgconfig binary name
7743 641688 glib installs GSettings.html and gsettings.html
7744
7745 * Translation updates:
7746  Galician
7747  Italian
7748  Korean
7749  Punjabi
7750
7751
7752 Overview of Changes from GLib 2.27.92 to 2.27.93
7753 ================================================
7754
7755 * Bugs fixed:
7756  637013 gio/gdbusmessage.c fails to compile on Solaris
7757  640192 Error creating a Gio.Settings object through py...
7758  640261 Minimum version for external pcre needs to be..
7759  640262 GActionGroup contains redundant TYPE macros
7760  640436 Make load_user_special_dirs() resistant to non...
7761  640695 g_key_file_load_from_file() mishandles a CR-LF...
7762  640724 can't compile gio due to format string issues
7763  640725 can't compile tests due to format string issue
7764  640807 improve GVariant behaviour with invalid pointers
7765  640823 wrong documentation for g_source_add_child_source
7766
7767 * Translation updates:
7768  Bulgarian
7769  Galician
7770  Hebrew
7771  Norwegian bokmål
7772  Spanish
7773  Traditional Chinese
7774
7775
7776 Overview of Changes from GLib 2.27.91 to 2.27.92
7777 ================================================
7778
7779 * Update to Unicode 6.0
7780
7781 * Update PCRE to 8.12
7782
7783 * Bugs fixed:
7784  637696 g_unix_connection_send_fd() doesn't work
7785  638872 null settings backend bug
7786  640042 GtkApplication's warning about not connecting...
7787
7788 * Translation updates:
7789  Arabic
7790  Basque
7791  Estonian
7792  Greek
7793
7794 Overview of Changes from GLib 2.27.90 to 2.27.91
7795 ================================================
7796
7797 * Bugs fixed:
7798  638838 gdesktopappinfo: Don't crash if we don't have a desktop filename
7799  638894 Splitting on \s* gives no result
7800  639064 Update gschema.dtd
7801  639084 Copy/paste error in GSettings::writable-changed signal
7802  639177 SIGSEGV for GApplications with G_APPLICATION_IS_SERVICE
7803
7804 * Translation updates:
7805  Estonian
7806  Galician
7807  Indonesian
7808
7809
7810 Overview of Changes from GLib 2.27.5 to 2.27.90
7811 ===============================================
7812
7813 * Test reports created by gtester-report can now
7814   include revision information
7815
7816 * The g_desktop_app_info_launch_* family of functions
7817   now emit a DBus signal when an application is launched.
7818   Additionally, there is a new variant
7819   g_desktop_app_info_launch_uris_as_manager(), which
7820   gives more control over the launched process.
7821
7822 * The memory and null GSettings backends are now available
7823   as public API
7824
7825 * g_get_locale_variants() is a new function that returns a
7826   list of variants of a locale identifier
7827
7828 * Bugs fixed:
7829  587898 I/O timeouts for GSocket
7830  606960 gio: Add extension point for informing parties...
7831  631980 Handle an optional <revision> node in the report...
7832  634569 Document that g_variant_builder_add_value consumes...
7833  635998 Make _g_compute_locale_variants public
7834  636806 Add g_{memory,null}_settings_backend_get_default
7835  637262 Need a binary DER version of ::accepted-cas
7836  637544 Skip fsync() on btrfs
7837  637720 void functions should not return a value.
7838  637738 object_interface_check_properties never actually...
7839  637759 GIOChannel: fix a crash in g_io_channel_read_chars()
7840  637852 Updates to glib.vsprops file for MSVC 2008 builds...
7841  637858 Updates to test/testglib.c...
7842  638349 parameter name of g_variant_new_* may conflict...
7843
7844 * Translation updates:
7845  Hebrew
7846  Norwegian bokmål
7847  Simplified Chinese
7848  Spanish
7849  Swedish
7850  Uyghur
7851  Vietnamese
7852
7853
7854 Overview of Changes from GLib 2.27.4 to 2.27.5
7855 ==============================================
7856
7857 * Network support:
7858  - Add g_tls_certificate_verify() to verify a certificate
7859  - Add GTlsConnection:use-system-certdb
7860  - Other TLS api additions
7861
7862 * GIO:
7863  - Add g_io_stream_splice_async()/_finish() to splice two iostreams
7864  - Add g_emblemed_icon_clear_emblems() and make GEmblemedIcon derivable
7865  - Remove GPeriodic; it did not receive the necessary review and
7866    integration work to declare it stable
7867
7868 * GSequence:
7869  - New methods g_sequence_lookup() and g_sequence_lookup_iter()
7870
7871 * Bugs fixed:
7872  617254 Missing g_sequence_lookup
7873  632544 g_dbus_connection_send_message can not send a locked message...
7874  633350 g_hostname_to_ascii() ignores non-ascii dots
7875  634583 Better error reporting for g_variant_parse()
7876  635007 gsetting enum rule don't work for out-of-srcdir builds
7877  635626 GDBus message idle can execute while flushes are pending
7878  636100 Can't read GSettings:backend property
7879  636305 Typo on g_queue_remove_all() function description
7880  636311 appinfo: tweak application positioning for content-types
7881  636351 g_simple_async_result_is_valid lacks a version tag
7882  636387 gdb autoload files shadow the "dir" builtin
7883  636673 g_simple_async_report_error_in_idle should allow object...
7884  637147 Add a "delay-apply" property to GSettings
7885  637171 emblemedicon: add g_emblemed_icon_clear_emblems()
7886  637237 gapplication: plug a memory leak
7887
7888 * Translation updates:
7889  Estonian
7890  Galician
7891  Hebrew
7892  Norwegian bokmål
7893  Simplified Chinese
7894  Spanish
7895  Traditional Chinese
7896  Vietnamese
7897
7898
7899 Overview of Changes from GLib 2.27.3 to 2.27.4
7900 ==============================================
7901
7902 * GIO
7903  - Mounts are treated as hidden if they have a path element
7904    that starts with a dot
7905  - GAppInfo gained API to differentiate between recommended
7906    and fallback mime handlers
7907  - g_cancellable_create_source: creates a GSource that triggers
7908    when the GCancellable is canceled
7909  - GPollableInput/OutputStream: Interfaces for pollable streams
7910  - TLS support has landed, with an extension point that is
7911    implemented in glib-networking
7912
7913 * GLib
7914  - Mainloop sources can now have 'child sources'
7915  - g_get_runtime_dir: New function to return the XDG_RUNTIME_DIR
7916
7917 * Bugs fixed:
7918  530786 GFileMonitor "changed" signal underdocumented
7919  588189 TLS support for GSocket*
7920  630357 g_object_new_valist uses uninitialized memory
7921  630559 typo in public string in gsocks: 'The SOCKSv5 require...
7922  632445 Documentation refers to removed GNOME 2.0 porting guide
7923  634239 Child GSources
7924  634241 Add pollable input/output streams
7925  634504 allow passing a NULL emblem to g_emblemed_icon_new()
7926  634613 unsufficient g_get_user_runtime_dir() documentation
7927  635640 schema should inherit gettext-domain from schemalist
7928  635768 Protect g_file_monitor_set_rate_limit() against negative...
7929  635882 Fix the wrong-category schema test
7930  635187 Wrong type of GVariant received in an action...
7931
7932 * Updated translations:
7933  Galician
7934  Italian
7935  Norwegian bokmål
7936  Uyghur
7937
7938
7939 Overview of Changes from GLib 2.27.2 to 2.27.3
7940 ==============================================
7941
7942 * The GTimeSpec type that was introduced in the 2.27.2 has been
7943   dropped again in favour of APIs that return microseconds as
7944   64-bit integer.
7945   Affected functions:
7946   g_source_get_time
7947   g_periodic_unblock
7948   g_get_monotonic_time
7949   g_get_real_time
7950   The similar GTimeVal struct is still around, but its use is
7951   discouraged.
7952
7953 * GTimer is now using monotonic time unconditionally
7954
7955 * There are some new functions to facilitate error reporting
7956   in async GIO APIs:
7957   g_simple_async_result_take_error
7958   g_simple_async_result_new_take_error
7959   g_simple_async_report_take_gerror_in_idle
7960
7961 * There is new convenience API to us GVariant dictionaries:
7962   g_variant_lookup
7963
7964 * It is now possible to delay sending match rules to the
7965   D-Bus daemon in GDBus:
7966   G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE
7967
7968 * Support has been added for XDG_RUNTIME_DIR:
7969   g_get_user_runtime_dir
7970
7971 * Various fixes for Win64/MSVC builds have been committed
7972
7973 * Bugs fixed:
7974  620263 Add g_clear_object, g_clear_pointer, g_clear_boxed
7975  633075 update Project Files and sources for MSVC 2008/C89
7976  633381 gsettings Makefile rules should handle empty list...
7977  633685 Use g_simple_async_result_{new_,}take_error
7978  633686 Add g_simple_async_report_take_gerror_in_idle
7979
7980 * Translation updates:
7981   Belarusian
7982   Galician
7983   Hebrew
7984   Punjabi
7985   Spanish
7986
7987
7988 Overview of Changes from GLib 2.27.1 to 2.27.2
7989 ==============================================
7990
7991 * GApplication
7992  - Export actions over DBus and support activating them from remote instances
7993  - Support environment passing
7994
7995 * GSettings
7996  - The gsettings utility has a list-recursively command
7997  - The gsettings utility has commandline completion for enum values
7998
7999 * GLib is now linked against librt and uses monotonic time for
8000   timeouts and GPeriod sources. GSource has a new g_source_get_time()
8001   which returns monotonic time, and g_source_get_current_time() has
8002   been deprecated
8003
8004 * Bugs fixed:
8005  158725 free linked list with data
8006  626320 GVariant: Avoid locking in g_variant_get_child_value() if possible
8007  629247 add gsimpleasyncresult methods to take over a GError
8008  629274 GNetworkService does not do fallback when there is no SRV record
8009  631264 gsettings-tool choice/range support
8010  631482 g_date_time_from_instant: 1000000000000000000
8011  632169 docs for manual use of gsettings-data-convert
8012  632571 Add equivalent to gconftool-2's -R option
8013  633115 GSettings m4 doesn't fail the build for broken schemas
8014  633206 Default g_application_local_command_line() doesn't set exit_status...
8015  633339 support more complex gapplication setups
8016  633356 Make timeout G_MAXINT mean "no timeout"
8017
8018 * Translation updates:
8019  Catalan (Valencian)
8020  Indonesian
8021  Japanese
8022
8023
8024 Overview of Changes from GLib 2.27.0 to 2.27.1
8025 ==============================================
8026
8027 * GDateTime now has full week number support.
8028   New API: g_date_time_get_week_numbering_year
8029
8030 * The GSettings schema compiler will now skip over
8031   broken .xml schema files instead of aborting altogether
8032
8033 * GSettings now works properly on bigendian systems
8034
8035 * GSettings has more complete support for ranges
8036   New API:
8037     g_settings_get_range
8038     g_settings_range_check
8039   The gsettings commandline tool supports ranges too.
8040
8041 * GApplication has been rewritten; see the API docs for details
8042   and examples. The action support is not complete yet.
8043
8044 * The GLib mainloop has gained 'dispatch to context' functionality,
8045   which can replace manually created idles in many cases.
8046   New API:
8047     g_main_context_invoke
8048     g_main_context_invoke_full
8049
8050 * The gio-desktop-app-info-lookup extension point has been
8051   removed from GIO. GIO now uses x-scheme-handler mimetypes when
8052   looking for default applications.
8053
8054 * On win32, make g_get_user_data_dir() return the CSIDL_LOCAL_APPDATA
8055   folder on Windows, and not CSIDL_PERSONAL. This matches what Qt does,
8056   and has been widely requested. Also make g_get_user_config_dir() return
8057   this and not the (roaming) CSIDL_APPDATA folder.
8058
8059 * A periodic event clock has been added in GIO: GPeriodic. Note that this
8060   API is still experimental and expected to undergo changes before it
8061   will be incorporated into a stable GLib release. Use at your own risk.
8062
8063 Bug fixes:
8064  613822 gobject signal connect/disconnect not thread safe
8065  618737 "dispatch to context" functionality
8066  620710 g_get_user_data_dir() uses CSIDL_PERSONAL and not CSIDL_APPDATA
8067  623400 acquire context before dispatching
8068  627126 gsettings schema files don't get installed on FreeBSD
8069  627171 g_socket_new_from_fd() doesn't set the right protocol
8070  628876 Wrong error description
8071  628937 gracefully handle broken schemas
8072  629274 GNetworkService doesn't fallback when there is no SRV record
8073  629289 g_error() used wrong, produces core dump
8074  629687 leaks class refcount in gsocketcontrolmessage
8075  629849 GLib-CRITICAL **: g_source_get_context: assertion `!SOURCE_...
8076  629945 GDBus deadlock in g_bus_get_sync()
8077  630000 g_date_time_difference
8078  630077 GDateTime week number support
8079  630185 Allow NULL strings in g_quark_try_string()
8080  630797 docs mention non-existent g_object_dispose()
8081  630968 gschema-compile problems on power g5
8082  631263 GSettings needs range/choice APIs
8083  631264 gsettings-tool choice/range support
8084  631379 GDBus nonce-tcp test failing
8085  631410 Port gapplookupgconf.c to using x-scheme-handler/
8086  632884 Possible deadlock in g_object_remove_toggle_ref()
8087
8088 Transation updates:
8089  Basque
8090  Brazilian Portuguese
8091  British English
8092  Bulgarian
8093  Czech
8094  Dutch
8095  Estonian
8096  French
8097  Galician
8098  German
8099  Greek
8100  Hebrew
8101  Hungarian
8102  Japanese
8103  Lithuanian
8104  Polish
8105  Portuguese
8106  Romanian
8107  Simplified Chinese
8108  Slovenian
8109  Spanish
8110
8111
8112 Overview of Changes from GLib 2.25.15 to GLib 2.27.0
8113 ====================================================
8114
8115 Build:
8116   - massive restructuring to reduce #include abuse
8117   - tweaks to silence some harmless compiler warnings
8118   - rename gschema-compile.c to glib-compile-schemas.c
8119   - Windows fixes
8120   - fix building with zlib < 1.2.4 on win32
8121
8122 GDateTime:
8123   - better msgctxt for translating month and weekday names
8124   - API is changed quite a lot, implementation is improved
8125   - GTimeZone is now exposed
8126
8127 GObject:
8128   - make ordering for overridden interface properties consistent
8129   - ->priv structures are limited to 64k but this was not documented,
8130     and exceeding this limit produced bad results.  Add docs and enforce
8131     the limit properly.
8132   - add g_object_class_install_properties() to install multiple
8133     properties in one go
8134   - improve debugging output for GValue containing G_TYPE_STRV
8135
8136 GIO:
8137   - fix priority sorting of GIO extensions
8138   - add GCredentials support on FreeBSD
8139   - fix support for IPv6 addresses in URI parsing functions
8140   - GSocketClient fixes for when g_socket_connect succeeds immediately
8141   - clarify string encoding for GFile constructors in docs
8142   - new functions g_data_input_stream_read_upto{,async,finish}
8143   - tweak confusing documentation for g_output_stream_write()
8144
8145 GDBus:
8146   - GDBusMessage can now be locked and copied (like in libdbus)
8147   - GDBusConnection filter function API has changed again
8148   - GDBusServer: ::new-connection now declares if the connection was claimed
8149   - add a partial workaround for GObject bug 627724.
8150   - very many memory leaks fixed
8151
8152 GVariant:
8153   - check for size == 0 in g_variant_get_bytestring to avoid a crash
8154     when attempting to get_bytestring() from an empty array
8155   - improve gobject-introspection annotations
8156
8157 GSettings:
8158   - add GSettings Windows registry backend
8159   - some internal tweaks to the backend API
8160   - remove g_settings_list_items
8161   - add g_settings_list_children and _list_keys to replace it
8162   - add schema compiler restrictions for dealing with lists
8163   - don't automatically emit value changed signals on writability
8164     changes
8165
8166 Other:
8167   - constify the 'parser' vtable param to g_markup_parse_context_push()
8168   - plug many memory leaks in test cases
8169
8170 Bugs closed:
8171   50076 Time API to go with date API
8172  584284 g_data_input_stream_read_until_async different from sync version
8173  624546 Modification of GDBusMessage in filter function
8174  626919 Let g_object_class_install_property() return the installed GParamSpec*
8175  628029 GDateTime missing get_week_of_year method
8176  628253 Interface properties not listed in a consistent order
8177  628331 Plug lots of mem leaks in gio test suite
8178  628345 Plug a mem leak
8179  628436 Plug a mem leak
8180  628505 Fix building with zlib < 1.2.4 on win32
8181  628839 [PATCH] datetime: Rename shadowing variables
8182  628904 [PATCH] Add credential support for FreeBSD and fix a socket issue
8183  628952 incorrect glib_major_version and other variables on cygwin.
8184  629192 g_strdup_value_contents(): dump GStrv more usefully
8185  629251 g_socket_client_async_connect_complete: assertion failed
8186  629259 Failed to connect to "::1"
8187  629328 g_markup_parse_context_push doesn't respect const structs
8188  629429 month "May" short and full form same with "GDateTime" msgctxt
8189  629689 GDBusConnection leaks its GCredentials
8190  629698 Segfault in g_variant_get_bytestring() 
8191
8192 Updated translations:
8193   Arabic
8194   Armenian
8195   Basque
8196   British English
8197   Czech
8198   Finnish
8199   Galician
8200   German
8201   Hungarian
8202   Indonesian
8203   Japanese
8204   Lithuanian
8205   Norwegian bokmål
8206   Polish
8207   Portuguese
8208   Punjabi
8209   Simplified Chinese
8210   Slovenian
8211   Spanish
8212   Swedish
8213   Swedish
8214   Traditional Chinese
8215
8216 Overview of Changes from GLib 2.25.14 to GLib 2.25.15
8217 =====================================================
8218
8219  * GIO
8220   - Memory leak fixes
8221   - The GZip(De}Compressor can now process header information
8222   - Support for network proxies has been added, with the GProxy
8223     interface and the gio-proxy-resolver extension point. GIO
8224     includes SOCKSv4 and SOCKSv5 implementations, and libproxy
8225     is also going to provide an implementation of this extension
8226     point.
8227   - There are GAction and GActionGroup interfaces now, which will
8228     be used in GApplication in the near future.
8229
8230  * GObject
8231   - There are now convenience macros for defining boxed and
8232     pointer types
8233
8234  * GDBus
8235   - Memory leak fixes
8236   - GDBusProxy for well-known names can now auto-restart
8237     the service if the name owner disapperas
8238   - Filter functions are now allowed to modify messages
8239
8240  * GLib
8241   - GDateTime is a replacement for GDate that supports time
8242     and timezone information.
8243
8244  * Bugs fixed:
8245   50076 Time API to go with date API
8246  449565 Add G_DEFINE_BOXED_TYPE()
8247  617691 Add GZIP header processing to GZlibCompressor/GZlibDecompressor
8248  622184 add g_memory_output_stream_steal_data
8249  624546 Modification of GDBusMessage in filter function
8250  627088 Build failure in gdbus-peer.c on FreeBSD
8251  627181 save a memdup
8252  627182 Plug a mem leak in the gdbus-connection test
8253  627187 Plug some gdbus mem leaks
8254  627188 gdbus-non-socket test occasionally fails
8255  627252 G_OPTION_FLAG_NO_ARG is only for callback options
8256  627392 gdbus commit 8a3a4596 breaks win32 compile
8257  627407 FTBFS on !linux UNIX platforms
8258  627604 String error: 'that' twice in a row
8259  627969 ABR in g_file_open_tmp
8260  628084 gdbus-peer fails with assertion
8261  628193 Miscellaneous string fixes
8262  628296 abort() in gsocketconnection.c
8263  628309 Plug a mem leak in GConverterOutputStream
8264  628317 GEmblemedIcon:equal implementation is buggy
8265  628323 Fix invalid reads
8266  628327 Plug a mem leak
8267  628328 Plug a mem leak
8268  628329 Don't leak the FD list
8269  628324 Invalid reads in gdbus-export test
8270
8271  * Updated translations:
8272   British English
8273   Danish
8274   Galician
8275   Hebrew
8276   Punjabi
8277   Serbian
8278   Spanish
8279   Traditional Chinese
8280
8281
8282 Overview of Changes from GLib 2.25.13 to GLib 2.25.14
8283 =====================================================
8284
8285 * GDBus
8286  - Make the closure variants of GDBus apis work
8287  - Make error unregistration work
8288  - Use async IO in the IO thread (626748)
8289
8290 * GIO
8291  - Make g_simple_async_result_is_valid work without source (626208)
8292  - GSocketClient: add a timeout property
8293  - Fix memory leaks in GSocketClient
8294  - Handle async vs. sync correctly in GSocketConnection stream (616458)
8295  - Declare stream base classes as abstract
8296  - Clarify semantics of g_output_stream_write() (627071)
8297
8298 * Other
8299  - Improve test coverage for GDBus, GRegex, GAsyncResult
8300  - Drop dead code in pcre, xdgmime
8301  - Fix a race condition in gtester (578295)
8302  - Avoid an extra allocation in GAsyncQueue (626704)
8303  - Add test case for non-socket GIOStream (626841)
8304  - More explicit GVariant docs (622770)
8305  - Imroved docs for GAsyncInitable and GSimpleAsyncResult (602417)
8306
8307 * Translation updates:
8308  - Galician
8309  - Norwegian bokmål
8310  - Punjabi
8311  - Simplified Chinese
8312  - Swedish
8313
8314
8315 Overview of Changes from GLib 2.25.12 to GLib 2.25.13
8316 =====================================================
8317
8318 +-------------------------------------------------------------------+
8319 |   WARNING: There have been no breaks in API or ABI.  Weird, eh?   |
8320 +-------------------------------------------------------------------+
8321
8322 The primary purpose of this release is to fix a serious problem with
8323 glib 2.25.12: glibconfig.h (as generated on a Fedora amd64 system) was
8324 being distributed in the tarball.  It was being used to build some parts
8325 of glib on other systems (eg: 32bit ones).  This was causing some very
8326 serious problems.
8327
8328 There have been many other improvements, however:
8329
8330  Build and testing:
8331   - vastly improved test coverage
8332   - old tests moved to the gtester framework
8333   - gtester Makefile modified so that the tests only run once
8334   - cleanup of how we handle includes while building glib
8335
8336  GVariant:
8337   - add a g_return_if_fail (utf8) to g_variant_new_string()
8338
8339  GDBus:
8340   - perform extra sanity checks when serialising messages
8341   - add API to query and set the byteorder of a GDBusMessage
8342   - improve debug output, add some extra options
8343   - if exiting due to the bus disconnecting us, print an error message
8344     explaining why
8345   - sort property names correctly
8346   - don't bother sending RemoveMatch when we will close the connection
8347     anyway
8348   - use effective uid/gid for credential passing
8349
8350  GSettings:
8351   - add G_SETTINGS_BIND_INVERT_BOOLEAN for inverting boolean bindings
8352     without mapping functions
8353   - mark all strings in the schema compiler for translation
8354
8355  Binding:
8356   - improve closure support for bindings
8357   - copy GSettings INVERT_BOOLEAN flag
8358
8359  Other:
8360   - fix another complicated GCancellable deadlock possibility
8361
8362 Bugs closed:
8363  599590 glib build doesn't look for correct pkg-config
8364  619026 avoid warning in gutils.h when using gcc with -Wconversion
8365  624739 Please fix POTFILES.in
8366  625472 Valgrind claims uninitialized bytes used
8367  625500 g_date_set_time_val documentation doesn't mention local time
8368  625628 GDBusProxy: wrong property name sorting
8369  625753 Incorrect flags used in g_dbus_connection_call_sync()
8370  625827 Expand documentation about error quark naming
8371  625988 builddir != srcdir issues
8372  626107 glibconfig.h is being disted
8373
8374 Updated translations:
8375  French
8376  Galician
8377  Hebrew
8378  Norwegian bokmål
8379  Spanish
8380
8381
8382 Overview of Changes from GLib 2.25.11 to GLib 2.25.12
8383 =====================================================
8384
8385 +-------------------------------------------------------------------+
8386 | WARNING: There have been many API changes in GDBus -- sending     |
8387 | messages, subscribing to signals, closing connections and         |
8388 | registering subtrees are affected.  The ABI for GSettingsBackend  |
8389 | has also been changed.  For both reasons, a new dconf release is  |
8390 | required (and will be along soon).                                |
8391 +-------------------------------------------------------------------+
8392
8393 Build:
8394   - cleanup automake setup
8395   - rename configure.in to configure.ac
8396   - various docs fixups
8397   - move glibconfig.h to glib/
8398   - disable dtrace support on Mac OS (which has incompatible 'dtrace')
8399
8400 GSettings:
8401   - add support for vendor override files (to change the default values
8402     in a schema)
8403   - change GSettingsBackend vtable
8404   - add g_settings_reset()
8405   - support binding to G_TYPE_STRV properties
8406
8407 GDBus:
8408   - many bug fixes, including a serialisation fix
8409   - stop handling incoming connections as soon as stop() is called
8410   - proper support for file descriptor passing
8411   - new flags parameter for sending messages
8412   - new flags parameter for subscribing to signals
8413   - always reset the message serial when sending a message unless
8414     G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL is given
8415   - constness fixes for introspection structures
8416   - clean ups to subtree registration API
8417
8418 Other:
8419   - fix divide by zero bug in g_malloc_n functions
8420   - GIO: don't blindly assume that SOCK_CLOEXEC is supported
8421   - make GObject property notify freezes threadsafe
8422   - GIO: clean up credentials passing
8423   - GApplication: make default-quit not apply if register=FALSE
8424   - GIO: add annotations for gobject-introspection
8425
8426 Bugs closed:
8427  166020 use GAtomic for refcounting
8428  617483 Credentials passing
8429  622005 [GApplication] no way to modify the "default-quit" property
8430  623293 vendor override files
8431  623810 Message serialization bug
8432  623815 Don't check sender for GDBusProxy objects where name is not set
8433  624473 GDBusSubtreeIntrospectFunc return type
8434  624483 GDBusSubtreeEnumerateFunc clarification
8435  624484 GDBusSubtreeDispatchFunc clarification
8436  624754 gdbusaddress.c missing sys/wait.h
8437  624968 div by zero in g_malloc_n family
8438  624991 GSettings mapping for G_TYPE_STRV 
8439  625383 Add missing GI annotations
8440
8441 Updated Translations:
8442  Armenian
8443  Galician
8444  German
8445  Hebrew
8446  Kazakh
8447  Romanian
8448  Simplified Chinese
8449  Spanish
8450
8451 Overview of Changes from GLib 2.25.10 to GLib 2.25.11
8452 =====================================================
8453
8454 +-------------------------------------------------------------------+
8455 | WARNING: There have been minor API changes in GDBus and GVariant. |
8456 | These API changes will not affect many users, but they do require |
8457 | a new version of GTK+ to be installed.                            |
8458 +-------------------------------------------------------------------+
8459
8460 Build:
8461   - add a --disable-Bsymbolic configure flag to disable linking with
8462     -Bsymbolic-functions
8463   - this release sees the complete removal of the old 'g*alias' hacks
8464   - honour the NOCONFIGURE environment variable from autogen.sh
8465   - use proper feature test macros for isnan
8466   - use pkg-config to check for zlib
8467   - add ACLOCAL_AMFLAGS to Makefile.am
8468
8469 GDBus:
8470   - hide Class and instance structures for all GDBus types except
8471     GDBusProxy.  This breaks API by preventing subclassing, but probably
8472     nobody was doing that.
8473   - add new GDBusConnection call to support flushing all pending
8474     outgoing messages
8475   - change the register_object API to add a reference to the
8476     GDBusInterfaceInfo object so the caller need not keep it alive
8477     themselves
8478   - don't rewrite the serial number when sending messages that already
8479     have a serial number
8480   - better error checking for DBUS_SESSION_BUS_ADDRESS environment
8481     variable
8482   - switch to g_parse_debug_string for G_DBUS_DEBUG and add a lot of new
8483     flags
8484   - add support for temporarily freezing a freshly created
8485     GDBusConnection.  Do this until after the ::new-connection signal
8486     has finished running on GDBus services.
8487   - never require non-closed connections (the user is incapable of doing
8488     this due to the obvious race)
8489   - remove weird/misleading redundant check on NameOwnerChanged signal
8490   - emit GDBusProxy::g-properties-changed on NameOwnerChanged
8491
8492 GVariant:
8493   - the 'g_variant_{new,get}_byte_array' APIs have been removed
8494   - g_variant_{new,get,dup}_bytestring has been added, with different
8495     arguments and different behaviour
8496   - g_variant_{new,get,dup}_bytestring_array has been added, doing
8497     essentially the same thing as the 'strv' functions, but with byte
8498     strings instead of utf8 strings
8499   - G_VARIANT_TYPE_BYTESTRING ('ay'), BYTESTRING_ARRAY ('aay') and
8500     STRING_ARRAY ('as') constants have been added
8501   - the undocumented behaviour that g_variant_get_strv() deserialised
8502     arrays of object paths or signature strings has been dropped
8503   - additional varargs support for converting bytestrings or bytestring
8504     arrays with ^ay ^aay ^&ay and ^a&ay
8505   - improved gobject-introspection annotation
8506   - fix a problem with GBuffer calling g_slice_free for the wrong type
8507   - fix leaks in the type inferencing code of the parser
8508
8509 GSettings:
8510   - improved documentation
8511   - updated schema XML DTD, now xincluded into the docs
8512   - added support for schemas that extend other schemas (using the
8513     'extends=' attribute).  Values of keys in the base schema can be
8514     overridden using <override>.
8515   - added theoretical support for lists (using the 'list-of=' attribute)
8516   - lots of new tests
8517   - add support for flags (implemented similarly to enums)
8518   - add support for generating .enums.xml files to gsettings.m4:
8519       gsettings_ENUM_NAMESPACE = org.example.myapp
8520       gsettings_ENUM_FILES = ../path/to/*.h
8521     will generate org.example.myapp.enums.xml with mappings for all
8522     enums and flags in the specified .h files.
8523   - warn with g_message() if the 'memory' backend is used by default
8524     (ie: because no other GSettings backends are installed)
8525   - fix get_property() for GSettings::schema
8526   - command line tool: fix a bug that prevented non-basic values from
8527     being set due to a premature free
8528   - command line tool: bash completion support
8529   - chain up in _finalize
8530   - add a new g_settings_get_mapped API to read settings that require
8531     post-processing
8532   - retry with the translated or schema default value if the
8533     GSettingsBindGetMapping function fails
8534   - schema compiler: never fail due to empty schema directories (but
8535     warn)
8536   - peek rather than ref/unref the GEnumClass in the mapping function
8537   - schema compiler: compile *.enums.xml before *.gschemas.xml to ensure
8538     that we have all the enums that the schemas may reference
8539   - schema compiler: improve accuracy of line numbers in error reports
8540   - fix crashes in the keyfile backend caused by invalid group names in
8541     the keyfile
8542
8543 Other:
8544   - always intern GBinding prop names
8545   - base64: remove asserts preventing conversion of empty strings
8546   - document NULL special-cases for GValueArray
8547   - GNode docs improvements
8548   - improve detection of 'system internal' mounts
8549   - fix leaks in the inotify GFileMonitor implementation
8550   - annotate all custom GIO GSources to improve debugging (e.g. using
8551     SystemTap)
8552
8553 Tests:
8554   - Turn on glibc malloc checking features for make check
8555   - improvements for GSettings tests, plus new tests
8556   - improved tests for GKeyfile
8557   - new tests for GDir, GSList, GSList, GAppLaunchContext,
8558     CharsetConverter, GIcon, ...
8559   - move some tests to GTester (tree tests, uri tests)
8560   - generally, really an awful lot of new tests
8561   - don't try to allocate 2gigs of memory anymore for the array test
8562
8563  552363 g_value_array_{insert,prepend,append}'s special cases for NULL
8564  561248 Improve return value description from g_node_prev/next_sibling()
8565  570036 Add ACLOCAL_AMFLAGS to Makefile.am
8566  576833 g_sprintf add a reference to g_strdup_printf
8567  576854 g_strconcat() documentation should provide a hint about bad l10n
8568  582227 reference: add other URI functions to 'URI Functions' section
8569  599223 should provide g_spawn_* variants that take a GAppLaunchContext
8570  610784 array test failing
8571  613057 Leak in inotify GFileMonitor implementation
8572  620536 Annotate all custom GIO GSource using g_source_set_name
8573  620913 More control with G_DBUS_DEBUG
8574  622124 implement flags
8575  622127 GSettings extended key validation
8576  622128 retry with default value for failed mapping
8577  622294 More annotations for GVariant
8578  622565 glib-compile-schemas fails when no schemas
8579  622600 Fix missing prototype warning
8580  622813 gsettings mapping & enum buglet
8581  623142 Ensure ::new-connection runs before processing D-Bus messages
8582  623143 Never require non-closed connections
8583  623319 use g_parse_debug_string for dbus debug flags
8584  623401 process enums first
8585  623402 schema compiler reports wrong line numbers
8586  623407 g_keyfile_settings_backend_new crashes with the key "/"
8587  623473 zlib should be checked with pkg-config
8588  623537 GDBusProxy has weird checking on NameOwnerChanged
8589  623538 GDBusProxy::g-properties-changed emission for corner cases
8590  623692 directory with file at multiple MLS levels may display empty
8591  623720 gschema.dtd does not contain enum definitions
8592  623770 quoting of expand_macro in gdesktopappinfo.c
8593  623772 gdesktopappinfo.c, function child_setup
8594  623780 g_unix_is_mount_path_system_internal
8595  623954 g_settings_finalize
8596  623955 Dubious return values
8597
8598 Updated translations:
8599  Galician
8600  Hebrew
8601  Norwegian bokmål
8602  Spanish
8603
8604 Overview of Changes from GLib 2.25.9 to GLib 2.25.10
8605 ====================================================
8606
8607 +----------------------------------------------------------------+
8608 | WARNING: There have been API changes in GDBus. Users of these  |
8609 | APIs will need to be adapted.  In particular, a new release of |
8610 | dconf is required to go along with this one.  There has also   |
8611 | been a change in the GSettings backend API used for keyfiles.  |
8612 +----------------------------------------------------------------+
8613
8614 * GDBus:
8615  - add direction parameter to filter functions (API change)
8616  - allow calling other interfaces with a GDBusProxy
8617  - padding added to class struct fields (ABI change)
8618  - fixes for closures-based functions
8619
8620 * GVariant:
8621  - new is_floating() call
8622  - add g_value_take_variant() call (required for marshallers)
8623
8624 * GSettings:
8625  - support for binding GParamSpecEnum properties
8626  - ifelse-style condition support for GLIB_GSETTINGS m4 macro
8627  - remove gsettings-schema-convert tool (now in GConf)
8628  - allow introspection of all installed schemas
8629  - allow introspection of the keys in a schema
8630  - rewrite keyfile backend (API change)
8631
8632 * GNIO:
8633  - don't implicitly close GSocket until it is destroyed
8634  - windows fixups
8635
8636 * Other:
8637  - allow GChecksum to take (NULL, 0) for data/length
8638  - GRelation and GCompletion are now deprecated
8639  - introduce G_PARAM_DEPRECATED and G_ENABLE_DIAGNOSTIC
8640  - add working directory to GApplication platform data
8641  - lots of documentation cleanups
8642  - PCRE updated to 8.02
8643
8644 * Build:
8645  - the IA__g_* style symbol aliasing has been disabled and replaced with
8646    the -Bsymbolic-functions linker flag on platforms that support it.
8647    Please be on the watch for portability issues and report them to us.
8648  - many test cases have been moved to the GTester framework
8649  - lcov support has been added for tests
8650  - many windows fixes
8651
8652 * Bugs fixed:
8653  501057  lcov coverage suite and GLib integration
8654  551271  deprecate GRelation
8655  601686  Implement diagnostic mode
8656  603309  GSocketOutputStream broken on Windows (?)
8657  616718  GLIB_GSETTINGS macro can't be used conditionally
8658  616855  GSocketConnection: don't close the socket if it's still reffed
8659  618866  g_ptr_array_remove_index_fast memory leak
8660  619878  keyfile backend calls keys_changed with invalid argument
8661  619879  keyfile backend doesn't make use of expected_type
8662  621092  Add with_closures() variants for bindings
8663  621172  Cross compiling fails
8664  621838  Actually add cwd to platform data
8665  621945  Filter outgoing messages in GDBusConnection
8666  621947  add g_value_take_variant
8667  622038  GSettings: "It is a programmer error" documentation is unclear
8668  622154  [patch] update documentation for g_application_new
8669  622281  binding: Add SYNC_CREATE to the flags
8670  622480  Improve documentation for g_strcmp0()
8671  622554  g_error called if schema not installed
8672  622601  Return interned strings from g_settings_list_keys
8673
8674 * Translation updates:
8675  - Galician
8676
8677 Overview of Changes from GLib 2.25.8 to GLib 2.25.9
8678 ===================================================
8679
8680 +----------------------------------------------------------------+
8681 | WARNING: There have been API changes in GDBus, GSettings and   |
8682 | GApplication. Users of these APIs will need to be adapted. In  |
8683 | particular, a new release of GTK+ is required to go along with |
8684 | this one.                                                      |
8685 +----------------------------------------------------------------+
8686
8687 * GDBus
8688  - Use Gio's default async implementation
8689  - Fix proxy construction for objects with no properties
8690  - Fix error handling in synchronous initialization
8691  - Do not dispatch calls to unregistered objects
8692  - Add _with_closures alternative functions
8693  - Allow constructing GDBusProxy with well-known names
8694  - Remove GType parameters from GDBusProxy constructors
8695  - Nuke g_bus_watch_proxy API
8696  - Add --xml to gdbus-tool to print raw introspected XML
8697
8698 * GSettings
8699  - schema file format change: store (default, options) in gvdb
8700  - Add g_settings_sync()
8701  - Add support for enums and ranges
8702  - 'context' support has been replaced by direct use of
8703    GSettingsBackend
8704
8705 * GApplication
8706  - Switch to using variants for timestamps
8707  - Use GInitable
8708
8709 * GObject
8710  - Introduce g_object_notify_by_pspec
8711  - Add GBinding
8712  - The GVariant gtype G_TYPE_VARIANT was changed from boxed
8713    to fundamental. We believe there were no existing users
8714    of the boxed type, so this should not cause any applications
8715    to break.
8716
8717 * Test framework
8718  - Add package and version to the test report XML
8719  - Use optparse to parse gtester-report commandline
8720  - Add subunit support to gtester-report
8721  - Prevent division by zero if no tests
8722
8723 * Bugs fixed:
8724  621782 Crash using gbinding
8725  619945 GConverterOutputStream triggers assertion and corrupts data
8726  621319 more leaked GVariants in GSettings
8727  621168 GKeyFile memory leak on Windows platform
8728  621002 Switch to using variants for timestamps, split out signals
8729  620953 tiny docs addition
8730  618904 Lies in gunixmounts documentation
8731  621702 Correctly initialize GError
8732  611778 minor cleanup of gtester-report
8733  621213 GDBusProxy and well-known names
8734  621034 Rewrite apps test to ensure children are killed
8735  620954 gapplication gvariant simplifications
8736  611869 add subunit out feature to gtester-report
8737  621119 GDBusProxy and objects with no properties
8738  620990 Use Gio's default async implementation again
8739  620952 g_application_register_with_data is an ugly API
8740  621252 GSettings leaks context
8741  618715 fork() in GSettings test cases is problematic 618715
8742  621905 Assume a ref when doing async work
8743  621266 GSettings "context" clarification
8744
8745 * Translation updates:
8746  Chinese
8747
8748
8749 Overview of Changes from GLib 2.25.7 to GLib 2.25.8
8750 ===================================================
8751
8752 * Initial support for dtrace and systemtap profiling:
8753  - mainloop sources can be named
8754  - probes for memory allocation with g_malloc and gslice
8755  - gquark name tracking
8756  - type creation
8757  - object life-cyle (creation, finalization, ref, unref)
8758  - signal creation and emission
8759
8760 * GVariant
8761  - has been fixed to work with the FreeBSD malloc
8762  - added introspection annotations
8763  - new function: g_variant_builder_add_parsed
8764
8765 * GSettings:
8766  - g_settings_set/get_strv functions have lost their length parameter
8767  - g_settings_set_strv accepts NULL
8768  - added introspection annotiations
8769
8770 * GPermission: an abstract interface for representing permissions,
8771   with a minimal implementation named GSimplePermission
8772
8773 * GApplication: a basic application support class, with a D-Bus based
8774   implementation
8775
8776 * Bugs fixed:
8777  619585 glib-compile-schemas asserts on FreeBSD
8778  620384 Annotate GVariant and GSettings _strv() functions
8779  606044 Add support for dtrace/systemtap static markers
8780  620350 add g_variant_builder_add_parsed() API
8781  620349 utf8ify GVariant printer
8782  620767 Typo in GSettings documentation: "INTLTOOL_NOMERGE_RULE"
8783  620312 Fix g_settings_[gs]et_strv() API
8784  620519 GPermission
8785  620582 GPermission needs a simple implementation
8786  620496 GSettings schema compiler should reject invalid paths
8787  620173 missing single header inclusion guards
8788  620265 g_assertion_message_error should take const GError *
8789
8790 * Translation updates:
8791  Esperanto
8792  Galician
8793  Hebrew
8794  Indonesian
8795  Norwegian bokmål
8796  Slovenian
8797  Spanish
8798
8799
8800 Overview of Changes from GLib 2.25.6 to GLib 2.25.7
8801 ===================================================
8802
8803 * NOTE: API/ABI breaks since 2.25.6 release:
8804   - g_dbus_connection_sync{,_sync} takes a new 'reply_type' argument
8805   - GSettingsBackendClass 'list' virtual function changed
8806
8807   GSettings backends and things using GDBus may need to be rebuilt.
8808
8809 * GDBus: many build-related fixes
8810
8811 * GDBus (service): return a DBus error when receiving a method call for
8812   an unknown interface.
8813
8814 * GSettings: fix 'make install' bug in gsettings.m4 for generated schema
8815   files
8816
8817 * GSettings: avoid non-portable use of LC_MESSAGES
8818
8819 * better approach to handling man pages
8820
8821
8822 * Bugs fixed:
8823  619527 please improve docs on g_file_make_symlink
8824  619391 send-with-reply should have expected result signature
8825  618616 Use stack-allocated GVariantBuilders
8826  617004 Build with "--disable-nls" fails under MinGW/Win32
8827  619142 Build fixes (GDBus)
8828
8829 * Updated translations:
8830  Estonian
8831  Galician
8832  Norwegian bokmål
8833
8834 Overview of Changes from GLib 2.25.5 to GLib 2.25.6
8835 ===================================================
8836
8837 * GDBus: introspection improvements
8838 * GDBus: build fixes
8839
8840 * GSettings: GSettingsBackend ABI changed               **** NOTE ****
8841 * GSettings: --uninstall option for schema compiler
8842 * GSettings: new m4 macro with more power
8843 * GSettings: thread support
8844
8845 * rework of file notification on Solaris
8846 * fixes for gold linker
8847
8848 * Bugs fixed:
8849  619038 increase gsettings.m4 power
8850  619031 method-calls-in-thread test failing
8851  618839 Typo at translation message
8852  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
8853  618730 gunixcredentialsmessage.c doesn't compile on GNU/kfreebsd
8854  616314 Make GSettings (partially) threadsafe
8855
8856 * Updated Translations:
8857  Indonesian
8858  Galician
8859  Spanish
8860
8861 Overview of Changes from GLib 2.25.4 to GLib 2.25.5
8862 ===================================================
8863
8864 * GDBus: Fix serialization of empty arrays
8865
8866 * GDBus: Plug various memory leaks
8867
8868 * GSettings: Fix problems with GSETTINGS_CHECK_RULE
8869
8870 * Bugs fixed:
8871  616731 GSETTINGS_CHECK_RULE doesn't work in non-srcdir builds
8872  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
8873  618615 mem leaks in parse_value_from_blob
8874  618622 Plug some mem leaks in gdbus
8875  618650 Plug a mem leak in gdbusauth
8876  618663 Plug mem leaks in gdbus tests & examples
8877
8878 * Updated translations:
8879  Spanish
8880
8881
8882 Overview of Changes from GLib 2.25.3 to GLib 2.25.4
8883 ===================================================
8884
8885 * GDBus D-Bus support has been merged. This provides an API
8886   to replace dbus-glib
8887
8888 * GVariant no requires strings to be UTF-8. You can use byte
8889   arrays for non-UTF-8 strings.
8890
8891 * GSettings allows to bind string properties to byte arrays
8892
8893 * The schema compiler supports range restrictions
8894
8895 * Bugs fixed:
8896  618051 socket-server|client.c fail to compile under AIX...
8897  616102 GSettings ignores <choice> and <range>
8898  616720 Chunked quark allocation
8899  616877 Several issues with g_socket_receive_message
8900  616892 gio: Add a boxed type for GFileAttributeMatcher
8901  616967 Add g_regex_get_compile_flags() and g_regex_get_match_flags()
8902  617767 g_settings_[gs]et_strv() 'length' argument has missing docs...
8903  617914 gtester-report: cope with binaries with no test cases
8904  617937 output_stream_close vs output_stream_close_async semantics
8905  615494 Connction timeouts produce partially invalid error messages
8906  617823 glib-compile-schemas problems with an out of source build
8907  617947 glib-mkenums: add @valuenum@ support
8908
8909 * Translation updates:
8910  Galicaian
8911  Norwegian bokmål
8912  Shavian
8913  Spanish
8914
8915
8916 Overview of Changes from GLib 2.25.2 to GLib 2.25.3
8917 ===================================================
8918
8919 * New macro: G_GNUC_DEPRECATED_FOR, a variant of G_GNUC_DEPRECATED
8920   that lets you add replacement information (requires gcc 4.5)
8921
8922 * Rename AM_GSETTINGS autoconf macro to GLIB_GSETTINGS
8923
8924 * Rename gschema-compile utility to glib-compile-schemas
8925
8926 * Add support for timeouts in GSocket
8927
8928 * Bugs fixed:
8929  589989 Compilation error on Solaris 9
8930  616648 Change AM_GSETTINGS macro to GLIB_GSETTINGS
8931  587898 I/O timeouts for GSocket
8932  614541 Add G_TYPE_ERROR boxed type for GError
8933
8934
8935 Overview of Changes from GLib 2.25.0 to GLib 2.25.2
8936 ===================================================
8937
8938 * Include a 'gsettings' utility, for commandline access to GSettings
8939
8940 * Install a AM_GSETTINGS autoconf macro similar to AM_GCONF
8941
8942 * GSettings can bind the writability of a key explicitly
8943
8944 * There is now a predefined boxed type for GError
8945
8946 * Bugs fixed:
8947  615379 g_new macros crash if sizeof(struct_type) == 0
8948  616312 Add m4 rule equivalent to GCONF_SCHEMAS_INSTALL
8949  616295 mapping bug for uint64
8950  616216 glib compile from remote directory fails
8951  615960 Fix size passed to connect() for abstract sockets
8952  616432 Crash in gschema-compile
8953  616331 gsettings-schema-convert uses imaginary types
8954  616309 gsettings-schema-convert should output gettext-domain
8955  616384 Add mention of GConfBridge in conversion docs
8956  616311 gschema-compile outputs in current directory
8957  616276 simplify gschema-compile test setup
8958  616156 keys with unnecessary empty options arrays
8959  616405 gsettings missing g_return_if_fail's
8960  616245 Use G_DEFINE_INTERFACE macro
8961  614541 Add G_TYPE_ERROR boxed type for GError
8962
8963 * Updated translations:
8964  Catalan (Valencian)
8965  Galician
8966  Kannada
8967  Spanish
8968
8969
8970 Overview of Changes from GLib 2.24.0 to GLib 2.25.0
8971 ===================================================
8972
8973 * The GSettings framework has been merged. This provides the API to
8974   replace GConf. DConf will provide a backend implementation for it.
8975   GConf will also provide a backend implementation to ease the
8976   transition. We provide utilities to assist with schema conversion
8977   and data migration, as well as a porting guide.
8978
8979 * Translation updates:
8980  Bengali
8981  Catalan
8982  Danish
8983  Gujarati
8984  Marathi
8985  Thai
8986  Traditional Chinese
8987
8988
8989 Overview of Changes from GLib 2.23.6 to GLib 2.24.0
8990 ===================================================
8991
8992 * Bug fixes:
8993  613601 buglet in dup_close_on_exec_fd
8994  584284 g_data_input_stream_read_until_async behaves confusingly
8995  613748 Write errors in middle of copy cause hang
8996  613923 splice_stream_with_progress: wrong error handling
8997  613667 Typo in GObject documentation
8998  613618 gvariant format string docs unclear
8999
9000 * Translation updates:
9001  Basque
9002  Ukrainian
9003  Vietnamese
9004
9005
9006 Overview of Changes from GLib 2.23.5 to GLib 2.23.6
9007 ===================================================
9008
9009 * Class private data:
9010   - support for private data associated with a GTypeClass
9011
9012 * GVariant merge is now complete:
9013   - loading functions and parser merged
9014
9015 * Windows improvements:
9016   - socket fixes
9017   - various build improvements
9018   - removal of GCC/C99isms in favour of portable code
9019   - drop unmaintained Visual Studio 8 support
9020
9021 * Minor API addition:
9022   - g_desktop_app_info_get_filename()
9023
9024 * Bugs fixed:
9025  521707 Class private data
9026  612502 build fails on glib/tests/gvariant.c
9027  612832 [GDesktopAppInfo] New function g_desktop_app_info_get_filename
9028  612702 [PATCH] Fix GSocket-related crash on Windows
9029  612736 Improve the documentation about single include
9030  610858 gvariant test fails sometimes
9031  612327 uninitialized variable
9032
9033 * New translations:
9034  Afrikaans
9035  LowGerman
9036
9037 * Updated translations:
9038  Czech
9039  Finnish
9040  Galician
9041  Greek
9042  Punjabi
9043  Romanian
9044  Serbian
9045
9046
9047 Overview of Changes from GLib 2.23.4 to GLib 2.23.5
9048 ===================================================
9049
9050 * New API addition: g_malloc_n() and friends used to implement an
9051   overflow-safe family of g_new() macros.
9052
9053 * GVariant:
9054  - GVariantBuilder and GVariantIter are now merged.
9055  - The variable arguments API is now merged.
9056  - The parser will be in a future release.
9057
9058 * GIO:
9059  - Remove GUtf8InputStream (which never appeared in a stable release)
9060    for now since it doesn't satisfy the needs of its main intended use
9061    case.  We hope to reimplement this feature in a better form in a
9062    future release.
9063
9064 * Bugs fixed:
9065  609531 missing licence headers
9066  612107 Missing G_FILE_ATTRIBUTE_TRASH_ORIG_PATH
9067  611897 g_io_modules_scan_all_in_directory leaks
9068  608196 Overflow-safe g_new family
9069  611696 gio uses GetAddrInfo which requires special handing on windows 2k
9070  605667 Don't use G_PARAM_SPEC_VALUE_TYPE when we know the pspec is valid
9071  610860 test_g_file_open_readwrite fails if $HOME is unwritable
9072  552912 glib-2.18 /live-g-file/test_copy_move failed when run as root
9073  609813 Renaming a file discards file notes
9074
9075 * Updated translations:
9076  Basque
9077  Brazilian Portuguese
9078  British English
9079  Bulgarian
9080  Catalan
9081  Danish
9082  Estonian
9083  French
9084  German
9085  Hungarian
9086  Italian
9087  Lithuanian
9088  Norwegian bokmål
9089  Portuguese
9090  Russian
9091  Slovenian
9092  Spanish
9093  Swedish
9094  Traditional Chinese
9095
9096
9097 Overview of Changes from GLib 2.23.3 to GLib 2.23.4
9098 ===================================================
9099
9100 * GVariant: The core of GVariant has been merged now, with some
9101  API still to follow.
9102
9103 * GIO:
9104  - There is a new interface GFileDescriptorBased for file descriptor
9105    based IO. GLocalFile{Input,Output}Stream implement it
9106  - Use splice(2) to transfer data between file descriptors without
9107    extraneous copies
9108  - Add a way to request move events from file monitors
9109
9110 * Bugs fixed:
9111  609143 *result_uncertain is never assigned in g_content_type_guess
9112  604086 Use splice(2) when doing local file copies
9113  547890 No move events for GFileMonitorEvent?
9114  568760 nautilus freezes due to a bug in garray.c:322
9115  609962 Add info about the use of G_DEFINE_INTERFACE
9116  609564 g_base64_encode_close docs should mention outbuf size...
9117  610484 g_variant_equal bug
9118  610131 libasyncns does not compile on Solaris 8
9119  609530 missing single header include guards
9120
9121 * Updated translations:
9122  Czech
9123  Estonian
9124  Galician
9125  German
9126  Korean
9127  Polish
9128  Slovenian
9129  Spanish
9130  Traditional Chinese
9131
9132
9133 Overview of Changes from GLib 2.23.2 to GLib 2.23.3
9134 ===================================================
9135
9136 * GLib now has a facility for locks that consume only one bit of
9137   storage inside an integer: g_bit_lock()
9138
9139 * GVariant: The serializer has been merged, with more API to follow
9140
9141 * Bugs fixed
9142  548967 1 bit mutex lock
9143  604967 2.22.3 libasyncns build fails on HP-UX 11.11
9144  608602 G_VALUE_COLLECT_INIT variables shadow those in G_VALUE_COLLECT
9145  608743 Crash in g_hostname_to_ascii visiting certain website in epiphany
9146  599197 array ref and unref functions crash on NULL array.
9147  608159 mem leak in g_io_modules_scan_all_in_directory
9148
9149 * Translation updates
9150  Brazilian Portuguese
9151  Czech
9152  French
9153  Norwegian bokmål
9154  Slovenian
9155  Spanish
9156  Thai
9157
9158
9159 Overview of Changes from GLib 2.23.1 to GLib 2.23.2
9160 ===================================================
9161
9162 * We are now using gcc builtins for atomic operations when available
9163
9164 * g_assert() grew the ability to store assertions in core dumps
9165
9166 * GIO supports lazy loading of GIO modules, and there is a new
9167   gio-querymodule utility that goes along with this.
9168   Packagers will need to adapt to this.
9169
9170 * Threading changes:
9171  - The requirements for g_thread_init() have been relaxed slightly,
9172    it can be called multiple times, and does not have to be the first
9173    call.
9174  - GObject now links to GThread and threads are enabled automatically
9175    when g_type_init() is called.
9176  - Thread-safety issues with boxed types in GObject have been fixed.
9177
9178 * GObject:
9179  - Another bunch of performance work has landed
9180
9181 * GVariant:
9182  - GVariantType has been merged, with the rest of the GVariant
9183    API to follow.
9184
9185 * Bugs fixed:
9186  568760 nautilus freezes due to a bug in garray.c:322
9187  602417 Document lifecycles of GSimpleAsyncResult and friends
9188  604824 crash in Epiphany: Selecting my Slashdot bo...
9189  448888 don't init g_slice for always-malloc
9190  531902 Use GCC atomic buildins for g_atomic*
9191  554887 boxed type registration is not thread safe
9192  586150 unresolved symbols when building glib 2.21.2 on OS X Tiger
9193  589176 row gvalue transform array exponentially
9194  594872 Support storing assertion messages into core dump
9195  602240 Upgrade libasyncns to 0.8
9196  603590 Speed up G_VALUE_COLLECT
9197  604457 gutf8inputstream.c: increasing unknown size pointer
9198  605686 GCharsetConverter doesn't flush
9199  605733 g_memory_output_stream_new violates GObject standards
9200  605883 g_object_new() processes varargs even when there are none
9201  605977 invalid utf-8 conversion in g_local_file_get_parse_name(...
9202  606775 Enable threads by default in gobject
9203
9204 * Translation updates:
9205  Asturian
9206  Basque
9207  Bengali
9208  Bulgarian
9209  Estonian
9210  Norwegian bokmål
9211  Spanish
9212  Thai
9213  Ukrainian
9214
9215
9216 Overview of Changes from GLib 2.23.0 to GLib 2.23.1
9217 ===================================================
9218
9219 * GObject performance work has landed:
9220  - Construction of simple objects is much faster
9221  - Interface lookup is lock-free and constant-time now
9222  - Reduced locking overhead when dealing with types
9223
9224 * GType now has a G_DEFINE_INTERFACE convenience macro
9225
9226 * GIO gained GUtf8InputStream, an input stream that
9227   performs utf-8 validation
9228
9229 * GLib now has byte-swap macros for gsize and gssize
9230
9231 * Bugs fixed:
9232 557151 Determining the newly_constructed boolean in gobject.c...
9233 557100 Performance improvements for GObjectClasses that don't...
9234 501166 Warning message says IA__g_type_init instead of g_type_init
9235 585375 Performance and Contention problems with g_type_class_ref...
9236 587892 Race in GType when instantiating the same class for the...
9237 603270 Input Stream validating utf8
9238 603476 gioenums.h:62: error: comma at end of enumerator list
9239 603540 g_time_val_from_iso8601 uses uninitialised variable
9240 603982 Stack overflow when reading file async with filter
9241 604645 G_DEFINE_INTERFACE_* documentation is not generated
9242 604875 Use of sa_len conflicts with system header
9243 320482 provide G_DEFINE_TYPE like macros for interfaces
9244
9245 * Updated translations:
9246  Estonian
9247  Hebrew
9248  Norwegian bokmål
9249  Vietnamese
9250  Welsh
9251
9252
9253 Overview of Changes from GLib 2.22.x to GLib 2.23.0
9254 ===================================================
9255
9256 * GIO:
9257  - GConverter: a generic interface for stateful conversions of data,
9258    suitable for charset conversion, compression, decompression, regexp
9259    replacement. Concrete implementations are GCharsetConverter,
9260    GZlibCompressor and GZlibDecompressor. GConverterInputStream,
9261    GConverterOutputStream are stream implementations that convert data
9262    while loading or saving it.
9263  - GMounts can now have a 'default location': a path that reflects
9264    the main entry point for the user (e.g. the home directory).
9265  - As a consequence of the compression support, GIO depends on zlib now.
9266
9267 * GObject:
9268  - G_IMPLEMENT_INTERFACE_DYNAMIC: a convenience macro for adding
9269    interfaces to dynamic types.
9270
9271 * GModule:
9272  - The -pthread flag has been added to all gmodule .pc files, because
9273    it is not generally permissible to load modules that are linked
9274    against libpthread if the program has not been compiled with threading
9275    support.
9276
9277 * Bugs fixed:
9278  601637 GUnixFDMessage should contain a GUnixFDList
9279  585566 GSocketListener API issues
9280  572252 Bug in g_file_test() function.
9281  600550 g_app_info_create_from_commandline doesn't treat arguments properly
9282  541236 not detecting exact content type
9283  350200 [PATCH] GTypeModule derived class unref does not unload plugin
9284  589631 Please enclose literal values with double quotes
9285  577711 cross compile check for g++ broken
9286  600620 Support X-GNOME-FullName in GAppInfo
9287  598899 GWin32DirectoryMonitor is broken
9288  593809 Nautilus does not restore the position of the icons on the desktop...
9289  563627 g_get_prgname() threadsafety
9290  600141 Add -pthread to gmodule pkg-config
9291  593856 file and directory monitors don't work when glib is compiled...
9292  324930 Nautilus should disallow copying of symlink to FAT drive early
9293  587300 Deadlock when calling g_cancellable_disconnect in a...
9294  595138 GFile not robust with invalid input
9295  591216 Warning building resolver.o
9296  590016 Does not compile under MinGW32 + Wine
9297  591214 Warnings building gcancellable.o
9298  561998 Have specific entry points (paths) for mounts...
9299  508157 Add G_IMPLEMENT_INTERFACE_DYNAMIC
9300  535159 g_file_has_parent
9301
9302 * Updated translations:
9303  Brazilian Portuguese
9304  Catalan
9305  Estonian
9306  Galician
9307  Norwegian bokmål
9308  Shavian
9309  Slovenian
9310  Spanish
9311  Swedish
9312
9313
9314 Overview of Changes from GLib 2.22.1 to GLib 2.22.2
9315 ===================================================
9316
9317 * GIO:
9318  - Support case-sensitive globs in the shared mime database,
9319    including support for the newer cache format that allows these.
9320    Case-sensitive globs have been introduced in shared-mime-info
9321    version 0.70
9322
9323 * GObject:
9324  - Speed up creation of simple objects
9325
9326 * Bugs fixed:
9327  597194 Typo in _G_TYPE_CVH macro
9328
9329 * Updated translations:
9330  Russian
9331
9332
9333 Overview of Changes from GLib 2.22.0 to GLib 2.22.1
9334 ===================================================
9335
9336 * Bugs fixed:
9337  596064 Test file marked for translation
9338  595972 possibly invalid search in mime_info_cache_dir_add_...
9339  596561 C99 style of declaration of variable in gmessages.c
9340  596314 g_utf16_to_utf8 returns an invalid UTF8 string
9341  596748 g_async_result_get_source_object returns a new ref
9342  593809 Nautilus does not restore the position of the icons...
9343  593775 uses inotify_init1 unconditionally
9344
9345 * Updated translations:
9346  Bengali
9347  Hebrew
9348
9349
9350 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
9351 ===================================================
9352
9353 * Add gdb python macros to make gobject debugging more pleasant
9354
9355 * Bugs fixed:
9356  579050 Allow making selected critical and warning messages non-fatal
9357  594759 g_socket_send_message fails due to invalid sendmsg params
9358  593941 GNetworkAddress skipping addresses when enumerating
9359  594597 Fix build with srcdir != builddir
9360  595619 Include gdb pretty printers
9361
9362 * Changes that might affect bindings:
9363  - The error parameter of g_simple_async_result_set_from_error has been
9364    made const.
9365
9366 * Updated translations:
9367  Assamese
9368  Bengali India
9369  British English
9370  Bulgarian
9371  Catalan
9372  Czech
9373  Danish
9374  Finnish
9375  Galician
9376  Greek
9377  Gujarati
9378  Hindi
9379  Japanese
9380  Kannada
9381  Malayalam
9382  Marathi
9383  Norwegian bokmål
9384  Oriya
9385  Polish
9386  Punjabi
9387  Romanian
9388  Serbian
9389  Simplified Chinese
9390  Slovenian
9391  Spanish
9392  Tamil
9393  Telugu
9394  Thai
9395  Traditional Chinese
9396  Ukrainian
9397  Vietnamese
9398
9399
9400 Overview of Changes from GLib 2.21.5 to GLib 2.21.6
9401 ===================================================
9402
9403 * Minor API additions:
9404   g_mkstemp_full is a variant of g_mkstemp that allows to specify flags
9405   and permissions
9406
9407 * Bugs fixed:
9408  593232 g_rand_new: read no more than requested from /dev/urandom
9409  591995 use saved errno
9410  589491 g_time_val_from_iso8601 doesn't handle some cases
9411  593406 Permissions set to 777 after copying via Nautilus
9412  594034 Add g_mkstemp_full()
9413
9414 * Updated translations:
9415  Assamese
9416  Basque
9417  Brazilian Portuguese
9418  Czech
9419  Estonian
9420  French
9421  German
9422  Hungarian
9423  Italian
9424  Kannada
9425  Malayalam
9426  Marathi
9427  Norwegian bokmål
9428  Oriya
9429  Portuguese
9430  Swedish
9431  Tamil
9432  Turkish
9433
9434
9435 Overview of Changes from GLib 2.21.4 to GLib 2.21.5
9436 ===================================================
9437
9438 * A performance problem with trashing of many files has been fixed
9439
9440 * GResolver now invalidates the libc resolv.conf cache as needed
9441
9442 * Minor api additions:
9443  - g_cancellable_make_pollfd returns a boolean now. And there is a
9444    new function g_cancellable_release_fd that can be used to released
9445    the resources used by a GCancellable.
9446
9447 * Bugs fixed:
9448  589988 Compilation error on Solaris 9 (missing stdint.h)
9449  588901 gtcpconnection.c won't compile
9450  584246 GResolver needs to call res_init() when network state changes
9451  591714 Figure out failure handling for g_cancellable_make_pollfd()
9452  591532 redundent '/' returned from g_file_resolve_relative_path
9453  591378 Use MSG_NOSIGNAL in GSocket if it's available
9454  589649 API documentation migration for Base64 Encoding
9455  591840 configure fails with autoconf 2.64
9456
9457 * Updated translations:
9458  Basque
9459  Brazilian Portuguese
9460  Bulgarian
9461  Danish
9462  Estonian
9463  Finnish
9464  Galician
9465  Gujarati
9466  Hndi
9467  Irish
9468  Japanese
9469  Korean
9470  Norwegian bokmål
9471  Polish
9472  Portuguese
9473  Punjabi
9474  Spanish
9475  Swedish
9476  Telugu
9477  Traditional Chinese
9478  Thai
9479
9480
9481 Overview of Changes from GLib 2.21.3 to GLib 2.21.4
9482 ===================================================
9483
9484 * GTree is now refcounted
9485
9486 * Bugs fixed:
9487  587938 Undocumented limitation for g_str_equal
9488  587773 refcounts for GTree
9489
9490 * Updated translations:
9491  French
9492  Hebrew
9493  Norwegian bokmål
9494  Spanish
9495  Swedish
9496  Traditional Chinese
9497  Ukrainian
9498
9499
9500 Overview of Changes from GLib 2.21.2 to GLib 2.21.3
9501 ===================================================
9502
9503 * GMappedFile is refcounted now
9504
9505 * Mainloop: It is now possible to set per-thread default contexts,
9506   with g_main_context_push_thread_default.
9507
9508 * glib-mkenums supports a @basename@ substitution, in addition
9509   to @filename@.
9510
9511 * GIO:
9512  - Vfs implementations can support storing of per-file metadata.
9513  - GCancellable can now be subclassed.
9514  - Unmount and eject methods now optionally allow interaction, via
9515    variants that take a GMountOperation object.
9516
9517 * Bugs fixed:
9518  556706 Inconsistent help arguments -h, -?
9519  579449 FileChoosers no longer work if an idle handler is active
9520  579933 mainloop FD_CLOEXEC has a race condition
9521  579984 alternate GMainContext support
9522  585937 gio/gsocket.c (glib 2.21.2) does not compile (Windows/mingw)
9523  586675 Runtime library location
9524  586797 Add GCancellables to GSocket ops
9525  586868 g_filename_complete_get_completions doesn't always return...
9526  587415 g_resolver_lookup_by_name_finish returns a freed list
9527  587434 regression tests fail, at least on x86_64
9528  586928 Avoid g++ warning in g_error()
9529
9530 * Updated translations:
9531  Estonian
9532  Hebrew
9533
9534
9535 Overview of Changes from GLib 2.21.1 to GLib 2.21.2
9536 ===================================================
9537
9538 * GIO:
9539   - g_socket_speaks_ipv4 is a new function to check if a socket can
9540     speak IPv4.
9541   - g_socket_listener_add_address gained a new effective_address out
9542     parameter.
9543   - GIO now returns special icons for XDG user directories, by the
9544     name folder-music, folder-documents, etc.
9545   - GIO gained support for starting/stopping of drives, which can be used
9546     in connection with external hard disk enclosures, disk arrays, iSCSI
9547     devices, etc. See g_file_start/stop_mountable.
9548
9549 * GLib:
9550  - g_reload_user_special_dirs_cache is a new function to force GLib to
9551    reload the XDG user directory mapping from disk.
9552
9553 * Bug fixes:
9554  584574 glib compile failure on Mac OS X with gunixresolver.c and...
9555  585566 GSocketListener API issues
9556  584255 Incorrect freeing of thread pool in GThreadedSocketService
9557  585088 g_string_chunk_insert_len stops at nul bytes
9558  585360 Monitor fontconfig configuration files using gio causes m...
9559  580103 Terminal starts on Display :0.0 when started on :0.1 in D...
9560  580301 network: a few issues on old darwin
9561  583398 SRV weight sorting is incorrect
9562  584176 build fixes on FreeBSD
9563  585189 g_cancellable_reset() must be called in same thread as g_...
9564  585280 compilation dies on gio/gsocket.c, needs sys/uio.h to con...
9565  585281 gio/gunixfdmessage.c needs sys/types.h for platforms that...
9566  585478 don't leak the inotify fd
9567  585575 g_socket_listener_add_inet_port() doesn't do the right thing
9568  585599 g_socket_listener_add_socket() consumes the socket
9569  585676 GEmblem doesn't reference its 'icon' if that is set as a ...
9570  585717 "bytes" nautilus translation to french is not shown in th...
9571  541276 XDG directories should have their own icons
9572  585726 Grammatical error in GList documentation
9573  585520 Wrong warning option in documentation
9574  585673 GNOME Goal: Remove deprecated glib symbols
9575  585591 Starting/stopping drives
9576
9577 * Updated translations:
9578  Bengali India
9579  Norwegian bokmål
9580
9581
9582 Overview of Changes from GLib 2.21.0 to GLib 2.21.1
9583 ===================================================
9584
9585 * GIO:
9586  - Support for network IO has been added, including a low-level
9587    socket API and a high-level API for network connections and
9588    services.
9589  - Support for read-write access with GIOStream and its subclasses.
9590  - GMount gained a pre-unmount signal.
9591
9592 * Bug fixes:
9593  576104Implement GMount::pre-unmount
9594  578769 implement GWinHttpFileInputStream::close_fn
9595  582856 gsocket.c doesn't compile on Solaris
9596  569375 g[u]intptr undocumented
9597  573246 [FIX] g_desktop_app_info_dup() can access NULL pointer
9598  575013 g_cancellable_push_current() does not allow NULL
9599  577884 live-g-file.c:461: error: format ‘%d’ expects type ...
9600  578499 g_output_stream_splice and stream closing with gnio strea...
9601  579558 Application employing gvfs crashes with only libgvfscommo...
9602  583001 SIGPIPE (grr!)
9603  583061 Please add convenience function to connect to machines by...
9604  583198 typo in error message
9605  583206 use g_set_error_literal where appropriate
9606  583229 void function g_async_initable_init_async returns value
9607  583324 locking problem in g_main_context_iterate()
9608  583408 void function g_socket_control_message_serialize returns ...
9609  578786 wrong and confusing error message
9610  583205 g_inet_address_to_bytes has no length outparam
9611  583196 mem leak in keyfile test
9612  583663 GSocketType enum ends with a comma
9613  569024 Make g_error_new_valist public
9614  569376 missing G_G[U]INTPTR_FORMAT
9615  580347 off-by-1 bug in GWinHttpFile
9616
9617 * Updated translations:
9618  Oriya
9619  Spanish
9620  Valencian-Catalan
9621
9622
9623 Overview of Changes from GLib 2.20.x to GLib 2.21.0
9624 ===================================================
9625
9626 * GIO:
9627  - New helper functions g_cancellable_connect/disconnect to avoid
9628    race conditions when connecting to the "cancelled" signal on
9629    GCancellable.
9630  - New types and methods for dealing with IPv4 and IPv6 addresses (and
9631    UNIX domain socket addresses under UNIX). This does not include code
9632    for actual socket I/O.
9633  - GResolver provides asynchronous and cancellable APIs for resolving
9634    hostnames, reverse lookup of IP addresses and resolving SRV records.
9635
9636 * Glib now provides hash and comparison functions for int64 and double
9637   types, suitable for use with GHashTable.
9638
9639 * GArray, GPtrArray and GByteArray can be ref counted now, and have
9640   boxed types.
9641
9642 * Bugs fixed:
9643  572844 Helper for GCancellable::cancelled connect/disconnect
9644  578363 goption docs should be improved
9645  548466 async/cancellable DNS resolver
9646  579830 param spec strings should use P_()
9647  579862 requesting xattr::foo ends up calling getxattr(..., user...
9648  580453 Hash and equal functions for gint64 and gdouble
9649  580450 Reference counting and boxed types for arrays
9650  580194 gresolver doesn't build on Solaris
9651  580301 network: a few issues on old darwin
9652  580299 network: include sys/types.h before sys/socket.h to insur...
9653  572508 gmarkup speedup
9654  580546 g_strtoull() referenced in documentation...
9655  580656 g_key_file_set_string_list erroneously asserts list != NULL
9656  579272 leaks in g_simple_async_result_set_op_res_gpointer
9657
9658
9659 * Updated translations:
9660  Catalan (ca)
9661  Pashto (ps)
9662  Spanish (es)
9663
9664
9665 Overview of Changes from GLib 2.20.0 to GLib 2.20.1
9666 ===================================================
9667
9668 * Bug fixes:
9669  575555 Use fsync() when replacing files to avoid data loss on
9670  575708 runaway inotify madness
9671  575270 GVolumeMonitor::mount-pre-unmount not being emitted
9672  577128 glib make check Failed to execute child process...
9673  573673 Always show "backup" directories
9674  578369 g_time_val_from_iso8601() parses timezones incorrectly
9675  578002 Fix a small typo in GFile docs
9676  578017 G_DEFINE_TYPE_EXTENDED docs
9677
9678 * Updated translations:
9679  Arabic
9680  Assamese
9681  Basque
9682  Bularian
9683  Brazilian Portuguese
9684  British English
9685  Catalan
9686  Danish
9687  French
9688  Galician
9689  German
9690  Greek
9691  Hungarian
9692  Italian
9693  Japanese
9694  Kannada
9695  Lithuanian
9696  Malayalam
9697  Norwegian bokmål
9698  Oriya
9699  Polish
9700  Punjabi
9701  Russian
9702  Simplified Chinese
9703  Slovenian
9704  Spanish
9705  Swedish
9706  Tamil
9707
9708
9709 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
9710 ===================================================
9711
9712 * Base64 support: Avoid integer overflows. CVE-2008-4316
9713
9714 * Bugs fixed:
9715  574019 GChecksum: document and guarantee hex characters in lower case
9716  573454 Unable copy/move files to directories symlinked to gvfs share
9717  561172 gnome-open fails on local URIs with anchors
9718  573970 crash in gunixvolumemonitor:update_mounts when unmounting
9719  573843 g_get_current_dir returns non-absolute path
9720
9721 * Updated translations:
9722  Assamese (as)
9723  Bengali (bn_IN)
9724  Czech (cs)
9725  Hindi (hi)
9726  Italian (it)
9727  Japanese (ja)
9728  Lithuanian (lt)
9729  Malayalam (ml)
9730  Marathi (mr)
9731  Oriya (or)
9732  Polish (pl)
9733  Romanian (ro)
9734  Telugu (te)
9735
9736
9737 Overview of Changes from GLib 2.19.8 to GLib 2.19.9
9738 ===================================================
9739
9740 * GMarkup:
9741  - Considerable speedup
9742
9743 * GIO
9744  - Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing
9745    the destination of a copying operation as if it did not exit before.
9746  - Be more careful when classifying files as desktop files
9747  - Support desktop file key X-GIO-NoFuse which disables the use
9748    of fuse pathnames for %u and %U arguments
9749
9750 * Bugs fixed:
9751  572672 glib/gthread.c: argument is different type
9752  572464 Doc for g_file_get_contents
9753  572151 “it's” and “its” confused in docs and comments
9754  570501 g_win32_get_system_data_dirs uses invalid conversion...
9755  167569 g_string_append_printf crashes on win32 when used...
9756  572508 gmarkup speedup
9757  560564 Replacing a symlink with its linked file truncates... 
9758  549298 impossible to copy files with p (pipe) flag
9759  543183 Clarify docs for g_file_has_prefix
9760  540461 g_memory_output_stream_get_data_size() doesn't behave...
9761  573462 GEmblemedIcon leak
9762  573421 Clarify message format in GMountOperation
9763  573658 Deadlock in giomodule.c
9764  556706 Inconsistent help arguments -h, -?
9765  573527 Wrong shell to run config.status in Makefile.in.in
9766  573128 A couple of typos in GObject documentation
9767
9768 * Updated translations:
9769  Catalan (ca)
9770  British English (en_GB)
9771  Spanish (es)
9772  Basque (eu)
9773  Finnish (fi)
9774  French (fr)
9775  Gujarati (gu)
9776  Hebrew (he)
9777  Hungarian (hu)
9778  Korean (ko)
9779  Maithili (mai)
9780  Norwegian bokmål (nb)
9781  Dutch (nl)
9782  Portugese (pt)
9783  Swedish (sv)
9784  Thai (th)
9785  Traditional Chinese (zh_HK)
9786  Traditional Chinese (zh_TW)
9787
9788
9789 Overview of Changes from GLib 2.19.7 to GLib 2.19.8
9790 ===================================================
9791
9792 * GIO: Fix missing exports of new API
9793
9794 * Fix strict aliasing warnings and violations to make Glib work
9795   with gcc 4.4
9796
9797
9798 Overview of Changes from GLib 2.19.6 to GLib 2.19.7
9799 ===================================================
9800
9801 * GIO
9802  - GFile gained an attribute for the actual file size in bytes
9803  - GMountOperation gained an "aborted' signal that allows to abort
9804    a mount operation from the backend side
9805
9806 * Bugs fixed:
9807  523742 Use noinst for non-installable libraries
9808  566747 URIs opened with firefox %u load as local files
9809  541225 Can't compile gio on AIX duplicate case value in gioerror.c
9810  571598 GAsyncResult with NULL gobject
9811  505042 add file attribute for actually used file size in bytes
9812
9813 * Updates translations:
9814  Basque (eu)
9815  Gujarati (gu)
9816  Italian (it)
9817  Japanese (ja)
9818  Norwegian bokmål (nb)
9819  Dutch (nl)
9820  Portugese (pt)
9821  Thai (th)
9822  Vietnamese (vi)
9823
9824
9825 Overview of Changes from GLib 2.19.5 to GLib 2.19.6
9826 ===================================================
9827
9828 * New format macro to print goffset data: G_OFFSET_FORMAT
9829
9830 * GIO: 
9831  - Add a GFilter{Input,Output}Stream::close-base-stream properties which
9832    determine whether the base stream will be closed when the filter stream
9833    is finalized.
9834  - g_data_input_stream_read_line and ..._read_until have asynchronous
9835    variants now.
9836
9837 * Bugs fixed:
9838  568294 A wrong reference in the description of g_bookmark_file_...
9839  563141 RFE: define G_OFFSET_FORMAT
9840  569105 g_time_val_to_iso8601() assumes time_t==long
9841  568394 dropping the last reference to a stream filter closes...
9842  568741 g_buffered_input_stream_fill_async doesn't work
9843  568723 g_buffered_input_stream_fill_async doesn't take count == -1
9844  568575 _async functions for GDataInputStream
9845
9846 * Updated translations:
9847  Bulgarian (bg)
9848  Finnish (fi)
9849  Hungarian (hu)
9850  Oriya (or)
9851  Swedish (sv)
9852  Traditional Chinese (zh_HK)
9853  Traditional Chinese (zy_TW)
9854
9855
9856 Overview of Changes from GLib 2.19.4 to GLib 2.19.5
9857 ===================================================
9858
9859 * Update included PCRE to 7.8
9860
9861 * g_base64_decode_inplace: New function to do base64 decoding in place
9862
9863 * Bugs fixed:
9864  567138 get_package_directory_from_module() does not free ...
9865  566569 gregex docs clarification
9866  566573 g_match_info_fetch_pos docs
9867  564728 Add function to decode base64 encoded data in place
9868  567838 G_STRUCT_OFFSETOF fails to compile under icc 9.1
9869  567977 textdomain() macro should not return NULL ...
9870  512779 --disable-regex breaks compilation
9871  566770 error code 0 for Too many open files is useless
9872  565484 g_content_type_guess passes non-UTF8 text to XDG ...
9873
9874 * Updated translations:
9875  Catalan (ca)
9876  Spanish (es)
9877  Italian (it)
9878  Swedish (sv)
9879
9880  
9881 Overview of Changes from GLib 2.19.3 to GLib 2.19.4
9882 ===================================================
9883
9884 * GIO:
9885   - Use O_NOATIME when sniffing mimetypes
9886   - Add a convenience method to check if a GSimpleAsyncResult
9887     is valid
9888
9889 * Bugs fixed:
9890  560676 function access for g_threads_supported
9891  565905 There is no g_context_group_set_translation_domain
9892  564210 SUN Studio 12 has supported visibility attribute
9893  565136 GObject's "notify" signal parameters are wrong in gtk-doc
9894  565831 error in interface creation sample
9895  566348 g_file_open_tmp uses the wrong g_mkstemp on win32
9896  566064 Add NOATIME flag to query_info_flags
9897  566170 g_async_result_verify_source_object
9898
9899 * Updated translations:
9900  Spanish (es)
9901  Norwegian bokmål (nb)
9902  Brazilian Portugese (pt_BR)
9903  Simplified Chinese (zh_CN)
9904
9905
9906 Overview of Changes from GLib 2.19.1 to GLib 2.19.3
9907 ===================================================
9908
9909 * Bugs fixed:
9910  508021 Add support for the CRIS and CRISv32 architectures
9911  526320 should not list mounts that the user doesn't have permission to use
9912  558458 Cannot build gio tests on Solaris using SUN cc
9913  555465 GUnix{Input,Output}Stream lacks fd/close_fd_at_close property
9914  558298 Hide ecryptfs mounts
9915  515777 incorrect date&time on copy
9916  562452 Ensure we return G_IO_ERROR_CANCELLED if cancelling
9917         g_simple_async_result_run_in_thread
9918  473150 g_type_module_use inconsistently increases the use
9919         counter in case of error
9920  563150 G_GU?INT*_MODIFIER/FORMAT docs
9921  563156 Document printing and scanning gunichar values
9922
9923 * Updated translations:
9924  Hebrew (he)
9925  Italian (it)
9926  
9927
9928 Overview of Changes from GLib 2.19.0 to GLib 2.19.1
9929 ===================================================
9930
9931 * GIO: 
9932   - g_icon_to_string, g_icon_new_for_string: GIcon serialization support
9933   - G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
9934   - g_app_info_get_commandline: new function to get the full commandline
9935   - g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New functions 
9936     to 'shadow' mounts (i.e. hide them from the UI when they already
9937     have a different representation, like a bookmark) 
9938
9939 * Bugs fixed:
9940  556186 gpoll.h breaks gmain.h inclusion
9941  557087 mem leak in g_content_types_get_registered
9942  556921 gpoll.h breaks hal compilation
9943  557210 g_compute_checksum_for_* asserts with less than 2 bytes
9944  558381 Add support for compile time assertions
9945  558185 'parent' variable in g_local_file_get_child_for_display_name()
9946         hits g_object_unref(NULL) assertion
9947  558513 g_warn_if_fail FIXME in gtestutils
9948  558672 NULL key lookup using g_hash_table_lookup_extended() 
9949  555740 gicon serialization
9950  557182 preview functionality
9951  528320 Incorrect icons displayed for files with custom mimetype icons
9952  556910 Memory leak: sub
9953  557592 Missing include in gwinhttpfile.c
9954  556415 Crash on Windows 2000 in g_winhttp_vfs_init()
9955  555935 Clarify the mechanism of overwriting properties
9956  552776 ac_cv_func_posix_getgrgid_r not mentioned
9957  559448 GObject Reference Manual (typo)
9958  561212 GFileReadMoreCallback API doc refers to non-existant function
9959  560569 gkeyfile doesn't use the set list_separator in some cases
9960  560568 gkeyfile docs buglet
9961  559413 g_option_group_set_error_hook docs buglet
9962  562378 callback return value not respected for callback option
9963         with no arg
9964  559110 Do not include libintl.h after glibintl.h
9965  557603 carbon check output misplaced
9966  562544 g_key_file_get_string and g_key_file_get_value
9967         documentation does not explain the difference
9968  547264 Missing "no flags" flag
9969  562638 GDebugKey key member should be const
9970  562639 g_parse_debug_flags() parsing "help"
9971  562549 g_byte_array_free should tell how free data
9972  559452 GObject Reference Manual (typo)
9973  559462 GObject Reference Manual (typo)
9974  559517 GObject Reference Manual (typo)
9975  562538 GObject interface tutorial shouldn't finalise with
9976         "Please forget everything"
9977  561352 Leak of icon description
9978  561375 Leaks mountpoint description
9979  561807 inotify_sub.c: dup_dirname() fails to remove trailing '/'
9980  562393 g_buffered_input_stream_read_byte broken if data available
9981  541715 win32 : patch for warnings and signature problems in recent code
9982  547481 g_data_input_stream_read_line behaves not as stated in the docs
9983  548163 Nautilus displays wrong error message for too long file names
9984  559633 gtk_image_new_from_gicon does not always work for .desktop files
9985  555486 – No way to recover command line from GAppInfo
9986
9987 * Translation updates:
9988  Spanish (es)
9989  Ukrainian (uk)
9990
9991
9992 Overview of Changes from GLib 2.18.1 to GLib 2.19.0
9993 ===================================================
9994
9995 * Rewrite GHashTable to use open addressing with quadratic probing instead 
9996   of chaining. This has the potential to reduce memory fragmentation 
9997   significantly, while being slightly faster due to better locality and 
9998   no need to call alloc/free functions for nodes. Benchmarks suggest it 
9999   also uses less memory overall.
10000
10001 * Make g_poll available as public api
10002
10003 * New macros g_assert_error and g_assert_no_error to assert 
10004   that a GError is set or unset
10005
10006 * g_cancellable_make_pollfd: New method to make a GPollFD for a cancellable
10007
10008 * g_app_info_can_delete, g_app_info_delete, g_app_info_reset_type_associations:
10009   New functions to clean up app infos and content types
10010
10011 * When launching applications, always pass fuse file:// uris when possible,
10012   and let gio convert such uris back to gio uris.
10013
10014 * Bugs fixed:
10015  505361 gunixinputstream.c assumes poll() available
10016  509446 portable blocking gio cancellation
10017  553820 gpoll.c: undeclared identifier
10018  553724 python interpretter path not patched in correctly
10019  553857 gbacktrace.h requires signal.h
10020  553447 g_assert_no_error()
10021  554092 glib doesn't return G_FILE_ERROR_NOENT et al on OS X
10022  528670 Always pass file:/// uri's in GAppLaunchContext
10023  555224 Improve g_format_size_for_display doc
10024  555309 giochannel breaks on error
10025  554790 g_convert() misbehaves with winiconv versions
10026  555314 mem leak in gmarkup
10027  555313 GFileAttribute boxed type get_type function should...
10028  552861 glib-2.0.m4 calls system(3) without storing its result
10029  554557 Patch to fix gcc warnings about missing format specifiers
10030  552107 Small libtool fixes
10031  551355 Make glib build with libtool 2.2
10032  555311 format not a string literal and no format arguments
10033  556101 static mutex yields warnings with g++
10034  556186 gpoll.h breaks gmain.h inclusion
10035  526456 Open addressing in GHashTable
10036  553426 cancellable clarifications
10037  545350 GAppInfo deletion
10038  545351 Reset associations for content type
10039  552168 volume's mount not mounted after g_volume_mount_finish
10040  554970 segfault when update-desktop-database is not available...
10041  554745 GFileAttributeInfoList should be boxed
10042  555121 Improved build-time handling of gio module-dir
10043  555711 Wrong fallback order of mimetype icons
10044  555331 Deprecate adoption of mounts
10045  556335 make check fails in abicheck.sh
10046  556334 Warning when building without selinux support
10047  556422 g_file_enumerator_next_file: unclear...
10048
10049 * Updated translations:
10050  Arabic (ar)
10051  Danish (da)
10052  Polish (pl)
10053  Brazilian Portugese (pt_BR)
10054  Romanian (ro)
10055  Russian (ru)
10056
10057
10058 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
10059 ===================================================
10060
10061 * Bugs fixed:
10062  550433 g_test_init doesn't recognize --help
10063  523463 Core dump in gmain.c:2482:IA__g_main_context_check
10064  551228 G_STRFUNC on recent Sun compiler should be expanded...
10065  551410 gtestutils.c: using printf without prototype
10066  551731 g_date_set_time[_t] docs should mention what timezone
10067  548321 <string.h> is not included in gi18n-lib.h
10068  551149 xdgmime mem leak
10069  550647 synchronous pipe I/O when reading mount reply
10070  551887 Docs for g_desktop_app_info_new_from_filename aren't...
10071  551681 g_content_type_guess() too naive with filenames
10072  552352 g_app_info_launch doesn't work if "Path" key...
10073  551408 gmodule.def generated to builddir...
10074  552359 g_file_info_get_icon should return GThemedIcon, and...
10075
10076 * Updated translations:
10077  Arabic (ar)
10078  Bengali India (bn_IN)
10079  British English (en_GB)
10080  Hindi (hi)
10081  Croatian (hr)
10082  Korean (ko)
10083  Oriya (or)
10084  Turkish (tr)
10085  Telugu (te)
10086
10087
10088 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
10089 ===================================================
10090
10091 * Win32:
10092   - rework the g_poll() implementation to match poll() semantics more closely
10093
10094 * Bugs fixed:
10095  324234 Using g_io_add_watch_full() to wait for connect() to return...
10096  548278 Async GETs connections are always terminated unexpectedly...
10097  500246 Bug fixes for giowin32
10098  523939 Example program for GValue
10099  550096 GBookmarkFile parser is not forward compatible
10100  550040 Move GString, rand and printf tests to the unit test framework
10101  550104 trivial documentation fix for g_get_home_dir
10102  548988 g_file_replace fails on Windows when the target file exists
10103  550059 Wrong docs for g_emblemed_icon_add_emblem
10104  548800 Missing a g_object_get_type function
10105  550056 Missing documentation for g_emblemed_icon_get_emblems
10106
10107 * Updated translations:
10108  Bulgarian (bg)
10109  Czech (cs)
10110  German (de)
10111  Estonian (et)
10112  Basque (eu)
10113  French (fr)
10114  Hebrew (he)
10115  Hungarian (hu)
10116  Italian (it)
10117  Japanese (ja)
10118  Lithuanian (lt)
10119  Maithili (mai)
10120  Dutch (nl)
10121  Swedish (sv)
10122  Thai (th)
10123  Ukrainian (uk)
10124  Vietnamese (vi)
10125
10126
10127 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
10128 ===================================================
10129
10130 * More fixes for 64-bit Windows
10131
10132 * GIO
10133  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
10134
10135 * Bugs fixed:
10136  546329 API docs for g_utf8_normalize() are incorrect
10137  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
10138  547200 g_utf8_find_next_char() issues
10139  547637 unconditional #include of sys/statfs.h in configure
10140  547337 G_DISABLE_DEPRECATED breaks tests build
10141  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
10142  502498 Test framework assertion failures should follow gcc
10143  546371 Improve docs re g_file_monitor
10144  546483 GThemedIcon:use-default-fallbacks is not readable without...
10145  546132 GFileIcon is bindings-unfriendly
10146  542156 zfs mount in home directory shown on nautilus desktop 
10147  535124 umask 002 not being applied for new directories...
10148  547080 g_file_copy leaks expected errors
10149  546582 Callbacks from GFileMonitor present a GFile...
10150  547262 Missing link in the docs
10151
10152 * Updated translations:
10153  Arabic (ar)
10154  Catalan (ca)
10155  Spanish (es)
10156  Basque (eu)
10157  Finnish (fi)
10158  Galician (gl)
10159  Hebrew (he)
10160  Marathi (mr)
10161  Norwegian bokmål (nb)
10162  Portugese (pt)
10163  Brazilian Portugese (pt_BR)
10164  Swedish (sv)
10165  Thai (th)
10166
10167
10168 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
10169 ===================================================
10170
10171 * Fix problems on 64-bit Windows
10172
10173 * g_markup_context_get_user_data: New function to access
10174   the user_data outside of callbacks
10175
10176 * GIO
10177  - g_mount_guess_content_type_sync: synchronous version of
10178    g_mount_guess_content_type
10179  - GEmblem: A GIcon implementation that adds emblem-related
10180    metadata to icons
10181  - GEmblemedIcon: A GIcon implementation that can add emblems
10182    to icons
10183
10184 * Bugs fixed:
10185  544088 option_test_LDADD is left in tests/Makefile.am
10186  544465 gmarkup makes it hard to use pre-rolled parsers
10187  545485 Implicit declaration of utime()
10188  545798 "Since: 2.18" mark is missing in g_set_error_literal...
10189  544140 fam-helper 64-bit issue
10190  529694 SELinux context setting support
10191  545157 wrong/no list of "open with" applications for .cc...
10192  545203 gfile.c: argument is different type
10193  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
10194  544177 Fix trivial cut and paste error in documentation
10195  545395 Language tweak for g_value_set_string* docs
10196  541036 Gnumeric crashes when trying to open Desktop...
10197  546079 leak in xdgmime
10198  545395 Language tweak for g_value_set_string* docs
10199  546017 Don't copy attributes when copying a symlink
10200
10201 * Updated translations:
10202  Arabic (ar)
10203  Estonian (et)
10204  Galician (gl)
10205  Italian (it)
10206  Japanese (ja)
10207  Korean (ko)
10208  Norwegian bokmål (nb)
10209  Pashto (ps)
10210  Portugese (pt)
10211
10212
10213 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
10214 ===================================================
10215
10216 * GIO:
10217  - New API to handle content types: g_mount_guess_content_type,
10218    g_content_type_guess_for_tree.
10219  - Export the eject-button signal on the volume monitor class
10220  - New API to enable out-of-process volume monitors: 
10221    g_volume_get_activation_root
10222
10223 * GObject:
10224  - New API to handle signals without slots in the class structure:
10225    g_signal_new_class_handler, g_signal_override_class_handler   
10226
10227 * Internationalization:
10228  - Add an NC_ macro that is a no-op equivalent of C_
10229
10230 * GMarkup:
10231  - Add two new functions g_markup_parse_context_push,
10232    g_markup_parse_context_pop to support "subparsers"
10233
10234 * Bugs fixed:
10235  541208 Functions to easily install and use signals without...
10236  541507 Ambiguous description of assigned characters in the...
10237  543040 async reading on dummy file will crash on GIO_USE_VFS=local
10238  543560 enable gio-FEN back-end warnings on Solaris will crash...
10239  528317 GRegex does not allow recursion limit
10240  337518 GMarkup: Subparser support
10241  541794 drive-eject-button signal
10242  541793 activation root for volumes
10243  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
10244  428048 2 of 51 tests fail on Solaris
10245  542332 small fix for error message in GMarkup
10246  482413 get_contents_stdio -- overflow and memory corruption
10247  406120 g_ascii_strtod
10248  334234 "printf" format error
10249  536996 Missing noop i18n macro equivalent to C_
10250  540616 mem leak in filechooser button
10251  539229 gobject-query calls itself query
10252  521589 [RFC] gobject documentation should mention Vala
10253  543168 Description of G_SLICE=debug-blocks discourages its use
10254  543220 Case collision on gio-extension-points.html
10255  530759 update the gobject tutorial to the XXI century
10256  535223 gbookmark file inefficiency ...
10257  543504 crash in Epiphany Web Browser: Opening local file
10258
10259 * Updated translation:
10260  German (de)
10261  Estonian (et)
10262  Pashto (ps)
10263  Albanian (sq)
10264  Thai (th)
10265  Traditional Chinese (zh_HK)
10266  Traditional Chinese (zh_TW)
10267
10268
10269 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
10270 ===================================================
10271
10272 * PCRE
10273  - fix for CVE-2008-2371 
10274
10275 * Bugs fixed:
10276  538119 glib's mainloop leaks a pipe to sub-processes
10277  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
10278  539067 The document g_io_channel_win32_new_fd() says...
10279  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
10280  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
10281  539074 Cannot get exit status with g_spawn_command_line_sync
10282  316221 G_LOCK warns about breaking strict-aliasing rules
10283  539770 migrate gstrfunc unit tests to gtest
10284  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
10285  538044 unconditional use of LC_MESSAGES
10286  540545 Monotonic time and timer offset
10287  535947 want g_set_error_literal
10288  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
10289  536252 GFileEnumerator should allow access to the containing GFile
10290  538362 Get Win32 icons back in the file chooser
10291  540802 g_list_prepend doesn't concat lists
10292  540423 unrecoverable error after g_seekable_truncate
10293  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
10294  539090 g_content_type_from_mime_type() should unalias
10295  540331 g_file_append_to () documentation: can return NULL
10296  534639 add g_desktop_app_info_new_from_keyfile
10297  536733 gio build failure on Irix
10298  536160 Add g_file_monitor()
10299  538127 FileChooser broken on win32
10300  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
10301  538564 gio should have gio-types.h
10302  540047 glib-genmarshal.c: '#include <io.h>' is too before
10303
10304 Updated translations:
10305  Korean (ko)
10306  Occitan (oc)
10307
10308
10309 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
10310 ===================================================
10311
10312 * New function: g_utime(), a gstdio wrapper for utime()
10313
10314 * New functions: g_dgettext() and g_dngettext(), wrappers
10315   for corresponding gettext functions with added functionaliy
10316
10317 * Support the latest version of the shared-mime spec, including
10318   icons for mime types 
10319
10320 * New function: g_themed_icon_prepend_name()
10321
10322 * Bugs fixed: 
10323  535418 Please document which glib version defines goffset
10324  528715 Misprint in the description of the interface g_type_class_add_private
10325  528714 Misprint in the description of the interface g_param_spec_flags
10326  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
10327  530527 Misprint in the description of the interface 
10328         g_cclosure_marshal_VOID__FLAGS
10329  530526 Misprint in the description of the fields 'class_init' and 
10330         'class_finalize' of the structure GTypeInfo
10331  528719 Improvement to the documentation of the "g_object_connect" interface
10332  528172 gtk_signal_handlers_unblock_* functions return value
10333         amount of matched signals, not amount of actually unblocked
10334  528717 Misprint in the description of the parameter 'type_id' for 
10335         the interface g_type_register_fundamental
10336  528716 Misprint in the description of the parameter 'iface_data' for 
10337         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
10338  537555 GObject instantiation not thread safe
10339  537546 'desktop' shortcut in file chooser looks like a generic folder
10340  537392 Additional colon in xattr name
10341  536641 Filesystem querying in gio does not list AFS and autofs file systems
10342  528600 g_dummy_file_get_parent("scheme://example.com/")
10343  503071 Application direction changes to right to left even if theres no 
10344         translation
10345  502511 g_assert_cmphex prints invalid message
10346  338162 Use po/LINGUAS
10347  314453 Nautilus crashes in Solaris when browsing the attached file
10348  529321 make check fails in glib/pcre
10349  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
10350         fallback to $HOME/Desktop if xdg-user-dirs is not in use
10351  498732 g_key_file_to_data cannot fail
10352  511367 add g_file_make_directory_with_parents
10353  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
10354         gcc 4.0 or newer
10355  536158 also bump GHashTable version when a node is removed via
10356         g_hash_table_iter_remove()/g_hash_table_iter_steal()
10357  531403 g_utf8_collate broken on Mac
10358  535628 test/patterntest.c still includes gpattern.h directly
10359  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
10360
10361 * Translation updates:
10362  Arabic (ar)
10363  German (de)
10364  Italian (it)
10365  Norwegian bokmål (nb)
10366  Thai (th)
10367
10368
10369 Overview of Changes from GLib 2.16.x to GLib 2.17.0
10370 ===================================================
10371
10372 * Update to Unicode 5.1
10373
10374 * Update included libcharset to the one shipped with libiconv 0.12
10375
10376 * Update included PCRE to 7.7
10377
10378 * Enforce that only toplevel headers are directly included.
10379   This is turned on by default for GObject and GIO. To turn
10380   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
10381
10382 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
10383
10384 * On Solaris, use FEN for file monitoring in GIO
10385
10386 * Use the GIO_EXTRA_MODULES environment variable to find
10387   additional GIO modules 
10388
10389 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
10390   function attribute
10391
10392 * g_checksum_reset: New function to reset the state of a GChecksum 
10393
10394 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
10395   rate at which events are reported
10396
10397 * g_file_query_file_type: New utility function to query the type of
10398   a file
10399
10400 * g_memory_output_stream_get_data_size: New function to obtain the
10401   size of the written data.
10402
10403 * Bugs fixed:
10404  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
10405  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
10406  518160 replace two g_strdup_printf calls in GBookmarkFile
10407  523877 gbookmarkfile: avoid using g_string_append_printf() and
10408         other optimizations 
10409  525192 100% CPU if run main loop with no IO sources
10410  315437 extern inline -> static inline
10411  524314 g_convert() on Win32 implicitly converts full width
10412         alphanumerics into half width
10413  525732 Error in documentation for g_list_first
10414  525674 A typo in gmarkup.c
10415  448943 g_timeout_add_seconds() problems
10416  525972 UCS-4 not in the new win_iconv implementation
10417  526619 make test-report crash
10418  491554 Update to Unicode 5.1.0
10419  519137 g_slice_dup macro needs cast for 64-bit platform
10420  528752 Win32 build and SSL not working
10421  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
10422  528667 Typos in testing module documentation
10423  459905 Bug in wcwidth data
10424  534085 g_unichar_iswide_cjk() has a totally wrong table
10425  501651 Update glib/libcharset
10426  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
10427  534319 GLib's .pc files could use Libs.private
10428  534137 Typo in g_spawn_async_with_pipes doc
10429  517419 gio win32 directory monitor
10430  526796 Wrong order of arguments in g_file_copy's fallback
10431  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
10432  532965 Should not return filesystem::free for certain file systems
10433  525553 fix typo and nitpicking in GArray documentation
10434  526572 Missing * in declaration of parent_class in Object
10435         Destruction section of GObject Reference Manual
10436  528648 Extra >s in Object Construction section
10437  535021 g_param_spec_internal documentation should
10438         describe purpose of nick and blurb
10439  521513 Firefox crash when using file picker
10440  528433 gdesktopappinfo snafu ...
10441  533369 API g_file_info_get_attribute_string () unables to get "...
10442  521045 glib f_fstypename miscellany
10443  521672 compile error
10444  521946 control rate limit on GUnixMountMonitor
10445  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
10446  523015 Implement sliding window based upload operation
10447  523019 Use new GCC 4 feature
10448  523338 list nfs4 as a nfs mount type
10449  524350 Make glib build without NLS again
10450  524579 g_file_copy reports wrong total on progress callback for ...
10451  524742 A typo in gtestutils.c.
10452  524950 Minor documentation typos.
10453  525866 the user directory should not be considered as a mount to...
10454  526320 should not list mounts that the user doesn't have permiss...
10455  527132 nautilus crash when making ftp connection
10456  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
10457  534759 Build failure in gio
10458  534764 Typo in error produced by g_file_make_directory
10459  521851 Redudant tests in gunixmounts.c
10460  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
10461  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
10462  534177 Invalid description of the interface g_cclosure_marshal_S...
10463  520715 Add GFile method g_file_query_file_type
10464  523039 nautilus can't access to trash/computer/network if gvfs i...
10465  
10466 * Updated translations:
10467  Arabic (ar)
10468  Bulgarian (bg)
10469  Catalan (ca) 
10470  Czech (cs)
10471  Greek (el)
10472  Candian English (en_CA)
10473  British English (en_GB)
10474  Spanish (es)
10475  Estonian (et)
10476  Basque (eu)
10477  Galician (gl)
10478  Hebrew (he)
10479  Hungarian (hu)
10480  Japanese (ja)
10481  Lithuanian (lt)
10482  Norwegian bokmål (nb)
10483  Dutch (nl)
10484  Occitan (oc)
10485  Portugese (pt)
10486  Russian (ru)
10487  Slovak (sk)
10488  Albanian (sq)
10489  Swedish (sv)
10490  Turkish (tr)
10491  Vietnamese (vi)
10492
10493
10494 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
10495 ===================================================
10496
10497 * Fix a crash in g_themed_icon_new
10498
10499 * Update the included PCRE to 7.6
10500
10501
10502 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
10503 ===================================================
10504
10505 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
10506
10507 * GIO:
10508  - Add missing GMountMountFlags argument to g_unix_volume_mount
10509  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
10510    reference
10511  - Add properties to GThemedIcon for bindings sake
10512
10513 * Bugs fixed:
10514  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
10515  510855 g_checksum_update(): Take -1 for length.
10516  517676 g_themed_icon_new*() do more than call g_object_new().
10517  518816 should handle rmdir returning EEXIST correctly
10518  519352 g_[s]list_delete_link() docs
10519  519489 Fixes for sparse warnings in gio
10520  520169 add monitor argument to vfunc for GVolumeMonitor
10521  520700 Add type check in g_file_query_exists
10522  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
10523  518720 No MIME type for empty files
10524  521013 in documentation, goffset doesn't say "Since 2.x"
10525  521028 Missleading error messages from g_io_channel_set_encoding()
10526  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
10527
10528 * Updated translations:
10529  Assamese (as)
10530  Bengali India (bn_IN)
10531  Czech (cs)
10532  German (de)
10533  Spanish (es)
10534  Estonian (et)
10535  Finnish (fi)
10536  French (fr)
10537  Gujarati (gu)
10538  Italian (it)
10539  Lithuanian (lt)
10540  Malayalam (ml)
10541  Marathi (mr)
10542  Norwegian bokmål (nb)
10543  Romanian (ro)
10544  Russian (ru)
10545  Slovak (sk)
10546  Ukrainian (uk)
10547
10548  
10549 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
10550 ===================================================
10551
10552 * GIO:
10553  - New file attributes: trash::item-count, filesystem::use-preview
10554  - Rename g_file_contains_file to g_file_has_prefix
10555  - g_file_query_filesystem_info grew async variants
10556  - g_themed_icon_append_name: new convenience function
10557  - g_content_type_get_icon is implemented now
10558  - Only show mounts in /media and ~
10559  - g_file_contains_file has been renamed to g_file_has_prefix
10560
10561 * Win32:
10562  - g_win32_get_package_installation_directory_of_module: new function
10563    which supersedes g_win32_get_package_installation_directory
10564  - Use alertable wait functions so that I/O completion routines or 
10565    user-mode Asynchronous Procedure Calls can be run
10566  - Fix race conditions in g_spawn implementation on win32
10567
10568 * Other:
10569  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
10570
10571 * Updated translations:
10572  Arabic (ar)
10573  Belarusian Latin (be@latin)
10574  Catalan (ca) 
10575  British English (en_GB)
10576  Finnish (fi)
10577  Galician (gl)
10578  Hebrew (he)
10579  Italian (it)
10580  Kannada (kn)
10581  Norwegian bokmål (nb)
10582  Dutch (nl)
10583  Brazilian Portugese (pt_BR)
10584  Vietnamese (vi)
10585
10586
10587 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
10588 ===================================================
10589
10590 * Update the included PCRE to 7.6
10591
10592 * GIO:
10593  - g_volume_should_automount: new function to determine if a volume
10594    should be mounted automatically
10595  - g_file_query_default_handler: new convenience function to get
10596    the default handler for a file
10597  - g_app_info_launch_default_for_uri new convenience function to
10598    launch the default handler for a URI
10599  - Use mimeapps.list and defaults.list as discussed on xdg list
10600    recently
10601  - g_app_info_get_default_for_uri_scheme has a real implementation
10602    now (gvfs provides a GConf-based implementation)
10603  - There is the beginning of a test suite
10604  - standard::description:  new file attribute
10605  - GMountMountFlags flags argument added to mount calls
10606
10607 * GObject:
10608  - class initialization is now threadsafe
10609
10610 * Updated translations:
10611   Arabic (ar)
10612   Catalan (ca)
10613   Spanish (es)
10614   Basque (eu)
10615   Italian (it)
10616   Japanese (ja)
10617   Kannada (kn)
10618   Korean (ko)
10619   Macedonian (mk)
10620   Occitan (oc)
10621   Portugese (pt)
10622   Brazilian Portugese (pt_BR)
10623   Swedish (sv)
10624   Thai (th)
10625
10626
10627 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
10628 ===================================================
10629
10630 * G_GNUC_PRETTY_FUNCTION has been deprecated
10631
10632 * GIO:
10633  - g_file_copy has an async variant now
10634  - Drives and volumes now have API to get identifiers
10635    like Hal UDIs or UUIDs.
10636  - There is now a registration API to let modules register
10637    extensions they provide, such as volume monitor implementations
10638
10639 * Bugs fixed:
10640   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
10641   316260 [patch] Doc patches for gnode (2.8.1)
10642   385132 solaris gettext support fix
10643   484261 ./configure check for system PCRE unicode support fails w...
10644   510292 GOption main help not shown
10645   511580 Implement g_file_copy_async
10646   511654 Compile errors due to C99 constructs
10647   487909 g_utf8_strreverse and combining marks
10648   512381 unused variable 'is_main_group' 
10649
10650 * Updated translations:
10651   Arabic (ar)
10652   Belarusian (be)
10653   Czech (cz)
10654   Spanish (es)
10655   French (fr)
10656   Galician (gl)
10657   Portugese (pt)
10658   Russian (ru)
10659   Swedish (sv)
10660   Thai (th)
10661
10662
10663 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
10664 ===================================================
10665
10666 * GChecksum:
10667  - g_checksum_update can accept nul-terminated strings
10668  - The MD5 implementation works correctly on buffers 
10669    that are longer than 64 bytes
10670
10671 * GIO:
10672  - Don't include a copy of the inotify headers, rely on system headers
10673  - g_file_find_enclosing_mount has an async variant now
10674  - Reduntant seek API on file streams has been removed
10675
10676 * Bugs fixed:
10677   508602 gmemory{in|out}putstream.c: unknown pointer size
10678   508771 There is no g_file_test/exists() for GFile
10679   508773 g_uri_escape_string() documentation unclear.
10680   509465 AM_PATH_GLIB_2_0 doesn't support gio
10681   509626 async functions: Document allowed NULL callback?
10682   509990 GSeekable documentation unclear
10683   510448 No inotify support on ARM or SH5
10684   510855 g_checksum_update(): Take -1 for length. 
10685
10686 * Updated translations:
10687   Basque (eu)
10688   Marathi (mr)
10689   Swedish (sv)
10690   Ukrainian (uk)
10691
10692
10693 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
10694 ===================================================
10695
10696 * GIO:
10697  - Mount operation API change: unhandled methods get reported via 
10698    the reply, rather than by the signal emission return value
10699  - File monitor API change: Add a GError argument to g_file_monitor_file
10700  - g_unix_mount_guess_should_display(): new function
10701
10702 * Bugs fixed:
10703   508224 [PATCH] FAM backend crashes due to double free
10704   508074 GAsyncResult documentation suggests g_freeing it.
10705   508108 GFile documentation slightly unclear.
10706   508309 rpc_pipefs mount points should be hidden
10707   508378 GFileInfo documentation implies that it changes attribute...
10708   508719 g_file_get_relative_path fails if parent is root
10709   508773 g_uri_escape_string() documentation unclear.
10710
10711 * Updated translations:
10712   Arabic (ar)
10713   Spanish (es)
10714   Hebrew (he)
10715   Italian (it)
10716   Korean (ko)
10717   Turkish (tr)
10718
10719
10720 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
10721 ===================================================
10722
10723  * Portability fixes:
10724  - Assertion functions are marked as noreturn again
10725  - Handling of inline functions has been fixed to work with gcc 4.3
10726  - C99 comments have been removed from headers
10727  - The nonportable sed -i option is no longer used
10728
10729  * GIO:
10730   - Clarified the semantics of g_app_info_get_all()
10731   - API for memory input and output streams has been changed a bit
10732   - GDirectoryMonitor has been removed; GFileMonitor can monitor
10733     files and directories now
10734
10735  * Bugs fixed:
10736    504829 Invalid environment passed to g_spawn_async in g_desktop_...
10737    505258 crash in Users and Groups: Adding a user
10738    505815 g_content_types_get_registered should not g_free keys
10739    491218 g_timer_new() doesn't initialize timer->end
10740    315437 extern inline -> static inline
10741    476856 Inconsistency between standard and implementation of the ...
10742    480122 g_module_open fails to open modules with ".la" extension
10743    495589 gspawn.c failing to set FD_CLOEXEC
10744    500273 doesn't build with --disable-visibility
10745    504142 Do not show empty groups in --help output
10746    504879 giofam incorrectly linked
10747    505042 add file attribute for actually used file size in bytes
10748    505058 xattr namespace docs
10749    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
10750    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
10751    505887 older darwin lacks lchown
10752    506374 gmemoryinputstream api
10753    506461 Conversion of g_assert_not_reached() and friends into fun...
10754    503051 Small bug in glib interface
10755    506395 Updates to GIO documentation
10756    507628 Missing .pc entry for gio linking against glib
10757    505195 [patch] typo in g_try_new0 docs 
10758    507822 g{file,directory}monitor changes signal problem
10759    506377 gmemoryoutputstream write implementation
10760    507835 bug in gunixinputstream 
10761
10762  * Updated translations:
10763    Arabic (ar)
10764    Belarusian Latin (be@latin)
10765    Spanish (es)
10766    Basque (eu)
10767    Irish (ga)
10768    Hebrew (he)
10769    Occitan (oc)
10770    Vietnamese (vi)
10771
10772
10773 Overview of Changes from GLib 2.14.x to GLib 2.15.0
10774 ===================================================
10775
10776 Major new features:
10777
10778  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
10779    in GLib has support for local filesystems. The new, separate gvfs 
10780    module contains various backend implementations (cifs, ftp, sftp,
10781    http, ...)
10782
10783  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
10784    and SHA-256
10785  
10786  * GTest: a test framework 
10787  
10788 Smaller additions:
10789
10790  * GHash:
10791  - GHash has iterators, as an alternative to g_hash_table_foreach
10792
10793  * GMarkup: 
10794  - g_markup_parse_context_get_element_stack: New function to
10795    get the stack of open elements
10796  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
10797    reporting
10798  - g_markup_collect_attributes: Convenience function for handling
10799    attributes
10800
10801 * GKeyFile: 
10802  - Functions that take a GError now return a boolean to indicate 
10803    success, instead of void
10804  - Various performance improvements
10805
10806 * GAsyncQueue:
10807  - g_async_queue_new_full: new function that allows to specify
10808    a free function for leftover elements
10809  
10810 * GError:
10811  - g_prefix_error and g_propagate_prefixed_error: New functions
10812    to ease error propagation
10813
10814 * Internationalization:
10815  - C_: A new 2-argument variant of the Q_() macro 
10816  - Use native character set conversion API on Windows
10817
10818 * GLib builds with automake 1.10
10819
10820 * Bugs fixed:
10821  455725 specific combination of g_utf8_strlen and g_pattern_match...
10822  467537 g_convert_with_iconv() not resetting iconv() state correc...
10823  497033 Commandline option parser should warn about missing optio...
10824  504527 gchecksum: Conditional jump or move depends on uninitiali...
10825  445362 Non-numeric local labels in gatomic.c are causing linker ...
10826  482313 gregex: no way to tell why compilation failed
10827  317775 main loops continues to run after g_main_loop_quit() has ...
10828  418778 Insufficient pkg-config version requirement
10829  436293 g_option_context_new() doc should mention that the string...
10830  466557 glib-mkenums shifts ARGV[0] to undefined
10831  468882 GKeyFile doesn't accept "True" as a true boolean value
10832  469551 application --help messages are garbaged on none UTF-8 lo...
10833  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
10834  490061 outptrs uninitialized after g_parse_long_long
10835  490637 gobject documentation patch
10836  495294 glib-genmarshal prints warnings but returns 0
10837  496046 option to prefix location of errors for GMarkup
10838  498113 tests/regex-test fails on 64bit environment
10839  500506 Fails to build on OSX 10.4
10840  500638 gkeyfile speedup ...
10841  500875 Make check fails as there is no "test" target for "build"...
10842  502511 g_assert_cmphex prints invalid message
10843  502927 g_array_index triggers cast aligment warning
10844  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
10845  503222 Need context to translate
10846  503420 gkeyfile leaks a hash table
10847  503470 Fix build when builddir != srcdir
10848  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
10849  71704  file include order
10850  491957 Misprint in the specification of the interface "g_main_co...
10851  491959 Misprint in description of the structure "GThreadPool"
10852  491965 Mistype in the specification of the function "g_hook_list...
10853  491966 Misprint in the specification of the interface "g_main_co...
10854  491968 The documentation does not mention the restriction for th...
10855  491970 The documentation for the interface "g_date_clamp" is inc...
10856  491974 The documentation of the interface "g_main_context_iterat...
10857  491975 The documentation for the interfaces "g_io_channel_read_u...
10858  491979 Misprint in the description of the interfaces g_key_file_...
10859  491982 Misprint in the description of the interface "g_key_file_...
10860  501107 EXTRA_DIST automake warnings
10861  501997 g_utf8_normalize() returns NULL on invalid string
10862  502590 C_/g_dpgettext efficiency
10863  464259 g_set_application_name() docs should say "Since 2.2"
10864  496518 gbase64.c API doc clarification
10865  498728 g_key_file_get_*_list should set length to 0 when returni...
10866  500361 Improve docs for g_array_free() and g_ptr_array_free()
10867  501853 g_checksum_get_digest docs
10868  503862 Allow NULL strings in g_parse_debug_string()
10869  142676 Q_
10870  367550 Add g_async_queue_new_full() with GDestroyNotify function
10871  375651 Minor enhancements to GKeyFile API
10872  443648 MD5 digest support
10873  449937 Upgrade auto* sources to be clean under automake1.9
10874  452887 gmarkup context "get element" function is useless when ca...
10875  491549 [PATCH] Eliminate libiconv dependency on Windows
10876  500507 GHashTableIter API 
10877
10878 * Translation updates
10879  Belarusian Latin (be@latin)
10880  Czech (cs)
10881  German (de)
10882  Spanish (es)
10883  Esperanto (et)
10884  French (fr)
10885  Korean (ko)
10886  Marathi (mr)
10887  Norwegian bokmål (nb)
10888  Brazilian Portugese (pt_BR)
10889  Slovenian (sl)
10890  Swedish (sv)
10891
10892
10893 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
10894 ===================================================
10895
10896 * Update PCRE to 7.4
10897
10898 * Bugs fixed:
10899  487491 Fix some warnings from sparse
10900  488068 Small (one-time) memory leak in glib_gettext initialization
10901  493688 TYPE macro "_get_type ()" is documented wrong
10902
10903 * Updated translations:
10904  Arabic (ar)
10905  Belarusian Latin (be@latin)
10906  Estonian (et)
10907  Irish (ga)
10908  Slovenian (sl)
10909
10910  
10911 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
10912 ===================================================
10913
10914 * Bugs fixed:
10915  476849 Invocation of the interface "g_hook_free" fails in certai...
10916  359165 marshallers can throw warnings with -Wunused
10917  477957 more discussion on g_value_set_object vs. g_value_take_ob...
10918  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
10919  483337 inline is disabled for MSVC when compiling C code
10920  478349 Broken link to gettext website
10921  469231 g_spawn optimization for setting all open fds to CLOEXEC 
10922
10923 * Updated translations:
10924 Arabic (ar)
10925 Galician (gl)
10926 Hebrew (he)
10927 Korean (ko)
10928
10929
10930 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
10931 ===================================================
10932
10933 * Bugs fixed:
10934  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
10935  444765 Fix FIXME in gregex.c when new pcre is out
10936  464145 g_markup_escape_text Produces Invalid XML
10937  465625 g_type_default_interface_ref() does not ensure working g_...
10938  466768 Clearify that comments can be put anywhere in a Key-file.
10939  474229 The GError documentation should give convention for the G...
10940  474899 G_BREAKPOINT() docs inaccurate
10941  475854 Overuse of -lpcre when using system pcre
10942  473879 Incorrect includes in gregex.c
10943  468694 Typoes in documentation
10944  469051 g_snprintf () talks about characters where it probably me...
10945  457601 Missing arch specific atomic implementation
10946  475923 Missing pcre flags when static-linking against glib
10947  475619 glibthread-2.0.la does not list -lpthread
10948
10949 * Updated translations:
10950  Bulgarian (bg)
10951  Catalan (ca)
10952  Danish (da)
10953  German (de)
10954  Canadian English (en_CA)
10955  British English (en_GB)
10956  Spanish (es)
10957  Estonian (et)
10958  Finnish (fi)
10959  French (fr)
10960  Gujarati (gu)
10961  Hungarian (hu)
10962  Italian (it)
10963  Georgian (ka)
10964  Kannada (kn)
10965  Lithuanian (lt)
10966  Makedonian (mk)
10967  Norwegian (nb)
10968  Dutch (nl)
10969  Polish (pl)
10970  Portugese (pt)
10971  Brazilian Portugese (pt_BR)
10972  Romanian (ro)
10973  Russian (ru)
10974  Albanian (sq)
10975  Serbian (sr, sr@Latn)
10976  Swedish (sv)
10977  Tamil (ta)
10978  Thai (th)
10979  Ukrainian (uk)
10980  Vietnamese (vi)
10981
10982
10983 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
10984 ===================================================
10985
10986 * Last-minute API additions:
10987  - Make g_unichar_combining_class public
10988  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
10989
10990 * Update PCRE to 7.2
10991
10992 * Bugs fixed:
10993  453998 Make _g_unichar_combining_class() public
10994  462549 gregex.c: variable is declared at middle of block
10995  417068 g_file_test doc inconsistency
10996
10997 * Updated translations:
10998  Assamese (as)
10999  Basque (eu)
11000  Kannada (kn)
11001  Malayalam (ml)
11002  Dutch (nl)
11003  Polish (pl)
11004  Brazilian Portugese (pt_BR)
11005  Turkish (tr)
11006
11007
11008 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
11009 ===================================================
11010
11011 * The memory corruption warning from the slice allocator that
11012   occurred when threads were initialized after the slice allocator
11013   has been removed, as the slice allocator now works fine
11014   in this scenario.
11015
11016 * New functions g_once_init_enter() and g_once_init_leave() make
11017   it easier to write threadsafe one-time initialization functions 
11018  
11019 * Bugs fixed:
11020  454473 Simple XML Subset Parser terminates on invalid XML
11021  445813 g_module_open error, add file name
11022  453796 errno gets clobbered by g_filename_display_name
11023  341988 don't use "-c" with msgfmt in Makefile.in.in
11024  447048 Please produce slightly more output during long tests
11025  454785 GModule documentation lists same block of code twice.
11026  454786 GModule documentation lists same paragraph twice.
11027  383155 small docs quirks in gobject/closure API documentation
11028  65041  _get_type() functions aren't thread safe
11029
11030 * Updated translations
11031  Assamese (as)
11032  Spanish (es)
11033  Gujarati (gu)
11034  Japanese (ja)
11035  Korean (ko)
11036  Macedonian (mk)
11037
11038
11039 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
11040 ===================================================
11041
11042 * Reintroduce a GType typedef whose removal in 2.13.5
11043   caused trouble for C++ bindings
11044
11045 * Bugs fixed:
11046  450216 docs not explicit enough about g_free()
11047  451459 g_type_register_static_simple calls g_type_register_static
11048
11049 * Updated translations
11050  Norwegian bokmål (nb)
11051  Sinhala (si)
11052
11053
11054 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
11055 ===================================================
11056
11057 * xdg-user-dirs support: 
11058  - the Desktop directory is guaranteed to be defined
11059  - user-dirs.dirs is no longer reloaded on changes
11060
11061 * Slice allocator: 
11062  - new api to duplicate slices
11063
11064 * Regular expression support:
11065  - GRegex is a boxed type now
11066
11067 * Bugs fixed:
11068  44793 make check failing in trunk
11069  354522 Small problem with PLT hiding 6 symbols
11070  363986 glib 2.12.4 does not compile with SGI IDO cc
11071  443869 g_type_class_add_private doesn't warn when adding 0-sized...
11072  446859 Legitimately return 0 for g_quark_from_string(NULL)
11073  447534 Small typo in g_timeout_add_seconds() doc
11074  447583 GStaticRWLock
11075  447935 g_get_current_dir SIGSEGV on long path
11076  448260 CLAMP has surprising result if low > high
11077  57693  g_string_vprintf()
11078  442029 add g_slice_dup()
11079  445065 Add GRegex boxed type
11080  448819 Add full version of g_timeout_add_seconds()
11081
11082 * Updated translations: 
11083  Swedish (sv)
11084  Oriya (or)
11085  Hebrew (he)
11086  Spanish (es)
11087  Estonian (et)
11088
11089  
11090 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
11091 ===================================================
11092
11093 * Bugs fixed:
11094  444121 g_get_user_special_dir deadlocks
11095  444161 invalid UTF8 in key name shows up as valgrind error in g_...
11096  444130 g_option_context_get_help() is broken when there's a desc...
11097
11098
11099 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
11100 ===================================================
11101
11102 * GKeyFile:
11103  - Added defines for easier handling of desktop files
11104
11105 * Unicode support:
11106  - Update g_unichar_iswide_cjk for Unicode 5.0
11107
11108 * Regular expression support:
11109  - GRegex structs can now be ref-counted
11110  - Some new functions for dealing with incremental 
11111    replacement have been added
11112  - The GRegexEvalCallback signature has been changed
11113
11114 * g_get_user_special_dir() has been added to support
11115   xdg-user-dirs
11116
11117 * Bugs fixed:
11118  419376 Functions using named subpatterns behave inconsistently w...
11119  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
11120  423708 typo in the README.win32 file see patch below
11121  339225 Add new defines for easier handling of .desktop files 
11122  442265 API additions/changes for GRegex
11123  432651 Add a glib-ish xdg_user_dir_lookup
11124
11125 * Updated translations:
11126  Estonian (et)
11127  Norwegian bokmål (nb)
11128
11129
11130 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
11131 ===================================================
11132
11133 * Unicode support:
11134  - Add g_unichar_ismark()
11135
11136 * GOption:
11137  - Allow to use callbacks for remaining args
11138
11139 * Updated translations:
11140   Belarusian Latin (be@latin)
11141   British English (en_GB)
11142   Galician (gl)
11143   Norwegian bokmål (nb)
11144   Oriya (or)
11145   Spanish (es)
11146   Thai (th)
11147
11148
11149 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
11150 ===================================================
11151
11152 * GRegex:
11153  - Portability fixes
11154  - Split into immutable GRegex and GMatchInfo
11155  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
11156    to obtain information about the compiled regex
11157
11158 * GKeyFile:
11159  - Fix roundtrip problems
11160  - Add g_key_file_load_from_dirs()
11161
11162 * Unicode support:
11163  - Fix corner cases in case conversion routines
11164
11165 * GOption:
11166   - Add a function to get the formatted help string
11167
11168 * GHash:
11169  - Add new functions g_hash_table_get_keys() and
11170    g_hash_table_get_values() to retrieve the keys and
11171    values in list form
11172
11173 * Updated transations:
11174   Simplified Chinese (zh_CN)
11175   Arabic (ar)
11176
11177
11178 Overview of Changes from GLib 2.12 to GLib 2.13.0
11179 =================================================
11180
11181 * Add GSequence, a list that is implemented using
11182   a balanced binary tree.
11183
11184 * Add GRegex, an implementation of Perl regular expressions,
11185   based on PCRE.
11186  
11187 * Use Posix monotonic clocks instead of gettimeofday()
11188   for GTimer when available.
11189
11190 * Support static initialization of GQeues with G_QUEUE_INIT,
11191   g_queue_init() and g_queue_clear().
11192
11193 * Add g_string_chunk_clear() for clearing a 
11194   GStringChunk.
11195
11196 * Add g_unichar_get_script() to obtain Unicode
11197   script information.
11198
11199 * Add g_unichar_iszerowidth() to obtain information
11200   about zero-width characters.
11201
11202 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
11203   type attribute.
11204
11205 * G_GNUC_INTERNAL has a working definition for the
11206   Sun Studio compiler. This requires the macro to
11207   be positioned before the function declaration.
11208
11209 * The slice allocator can produce detailed debugging
11210   information with G_SLICE=debug-blocks.
11211
11212 * Modules support G_DEBUG flags resident-modules and
11213   bind-now-modules.
11214
11215 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
11216   to define types in modules.
11217
11218 * Bug fixes: too many to list them in detail here.
11219
11220 * New and updated translations (be,bg,bn,ca,cs,de,
11221   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
11222   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
11223   zh_HK,zh_TW)
11224
11225
11226 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
11227 ===================================================
11228
11229 * Unicode updates:
11230  - Normalization is following Unicode TR #29
11231  - g_unichar_isxdigit() only accept characters
11232    for which g_unichar_xdigit_value() returns a value
11233  - g_unichar_toupper and g_unichar_tolower leave
11234    unconvertable characters in place instead of
11235    replacing them by NUL
11236
11237 * Bugs fixed
11238  348491 g_utf8_strup() and g_utf8_strdown() returns 
11239         string with NUL bytes
11240  349825 GKeyFile always inserts a newline before a group
11241  347842 g_unichar_isxdigit() is too general about what 
11242         it considers a digit
11243  348694 g_utf8_normalize() hasn't been updated to PR #29
11244  348785 Hint about G_DEBUG in Message Logging docs
11245  349792 Wrong english string (UI)
11246  349952 gparamspecs.c uses gcc feature
11247
11248 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
11249   nl,pl,tr,uk,zh_HK,zh_TW)
11250
11251
11252 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
11253 ===================================================
11254
11255 * Update to final Unicode Character Database 5.0.0
11256
11257 * Bugs fixed:
11258  346660 issues with base64 api documentation / g_base64_decode_cl...
11259  348136 Coverity reports allocation of wrong size CID #2839
11260  336281 Update to UCD 5.0
11261  346197 g_date_strftime %F option doesnt work for win32
11262  348011 Small optimization to real_toupper()
11263  246494 prototype mismatch in glib/gconvert.c
11264
11265 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
11266   fr,he,it,ja,mk,or,pt)
11267
11268
11269 Overview of Changes from GLib 2.11.4 to GLib 2.12
11270 =================================================
11271
11272 * Bugs fixed:
11273  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
11274
11275 * Updated translations (cy,nb,nl)
11276
11277
11278 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
11279 ===================================================
11280
11281 * GBookmarkFile:
11282  - g_bookmark_file_remove_item returns a boolean
11283  
11284 * g_mkstemp accepts the XXXXXX in the middle of
11285   the template
11286  
11287 * Bugs fixed:
11288  344868 g_key_file_to_data should separate groups 
11289
11290 * Updated translations (de,es,fr,gu,hi,ko,th)
11291
11292
11293 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
11294 ===================================================
11295
11296 * GBookmarkFile:
11297   - g_bookmark_file_move_item: Return TRUE in case of
11298     an empty target
11299
11300 * Bugs fixed: 
11301  343919 gunicollate.c: strxfrm bug on VC8
11302
11303 * Updated translations (fi)
11304
11305 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
11306 ===================================================
11307
11308 * Add g_ascii_stroll to parse signed 64bit integers
11309
11310 * GMarkup: add a flag to treat CDATA as text
11311
11312 * GHashTable: add functions to remove all entries
11313
11314 * GMainLoop: add functions to find the currently
11315   running source, and determine if it is destroyed
11316
11317 * Bug fixes:
11318  342563  g_atomic_thread_init() needs to be called before 
11319          other _g_*_thread_init() functions
11320  343548  Potential use after free in callers of g_string_free() 
11321  168538  Wish: Clearing contents of GHashTables
11322  321886  GTK+ cannot be reliably used in multi-threaded 
11323          applications
11324  341826  goption.c: 'strtoll' is C99's function
11325  343899  g_ascii_formatd dosn't work as expected for all 
11326          format strings
11327  317793  Make GEnumValue strings const
11328  337129  Compile warnings in G_IMPLEMENT_INTERFACE
11329  303622  What is G_TYPE_CHAR?
11330
11331 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
11332  
11333
11334 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
11335 ===================================================
11336
11337 * GOption  
11338   - Support 64-bit integers 
11339   - Allow optional text before and after the options
11340     in help output
11341
11342 * Bug fixes:
11343  340538 gbase64-test writes OOB 
11344  340816 GKeyFile set_string_list invalid memory reads 
11345  339105 g_key_file_parse_value_as_double
11346  340434 convert-test.c fails (function test_one_half)
11347  311043 Memory leaks (and potential infinite loops) 
11348         when using G_ERRORCHECK_MUTEXES
11349  335198 Error checking mutexes are fubar  
11350  341237 Add a G_OPTION_ARG_INT64
11351  341192 g_io_channel_set_flags not implemented on win32
11352  336120 Allow adding description before/after GOption 
11353         --help output body
11354  341191 misplaced check in g_relation_delete
11355  340530 mismatched calloc / g_free in win32 threads
11356
11357 * Updated translation (es)
11358
11359 Overview of Changes from GLib 2.10.x to GLib 2.11.0
11360 ===================================================
11361
11362 * GBookmarkFile: a parser for files containing bookmarks
11363   stored using the Desktop Bookmark specification.
11364
11365 * Base64 encoding support
11366         
11367 * Unicode 5.0 support
11368
11369 * GOption supports floating point numbers 
11370
11371 * GKeyFile supports floating point numbers
11372
11373 * Bug fixes:
11374  155884 gatomic.c should be based on new SDK
11375  157877 update-desktop-database doesn't handle duplicate entries
11376  164719 keyfile parser doesn't support floats
11377  327662 Import BookmarkFile from libegg
11378  329548 Add G_OPTION_ARG_DOUBLE
11379  329789 option-test.c type confusion
11380  332841 Segmentation Fault when %llu is passed to vasnprintf and 
11381         HAVE_SNPRINTF is not defined
11382  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
11383         _WIN32_WINDOWS 0x0401'
11384  333916 g_timer_elapsed docs should mention that microseconds 
11385         may be NULL
11386  334440 dlerror() portability issue causes crash on (old) a.out 
11387         NetBSD platform
11388  334646 goption + error out params
11389  334799 g_remove() must check return value of remove()
11390  334943 make check FAIL: threadpool-test
11391  335215 Some breakages with GThreadPool
11392  336085 g_option_context_new parameter lacks better explanation
11393  336677 Documentation for g_object_ref_sink() is incorrect
11394  337027 gbookmarkfile.c: sys/time.h include error
11395  337553 Wrong escaping of URIs
11396  338572 Dereferencing NULL value in g_key_file_get_group_comment
11397  338845 g_completion_complete_utf8 crashes when NULL is passed to it
11398  339337 g_bookmark_file_set_description
11399  339338 gbookmarkfile.c, function expand_exec_line
11400  339340 gbookmarkfile.c, function bookmark_app_info_dump
11401
11402 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
11403                        or,pt_BR,ro,tr,vi,zh_CN)
11404
11405
11406 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
11407 ===================================================
11408
11409 * Bugs fixed:
11410  314794 Broken pthread detection on Darwin [Gregor Riepl]
11411  322476 Missing check for .dylib [Vladimir Panov]
11412  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
11413         M. Merino Vidal]
11414  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
11415
11416 * Win32 changes:
11417  - Fix g_listenv() implementation.
11418  - Allow up to 100 GPrivate structs
11419
11420 * Translation updates (fr,hu,lt,pl,sv)
11421
11422
11423 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
11424 ==================================================
11425
11426 * Bugs fixed:
11427  328997 64bit pointer trunction in glib slab-allocator
11428         [Pascal Hofstee]
11429  331110 g_cond_broadcast(inform_cond) without holding 
11430         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
11431  332093 Fix some leaks in the tests [Kjartan Maraas]
11432  332435 g_utf8_strlen returns wrong value if a maximum 
11433         number of bytes to check is specified 
11434         [Matthias Clasen]
11435  331367 gslice requires more POSIX-like semantics for 
11436         GPrivate destructors [Tor Lillqvist]
11437
11438 * Documentation improvements [Matthias, Kang Jeong-Hee,
11439   Tor Lillqvist, Stefan Kost]
11440
11441 * Translation updates (el,eu,ka,uk)
11442
11443 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
11444 =================================================
11445
11446 * Bugs fixed: 
11447  329124 distclean removes README [Kjartan Maraas, Tim Janik]
11448  317679 GRelation field type not documented [Behdad Esfahbod]
11449  329123 Typo in GTime docs [Kjartan Maraas]
11450
11451 * Documentation improvements [Sven Herzberg, David
11452   Schleef, Kjartan Maraas, Behdad Esfahbod]
11453
11454 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
11455
11456 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
11457 =================================================
11458
11459 * Memory management: 
11460   Runtime debugging support: The slice allocator
11461   can be turned off by setting G_SLICE=always-malloc
11462   in the environment. Zeroing of freed memory can
11463   now be turned on at runtime by setting
11464   G_DEBUG=gc-friendly in the environment. [Tim Janik]
11465
11466 * Bugs fixed:
11467  328253 HP-UX/IA-64 uses ".so" as default shared library 
11468         extension [Albert Chin]
11469  143380 unicode-encoding test fails converting to UTF-16 
11470         with libiconv [Marc Moorcroft]
11471  328254 Build breakage (GSlice) [Jens Ganseuer]
11472  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
11473
11474 * Translation updates (da,et,zh_CN)
11475
11476 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
11477 =================================================
11478
11479 * Type system:
11480   Fix a problem with g_object_compat_control() which 
11481   can lead to segfaults in GTK+ applications on 64bit 
11482   platforms. 
11483
11484 * Thread suppport: 
11485   Unused threads now fall back to the global pool after 
11486   500 milliseconds, where they wait for another 
11487   max-idle-time milliseconds. [Sebastian Wilhelmi]
11488
11489 * Fix a memory allocation problem in GKeyFile. [Morten 
11490   Welinder]
11491
11492
11493 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
11494 =================================================
11495
11496 * GTree:
11497  - Replace the simple recursive implementation by
11498    a nonrecursive, threaded one  [Maurizio Monge]
11499
11500 * Change g_filename_display_name and
11501   g_filename_display_basename to use the Unicode
11502   replacement character U+FFFD instead of a question
11503   mark, and don't append "(invalid encoding)"  [Matthias]
11504
11505 * Documentation improvements [Sven Herzberg, Federico
11506   Mena Quintero, Stefan Kost]
11507
11508 * Bugs fixed:
11509  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
11510         [Bogdan Nicula]
11511  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
11512  169285 "threaded" tree implementation for GTree 
11513         [Maurizio Monge]
11514  326747 g_filename_display_basename adds (invalid encoding) 
11515         [Alberto Ruiz]
11516
11517 Other contributors: Christian Kellner, Murray Cumming
11518
11519 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
11520
11521
11522 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
11523 =================================================
11524
11525 * Memory management:
11526  - Add tests for cache colorization [Tim Janik]
11527  - Minimize space consumption if small amounts of differently
11528    sized slices are allocated, at a small performance cost.  [Tim]
11529
11530 * Thread support:
11531  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
11532    Sebastian Wilhelmi]
11533  - Add g_thread_pool_set_sort_function() to allow sorting the 
11534    tasks of a threadpool.  [Martyn Russell]
11535  - Add g_thread_pool_set_idle_time() to allow unused threads
11536    to exit after a certain time.  [Martyn]
11537
11538 * Type system:
11539  - introduce a new type GInitiallyUnowned, which has an initial
11540    floating reference. [Tim]
11541  - Add support for GType parameters. [Matthias]
11542
11543 * Main loop:
11544  - Add g_main_context_is_owner() to determine if the current
11545    thread is the owner of the context.  [Michael Meeks]
11546
11547 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
11548   wrapper functions instead of macros.  [Manish Singh]
11549
11550 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
11551   Stefan Kasal, Dan Williams]
11552
11553 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
11554
11555 * Bugs fixed:
11556  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
11557         tries to modify [J. Ali Harlow]
11558  324332 g_option_context_parse() returns false without setting error 
11559         [Tim-Philipp Müller]
11560  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
11561  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
11562  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
11563         gpointer [Andrew Paprocki]
11564  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
11565         Stanislav Brabec]
11566  325273 Error in documentation for glib_check_version () [Declan Naughton]
11567  325310 g_spawn_sync hangs when catching both stdout and 
11568         stderr [Tor Lillqvist]
11569  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
11570  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
11571  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
11572  325438 a typo (compatability) [Stefan Kasal]
11573  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
11574
11575
11576 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
11577 =================================================
11578
11579 * Memory management
11580  - The slice allocator is implemented [Tim Janik]
11581  - g_slice_free_chain() has been renamed to 
11582    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
11583  - Mem chunks are deprecated [Matthias Clasen]
11584
11585 * Data structures
11586  - Hash tables are refcounted, and have a boxed type [Tim]
11587
11588 * Thread support
11589  - Support for Solaris threads has been removed 
11590    [Sebastian Wilhelmi, Andrew Paprocki]
11591  - g_async_queue_sort(), g_async_queue_push_sorted() have 
11592    been added to allow GAsyncQueue to be used as a priority 
11593    queue, together with the corresponding _unlocked 
11594    variants  [Martyn Russell]
11595
11596 * GObject:
11597  - The concept of a floating initial reference has been
11598    moved from GtkObject to GObject [Tim]
11599
11600 * Win32 changes:
11601  - Make g_rename() replace existing files [Tor Lillqvist]
11602
11603 * Misc new API:
11604  - G_GUINT64_CONSTANT macro to define guint64 
11605    constants [Andrew Paprocki]
11606  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
11607    compiler to emit a warning if the value returned
11608    by a function is ignored. [Arjan van de Ven, Alex Larsson]
11609  - GList and GSList now have sort functions which take an
11610    extra user data argument [Martyn Russell]
11611  - g_param_spec_ref_sink() has been added for consistency [Tim]
11612
11613 * $LOGNAME is respected when determining user data. [Laszlo Peter]
11614
11615 * Other changes and bug fixes [Tim, Matthias, Behdad, 
11616   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
11617   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
11618   Andreas Schwab, Kalle Vahlman]
11619
11620 * Documentation
11621  - Deprecation warnings carry version information [Matthias]
11622  - The slice allocator has been documented [Matthias, Tim]
11623  - Other improvements [Morten Welinder]
11624
11625 Overview of Changes from GLib 2.8.x to GLib 2.9.0
11626 =================================================
11627 * Unicode support:
11628  - The Unicode tables have been updated to Unicode 4.1, 
11629    adding several new values to the GUnicodeBreakType 
11630    enumeration. This breaks Pango <= 1.10 
11631    [Behdad Esfahbod]
11632  - The various Unicode character predicate functions 
11633    (g_unichar_isalpha, g_unichar_isdigit,...) have
11634    been optimized
11635    [Behdad]
11636  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
11637    These functions handle negative offsets now, and
11638    going backwards in g_utf8_offset_to_pointer uses
11639    "stutter stepping".
11640    [Larry Ewing, Matthias Clasen]
11641
11642 * Memory management:
11643  - Mem chunks are no longer used internally in GLib and
11644    GObject. GMemChunk will be deprecated in GLib 2.10
11645  - All APIs based on GAllocator (g_list_push/pop_allocator,
11646    and similar push/pop_allocator functions for other
11647    data structures) have been deprecated, since they
11648    never worked as intended.
11649  - The g_slice_* functions have been added as a 
11650    new API for fast allocation of small memory blocks. 
11651    The implementation in GLib 2.9.0 is just a simple 
11652    wrapper around malloc. GLib 2.10 will have an
11653    efficient and scalable implementation. 
11654    [Tim Janik, Matthias]
11655
11656 * Pattern matching:
11657  - g_pattern_match has been optimized to avoid
11658    unnecessary recursion.
11659    [Tim, Matthias]
11660
11661 * g_intern_string, g_intern_static_string: 
11662  - New functions to intern strings. These are now used 
11663    by GObject to avoid duplicating static strings 
11664    [Matthias]
11665
11666 * g_thread_foreach: 
11667  - New function to iterate over all GThreads 
11668    [Tim, Matthias]
11669
11670 * g_date_set_time_t, g_date_set_time_val:
11671  - New functions to set a GDate from a time_t or
11672    GTimeVal value. g_date_set_time has been deprecated 
11673    in favor of these.
11674    [Roger Leigh]
11675
11676 * g_snprintf and g_vsnprintf:
11677  - These functions are no longer declared in gprintf.h, 
11678    since they are in glib.h
11679    [Matthias]
11680
11681 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
11682 =================================================
11683 * Optimize single-character insertions in GString [Ross Burton]
11684 * Fix build problems on OS X
11685 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
11686 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
11687 * Documentation improvements [Tristan van Berkom, Behnam
11688   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
11689 * New and updated translations (ca,cy,ko,ro,uk)
11690
11691 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
11692 =================================================
11693 * Make g_value_transform() handle enum values
11694   correctly on ppc64.  [Michael Lorenz]
11695   (Third-party code accessing enumeration values 
11696   in GValues should also be changed to access 
11697   v_long, not v_int, in order to work on bigendian 
11698   64bit machines.)
11699 * Make g_flags_get_first_value() handle a value
11700   of 0 meaningfully. [Tim-Philipp Müller] 
11701
11702 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
11703 =================================================
11704 * Make atomic operations on s390 work [Matthias]
11705 * Fix C++ guards in gstdio.h [Tor Lillqvist]
11706
11707 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
11708 =================================================
11709 * Add native implementations of atomic operations 
11710   on s390 [Matthias]
11711 * Make atomic reference counting of closures
11712   work on s390 [Matthias]
11713 * Avoid an infinite loop in g_convert_with_iconv().
11714   [Sebastian Bacher]
11715 * Documentation improvements [Ross Burton]
11716
11717 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
11718 =================================================
11719 * Thread-related changes
11720  - Fix build issues on HP-UX [Paul Cornett]
11721  - Threadsafe access to flags stored in datasets [Tim Janik]
11722  - Fix several issues with atomic refcounting for 
11723    closures, objects and paramspecs [Tim]
11724  - Improve tests for atomic refcounting changes [Tim]
11725 * Fix handling of stateful encodings in g_convert_* [Matthias]
11726 * Fix translation of GOption help output [Dan Winship]
11727 * Catch format errors in translations. This may cause 
11728   "make check" to fail when using older versions
11729   of gettext [Matthias]
11730 * Win32 bug fixes [Tor Lillqvist]
11731 * Documentation improvements [Ross Burton, Jochen Baier, 
11732   Matthias, Tim]
11733 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
11734
11735 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
11736 =================================================
11737 * Fix g_atomic_pointer_compare_and_exchange 
11738   on Sparc64 [Gert Doering]
11739 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
11740 * Win32 bug fixes [Tor Lillquist]
11741 * Other bug fixes [Benoit Dejean, Manish Singh]
11742 * Documentation improvements [Bryan Silverthorn,
11743   Callum McKenzie] 
11744 * New and updated translations (de,lt,sq,zh_CN)
11745
11746 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
11747 =================================================
11748 * GOption
11749  - Allow callbacks with optional arguments [Pawel Sliwowski]
11750  - Allow to turn off the automatic long option name
11751    disambiguation  [Adam McLaurin]
11752  - Only allow printable ASCII as short option names [Matthias]
11753 * Win32
11754  - Build fixes [Tor Lillqvist]
11755  - Rewrite iochannel socket implementation [Tor]
11756 * GObject
11757  - Threadsafety improvements; in particular, refcounting
11758    of objects is done atomically now. [Wim Taymans, Tim Janik]
11759 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
11760 * Documentation improvements [Richard Laager, Matthias]
11761 * New and improved translations (bf,cs,hu,nb,nl,no)
11762
11763 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
11764 =================================================
11765 * Win32 build fixes [Hans Breuer]
11766 * Bug fixes [Mikael Magnusson]
11767 * Documentation improvements [Matthias Clasen]
11768 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
11769
11770 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
11771 =================================================
11772 * GOption 
11773  - Allow callback arguments without parameters [Dan Winship]
11774 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
11775 * Misc new functions:
11776  - g_get_host_name [Tor Lillqvist]
11777  - g_mkdir_with_parents [Tor]
11778  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
11779    Matthias Clasen]
11780 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
11781   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
11782 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
11783 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
11784   sk,th,zh_TW)
11785
11786 Overview of Changes from GLib 2.6.x to GLib 2.7.0
11787 =================================================
11788 * GKeyFile
11789  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
11790  - Accept \r\n as line end [Bastian Nocera]
11791  - Don't interpret leading zeros as octal numbers. [Matthias]
11792  - Make key and group removal work [David Hoover, Matthias Hasselmann]
11793 * GOption
11794  - Improve formatting of --help output [Matthias, Noah Levitt]
11795  - Accept -? [Matthias]
11796  - Warn about duplicate main groups [Jeff Franks]
11797  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
11798  - Report missing arguments as errors [Björn Lindqvist]
11799  - Add a boxed type for GDate [Tim-Philipp Müller]
11800 * GTree
11801  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
11802 * Stdio wrappers
11803  - Work regardless of large file support [Manish Singh]
11804  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
11805 * GObject
11806  - Implement "toggle references" to help language bindings [Owen Taylor]
11807  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
11808  - Make pspec lookup a bit faster [Morten Welinder]
11809 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
11810 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
11811   Sven Neumann, Manish, Alexis S. L. Carvalho]
11812 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
11813 * Add g_utf8_collate_key_for_filename() to sort filenames taking
11814   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
11815 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
11816   NULL-terminated argument lists. [Marc Meissner]
11817 * Win32 changes
11818  - Improved debugability [Ulf Lamping, Hans Breuer]
11819  - Make filename handling more robust [Tor, Billy Skaggs]
11820  - Improve g_get_system_data_dirs() [Tor]
11821  - Use more precise timers [Tor]
11822  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
11823 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
11824   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
11825   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
11826   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
11827   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
11828   Christian Biere, Noah, Benoît Carpentier]
11829 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
11830   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
11831   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
11832 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
11833   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
11834
11835 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
11836 =================================================
11837 * GOption
11838  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
11839  - Improve handling of -- [Matthias Clasen]
11840  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
11841 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
11842 * Add gmodule-export-2.0.pc [Matthias]
11843 * Win32 changes
11844  - Improve hangling of UNC paths [Tor Lillqvist]
11845  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
11846    take and return UTF-8 now [Tor] 
11847  - Make g_file_test() work more reliably, and use PATHEXT
11848    when check for executables [Tor]
11849  - Build and cross-compilation fixes [J. Ali Harlow]
11850 * Other bug fixes [Jens Hatlak, Morten Welinder, 
11851   Tor, Kalpesh Shah, Adrian Bunk]
11852 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
11853   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
11854   Vincent Untz, Bastien Nocera]
11855 * New and updated translations (cy,de,nl,ru,sq,sv)
11856
11857 Overview of Changes from GLib 2.4.x to GLib 2.6.0
11858 =================================================
11859
11860 * Major new APIs
11861   - GOption, a commandline option parser
11862   - GKeyFile, a parser/editor for the .ini like files 
11863   - Functions to support the XDG basedir specification
11864   - Wrappers for common POSIX pathname functions to handle filename
11865     encodings consistently. On Windows, these use UTF-8.
11866
11867 * Miscellaneous new functions
11868   - g_filename_display_name() converts filenames in displayable UTF-8 strings
11869   - g_uri_list_extract_uris() splits uri lists
11870   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
11871   - g_log_set_default_handler() installs an alternate default log handler
11872   - g_get_language_names() obtains a list of applicable locale names
11873   - g_strv_length() calculates the length of NULL-terminated string arrays
11874   - g_win32_get_windows_version() determines the Windows version 
11875   - G_GNUC_INTERNAL marks functions as non-exported
11876   - glib_check_version() checks the GLib version at runtime
11877   - g_debug() completes the family of logging functions
11878
11879 * Performance improvements
11880   - Optimize g_utf8_validate()
11881   - Optimize g_markup_parse_context_parse()
11882   - Reduce signal connection complexity from O(n) to O(1) 
11883   - Get rid of many PLT entries for internally used exported symbols
11884   - Reduce code size by removing literal strings from g_return_if_fail()
11885
11886 * Other changes
11887   - On Windows, GLib functions that take file name arguments now require
11888     those to be in UTF-8. Functions that return file names return UTF-8.
11889   - Use higher precision for mathematical constants
11890   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
11891   - Support ll as printf format modifier for long long on all platforms
11892   - Clean up the ABI and enforce the list of exported symbols
11893   - Add a .pc file for using gmodule in libraries
11894   - Require ngettext
11895
11896 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
11897 =================================================
11898 * GOption: Don't list help options if group-specific
11899   options have been requested [Glynn Foster]
11900 * Make g_get_language_names() track locale changes [Christian Persch]
11901 * Win32 bug fixes [Tor Lillqvist]
11902 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
11903 * New and updated translations (da,es,ja,lt,zh_CN)
11904 Bugs fixed: 159530,100697,160271,160645,157255
11905
11906 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
11907 =================================================
11908 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
11909 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
11910   Morten Welinder]
11911 * Reduce signal connection complexity from O(n) to O(1) 
11912   [Sven Neumann]
11913 * Add a .pc file for using gmodule in libraries [Owen]
11914 * Add G_GNUC_MALLOC to mark functions returning newly 
11915   allocated memory  [Matthias]
11916 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
11917   Bruce Hochstetler]
11918 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
11919   Frederic Crozat, Tor]
11920 * Documentation improvements [Matthias, Tor, Owen]
11921 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
11922
11923 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
11924 =================================================
11925 * GOption
11926   - Add G_OPTION_FLAG_REVERSE to allow options 
11927     which unset a  boolean variable [Tor Lillqvist]
11928 * GChildWatch
11929   - Use sigaction instead of signal [Jonas Jonnson, 
11930   Archana Shah]
11931   - Make the very first SIGCHLD work [Gustavo Carneiro]
11932 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
11933   Manish Singh, J. Ali Harlow]
11934 * Documentation improvements [Matthias Clasen, Tor]
11935 * Updated translations (da,ja,tr,zh_CN)
11936
11937 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
11938 =================================================
11939 * GKeyFile
11940   - Cleanups, add more error checking [Ray Strode]
11941   - Fall back to the untranslated string when getting 
11942     locale strings [Mark McLoughlin]
11943 * GOption
11944   - Document GOption [Matthias Clasen]
11945   - Better support for rest arguments [Owen Taylor, Matthias]
11946   - Handle conflicts between groups [Matthias]
11947 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
11948 * Add g_filename_display_name() to convert filenames
11949   in displayable UTF-8 strings  [Alex Larsson, Matthias]
11950 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
11951 * Bug fixes [Christophe Fergeau, Morten Welinder, 
11952   Owen, Kjartan Maraas, Mark]
11953 * Documentation improvements [Matthias, Tor]
11954
11955 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
11956 =================================================
11957 Add GKeyFile, a parser/editor for the .ini like files used in various
11958    freedesktop.org specifications. [Ray Strode]
11959 Make the handling of filename encodings consistent across all
11960    GLib functions, introduce wrappers for common POSIX 
11961    functions which accept the same filename encoding. [Tor Lillqvist, 
11962    Owen Taylor]
11963 GOption
11964  - Rename g_context_option_error_quark() to a more language-binding
11965    friendly name [Murray Cumming]
11966  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
11967 * Strip the internal aliasing prefix IA__ from function names in 
11968   assertions [Matthias Clasen]
11969 * Add a function to split uri lists. [Matthias]
11970 * Win32 bug fixes 
11971  - Don't open console windows [Tor]
11972 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
11973  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
11974   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
11975   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
11976 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
11977  Adam Hooper, Gustavo Carneiro]
11978 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
11979
11980 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
11981 =================================================
11982 * GOption
11983  - set the program name from argv[0] [Masatake YAMATO] 
11984  - make contexts work without a main group [Anders Carlsson]
11985 * Performance 
11986  - Get rid of many PLT entries for internally used exported symbols,
11987    and clean up the ABI at the same time and make make check check the
11988    list of exported symbols.  [Matthias Clasen]
11989 * Add API to get ISO 8601 week numbers [Niklas Lundell]
11990 * Add API to install an alternate default log handler [Darin Adler]
11991 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
11992 * Reduce code size bloat by removing literal strings from
11993  the g_return_if_fail() macros [Owen Taylor]
11994 * Add g_strv_length [Tim-Philipp Müller]
11995 * Win32 changes
11996  - Add API to determine the Windows version [Tor Lillqvist]
11997 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
11998   Manish Singh]
11999 * Documentation improvements [Morten Welinder, Matthias]
12000 * New and updated translations (es,nn,ro)
12001
12002 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
12003 =================================================
12004 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
12005 * Add GOption, a commandline option parser [Anders Carlsson]
12006 * Add glib_check_version [Michael Natterer]
12007 * Add XDG basedir API [Ray Strode]
12008 * Require ngettext [Danilo Segan]
12009 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
12010   Jon-Kare Hellan, Jody Goldberg]
12011 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
12012 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
12013 * New and updated translations (bs,eu,fi,gu,ne,pa)
12014
12015 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
12016 =================================================
12017
12018 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
12019   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
12020   Ögren, Tommi Komulainen]
12021 * Documentation improvements [Soeren Sandmann, 
12022   Christophe Fergeau, Danek Duvall]
12023 * New and updated translations (eu,hi)
12024   
12025 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
12026 =================================================
12027
12028 * New functions g_debug [Sven Herzberg]
12029 * Use higher precision for mathematical constants [Morten 
12030  Welinder]
12031 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
12032  [Federico Mena Quintero]
12033 * Win32
12034  - Handle empty digit string in printf() functions 
12035    correctly [Tor Lillqvist]
12036  - Support ll as format modifier for long long [Tor]
12037  - Be more careful about HOME [Tor, Ivan Wong]
12038  - Bug fixes [John Ehresman]
12039 * Miscellaneous bug and portability fixes [Danilo Segan, 
12040  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
12041  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
12042  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
12043 * Documentation updates [Matthias Clasen, Crispin Flowerday,
12044  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
12045 * New and updated translations (ja,ne,no,wa)
12046  
12047 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
12048 =================================================
12049
12050 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
12051 * Miscellaneous bug and portability fixes [Owen Taylor,
12052   Matthias Clasen, Jonas Jonsson, Christian Krause,
12053   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
12054   Piotr Klaban]
12055 * Documentation updates [Matthias]
12056 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
12057   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
12058
12059 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
12060 =================================================
12061
12062 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
12063 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
12064 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
12065   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
12066   Sebastian Wilhelmi]
12067 * Documentation updates [Owen]
12068 * Updated translations (hr,ro)
12069
12070 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
12071 =================================================
12072
12073 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
12074 * GMain threading fixes and improvements [Sebastian]
12075 * Win32 [Tor Lillqvist]
12076  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
12077  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
12078 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
12079 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
12080
12081 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
12082 =================================================
12083
12084 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
12085 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
12086 * Add atomic operations and use it for the async queue and
12087   gonce implementation. [Sebastian Wilhelmi]
12088 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
12089 * Add g_main_depth() for finding the recursion depth of the main
12090   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
12091 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
12092 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
12093 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
12094 * Updated translations (cy,et,ga,sq)
12095
12096 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
12097 =================================================
12098
12099 * Add a native AIX gmodule implementation. [Laurent Vivier]
12100 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
12101 * Extend GQueue API to match the GList API. [Soeren Sandmann]
12102 * Add g_hash_table_find().  [Tim Janik]
12103 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
12104 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
12105 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
12106 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
12107   Matthias]
12108 * Add g_strsplit_set(). [Soeren]
12109 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
12110   Soeren, Matthias]
12111 * Win32 build fixes. [Tor Lillqvist]
12112 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
12113   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
12114   Matthias]
12115 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
12116
12117 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
12118 =================================================
12119
12120 * Add G_MAXSIZE. [Manish Singh]
12121 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
12122   implementing the init-by-array functionality of the 
12123   original mersenne twister. Add g_rand_copy(). Improve seeding. 
12124   [George Lebl]
12125 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
12126 * Add g_ptr_array_foreach(). [Matthias Clasen]
12127 * Add g_timer_continue(). [Tim-Philipp Müller]
12128 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
12129 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
12130   g_file_test() there too [Hans Breuer] 
12131 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
12132 * Add G_DEFINE_TYPE() plus variants to ease the constuction
12133   of GObject boilerplate code.  [Tim Janik]
12134 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
12135 * Documentation improvements [Matthias, Manish]
12136 * Win32 build fixes [Hans]
12137 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
12138   Zack Rusin]
12139 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
12140
12141 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
12142 =================================================
12143
12144 * Add glib/gi18n.h and glib/gi18n-lib.h for common
12145   gettext support, including a Q_() macro for translation
12146   with context [Matthias Clasen]
12147 * Add a more flexible G_FILENAME_ENCODING variable
12148   as a replacement for G_BROKEN_FILENAMES [Matthias]
12149 * Fix the return value g_main_context_iterate() for
12150   newly ready sources [Padraig O'Briain]
12151 * Handle Hangul composition for normalization [Noah Levitt]
12152 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
12153 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
12154 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
12155 * Documentation improvements [Matthias]
12156 * GObject [Tim Janik]
12157  - Support '-' in g_signal_connect()/disconnect() names
12158    like 'swapped-signal'.
12159  - Add g_type_class_peek_static() and use to optimize
12160    g_object_new() for static types [Tim]
12161  - Allow setting construct-only properties from within
12162    init() implementations
12163  - Enforce readability/writeability in g_object_set/get()
12164 * Fix bug with g_ascii_strtod and multi-byte separator.
12165   [Behdad Esfahbod, Roozbeh Pournader]  
12166 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
12167   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
12168   Morten Welinder]
12169 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
12170
12171 Overview of Changes from GLib 2.2.x to GLib-2.3.0
12172 =================================================
12173
12174 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
12175 * Update Unicode data to Unicode 4.0 [Noah Levitt]
12176 * Support XML-safe formatted output with 
12177   g_markup_[v]printf_escaped [Owen Taylor]
12178 * Add g_file_read_link to read symbolic links [Matthias]
12179 * Add g_unichar_get_mirror_char to obtain the 
12180   mirrored variant of a character [Noah]
12181 * Support for one-time initialization functions. 
12182   [Sebastian Wilhelmi]
12183 * Miscellaneous API additions: g_vasprintf
12184   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
12185 * Docs improvements [Matthias]
12186 * Add support instance-private data on classed types
12187   [Mark McLoughlin, Tim Janik, Owen]
12188 * Optimize signal emissions [Soeren Sandmann, Tim]
12189 * Support a "default vtable" per interface [Tim]
12190 * Add support for properties on interfaces [Owen, Tim]
12191 * Miscellaneous API additions: g_value_take_string(),
12192   g_value_take_param(), g_value_take_object(), 
12193   g_value_take_boxed(). [Matthias]
12194 * Win32 build fixes [Tor Lillqvist]
12195
12196 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
12197 =================================================
12198
12199 * Fix a problem with g_thread_init() on 64-bit problems
12200   [Alceste Scalas, Sebastian Wilhelmi]
12201 * Add assembly implementations of byteswap macros
12202   for ia64 and x86_64. [Manish Singh]
12203 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
12204 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
12205
12206 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
12207 =================================================
12208
12209 * Win32 bug fixes [Tor Lillqvist]
12210 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
12211   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
12212 * Ensure we have a GUINT64_FORMAT by pulling in Trio
12213   if necessary [Manish Singh]
12214 * Further Trio build fixes [Matthias Clasen, Owen]
12215 * Hack around gcc, libtool issues with -pthread [Owen]
12216 * Docs improvements [Matthias]
12217 * Bug and portability fixes 
12218 * Updated and new translations (bg,de,fi,fr,sq,fr)
12219
12220 Other contributors: Kai Poitschke, Morten Welinder
12221
12222 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
12223 =================================================
12224
12225 * autoconf changes to make it possible to cross compile
12226   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
12227   Johannes Stezenbach]
12228 * Use libintl when it has bind_textdomain_codeset() and
12229   GLib doesn't. [Owen]
12230 * Improve generation of pseudo-random integers [Morten Welinder, 
12231   Sebastian Wilhelmi]
12232 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
12233 * Cleanup include order [Sven Neumann]
12234 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
12235 * Doc fixes and additions [Matthias]
12236
12237 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
12238   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
12239
12240 Overview of Changes from GLib 2.0.x to GLib-2.1.x
12241 =================================================
12242
12243 * Add copy of the Trio library to build and use for printf() when 
12244   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
12245 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
12246 * Add g_markup_parse_context_get_element() [Matthias]
12247 * Add g_utf8_strreverse [Matthias]
12248 * Add g_ascii_strtoull() [Tim Janik]
12249 * Support scanning of 64-bit values with GScanner [Tim]
12250 * Add g_set/get_application_name() [Havoc Pennington]
12251 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
12252   Use for g_return_if_fail(). [Matthias Clasen]
12253 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
12254 * Improve the seeding algorithm of GRandom to avoid problems
12255   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
12256   environment variable. [Sebastian Wilhelmi]
12257 * Improve thread configure checks, use -pthread where applicable
12258   [Sebastian]
12259 * Improve handlng of thread priorities [Sebastian]
12260 * Fix up parameter names that might shadow functions from
12261   system headers [Soeren Sandmann]
12262 * Clean up usage of deprecated functions [Manish Singh]
12263 * Docs fixes and improvements. In particular, include "Since" information.
12264   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
12265   Owen Taylor, Morten Welinder]. 
12266
12267 Overview of Changes in GLib 2.0.7
12268 =================================
12269
12270 * Fix C++ warnings in gtype.h [Dom Lachowicz]
12271 * Fix g_type_fundamental_next() [Tim Janik]
12272 * Fix various missing includes of config.h [Morten Welinder]
12273 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
12274 * Various 64-bit fixes [Manish Singh]
12275 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
12276 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
12277 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
12278      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
12279      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
12280 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
12281
12282 Overview of Changes in GLib 2.0.6
12283 =================================
12284
12285 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
12286 * Clean up debug spew from GObject [Anders Carlsson]
12287 * Compiler warning fixes [David L. Cooper II]
12288 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
12289 * Fixes for --disable-debug [Sebastian Wilhelmi]
12290 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
12291   Rajkumar Sivasamy, Laurent Vivier]
12292 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
12293   Sebastian Rittau, Linus Welleij]
12294 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
12295 * Updated translations (bg,ko,vi)
12296
12297 Overview of Changes in GLib 2.0.5
12298 =================================
12299
12300 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
12301 * Clean up debug spew from GObject [Anders Carlsson]
12302 * Compiler warning fixes [David L. Cooper II]
12303 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
12304 * Fixes for --disable-debug [Sebastian Wilhelmi]
12305 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
12306   Rajkumar Sivasamy, Laurent Vivier]
12307 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
12308   Sebastian Rittau, Linus Welleij]
12309 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
12310 * Updated translations (bg,ko,vi)
12311
12312 Overview of Changes in GLib 2.0.4
12313 =================================
12314
12315 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
12316 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
12317 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
12318 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
12319
12320 Overview of Changes in GLib 2.0.3
12321 =================================
12322
12323 * Handle sorting 0-length arrays (Ron Arts)
12324 * Threading fixes (Sebastian Wilhelmi)
12325 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
12326   Sebastian, Qingjiang Yuan)
12327 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
12328 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
12329 * Win32 fixes (Tor Lillqvist)
12330 * Try to fix g_get_charset() related segfaults. (Owen)
12331 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
12332   Andrew P. Lentvorski, Jr.)
12333 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
12334 * g_markup fixes. (Matthias Clasen.)
12335 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
12336   Wayne Schuller)
12337
12338 Overview of Changes in GLib 2.0.1
12339 =================================
12340
12341 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
12342 * Performance improvements for GObject parameter lookup, 
12343   g_filename_to/from_utf8() [Alex Larsson]
12344 * Actually check interface prerequisites [Matthias Clasen,
12345   Miroslaw Dobrzanski-Neumann]
12346 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
12347 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
12348 * Fixes for g_log() and threading.
12349   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
12350 * Make g_print(), g_printerr(), g_warning(), etc, convert from
12351   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
12352 * Fixes for GIOChannel on windows. [Tor Lillqvist]
12353 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
12354 * Fix file descriptor leak in g_file_get_contents() [Matthias]
12355 * Workaround iconv() problems on older Solaris [Lauri Alanko]
12356 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
12357 * Minor bug fixes.
12358
12359 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
12360   Akira Tagoh, Morten Welinder
12361
12362
12363 Overview of Changes in GLib 2.0.0
12364 =================================
12365
12366 * Thread portability fixes [Sebastian Wilhelmi]
12367 * Documentation updates [Owen Taylor]
12368 * Make g_strerror(), g_strsignal() properly return UTF-8,
12369   call bind_text_domain_codeset() so that error strings
12370   are in UTF-8 as well. [Owen, Tor Lillqvist]
12371
12372 Overview of Changes in GLib 2.0.0 rc1:
12373 ======================================
12374
12375 * Win32 fixes [Tor Lillqvist]
12376 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
12377 * Fix up g_date_strftime [Daniel Elstner]
12378 * Add some structure padding [Tim Janik]
12379 * Make g_get_homedir() prefer the users home directory to $HOME
12380
12381 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
12382
12383 Overview of Changes in GLib 1.3.15:
12384 ===================================
12385
12386 * Speed up marshalers by using private access to GValue 
12387   [Anders Carlsson, Tim Janik]
12388 * Reduce GValue to 2 elements [Tim]
12389 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
12390 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
12391 * Add padding to various structures [Owen Taylor, Tim]
12392 * Win32 fixes [Tor Lillqvist]
12393
12394 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
12395   Daniel Elstner
12396
12397 Overview of Changes in GLib 1.3.14:
12398 ===================================
12399
12400 * Register value transformations for gint64, guint64 [Andy Wingo]
12401 * Build with large-file support [Sven Neumann, Owen Taylor]
12402 * Fix handling of hostnames in URI's [Darin Adler]
12403 * Main loop bug fixes [Havoc Pennington, Owen]
12404 * Doc fixes and improvements [Manish Singh, Tim Janik]
12405 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
12406 * Win32 fixes [Hans Breuer, Tor Lillqvist]
12407 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
12408 * Miscellaneous bug fixes
12409
12410 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
12411   Morten Welinder.
12412
12413 Overview of Changes in GLib 1.3.13:
12414 ===================================
12415
12416 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
12417 * Miscellaneous win32 fixes [Tor, Hans Breuer]
12418 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
12419 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
12420 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
12421 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
12422   Laszlo Peter, Havoc Pennington, Tim Janik]
12423
12424 Overview of Changes in GLib 1.3.12:
12425 ===================================
12426
12427 * Implement closure chaining, fixing up API (Tim Janik)
12428 * Closure chaining test case (James Henstridge)
12429 * Make GType long not int where both are equal width (Tim)
12430 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
12431 * Fixes for NetBSD. (Dan Winship)
12432 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
12433 * Save space for GBSearchArray (Tim Janik)
12434 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
12435
12436 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
12437   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
12438   Sebastian Wilhelmi.
12439
12440
12441 Overview of Changes in GLib 1.3.11:
12442 ===================================
12443
12444 * Win32 fixes [Hans Breuer, Tor Lillqvist]
12445 * Documentation improvements [Matthias Clasen]
12446 * Portable directory handling API [Hans]
12447 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
12448 * Fix excess relocations in Unicode tables [Andrew Taylor]
12449 * Fix gpattern for UTF-8 [Matthias Clasen]
12450 * Support overriding class closures [Tim Janik]
12451 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
12452 * Hide pointers to type information inside GType to reduce locking
12453   [Alex Larsson, Tim]
12454 * Adds check for direct inclusion of gobject/*.h [Owen]
12455 * GObject API cleanups [Tim]
12456
12457 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
12458   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
12459
12460
12461 Overview of Changes in GLib 1.3.10:
12462 ===================================
12463
12464 * Many Win32 fixes and improvements [Tor Lillqvist]
12465 * Documentation improvements [Matthias Clasen]
12466 * g_string_printfa() renamed to g_string_append_printf()
12467 * Use libcharset from libiconv to implement charset detection
12468   more portably. [Owen Taylor, Hidetoshi Tajima]
12469 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
12470 * Make support for 64 bit integers a requirement [Joshua]
12471 * GPattern improvements [Tim Janik, Matthias]
12472 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
12473 * Many bug fixes and minor tweaks.
12474
12475 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
12476   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
12477   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
12478   Jacob Berkman
12479
12480
12481 Overview of Changes in GLib 1.3.9:
12482 ==================================
12483
12484 * Fixes for comparison of threads [Sebastian Wilhelmi]
12485 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
12486 * Win32 fixes [Tor Lillqvist, Hans Breuer]
12487 * Add a len argument to g_ascii_strup/strdown
12488 * Bug, portability fixes, cleanups.
12489
12490 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
12491
12492
12493 Overview of Changes in GLib 1.3.8:
12494 ==================================
12495
12496 * Documentation updates [Owen]
12497 * Made GType interfaces overridable in derived types
12498 * Many win32 fixes [Tor Lillqvist]
12499 * Miscellaneous cleanups and fixes
12500
12501 Other contributors:
12502   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
12503
12504
12505 Overview of Changes in GLib 1.3.7:
12506 ==================================
12507
12508 * Integrate GClosure support into the main loop [Owen Taylor]
12509 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
12510 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
12511 * Minor hash table optimizations
12512 * Main loop and threading improvements [Sebastian Wilhelmi]
12513 * Added g_ascii_* functions to be used for locale insensitive UTF-8
12514   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
12515 * Add functions for Unicode case-conversion, normalization, and 
12516   collation [Owen]* GString improvements [Owen]
12517 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
12518 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
12519 * Make code 64bit clean [Mark Murnane]
12520 * More G_CONST_RETURN fixes
12521 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
12522 * Miscellaneous bug and API fixes
12523
12524 Other contributors:
12525   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
12526   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
12527   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
12528   Peter Williams
12529
12530
12531 Overview of Changes in GLib 1.3.6:
12532 ==================================
12533
12534 * Threads have a "return value" from g_thread_join
12535 * Removed ability to adjust thread stack size
12536 * Prefix warnings with progname/PID by default, change toggle for this to 
12537   be an env variable G_MESSAGES_PREFIXED not a compile-time option
12538 * GMarkup speedups
12539 * GDate const, convenience fixups
12540 * Include test cases that headers are compilable by C++ compiler
12541 * Add ability to spawn processes with argv[0] != executable path.
12542 * g_strstr_len, g_strrstr, g_strrstr_len
12543 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
12544 * Misc bug fixes
12545
12546
12547 Overview of Changes in GLib 1.3.5:
12548 ==================================
12549
12550 * Added an installed glib-mkenums Perl program for parsing enumeration
12551   declarations from header files.
12552 * Mark some additional deprecated functions.
12553 * Bug and Portability fixes
12554
12555
12556 Overview of Changes in GLib 1.3.4:
12557 ==================================
12558
12559 * Efficiency improvements for GThreadPool
12560 * A few bug fixes
12561 * Build fixes
12562 * Documentation improvements
12563
12564
12565 Overview of Changes in GLib 1.3.3:
12566 ==================================
12567
12568 GLib:
12569
12570 * More user_data support in various functions.
12571 * Main loop API revamps to support per-thread main loops.
12572 * Unicode handling improvements.
12573 * Implemented debugging traps.
12574 * G_CONST_RETURN specification all over the place.
12575 * Various new small utility functions.
12576 * Random number generator precision improvements.
12577 * New configure option --disable-mem-pools.
12578 * Many Win32 improvements.
12579 * Added g_try_malloc() friends varinats.
12580 * Many documentation improvements.
12581 * Many threading improvements, support for dynamic allocation
12582   of static mutexes.
12583 * GHookLIst API cleanups.
12584 * Improved format support of GDate parser.
12585 * String function speed improvements with new g_stpcpy().
12586 * Hashtable API additions.
12587 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
12588 * Optimizations, cleanups, bug fixes.
12589
12590 GObject:
12591
12592 * Added many convenience functions.
12593 * GClosure and GParamSpec use float/sink ref-counting scheme now.
12594 * Reworked property change notification.
12595 * Binary searchable array cleanups, so it's widely usable now.
12596 * Added static content keeping for some GValue types.
12597 * Support for statically scoped signal parameters.
12598 * Extinguished property trailer args in set/get interface.
12599 * Added support for abstract types.
12600 * G_CONST_RETURN specification all over the place.
12601 * Split parameter exchange functionality into value transforms
12602   and parameter conversions.
12603 * Added signal emission hooks and signal accumulators.
12604 * Added interface prerequisites to support is_a (interface, object)
12605   relations.
12606 * Implemented GValueArray.
12607 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
12608   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
12609   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
12610 * Varrags value collection improvements.
12611 * Implemented debugging traps.
12612 * Made things thread-safe.
12613 * Many documentation improvements.
12614 * Many cleanups, optimizations and bug fixes.
12615
12616
12617 Overview of Changes in GLib 1.3.2:
12618 ==================================
12619
12620 GLib:
12621
12622 * Win32 build improvements  [Tor]
12623 * Improvements to error reporting  
12624   (g_critical(), g_return_if_reached()) [Darin]
12625 * Add g_strlcpy/g_strlcat  [David Wheeler]
12626 * New IO channel implementation for Win32  [Tor] 
12627 * Make g_array_free, g_string_free return pointer to memory requested
12628   not to be freed.  [Darin]
12629 * Added GError based error reporting for thread functions.  [Sebastian]
12630 * Moved reference docs into GLib distribution. [Owen]
12631 * Added g_convert() for doing convenient character set conversions based
12632   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
12633 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
12634   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
12635 * Portability fixes for threading.  [Sebastian]
12636 * Added convenient functions for launching new processes (g_spawn_*),
12637   and shell quoting/unquoting functions.  [Havoc]
12638 * Split glib.h into many headers.  [Sebastian]
12639 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
12640 * Fixed confusions between comparison functions that return <0, 0, >0
12641   and equaility functions that return FALSE,TRUE.  [Sebastian]
12642 * Added safe/portable temporary file manipulation functions.  [Tor]
12643 * autoconf improvements.  [Raja]
12644 * Many documentation improvements.
12645 * Bug fixes.
12646
12647 GObject:
12648
12649 * Added boxed and pointer types.  [Tim/Jonathan]
12650 * Added callback abstraction (GClosure)  [Tim]
12651 * Added signal system (GSignal)  [Tim]
12652 * Make GTypePlugin an interface  [Tim]
12653 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
12654 * Bug fixes.
12655
12656
12657 What's new in GLib 1.3.1:
12658 =========================
12659
12660 * New GObject library added including object system based on
12661   the GTK+ object system. 
12662 * Functions for getting the properties of Unicode characters, 
12663   computing the canonical decomposition and ordering combining
12664   characters aand manipulating UTF-8 string manipulation based
12665   on libunicode.
12666 * GString now properly handles embedded nuls.
12667 * Multiple fixes from the 1.2.x branch.
12668 * Upgrade to libtool 1.3.3
12669 * Full thread support (thread creation and destruction).
12670 * BeOS port, BeOS dynamic modules.
12671 * Many improvements to the Windows ports.
12672 * Improvements to the OS/2 port, OS/2 module support.
12673 * Double ended queue implementation.
12674 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
12675 * New configure option --enable-msg-prefix to prefix messages, warnings
12676   et ceteri with the program name and the process id.
12677 * New thread-safe random number generator Mersenne Twister.
12678 * g_strcompress() added, g_strescape() had a slight API change, and
12679   more tightly defined semantics.
12680 * the g_string(x) macro has been removed, #x may be used instead.
12681                                 
12682