Imported Upstream version 2.65.0
[platform/upstream/glib.git] / NEWS
1 Overview of changes in GLib 2.65.0
2 ==================================
3
4 * Fix memory monitor tests to only be installed if installed-tests are enabled,
5   and to be skipped if GObject-Introspection is too old (!1407)
6
7 * Stability improvements for various unit tests
8
9 * D-Bus credentials support on macOS (#507)
10
11 * MSVC support for the files generated by `glib-compile-resource` and `gdbus-codegen` (#1215, !1452)
12
13 * Year 2038 fixes involving new API in `GBookmarkFile` (#1931)
14
15 * SOCKS5 proxy authentication fixes (#1986, #1988)
16
17 * Support for more than `MAXIMUM_WAIT_OBJECTS` FDs for `g_poll()` on Windows (#2107)
18
19 * Add `g_assert_no_errno()` test macro for testing POSIX-style functions (!1204)
20
21 * Update Unicode Character Database to version 13.0.0 (!1422)
22
23 * Support storing interned strings in `GValue`s efficiently, via `g_value_set_interned_string()` (#2109)
24
25 * Bugs fixed:
26  - #2 g_filename_from_utf8() should normalize?
27  - #176 the behaviour of constructors for GLib data types is not specified if memory allocation fails
28  - #480 /gdbus/connection/signals test intermittently fails: assertion failed (count_name_owner_changed == 2): (1 == 2)
29  - #507 GDBus credentials don’t work on OS X
30  - #602 GLib.Thread not usable from GObject-Introspection
31  - #1154 Missing documentation how to set a value in a GArray
32  - #1215 MSVC cannot build glib-compile-resource's output resource file
33  - #1323 meson, autotools: figure out if mem barrier is needed for arm64 host variant aarch64
34  - #1398 gdate: Add error handling for GetDateFormatW calls
35  - #1841 Signal handler disconnection race when finalising GCancellableSource
36  - #1851 Meson Build Failure on Windows: Undefined Reference to libiconv
37  - #1911 Memory leak in g_param_spec_flags and/or g_param_spec_enum
38  - #1931 GBookmarkFile API involves time_t
39  - #1954 gdbus-server-auth intermittent failure
40  - #1957 gdbus-connection test failure on FreeBSD
41  - #1986 Socks5 Proxy: Authentication seems broken
42  - #1988 Socks5 Proxy: Wrong error returned when using no authentication
43  - #2038 Bindings: g_tls_connection_set_database() does not allow None as argument
44  - #2051 GUnixOutputStream can block on close()
45  - #2057 Call malloc_trim() under memory pressure
46  - #2067 Glib uses _Static_assert in C++17 mode
47  - #2081 gdbus error messages contains mixed up body and head signatures
48  - #2082 AM/PM - specific variation support needed to Hebrew language
49  - #2083 Memory monitor tests fail if dbusmock isn't installed
50  - #2092 FreeBSD CI timing out in gdbus-connection filter test
51  - #2094 Deprecation warnings when compiling with -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_28 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_28
52  - #2106 Duplicated if - else if conditions in gtranslit.c
53  - #2107 g_poll() implementation on Windows stall when more than MAXIMUM_WAIT_OBJECTS FDs have passed
54  - #2109 GValue: Add support for interned string
55  - #2124 g_file_info_get_content_type() may return NULL
56  - #2132 Valgrind reports "still reachable" after g_thread_pool_new/free
57  - #2134 Valgrind reports "still reachable" after `g_uuid_string_random()`.
58  - #2135 Valgrind reports "still reachable" after g_key_file_new/free
59  - #2136 Valgrind reports "still reachable" after g_option_context_parse
60  - !1204 gtestutils: Add a new g_assert_no_errno() test macro
61  - !1302 gobject: new g_param_is_valid_property_name() function.
62  - !1329 Support nanoseconds in stat timestamps on Windows
63  - !1341 MUI capabilities for GWin32RegistryKey
64  - !1360 CI: Show execution environment before we start
65  - !1395 tests: Move memory_monitor_tests under installed_tests_enabled
66  - !1396 macros: Define G_GNUC_FALLTHROUGH for more compilers
67  - !1397 tests: Skip MemoryMonitor test if GObject-Introspection is too old
68  - !1398 gcontenttype: Fix crash in _get_generic_icon_name()
69  - !1402 ci: Update Android Docker image for aarch64 CPU naming change
70  - !1405 tests: Disable link-time warning for mem-overflow
71  - !1406 Replace fallthrough comments with G_GNUC_FALLTHROUGH
72  - !1408 tests: Don't compare strings by pointer
73  - !1409 gdummytlsconnection: Add missing overrides for ALPN properties
74  - !1413 gapplication: Fix a minor typo in the documentation
75  - !1414 gstrutils: Set locale explicitly for search-utils test
76  - !1415 meson: Don't use assert in test code
77  - !1418 ginetaddress, ginetsocketaddress: Add missing (nullable) annotations
78  - !1422 glib: Update Unicode Character Database to version 13.0.0
79  - !1423 gobject: Clarify assertion failure on ref-after-finalize
80  - !1424 docs: Fix configuration with gtk_doc=true and installed_tests=false
81  - !1425 gdbusconnection: GDBusSignalCallback can have a NULL sender_name
82  - !1426 gunidecomp: Update and reformat Unicode version support history
83  - !1427 gicon: Clarify GVariant refcounting in docs
84  - !1428 Add missing 'extern' to the dllexport version of GLIB_VAR/GOBJECT_VAR
85  - !1429 Fix arch detection ifdefs in glib/valgrind.h
86  - !1430 Use __builtin_trap() on Clang on any platform
87  - !1431 glib-unix.c: fix heap corruption in g_unix_get_passwd_entry
88  - !1432 docs: Mention new gio tool options
89  - !1433 meson: Fix buildtype usage
90  - !1434 gdbusconnection: Clarify nullability of SignalInstance.sender
91  - !1436 glib: Update internal copy of valgrind.h from Valgrind 3.15 release
92  - !1437 gmarkup tests: tab character escape/unescape
93  - !1439 Don't misdetect stpcpy on windows platforms on clang
94  - !1440 Silence clang errors about -Wformat-nonliteral due to missing intermediate attributes
95  - !1441 Meson: Override every dependency glib provides
96  - !1442 gfile: Fallback to fast-content-type if content-type is not set
97  - !1443 gio: use TAPTestRunner in the memory monitor tests
98  - !1444 Meson: Add glib-checks and glib-asserts options
99  - !1452 Make symbols generated by gdbus-codegen exportable on Visual Studio-style builds
100  - !1455 gdesktopappinfo: Note that search results are not filtered
101  - !1456 GCredentials documentation fixes
102  - !1458 meson: Exclude gosxutils.m when building for iOS
103  - !1459 meson: Fix the gnulib checks for isnan* functions
104  - !1460 glib: Sync the local modification to glib/valgrind.h to what was upstreamed
105  - !1462 gvariant-core: Add a note about memory safety of children
106  - !1463 gdesktopappinfo: Add several nullable annotation to GAppInfo getters
107  - !1464 Update Fedora CI
108  - !1466 CI: Switch to new Windows runners
109  - !1469 goption: Treat an empty option context parameter string as NULL
110  - !1475 Improve documentation of g_tls_database_verify_chain()
111  - !1476 tests: Fix remaining race in gdbus-connection filter test
112  - !1479 Improve documentation of client connection validation flags
113  - !1480 CI: Make sure we use meson 0.49.2 in MSYS2
114  - !1481 array: fix corrupt state of GPtrArray after g_ptr_array_extend_and_steal()
115  - !1482 [th/g-ptr-array-variable-cleanups] minor cleanup of variables for GPtrArray
116  - !1487 glib: annotate static inline functions with G_AVAILABLE-type macros
117  - !1488 Rebuild Fedora CI image
118  - !1491 gdatetime: update annotations
119  - !1492 glib-mkenums: allow optional 'since' tag
120  - !1493 meson: Remove stray ] in O_DIRECTORY check
121  - !1496 Fix GLIB_UNAVAILABLE_STATIC_INLINE declaration
122  - !1498 array: add internal ptr_array_new() helper for creating GPtrArray
123  - !1503 docs: Add indexes for symbols added in 2.66
124  - !1505 gobject: Handle runtime checks as such
125  - !1506 tests: Speed up the cancellable test
126  - !1508 tests: Speed up the file test and make it more reliable
127  - !1512 Various fixes when building for iOS
128  - !1513 Initialize the visited time of a new GBookmarkFile
129  - !1515 meson: check for stpcpy using cc.links()
130  - !1516 gthreadedsocketservice: Mark source_object of run signal as nullable
131  - !1517 GWin32RegistryKey: Move assertions
132  - !1518 strfuncs: Use a GPtrArray in strsplit()
133  - !1522 meson: Fix gnulib printf checks
134  - !1524 meson: Fix gnulib build where isnan*() is needed
135  - !1525 Normalize C source files to end with exactly one newline
136  - !1528 gtlsconnection: Improve documentation of peer-certificate[-errors]
137  - !1530 tree: Fix various typos and outdated terminology
138  - !1531 gvariant: Fix documentation for g_variant_get_string() to match reality
139  - !1532 win32: spelling fix
140  - !1535 glib.supp improvements
141
142 * Translation updates:
143  - Bokmål, Norwegian
144  - Catalan
145  - Catalan (Valencia)
146  - Chinese (Taiwan)
147  - Dutch
148  - French
149  - Galician
150  - German
151  - Hebrew
152  - Indonesian
153  - Italian
154  - Japanese
155  - Latvian
156  - Lithuanian
157  - Malay
158  - Romanian
159  - Serbian
160  - Slovak
161  - Slovenian
162  - Spanish
163  - Turkish
164  - Ukrainian
165
166
167 Overview of changes in GLib 2.64.0
168 ==================================
169
170 * Use `posix_spawn()` to speed up launching test D-Bus instances (!1388)
171
172 * Bugs fixed:
173  - #1783 Document using glib-mkenums with meson
174  - #2049 Crash in g_array_copy
175  - !1384 Some minor clang warning fixes
176  - !1386 docs: Document generated headers caveats for genmarshal
177  - !1387 ci: Correctly propagate exit status in run-style-check-diff.sh
178  - !1388 gtestdbus: Use posix_spawn() to spawn dbus-daemon
179  - !1389 Update GError docs to use G_DEFINE_QUARK
180
181 * Translation updates:
182  - Czech
183  - Danish
184
185
186 Overview of changes in GLib 2.63.6
187 ==================================
188
189 * Fix potential relative read when calling g_printerr(), which could lead to a
190   denial of service from a setuid-root process being used to block access to the
191   TTY for another user (#1919)
192
193 * Fix SOCKS proxy resolver sometimes not being used when resolving addresses
194   via Happy Eyeballs (CVE-2020-6750) (#1989)
195
196 * Several other Happy Eyeballs fixes for address resolution (#1871, #1872, #1902)
197
198 * Various race fixes in `GDBusConnection` and its unit tests (#1515)
199
200 * Fix a race condition with D-Bus name ownership (#1517)
201
202 * Drop `gio-launch-desktop` helper application in favour of calling `sh` directly (#1633)
203
204 * Fix win32 exception handling with C# exceptions (#2025)
205
206 * Fix thread safety of `GUnixMountMonitor` (#2030)
207
208 * Additional fixes to new thread pool attribute behaviour from GLib 2.63.4 to
209   check if sched_setattr() is allowed by system policies before depending on it (#2039, !1356)
210
211 * Fix memory leaks and corruption when freeing `GSource`s while freeing a `GMainContext` (!1353)
212
213 * Drop inappropriate installation of object manager example documentation (!1359)
214
215 * Bugs fixed:
216  - #938 gdbus call -a doesn't support message bus connections
217  - #1515 gio/gdbus-threading test sometimes fails in CI
218  - #1517 g_bus_own_name does not always call name_lost_handler when _REPLACE and _ALLOW_REPLACEMENT are set
219  - #1633 should not install gio-launch-desktop into PATH
220  - #1919 read from relative path in g_printerr() in 2.58.3
221  - #1995 Tracker issue for Happy Eyeballs regressions
222  - #2002 g_io_channel_read_line does not honour the line_term symbols set
223  - #2025 W32 exception handling misbehaves when C# exceptions are thrown when running inside the Visual Studio debugger
224  - #2030 Random nautilus test suite failures involving GUnixMountMonitor
225  - #2039 sched_setattr() still can cause EPERM through natural causes
226  - #2043 Low memory monitor test failed in CI
227  - #2044 GApplication docs suggest invalid GVariant type
228  - !1185 gtimezone: Tidy up UTC timezone creation
229  - !1281 ci: Update Docker packages
230  - !1283 gmodule: change _g_module_close to only take a handle.
231  - !1298 tests: Speed up the GIO actions test
232  - !1299 gapplication: Fix a minor typo in the documentation
233  - !1339 gsocketclient: Refactor g_socket_client_connect_async()
234  - !1353 GMainContext - Fix memory leaks and memory corruption when freeing sources while freeing a context
235  - !1354 GThreadPool - Add test for !1340
236  - !1355 glist: Add docs examples of how to combine with g_steal_pointer()
237  - !1356 GThread - Check if sched_setattr is allowed by the system policies before depending on it
238  - !1359 docs: Don’t install object manager example separately
239  - !1363 Make tests pass if we are euid != 0 with capabilities
240  - !1366 Fix oss-fuzz coverage link
241  - !1372 gobject: Fix strict aliasing warnings with g_set_object()
242  - !1376 gitlab-ci: 64-bit ARM is aarch64, not arm64
243  - !1381 ghash: Document the iteration order over a hash table is not defined
244  - !1382 tests: Bump the refcount timeout in gdbus-threading
245  - !1383 ci: Enable parallelisation when running installed tests
246
247 * Translation updates:
248  - Basque
249  - English (United Kingdom)
250  - French
251  - Galician
252  - German
253  - Greek, Modern (1453-)
254  - Hungarian
255  - Indonesian
256  - Japanese
257  - Korean
258  - Lithuanian
259  - Polish
260  - Portuguese (Brazil)
261  - Spanish
262  - Swedish
263  - Turkish
264
265
266 Overview of changes in GLib 2.63.5
267 ==================================
268
269 * Fix behaviour of `g_file_move()` fallback code to not follow symlinks (#986)
270
271 * Rename `--glib-min-version` argument of `gdbus-codegen` to `--glib-min-required`
272   (this is not an API break as `--glib-min-version` was added earlier in the
273   2.63 cycle) (#1993)
274
275 * Add gtk-doc checks to CI and fix a number of documentation issues
276   (thanks to Xavier Claessens) (!978)
277
278 * Add `G_SIZEOF_MEMBER()` macro (!1333)
279
280 * Add a debug message if `g_setenv()` or `g_unsetenv()` are used after any
281   threads have been spawned — this will be upgraded to a warning in future (!1337, #715)
282
283 * Skip memory monitor tests if xdg-desktop-portal or dbusmock are not available (!1296, !1338)
284
285 * Change the `libmount` configure option from a boolean to a Meson `feature` (!1344)
286
287 * Do not return `target-uri` from `g_file_peek_path()` when called on trash/recent files (!1346)
288
289 * Drop new TLS certificate API for PKCS #11 backed certificates, as the implementation
290   is not ready yet (this is not an API break as the API was added earlier in the
291   2.63 cycle) (!1347)
292
293 * Bugs fixed:
294  - #986 g_file_move: remove G_FILE_COPY_NOFOLLOW_SYMLINKS section
295  - #1551 CI: Add checks for `TODO` in MRs
296  - #1925 Large number of routes installed into kernel cause high cpu usage
297  - #1993 Rename gdbus-codegen --glib-min-version argument to --glib-min-required and add --glib-max-allowed
298  - #2012 spawn_thread_queue not initialised in GThreadPool
299  - #2020 g_network_monitor_base_add_network() improperly unrefs GInetAddressMask
300  - !978 Various fixes to make gtkdoc-check pass on glib
301  - !1018 docs: tag enclose 'all' and 'help' values
302  - !1170 Avoid C++20 deprecated assignment to volatile
303  - !1296 tests: Skip GMemoryMonitor tests if the dbusmock template is not available
304  - !1307 Remove global declaration of GMemoryMonitor
305  - !1322 gmain: Mark G_SOURCE_FUNC as available in 2.58
306  - !1333 Add and use G_SIZEOF_MEMBER() macro
307  - !1337 genviron: Message if g_setenv()/g_unsetenv() are used after threads spawned
308  - !1338 tests: Skip GMemoryMonitor tests if xdg-desktop-portal is not available
309  - !1344 meson: libmount autodectection
310  - !1345 gio-tool-info: Print unix mount information where available
311  - !1346 gfile: Do not return target-uri from g_file_peek_path()
312  - !1347 Revert "gtlscertificate: Add support for PKCS #11 backed certificates"
313  - !1348 ghash: Clarify that g_hash_table_add() always consumes the key
314  - !1349 doc: Clarify that _locker_new() does not actually allocate memory
315  - !1351 glib.supp: update g-threaded-resolver-getaddrinfo-config
316
317 * Translation updates:
318  - Japanese
319  - Lithuanian
320  - Malay
321  - Portuguese (Brazil)
322  - Swedish
323
324
325 Overview of changes in GLib 2.63.4
326 ==================================
327
328 * Fix various race conditions on signal emission in GDBus (#604, #978, #1232)
329
330 * Change thread pools so that thread attributes (in particular, priority) are
331   inherited from the thread which created the `GThreadPool` initially, rather
332   than from the thread which is pushing a new job into the pool (#1834, #2007)
333
334 * Expand support for running Windows apps with
335   `g_app_info_launch_default_for_uri()` using rundll32 on Windows (#1932)
336
337 * Support multiple directories in `GSETTINGS_SCHEMA_DIR` environment variable (#1998)
338
339 * Support full Julian day range in `TZ` environment variable (#1999)
340
341 * Apply recursion depth limits to variants in D-Bus messages (!1201)
342
343 * Support adding call flags and timeouts to method calls generated by
344   `gdbus-codegen` through the new `--glib-min-version` option (!1286)
345
346 * Fully deprecate TLS rehandshakes; they are now ignored due to TLS protocol
347   changes (!1305)
348
349 * Bugs fixed:
350  - #198 g_fopen and friends: should also state how to close a stream
351  - #604 GDBus name watching dispatch is buggy/excessively-complicated
352  - #833 g_object_set: document the need to cast varargs
353  - #978 SIGSEGV in on_name_lost_or_acquired
354  - #1232 Insufficient thread safety around GDBusObjectManagerClient
355  - #1416 Re-add macOS CI
356  - #1834 Unwanted priority/etc inheritance with GThreadPool and GThread and the POSIX implementation
357  - #1932 Windows: Gio.AppInfo.launch_default_for_uri seems not to work for local files/folders
358  - #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
359  - #1997 Base64 encoding with "break_lines" claims to wrap at 72 characters but seems to wrap at 76
360  - #1998 support multiple directories in GSETTINGS_SCHEMA_DIR
361  - #1999 GTimeZone fails to accept full Julian day range when parsing the direct $TZ string format
362  - #2007 Thread scheduler attributes fail under valgrind
363  - !388 ci: Avoid downloading subprojects for each job
364  - !1111 gio: test that launch_uris() exports files with the document portal when launching a flatpak
365  - !1201 gdbusmessage: Limit recursion of variants in D-Bus messages
366  - !1279 tests: Fix an error message set by foo_set_property()
367  - !1286 gdbus-codegen: Add a GDBusCallFlags arg to method calls
368  - !1291 gio-tool-list: Add an option to print display names
369  - !1294 GMemoryMonitor docs fixes
370  - !1295 gio: Fix socket test
371  - !1301 GThread - Inherit parent thread priority by default for new Win32 threads
372  - !1303 gvariant-core: Don't pass NULL second argument to memcpy
373  - !1305 Fully deprecate TLS rehandshakes
374  - !1308 gsocketclient: run timeout source on the task's main context
375  - !1309 Fix crash in gutils when application is prevented access to passwd file
376  - !1317 gfdonotificationbackend: remove notifications when bus name vanishes
377  - !1320 subprojects: Temporarily avoid using wrapdb while it’s down
378  - !1324 ci: Add some documentation to the style check CI test
379  - !1325 Check for SYS_sched_getattr before using it unconditionally
380  - !1330 W32: Correctly set st_ino when doing private stat()
381  - !1334 gthread: Ensure GThreadSchedulerSettings is always defined
382
383 * Translation updates:
384  - Catalan
385  - Galician
386  - Hungarian
387  - Indonesian
388  - Polish
389  - Portuguese (Brazil)
390  - Spanish
391
392
393 Overview of changes in GLib 2.63.3
394 ==================================
395
396 * Add a `--glib-min-version` argument to `gdbus-codegen` which controls breaks in the API of generated code (#1726)
397
398 * Add `g_clear_list()` API to clear `GList`s to `NULL` (#1943)
399
400 * Add a `GMemoryMonitor` API to be notified of memory pressure situations using the low-memory-monitor project (!1005)
401
402 * Add support for dispose functions for `GSource` implementations (!1175)
403
404 * Tighten up validation of GObject signal and property names, allowing performance improvements (!1224)
405
406 * Fix installation path of GIO modules on MSVC to be the bindir (!1254)
407
408 * Bugs fixed:
409  - #650 g_signal_lookup gives too many warnings
410  - #1011 GListStore, easily find if the item is already inserted
411  - #1130 gdbus-codegen: Add an option to strictly generate markdown in source comments
412  - #1687 glocalvfs.c uses non-thread-safe getpwnam()
413  - #1726 Warn when method/signal uses type 'h' but lacks GDBus.C.UnixFD annotation
414  - #1935 Assert in _kqsub_free seems to be too strict
415  - #1943 Consider g_clear_list()
416  - #1947 Documentation clarification for g_uuid_string_random()
417  - #1953 Documentation for g_type_init() and others missing from online gtk-doc documentation
418  - #1961 A typo in the comment of `g_settings_schema_get_path`: threfore -> therefore
419  - !1005 gio: Add GMemoryMonitor to monitor for low-memory
420  - !1172 gptrarray: Add an example to the g_ptr_array_steal() docs
421  - !1175 Implement a dispose function for GSource
422  - !1223 Add additional valgrind suppressions
423  - !1224 Signal name handling improvements
424  - !1230 ci: Run installed-tests on Fedora
425  - !1235 Add sudo to Fedora docker image
426  - !1239 tests: Run "timeout tests" sequentially
427  - !1248 ci: Update all Debian CI runners to use v5 of the Dockerfile
428  - !1249 gio-tool-mount: Allow mounting by the given UUID
429  - !1252 ci: Fix running all jobs on merge requests
430  - !1253 gthread: Fix "zero as null pointer" warning
431  - !1254 giomodule: gio modules are no longer installed in bindir on MSVC
432  - !1255 ci: Build Docker images rather than OCI images if using podman
433  - !1256 gdate: Add autoptr support
434  - !1258 Minor CI fixups
435  - !1261 gtk-doc: Ensure we have recent enough version
436  - !1262 tests: Add tests for the gdbus-codegen executable
437  - !1265 build: don't check for protected visibility
438  - !1267 Revert "doc: Workaround gtkdoc-scan bug leading to undocumented symbols"
439  - !1268 ci: Work-around successful installed tests having no logs
440  - !1269 gvariant: Add guard to g_variant_get()
441  - !1271 tests: Enable GDBus debug for a number of unreliable tests
442  - !1274 trash portal: Don't follow symlinks
443  - !1275 Small doc correction
444  - !1277 Various gtk-doc improvements
445  - !1278 Update installed tests CI
446  - !1280 clang-format-diff: Output diff for multiple files, not just one
447  - !1282 Revert "Revert "docs: remove GDBusObjectManager example""
448  - !1284 Update POTFILES.in 191212
449  - !1287 atomic/tests: test g_atomic_pointer_compare_and_exchange() with const pointers
450  - !1289 gtype: Define auto-cleanup functions for Module class
451
452 * Translation updates:
453  - Spanish
454
455
456 Overview of changes in GLib 2.63.2
457 ==================================
458
459 * Use `lldb` rather than `gdb` on macOS for debugging (#1004)
460
461 * Switch the atomic builtins from `__sync_fetch_*()` to the slightly more modern
462   `__atomic_*()` (#1750)
463
464 * Fix calculation of `gsize` width on various platforms (including OpenBSD) (#1777)
465
466 * Fix undefined behaviour causing brokenness in `g_utf8_find_prev_char()` when
467   compiling with GCC ≥ 8 (#1917)
468
469 * Revert UNIX mode changes in `G_FILE_ATTRIBUTE_ID_UNIX_MODE` which broke OSTree (#1934)
470
471 * Slightly improve performance for signal emissions when no handlers are connected (!1083)
472
473 * Add `g_task_return_value()` and `g_task_propagate_value()` APIs to allow
474   `GTask` to be used from language bindings more easily (!1216)
475
476 * Fix a file monitoring crash on kqueue-based systems (BSD) (!1221)
477
478 * Bugs fixed:
479  - #1004 [PATCH] Make gbacktrace use lldb on Mac OS X
480  - #1552 CI: Add code style checks
481  - #1750 Switch from  __sync_fetch_*() to __atomic_*() in glib/gatomic.h
482  - #1777 gsize: improper typedef on (at least) OpenBSD
483  - #1895 Regression: glib does not compile on centos 6: "objcopy: unrecognized option '--add-symbol'"
484  - #1917 Test utf8-pointer fails with static build, LTO, optimisations, and new GCC
485  - #1930 glib/tests/bookmarkfile.c:385:test_modify: assertion failed: (stamp == now)
486  - #1934 ostree tests broken since bfdc5fc4fc84ef8518d2d1a328c8482cf5a38e98: File '/tmp/test-tmp-libostree_test-basic-user.sh.test-QB4SA0/diff-test2' is not empty
487  - #1938 GDateTime doesn't support leap seconds
488  - #1940 atomics test fails on FreeBSD CI since !1123
489  - !1039 Improve documentation for footgun function g_tls_client_connection_copy_session_state()
490  - !1083 Use the GObject hole on 64bit arches for some flags to improve performance
491  - !1202 CI updates after !1177
492  - !1208 gutils: Slightly improve docs formatting for g_get_os_info()
493  - !1209 Make ld executable configurable
494  - !1210 gdbus-server-auth test: Include gcredentialsprivate.h
495  - !1213 gsocket: Improve diagnostics on bind() failure
496  - !1214 gvariant, gbytes: Avoid memcmp (NULL, ., 0) or memcmp (., NULL, 0)
497  - !1216 Make GTask more binding-friendly
498  - !1218 gdb: Fix GHashTable pretty printer off-by-one error
499  - !1220 gparam: fix memory leak in g_param_value_defaults()
500  - !1221 Add NOTE_REVOKE to the list of the monitoring events
501  - !1225 gtlsconnection: clarify handshake() documentation
502  - !1227 Deprecate old GTlsConnection functionality even harder!
503  - !1231 Fix build on old libc that does not define _SC_HOST_NAME_MAX
504  - !1238 gstrfuncs: use gsize type internally for strv functions
505  - !1242 gfileinfo: Clarify the documentation for G_FILE_ATTRIBUTE_UNIX_MODE
506  - !1243 docs: Fix "occurred" typos in API documentation
507
508 * Translation updates:
509  - Spanish
510
511
512 Overview of changes in GLib 2.63.1
513 ==================================
514
515 * Several usability improvements to command line `gio` tool (!1153)
516
517 * Add `g_array_steal()`, `g_ptr_array_steal()` and `g_byte_array_steal()` APIs (#285)
518
519 * Add `g_get_os_info()` API (!1063, !1160)
520
521 * Add `g_warning_once()` API (!1028)
522
523 * Always resolve `localhost` to loopback address in `GResolver` (!616)
524
525 * Add `GMainContextPusher` API (!983)
526
527 * Limit recursion in `g_variant_parse()` (!1173)
528
529 * Fix crash in `g_spawn()` with high FD numbers due to use of `select()` rather
530   than `poll()` (#954)
531
532 * Allow passing empty `GValue`s to `g_param_value_set_default()` (!1186)
533
534 * Escape header guards generated by `gdbus-codegen` better (#1379)
535
536 * Bugs fixed:
537  - #285 [PATCH] add array steal and memdup functions
538  - #954 The g_spawn_sync() function uses select() which has limitations
539  - #1318 rare failure in gdbus-peer test: invalid uninstantiatable type '(null)' in cast to 'GDBusServer'
540  - #1379 gdbus-codegen generates invalid header guards when build directory contains a + character
541  - #1622 NULL pointer derefs on g_vasprintf() failure
542  - #1813 g_option_context_add_main_entries() is missing array annotation for entries parameter
543  - #1831 No reply on private socket due to auth problem
544  - #1836 gobject.c uses undefined annotation “(not optional)”
545  - #1858 docs/reference/gobject/tut_gobject.xml: object properties example uses deprecated API
546  - #1877 g_cancellable_source_new annotated with 'skip'
547  - #1896 Use after free when calling g_dbus_connection_flush_sync() in a dedicated thread
548  - #1897 glib 2.62.0 fails test 'test_writev_no_vectors' wih gcc7
549  - #1903 use-after-free in mimeapps test causes intermittent segfault during testing
550  - #1906 test_os_info fails on FreeBSD
551  - #1916 objcopy not used from cross-compilation file in GIO tests
552  - #1923 Recent Versions of GLib Break Dolphin File-Manager's Thumbnailing when Using 'gtk2' Style
553  - !616 Always resolve localhost to loopback address
554  - !983 gmain: Add GMainContextPusher convenience API
555  - !1014 tests: Add a test for g_assert_finalize_object()
556  - !1028 gmessages: Add g_warning_once()
557  - !1035 Switching from C gnu89 to C gnu99 standard
558  - !1063 gutils: Add g_get_os_info()
559  - !1082 gdatetime: Document RFC 3339 extensions when parsing ISO 8601
560  - !1105 syscall flood on every time*() function call
561  - !1120 Update documentation with FreeBSD build instructions
562  - !1135 gmain: use atomic operation instead of GMutex to access g_main_context_default()
563  - !1146 Solaris build fixes
564  - !1147 gmodule: fix typo in doc comment
565  - !1148 gio/gfileinfo: fix parameter references
566  - !1149 gio/gfile: fix parameter reference for value_p
567  - !1150 gio/gfile: fix parameter references to @contents
568  - !1151 gio/gfile: fix typo in doc comment
569  - !1152 gwinhttpvfs: Handle g_get_prgname() returning NULL
570  - !1153 Several gio-tool bash completion fixes and improvements
571  - !1155 Strict-aliasing fixes to new atomic built-ins
572  - !1157 Fix various compiler warnings on Android
573  - !1160 Add Windows support to g_get_os_info()
574  - !1161 hash: Remove an assertion from the hot path
575  - !1163 gcharset: Expand the documentation for g_get_locale_variants()
576  - !1165 Use uname as a fallback to get OS info
577  - !1167 Fix some minor leaks in testfilemonitor
578  - !1168 Fix gdatetime tests on toolbox
579  - !1171 Revert "gdbus-codegen: emit GUnixFDLists if an arg has type 'h'"
580  - !1173 gvariant: Limit recursion in g_variant_parse()
581  - !1177 ci: Add libdbus development files to CI Docker images
582  - !1179 Improve GPtrArray doc-comments
583  - !1180 array: Avoid use of memcpy(dest, NULL, 0)
584  - !1181 gmain: Clarify thread safety of some common GSource functions
585  - !1182 gio: Fix typo in URL
586  - !1186 Allow using an empty GValue with g_param_value_set_default()
587  - !1189 gparamspecs: Fix type class leaks on error handling paths
588  - !1197 Fix GDBus test failures on non-Linux (in particular FreeBSD)
589  - !1200 Minor fixes from a scan-build run
590
591 * Translation updates:
592  - Catalan
593  - Chinese (Taiwan)
594  - Spanish
595
596
597 Overview of changes in GLib 2.63.0
598 ==================================
599
600 * Add g_fsync() API (#35)
601
602 * Fix regression in g_file_copy() when passing
603   `G_FILE_COPY_TARGET_DEFAULT_PERMS` flag; the destination permissions would be
604   private rather than following the process’ umask (!1142)
605
606 * Several `GDateTime` parsing fixes (!1127)
607
608 * Always build the tests if installed-tests are enabled, so that the tests can
609   actually be installed (!1141)
610
611 * Rework atomic function implementations to use memory barrier in the correct
612   place (when compiler intrinsics aren’t providing the atomics), and fix
613   signedness issues (#1449, #1565)
614
615 * Use the OS’ `fdwalk()` function (if safe) to speed up `g_spawn_*()` on BSD (#1638)
616
617 * Remove the macOS `dyld` `GModule` implementation in favour of `dl` instead (!1093)
618
619 * Bump Python requirement to ≥ 3.5, which we implicitly relied on anyway through
620   our Meson dependency (!1132)
621
622 * Bugs fixed:
623  - #35 add g_fsync to API
624  - #174 g_file_copy always preserves  permissions, even if G_FILE_COPY_ALL_METADATA flag is not set
625  - #259 docs: fix a misunderstanding in g_type_add_interface_*
626  - #767 g_signal_lookup fails if class is not referenced
627  - #1052 g_io_write_chars calls abort when given a null byte as input
628  - #1449 glib fallback atomic int/ptr get/set have memory barrier in wrong place
629  - #1565 Signedness of atomic operations
630  - #1638 g_spawn_*() is extremely slow under certain circumstances
631  - #1809 Provide API for working with PKCS11 backed certificates
632  - #1843 TSAN false positive with g_atomic_pointer_get/g_atomic_pointer_set under Clang
633  - #1865 g_variant_get_data_as_bytes fails after serializing a variant
634  - #1875 Segfault and Overflow in __gio_xdg_cache_mime_type_subclass() with Wps-Office installed
635  - #1887 glib 2.62.0 breaks loading dylibs as modules
636  - #1888 2.62: docs build on Windows broken
637  - #1897 glib 2.62.0 fails test 'test_writev_no_vectors' wih gcc7
638  - !1020 docs: Remove priv pointers from the tutorial example
639  - !1062 gtype: mark the inline functions in G_DECLARE_*_TYPE() as UNUSED
640  - !1080 tests: Fix skipping mkdir-with-parents-permission test
641  - !1088 Various small scan-build fixes
642  - !1090 giochannel: Clarify type of GSource callback in documentation
643  - !1093 gmodule: remove macOS dyld implementation
644  - !1095 Define G_IOV_MAX to 512 on macOS/iOS
645  - !1099 gmem: clarify that g_malloc always uses the system allocator
646  - !1109 doc: fix typo in gio/gsettings.c
647  - !1110 gio: Add missing "gio remove" option to bash completion script
648  - !1112 Add version macros for GLib 2.64
649  - !1115 gdatetime: Fix error handling in g_date_time_new_ordinal()
650  - !1116 gmarkup: Add a limit on the number of attributes in an element
651  - !1119 Annotate the return value of various utility functions
652  - !1124 docs: Fix typo in GConverter{Input,Output}Stream section titles
653  - !1125 gdatetime: Fix error handling in g_date_time_new_week()
654  - !1126 fileinfo: Mention that usec mtimes are set
655  - !1129 gdate: Fix tautological comparison warnings on Android
656  - !1130 Improve GLIB_DEPRECATED_MACRO_FOR output
657  - !1131 gio/gfileinfo: fix param reference in doc comment
658  - !1132 build: Bump Python requirement to ≥ 3.5
659  - !1137 gregistrysettings: bump key name length to 2048
660  - !1138 Always build tests if we enabled installed-tests
661  - !1139 g_file_info_get_modification_date_time: Calculate in integer domain
662
663 * Translation updates:
664  - Danish
665  - Italian
666  - Panjabi
667  - Serbian
668  - Turkish
669
670
671 Overview of changes in GLib 2.62.0
672 ==================================
673
674 * Fix new `GFileInfo` APIs to work when `G_FILE_ATTRIBUTE_TIME_MODIFIED_USEC`
675   was not queried (!1087)
676
677 * Bugs fixed:
678  - #487 Add valgrind test runs to CI
679  - !1084 garray: Fix reference to GLIB_SIZEOF_INT
680  - !1086 glib.supp: make gobject_init() calloc also of the possible kind
681  - !1087 fileinfo: ignore USEC if not available
682
683 * Translation updates:
684  - Friulian
685  - Portuguese (Brazil)
686
687
688 Overview of changes in GLib 2.61.3
689 ==================================
690
691 * Support setting thread name on BSD systems (#1761)
692
693 * Install previously-uninstalled headers for public `GNativeSocketAddress`
694   object (#1854)
695
696 * Very initial support for Windows apps (UWP) (!1057)
697
698 * Add various new valgrind suppressions to `glib.supp` (#1879, !1075)
699
700 * Bugs fixed:
701  - #83 Optimisation for g_nearest_pow() in garray.c
702  - #512 GSignal: accumulator function not called to accumulate G_SIGNAL_RUN_CLEANUP object handler return values
703  - #873 allow NULL arguments to parse_strv
704  - #905 Patches from static analysis run on 2.40
705  - #1057 goption: add sanity check to input parameters
706  - #1309 GSettings object stops emitting "changed" signal on g_settings_reset after call to g_settings_delay
707  - #1620 GDBus criticals from GVfs with GLib master
708  - #1761 Setting thread-name on BSD systems
709  - #1803 GDK_SCALE=X is not respected when using "gio open"
710  - #1819 Invalid characters in Open Location dialog crashes GIMP
711  - #1852 Regression: g_mkdir_with_parents() returns 0 on failure
712  - #1854 glib/gio: GNativeSocketAddress headers not installed.
713  - #1860 g_clear_handle_id does not trigger GLIB_VERSION_MAX_ALLOWED warning
714  - #1863 Potential invalid writes on g_utf8_strreverse
715  - #1867 A couple of en_GBisms
716  - #1870 GSettingsBackend watches not thread-safe
717  - #1879 Incomplete valgrind suppressions - 16 KiB leak reported by valgrind from loading libglib-2.0.so
718  - #1880 glib/gbacktrace.c: If dup2 happened to return -1, don't call dup2 with same value
719  - #1881 GIO_USE_VOLUME_MONITOR and GIO_USE_FILE_MONITOR do not work as documented
720  - !1002 Remove mentions of mailing lists from the documentation
721  - !1011 gapplication: Fix a leaking GRemoteActionGroup member
722  - !1015 Post-release version bump
723  - !1016 gnetworkmonitornm fixups
724  - !1017 Improve ISO 8601 parsing by GDateTime
725  - !1023 g_object_get_property: Improve documentation for use of G_VALUE_INIT
726  - !1026 gutf8: Assert that written memory stays in bounds
727  - !1027 gfileutils: Fix error propagation for other than ENOENT
728  - !1031 meson: build gnulib if printf isn't good enough
729  - !1032 meson: small printf check cleanups
730  - !1033 win32: don't assume the format specifier for the stdlib printf/scanf like functions
731  - !1034 glib/tests/fileutils: Add a reproducer for #1852
732  - !1036 cond test: Don't make assumptions about struct sigaction member order
733  - !1037 Meson: Override glib-compile-resources/schemas
734  - !1044 Relax use of g_test_bug() to not require g_test_bug_base() to be called first
735  - !1049 minor typos in the documentation
736  - !1050 tests: Fix a pragma warning on FreeBSD
737  - !1054 gerror: Add a docs paragraph about not displaying errors verbatim in UI
738  - !1057 Some (probably) easy uwp patches
739  - !1059 Update win32 readme, add myself to codeowners
740  - !1066 libffi.wrap: Meson port has moved to FDO gitlab
741  - !1068 gsubprocesslauncher.c: fix documentation
742  - !1071 meson: Move libdl_dep to the top level
743  - !1074 Adjust README formatting
744  - !1075 glib.supp: add suppression for g_type_class_ref()
745
746 * Translation updates:
747  - Basque
748  - Catalan
749  - Czech
750  - English (United Kingdom)
751  - French
752  - Galician
753  - German
754  - Hungarian
755  - Indonesian
756  - Korean
757  - Lithuanian
758  - Polish
759  - Romanian
760  - Spanish
761  - Swedish
762
763
764 Overview of changes in GLib 2.61.2
765 ==================================
766
767 * Add various new array functions (#236, #269, #373)
768  - `g_array_copy()`
769  - `g_ptr_array_copy()`
770  - `g_ptr_array_extend()`
771  - `g_ptr_array_extend_and_steal()`
772  - `g_array_binary_search()`
773
774 * Add `g_assert_finalize_object()` helper function for writing tests (#488)
775
776 * Rework how D-Bus connections are closed/unreffed when `g_test_dbus_down()` is
777   called. Tests which leak a `GDBusConnection` may now time out and abort,
778   rather than silently leaking. (#787)
779
780 * Add a deprecation macro for GLib macros, and use it; third-party uses of
781   long-deprecated GLib macros may now start causing warnings. (#1060)
782
783 * Deprecate `GTime` and `GTimeVal`, and various functions which use them.
784   Use `GDateTime` and `guint64` UNIX timestamps instead. (#1438)
785
786 * Stop using `G_DISABLE_DEPRECATED` to allow disabling deprecation warnings;
787   third-party code should now be using
788   `GLIB_VERSION_{MIN_REQUIRED, MAX_ALLOWED}` to control symbol usage (!871)
789
790 * Improve support for running `ninja test` when GLib is built statically (#1648)
791
792 * Improve `GNetworkMonitor` detection of offline states (#1788)
793
794 * Fix build failure on macOS related to missing `_g_content_type_get_mime_dirs`
795   function (#1791)
796
797 * Add various installed utilities’ paths to `gio-2.0.pc` (#1796)
798
799 * Fix keyfile `GSettings` backend and portal (especially relevant to any version
800   of GLib included in a flatpak runtime) (#1822, !985)
801
802 * More IPv6 ‘Happy Eyeballs’ fixes in `GNetworkAddress` (!865)
803
804 * Fix CVE-2019-12450, wide permissions of files when copying using GIO (!876)
805
806 * Bump the Meson dependency from 0.48.0 to 0.49.2; we won’t depend on anything
807   higher than this for a while, as Debian 10 ships 0.49 (!924)
808
809 * Various test fixes for Windows (!930, !931)
810
811 * Initial support for Universal Windows Platform (UWP): certification, and use
812   of packaged libraries (!951)
813
814 * Add experimental clang-cl support on Windows, allowing `g_autoptr()` support
815   on Windows (!979)
816
817 * Bugs fixed:
818  - #77 G_STDIO_NO_WRAP_ON_UNIX wraps
819  - #236 Add a function to copy an array
820  - #269 Additional convenience functions for g_ptr_array
821  - #373 GArray could use a binary search function
822  - #436 running tests leaves lots of coredumps
823  - #453 find-enclosing-mount docs confusing
824  - #488 Add g_object_assert_last_unref() helper macro to detect object leaks in tests
825  - #590 A reader lock can be obtained even if a writer is already waiting for a lock
826  - #638 g_atexit is defined when not declared
827  - #737 Initialize GValue in g_object_get_property()
828  - #787 gtestdbus: Properly close server connections
829  - #804 gdbusproxy prefixes unstripped error
830  - #870 Fix and enhance GDatetime for Windows
831  - #872 ucs4 functions have wrong return transfer
832  - #887 gdusmessage.c mishandles bounds of GDBusMessageType and related enums
833  - #894 gvalue: Avoid expensive checks where possible
834  - #940 Docs for g_socket_listener_set_backlog are not very helpful
835  - #943 G_DEFINE_TYPE_WITH_PRIVATE docs not helpful
836  - #1018 Allow guid key in dbus addresses
837  - #1060 Add deprecation macro for macros
838  - #1169 Tools can display gibberish messages from translations
839  - #1270 g_get_charset always returns 8-bit codepage on Windows, crippling UTF-8 output
840  - #1438 Deprecate GTimeVal- and GTime-based APIs
841  - #1635 g_socket_join_multicast_group iface parameter fails on win32/64
842  - #1648 2.58.2: Assorted asserts fail in Arch Linux when built statically
843  - #1729 g_content_type_guess segfaults when passed an empty data buffer on Mac OS
844  - #1788 GNetworkMonitor claims I am offline
845  - #1790 documentation on g_file_info_get_attribute_as_string
846  - #1791 _g_content_type_get_mime_dirs missing from libgio-2.0.0.dylib on MacOS
847  - #1792 glib-genmarshal generated valist marshal does not respect static scope for some types
848  - #1793 glib-genmarshal generates wrong code for va marshaler for VARIANT type
849  - #1794 API Proposal: g_timer_is_active
850  - #1796 Add gio-querymodules variable to pkg-config file
851  - #1797 glib/tests/win32 test failing on 64-bit Visual Studio builds
852  - #1798 /contenttype/tree reliably fails on FreeBSD since !863
853  - #1807 g_dbus_server_new_sync() documentation references nonexistent function
854  - #1808 Stopping a GDBusServer should clean up Unix socket paths (if not abstract) and nonce-tcp nonce files
855  - #1811 Introspection info for g_unichar_compose's 3rd arg should be OUT
856  - #1822 keyfile gsettings backend not loading
857  - #1823 Documentation for disabling selinux is incorrect
858  - #1825 GKeyFileSettingsBackend created without filename construct property and unchecked assertion
859  - #1828 Small typo in gio manpage
860  - #1837 Specify for each (optional) parameter, whether it is OUT or INOUT
861  - #1838 Reword documentation for G_DECLARE_FINAL_TYPE
862  - #1847 Setting GLIB_VERSION_{MIN_REQUIRED, MAX_ALLOWED} to before 2.56 triggers warnings
863  - !533 docs: Document pitfall of deprecation pragmas
864  - !563 ci: Add scan-build job in a new ‘analysis’ pipeline stage
865  - !678 glib-compile-schemas: Improve translatable strings
866  - !817 gdate: Officially mark GTime as deprecated
867  - !851 gsettings: Document that lists are returned in no defined order
868  - !853 gobject: Fix apostrophe usage in a few small bits of documentation
869  - !859 gobject: Add a g_assert_finalize_object() macro
870  - !863 gunicollate/cygwin: Don't use __STDC_ISO_10646__ for wchar_t related checks
871  - !865 gnetworkaddress: fix "happy eyeballs" logic
872  - !867 Post-release version bump
873  - !871 Drop G_DISABLE_DEPRECATED
874  - !873 Use atomic reference counting for GSource
875  - !874 Clamp number of vectors to IOV_MAX / UIO_MAXIOV for GOutputStream writev()...
876  - !875 CI/msys2: disable coverage reporting, lcov doesn't support gcc9 yet
877  - !876 CVE-2019-12450: gfile: Limit access to files when copying
878  - !877 gio: specify proper c_marshaller and va_marshallers
879  - !883 tests: Fix small race in GSubprocess tests
880  - !884 garcbox.c: Fix typo atomit => atomic
881  - !885 goption: Clarify G_OPTION_ARG_FILENAME documentation
882  - !889 Include <sys/filio.h> for FIONREAD
883  - !901 gmain: Clarify that g_source_destroy() doesn’t drop a reference
884  - !904 Add glib-genmarshal tests and fix some valist marshaller bugs
885  - !906 property action: Add state hints
886  - !908 Improve testfilemonitor test repeatability and debuggability
887  - !909 D-Bus auth mechanism improvements
888  - !914 ci: Run scan-build in a different build directory
889  - !915 docs: fix typo on arrays examples in gvariant-text
890  - !917 docs: Fix name of IRC channel in CONTRIBUTING.md
891  - !919 glib/tests/refcount.c: Fix tests on non-GCC-isque compilers
892  - !920 gmacros: Only use deprecated attributes on enumerators with GCC ≥ 6.5
893  - !923 Check if compiler symbols are defined before using them
894  - !924 Bump the required version of Meson
895  - !930 glib/tests/convert.c: Skip tests that aren't meaningful for Windows
896  - !931 glib/tests/fileutils.c: Fix stdio Wrapper Test on Windows
897  - !934 build: Increase the slow test timeout to 180s
898  - !935 Ignore */__pycache__/* directories
899  - !937 Fix module tests on Visual Studio builds
900  - !939 gstdio: minor cleanups
901  - !941 list model: Expand items-changed docs
902  - !944 gutils: Don't limit the length of the host name to 99
903  - !945 Avoid overrunning stack at the end of the varargs.
904  - !947 gobject/tests/signals.c: Fix tests on Windows
905  - !948 GObject: Fix mkenums.py and genmarshal.py tests on Windows
906  - !950 ci: Enable CI on FreeBSD 12
907  - !951 Preliminary patches for Universal Windows Platform support
908  - !952 gio: Make minor docs improvements
909  - !953 g_utf8_normalize: Doc comment return missing nullable annotation
910  - !954 Fix the ISO 15924 code for Manichaean
911  - !955 gmacros: Use _Static_assert when C11 is available
912  - !958 gthread: fix minor errno problem in GCond
913  - !961 gmain: Fix g_main_context_prepare priority annotation
914  - !962 gmacros: Use _Static_assert only for non-expr static assert
915  - !964 gmacros.h: Use static_assert on MSVC if possible
916  - !968 Fix typo in request handle
917  - !970 gdatetime: Unset LC_ALL for the test as well
918  - !971 docs.c: Forward link from g_auto* → G_DEFINE_AUTO*
919  - !973 doc: fix typo in gio/gresource.c
920  - !979 Experimental clang-cl support
921  - !980 gmacros.h: Add better support for clang-cl
922  - !981 gio: fix typo in g_settings_reset documentation
923  - !982 Various doc fixes
924  - !985 Keyfile portal fixes
925  - !987 gio/tests: Remove code and comments referring to libtool
926  - !991 fix atomic detection on older gcc versions
927  - !992 docs: Add example to g_test_summary() documentation
928  - !994 gio: Fix minor docs mistakes
929  - !996 Small array test fixes
930  - !997 gdbusaddress: Add missing transfer annotation
931  - !1007 Resubmission of !832 “Try to create the complete path right away and fall back”
932  - !1009 gapplication: remove inactivity_timeout source on finalize
933
934 * Translation updates:
935  - Hungarian
936  - Indonesian
937  - Portuguese (Brazil)
938  - Spanish
939
940
941 Overview of changes in GLib 2.61.1
942 ==================================
943
944 * `g_unichar_isxdigit()` and `g_unichar_xdigit_value()` now handle full-width
945   characters (U+FF21–U+FF26 and U+FF41–U+FF46) (#58)
946
947 * Deprecate `gtester` utility and its test reporting format and enable TAP
948   output by default instead — the `--tap` option to tests is now a no-op
949   (#1441, #1619)
950
951 * Add `g_test_summary()` to allow test authors to programmatically summarise
952   what each unit test in a test suite does (#1450)
953
954 * Upgrade to Unicode Character Database v12.1 (#1713, !822)
955
956 * More IPv6 Happy Eyeballs fixes to `GNetworkAddress` and `GSocketClient`
957   (#1747, #1771, #1774)
958
959 * Fix valgrind and gdb support for the new `GHashTable` changes (#1749, #1780)
960
961 * Fix GTask wait times growing faster than the number of task threads (#1683)
962
963 * Change `GApplication` to ignore `-psn_*` arguments on the macOS command line,
964   as they are irrelevant (#1784)
965
966 * Add `g_autoqueue()` helper macros, similar to `g_autolist()` (!474)
967
968 * Add pre-allocated link helpers for `GList` and `GQueue`:
969  - `g_list_insert_before_link()`
970  - `g_queue_insert_before_link()`
971  - `g_queue_insert_after_link()`
972
973 * Improve network availability detection with NetworkManager to treat lower
974   levels of connectivity as having reduced availability (!781)
975
976 * Add `g_clear_signal_handler()` to allow disconnecting from a `GObject` signal
977   and clearing the signal handler ID to zero in a single call (!819)
978
979 * Add `g_autoptr()` support for `GRWLock` (!825)
980
981 * Define `G_OS_UNIX`, not `G_OS_WIN32`, when GLib is built agains Cygwin (!862)
982
983 * Bugs fixed:
984  - #29 GScanner: should explicitly document modifiable fields (value, next_value, ...)
985  - #58 g_unichar_isxdigit() and g_unichar_xdigit_value() should deal with full-width a-fA-F
986  - #106 Boxed types should be documented better
987  - #135 g_unichar_totitle(0) returns 0x00001F88 instead of 0
988  - #429 g_format_size() is broken on Windows
989  - #1441 Deprecate gtester
990  - #1450 Add API for tests to describe what they're checking
991  - #1619 GTest should have a way to default to TAP
992  - #1683 GTask: task_wait_time is increased constantly when the number of running thread is greather than 10
993  - #1713 Upgrade to Unicode Character Database v12
994  - #1739 meson build failure libdl
995  - #1747 Critical in g_socket_client_async_connect_complete
996  - #1749 New GHashTable implementation confuses valgrind
997  - #1753 Remove memory leaks from gio/test/resolver.c
998  - #1755 Please revert #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
999  - #1759 test_month_names: assertion failed
1000  - #1760 Document for g_resolver_lookup_records why it returns a list of list of gchar*.
1001  - #1763 tests: -p runs tests in the reverse of the specified order
1002  - #1768 g_strlcat(): Possible buffer overflow in implementation
1003  - #1771 GNetworkAddressAddressEnumerator unsafely modifies cache in GNetworkAddress
1004  - #1774 Leaks in gsocketclient.c connection code
1005  - #1776 glib/date test fails
1006  - #1780 GDB pretty-printer for GHashTable no longer works
1007  - #1782 Error in documentation for cross-compile.
1008  - #1784 MacOS adds a -psn_X_XXXXXX parameter to the command line
1009  - !474 Add g_autoqueue
1010  - !476 Add pre-allocated link helpers for GList and GQueue
1011  - !556 gtestutils: Make --tap compatible with -p and --GTestSkipCount
1012  - !732 gsocket: Clarify in docs that `flags` arguments can be platform specific
1013  - !766 W32: swap special g_get_prgname() for platform_get_argv0()
1014  - !774 Only build tests if certain conditions are met.
1015  - !780 Add copyright and licensing terms to test report generator
1016  - !781 gnetworkmonitornm: Fix network available detection
1017  - !782 build: Fix check for RTLD_NEXT
1018  - !785 Remove monitor test
1019  - !787 build: Remove */.gitignore files
1020  - !791 glib/gconstructor.h: Include stdlib.h for MSVC builds
1021  - !792 general: Remove a few unhelpful references to ‘master’
1022  - !795 gdesktopappinfo: Add support for MATE and Xfce4 terminals
1023  - !802 gio: tests, don't check for libdl on OpenBSD
1024  - !806 Get to 100% coverage on GQueue tests
1025  - !808 Update the Docker images used for CI
1026  - !809 Modified version of !784 — Adding tests cases for a better coverage of glib/tests/strfuncs.c
1027  - !813 gappinfo: Add precondition checks to GAppLaunchContext env methods
1028  - !814 gschema.dtd: Add target attribute to alias
1029  - !819 Clear signal handler
1030  - !820 ci: Keep JUnit report script working on Debian stable
1031  - !821 Various minor cleanups to autoptrs
1032  - !822 glib: Update Unicode Character Database to version 12.1.0
1033  - !825 Add autoptr support for GRWLock
1034  - !831 build: (Long time after) post-release version bump
1035  - !835 Fix typo in German translation
1036  - !836 Document the best practices for binding GInitiallyUnowned
1037  - !862 build: define G_OS_UNIX, not G_OS_WIN32 under cygwin
1038
1039 * Translation updates:
1040  - Basque
1041  - Catalan
1042  - German
1043  - Indonesian
1044  - Spanish
1045
1046
1047 Overview of changes in GLib 2.61.0
1048 ==================================
1049
1050 * Changes to `iconv` configure options, including the default iconv
1051   implementation on macOS — distributors may need to check their configure
1052   scripts (#1557)
1053
1054 * Build fixes when building GLib with `G_DISABLE_ASSERT` defined (#1708)
1055
1056 * Fix documentation for `gdbus-tool wait` to use correct units (#1737)
1057
1058 * Improvements to symlink handling on Windows (!269)
1059
1060 * Add exception handling for crashes on Windows (!582)
1061
1062 * Set `G_WITH_CYGWIN` again when GLib is built on Cygwin (this was a regression
1063   from the autotools build) (!736)
1064
1065 * Use `GCocoaNotificationBackend` by default on macOS, rather than
1066   `GGtkNotificationBackend` (!745)
1067
1068 * Use Windows symbol visibility when GLib is built on Cygwin, as PE binaries
1069   are subject to W32 visibility mechanics — this affects the definition of
1070   `_GLIB_EXTERN` (!752)
1071
1072 * Add coloured output support to `gdbus introspect` (!761)
1073
1074 * Bugs fixed:
1075  - #682 docs: advise not to use non-literal strings as qdata keys
1076  - #1177 gparted crashes due to g_quark_from_static_string used in global initialization
1077  - #1258 the buffer written to by g_input_stream_read is not marked as an out parameter
1078  - #1557 By default glib tries to use libc instead of native iconv on OSX
1079  - #1566 Meld Windows shows error on startup "There was a problem starting c:\Program"
1080  - #1614 GIO tests fail on FreeBSD CI with: Unexpected error from C library during 'pthread_mutex_lock': Invalid argument
1081  - #1708 Building GLib with G_DISABLE_ASSERT fails
1082  - #1709 GResource generation test incompatible with stable LLVM on Linux
1083  - #1710 Crash in g_cancellable_cancel
1084  - #1712 gdbus-proxy test is flaky
1085  - #1724 unconditional check in fuzzing/meson.build
1086  - #1725 gosxappinfo.h is not installed on macOS
1087  - #1727 Cannot use trash folder with an NFS mount using automount / autofs
1088  - #1728 GSocket does not support ENOTSOCK
1089  - #1732 Win32: lookup_by_name_async segfaults for not available domains
1090  - #1737 gdbus-tool wait command timeout argument incorrect unit reference
1091  - !67 glib: update internal gnulib from upstream
1092  - !269 Win32 symlink code refactoring
1093  - !493 tests: Check that cancelling g_file_replace don't overwrite existing file
1094  - !582 Basic W32 exception handling for glib
1095  - !680 Fix warnings glib
1096  - !690 Fix thread safety issues
1097  - !694 gvariant-parser: Fix pattern coalesce of M and *
1098  - !706 Fix data races in task test and gmenumodel test
1099  - !709 Bump release version for 2.62 series
1100  - !710 socket: Fix annotation for flags in g_socket_receive_message
1101  - !712 gwin32: Fix comment for g_win32_veh_handler
1102  - !716 Various minor documentation fixes
1103  - !717 Improve formatting of GCC attribute documentation
1104  - !718 GSocketClient - Free last error if a connection attempt fails and on retry the...
1105  - !719 Handle an UNKNOWN NetworkManager connectivity as NONE
1106  - !721 codegen: Fix use of uninitialised variable
1107  - !723 Provide examples for GNUC attribute macros
1108  - !724 meson: do a build-time check for strlcpy before attempting runtime check
1109  - !728 gsocket: Remove (type) annotation from flags arguments
1110  - !730 Improve gdbus-address parsing tests
1111  - !735 docs: Use the right g_autoptr function when using an auxiliary function
1112  - !736 Set G_WITH_CYGWIN again
1113  - !737 gresolver: Don’t use gai_strerror() on Windows, as it isn’t threadsafe
1114  - !741 Fix use-after-free triggered by gnome-session-binary
1115  - !745 gcocoanotificationbackend: give more priority than the gtk one
1116  - !749 gio: Add missing autocleanup definition for GSettingsSchema{Key,Source}
1117  - !750 Check for RTLD_NEXT
1118  - !752 Use W32 visibility for Cygwin
1119  - !754 Check for /proc/self/cmdline
1120  - !757 Fix gnulib build on older Visual Studio builds
1121  - !760 Properly ensure the cocoa notification backend type
1122  - !761 RFC: gdbus-tool: Add --color option for introspect
1123  - !762 gutils: Add (nullable) annotation to g_get_prgname()
1124  - !765 gslice: Use a convenience macro
1125  - !769 ci: Generate a cover report for the test suite
1126  - !772 tests: Check that option-argv0 test succeeds on Linux
1127  - !776 tests: Only run --external-data test on GNU ld/objcopy
1128  - !779 Fix 2.62 documentation symbols
1129
1130 * Translation updates:
1131  - Dutch
1132
1133
1134 Overview of changes in GLib 2.60.0
1135 ==================================
1136
1137 * Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1653, #1679, #1693)
1138
1139 * Add support for the XDG trash portal (#1676, !276)
1140
1141 * Bugs fixed:
1142  - #1653 gsocketclient-slow test is flaky
1143  - #1658 keyfile settings backend: Consider tightening permissions
1144  - #1668 Fill in CODE-OWNERS file
1145  - #1675 glib-compile-resources: c_name generation issue
1146  - #1676 Trash portal tries to open files as read-only but D-Bus API documents against that
1147  - #1679 socket-service test is flaky
1148  - #1693 Happy Eyeballs failure in gsocketclient-slow test
1149  - #1697 gthreadresolver: do_lookup_records does res_ninit with an uninitialized state
1150  - #1698 g_base64_encode(NULL, 0) causes critical warnings
1151  - !276 Support the trash portal
1152  - !639 gvariant-parser: Fix error handling when type coalescing fails
1153  - !666 Socket fixes to W32 test suite
1154  - !674 Update gvdb submodule
1155  - !676 Initialize a variable
1156  - !677 gerror: Add a missing precondition assertion in documentation
1157  - !686 gio: Also support modules built with MSVC
1158  - !688 gsocketclient: Fix critical on cancellation
1159  - !689 glib-compile-resources: Fix a minor leak
1160  - !691 gtask: Separate GTask fields memory locations to avoid data races
1161  - !692 glib.supp: Add more variations of existing suppressions
1162  - !696 Move closures refcount test to gobject/tests/
1163  - !698 gthreadedresolver: Remove unused thread pool
1164  - !699 tests: Fix closure-refcount to preserve old semantics
1165  - !702 Rename gobjectenumtypes.[ch] to glib-enumtypes.[ch]
1166  - !703 Clean up gmarshal.[ch]
1167
1168 * Translation updates:
1169  - Catalan
1170  - Czech
1171  - French
1172  - Friulian
1173  - German
1174  - Italian
1175  - Korean
1176  - Romanian
1177  - Serbian
1178
1179
1180 Overview of changes in GLib 2.59.3
1181 ==================================
1182
1183 * Fix support for g_get_user_special_dir() on macOS, including support for the Downloads directory (#1048)
1184
1185 * Ensure that cancelling a GTask cannot cause its callback to be called synchronously (in the same call chain as the original *_async() call) (#1608)
1186
1187 * Further fixes to the Happy Eyeballs (RFC 8305) implementation (#1644, #1680)
1188
1189 * Various fixes for installation of installed tests (thanks to Iain Lane) (!649, !651)
1190
1191 * Various fixes for tests when run on Windows (thanks to LRN) (!665, !667)
1192
1193 * Bugs fixed:
1194  - #535 gmacros: Try to use the standard __func__ first in G_STRFUNC
1195  - #875 gio-gvfs on Windows: Don't mishandle other non-native URIs in gwinhttpvfs.c
1196  - #1048 "Desktop" shortcut appears twice in file chooser sidebar on OSX
1197  - #1608 Cancellation might not be asynchronous under certain circumstances
1198  - #1644 network-address test failure in CI: IPv6 Broken (g-io-error-quark, 24)
1199  - #1680 Regression: g_socket_client_connect_to_host_async() sometimes gets "Connection refused" when connecting to localhost
1200  - #1686 gdbus-peer test is sometimes timing out
1201  - !613 Use win32 io channel on windows for the protocol test
1202  - !634 Win32: gio/gsocket.c: Set WSAEWOULDBLOCK on G_POLLABLE_RETURN_WOULD_BLOCK
1203  - !638 gvariant-parser: Fix parsing of G_MININT* values in GVariant text format
1204  - !640 tests: Tag socket-service test as ‘flaky’
1205  - !641 Minor typo fixes to GSpawn documentation
1206  - !645 gsocketlistener: Fix multiple returns of GTask when accepting sockets
1207  - !647 gsocketclient: Ensure task is always returned on cancel
1208  - !648 gio/tests/task: Run the worker indefinitely until it's cancelled
1209  - !649 gio tests: Install test1.overlay file when building installed tests
1210  - !650 gstring: fully document semantics of @len for g_string_insert_len
1211  - !651 tests: Install the slow-connect-preload.so library and use it
1212  - !667 GSubprocess fixes for W32 test suite
1213  - !668 tests: Mark gdbus-peer test as flaky
1214  - !669 GWin32VolumeMonitor: Sort the volumes correctly
1215  - !670 gpollableoutputstream: Fix the description of the interface
1216  - !672 Fix some tests when running as root
1217
1218 * Translation updates:
1219  - Catalan
1220  - Danish
1221  - French
1222  - Indonesian
1223  - Kazakh
1224  - Portuguese (Brazil)
1225  - Slovenian
1226  - Turkish
1227
1228
1229 Overview of changes in GLib 2.59.2
1230 ==================================
1231
1232 * Fix check on GDBusMessage size when reading it. (#1642)
1233
1234 * Add async GIO API: g_file_query_default_handler_async(), g_app_info_launch_uris_async() (#1249, #1347)
1235
1236 * Fix some bugs in the Happy Eyeballs implementation. (#1646, #1649)
1237
1238 * Install a new generated header with enum types for Unicode enums. (!481)
1239
1240 * Support the XDG trash portal. (!276)
1241
1242 * Bugs fixed:
1243  - #1224 TSAN patches
1244  - #1249 xdg-open/gnome-open doesn't work if service isn't started
1245  - #1347 g_app_info_launch_default_for_uri_async  is not really async
1246  - #1376 gmarkup: Optimize g_markup_escape_text()
1247  - #1642 minor mismatch between error and code in g_dbus_message_bytes_needed
1248  - #1646 Criticals in g_socket_client_enumerator_callback()
1249  - #1649 Critical in g_socket_client_connected_callback
1250  - #1673 G_MININT constants broken in g-i
1251  - !276 Support the trash portal
1252  - !481 Define enum types for Unicode enums
1253  - !585 gio: do not pass O_PATH file descriptors to portal APIs
1254  - !593 Don't fail trash test if ~/.local doesn't exist or mount points can't be determined (master)
1255  - !609 Make `g_app_info_launch_uris_async()` really asynchronous
1256  - !619 gvariant: Fix a mistake in docs
1257  - !622 Fixing warnings
1258  - !626 gdbus: Avoid printing null strings
1259  - !627 gsocketclient: Fix criticals
1260  - !629 Various memory leak cleanups to GSettings tests (subset)
1261  - !630 docs: Ignore more version macros
1262
1263 * Translation updates:
1264  - Galician
1265  - Hungarian
1266  - Lithuanian
1267  - Polish
1268  - Spanish
1269
1270
1271 Overview of changes in GLib 2.59.1
1272 ==================================
1273
1274 * Autotools support is gone. (!580)
1275
1276 * g_format_size() now uses a no-break space to separate digits and units;
1277   translations will need to be updated accordingly. (#1625)
1278
1279 * New g_queue_clear_full() API. (#1464)
1280
1281 * Fix argument quoting on win32 when spawning subprocesses. (!419)
1282
1283 * Allow polling more than 64 handles on win32 using g_poll(). (#1071)
1284
1285 * Tag various tests as ‘flaky’. These are no longer run routinely on our
1286   upstream CI machines, and downstream packagers may want to not run them (or
1287   not treat those test failures as package build failures) on their test
1288   machines either. They are in the `flaky` test suite. (!579)
1289
1290 * Add overlay support to g_resources_get_info(). (#1445)
1291
1292 * Support defaults and locks in the keyfile GSettings backend. This will be
1293   used for flatpaks. (!450)
1294
1295 * Accept unquoted strings in the keyfile GSettings backend to simplify things
1296   for sysadmins. (!603)
1297
1298 * Update our contribution guidelines (`CONTRIBUTING.md`). (!590)
1299
1300 * Add writev() and writev_all() APIs to GOutputStream and GPollableOutputStream,
1301   and provide implementations of them for many subclasses. (#1431)
1302
1303 * Bugs fixed:
1304  - #424 Add 'proxy' debugging support
1305  - #1055 Provide alignment macros
1306  - #1071 Eliminate MAXIMUM_WAIT_OBJECTS limitation in g_poll() on Windows
1307  - #1445 g_resources_get_info doesn't respect resource overlays
1308  - #1464 Add g_queue_clear_full() API
1309  - #1500 GListStore needs double checking on some warnings
1310  - #1623 xdg-open: file with colon results in “The specified location is not supported”
1311  - #1625 Unbreakable space needed when showing size of folder/file
1312  - #1636 GTask getters don’t return TRUE/FALSE after bitfield changes
1313  - #1637 EXCEPTION_ACCESS_VIOLATION in g_clear_pointer
1314  - #1639 GListStore implementation of g_list_model_get_item() returns wrong results on integer overflow
1315  - #1655 gvariant-parser warnings
1316  - #1663 G_MININT32 triggers compiler warning C4146 with Visual C++
1317  - #1666 `G_DEFINE_DYNAMIC_TYPE_EXTENDED` causes warnings with -Wcast-function-type
1318  - !319 giomodule: Print the type of each default GIO module
1319  - !333 Add writev() API to GOutputStream and GPollableOutputStream
1320  - !419 gspawn, win32: qouted args - escape end backslash
1321  - !450 Settings portal
1322  - !512 gtype: Clarify type of GInterfaceInitFunc
1323  - !516 gthread: Add g_private_set_alloc0() convenience API
1324  - !535 win32 gpoll: overcome the 64 handles limit
1325  - !545 goption: Fix an annotation on g_option_context_parse_strv()
1326  - !560 docs: Fix dconf GSETTINGS_BACKEND name in gio overview
1327  - !564 gtype: Document type for iface_default_init() function
1328  - !568 Add separate definitions of g_assert_[non]null() for C++
1329  - !571 docs: Add note on how to check a gboolean condition
1330  - !575 gio: Update bad cert error in accept-certificate and GTlsError docs
1331  - !579 Temporarily disable flaky tests
1332  - !580 Drop autotools support
1333  - !583 gmacros: MSVC supports the noreturn function attribute
1334  - !587 Remove unused .pc.in files
1335  - !588 MSVC: Move dirent implementation to glib/dirent/
1336  - !590 Update contribution documentation
1337  - !591 gfileinfo: Fix annotation for g_file_info_set_attribute_stringv
1338  - !592 Remove leftover build/ directory
1339  - !595 gtestutils: pass open file descriptors to subprocess
1340  - !597 tests: Tag gsocketclient-slow test as ‘flaky’
1341  - !598 gdbus-proxy test fails with GLib-GIO:ERROR:glib/gio/tests/gdbus-proxy.c:832:fail_test: code should not be reached
1342  - !599 gdtlsconnection: do not return on a void method
1343  - !601 gio: Support "help" in extension point env vars
1344  - !602 Update POTFILES.in
1345  - !603 keyfile settings: Accept unquoted strings
1346  - !608 build: Add -Wno-pedantic flag to compiler arguments
1347  - !611 gnetworkaddress: fix use-after-free for network address
1348  - !612 gdir: shutup a warning when building with msvc
1349  - !615 Fix a couple of wrong compiler warnings
1350
1351 * Translation updates:
1352  - Spanish
1353  - Swedish
1354
1355
1356 Overview of changes in GLib 2.59.0
1357 ==================================
1358
1359 * This will be the last development release with autotools support. As our
1360   Meson support has been around since 2.56.x, and was used to release tarballs
1361   in 2.58.x, the next development release (2.59.1) will drop autotools as used
1362   to build GLib. The macros installed for other packages to use will remain.
1363
1364 * Add `G_TEST_OPTION_ISOLATE_DIRS` to redirect `XDG_*_HOME` to a temporary
1365   directory for each unit test. (#538)
1366
1367 * Support `Property.EmitsChangedSignal` annotations in `gdbus-codegen`. (#542)
1368
1369 * Add `g_assert_cmpvariant()` API for unit tests. (#1191)
1370
1371 * Hide bind mounts from GIO mount listings. (#1271)
1372
1373 * Automatically realign data passed to `g_variant_new_from_bytes()` or
1374   `g_variant_new_from_data()` if it is not correctly aligned. This prevents
1375   misaligned accesses on architectures which don’t support them. Callers should
1376   still aim to correctly align data to get higher performance. (#1342)
1377
1378 * Support `ld -b binary` (on platforms which support it; i.e. Linux) to provide
1379   large pre-compiled `GResource` resources with a fast compilation time. (#1489)
1380
1381 * Unconditionally install GLib m4 macros, so that projects which depend on GLib
1382   and which still build using autotools can continue to build even once GLib has
1383   ported entirely to Meson. (#1520)
1384
1385 * Various fixes to the Meson build.
1386
1387 * Drop Python 2 support and require Python 3.4+. See discussion on
1388   https://mail.gnome.org/archives/desktop-devel-list/2018-July/msg00004.html.
1389   (!196)
1390
1391 * `GHashTable` performance and memory improvements for common cases. See
1392   https://hpjansson.org/blag/2018/07/24/a-hash-table-re-hash/. (!208)
1393
1394 * Add flags that allow a `GApplication` to signal and replace a currently
1395   running other instance of the same `GApplication`. This will be used for app
1396   upgrades with flatpak. (!250)
1397
1398 * Autostart xdg-desktop-portal when using the network monitor and proxy monitor
1399   portal backends. (!317)
1400
1401 * Add a g_task_set_name() API to allow `GTask`s to be described; useful for
1402   debugging. (!384)
1403
1404 * Enable FreeBSD CI on every commit for upstream GLib. (!387)
1405
1406 * Various GVariant, GMarkup and GDBus fuzzing fixes, including buffer overflow
1407   fixes. (!411)
1408
1409 * Various fixes to eliminate thread races, found by thread sanitizer (tsan).
1410
1411 * Deprecate TLS/DTLS rehandshaking, as it has been removed from the protocol in
1412   TLS 1.3. (!478)
1413
1414 * Support reading arguments from a file with `glib-mkenums`, which is useful
1415   for long argument lists due to having deeply nested build directories, on
1416   systems with a low limit on the command line length. (!489)
1417
1418 * Make `g_environ_*()` case-insensitive on Windows, as the environment itself
1419   is case-insensitive on Windows. (!500)
1420
1421 * Add Application Layer Protocol Negotiation (ALPN) support to `GTlsConnection`
1422   and `GDtlsConnection`, so that higher layer protocols can be negotiated when
1423   setting up a TLS connection, without additional round trips and latency. This
1424   is needed for eventual HTTP/2 support. (!520)
1425
1426 * Add support for TPM keys in PEM files when loading TLS certificates. (!522)
1427
1428 * Add a `GRecMutexLocker` auto-pointer wrapper for `GRecMutex`. (!528)
1429
1430 * Bugs fixed:
1431  - #107 The "g_key_file_get_comment" interface returns comment with unexpected new line symbol at the end
1432  - #179 g_object_unref assert in debug code
1433  - #277 'destroy_data' in g_cclosure_new is registered as finalize notifier instread invalidate.
1434  - #538 Add helpers to redirect XDG_*_HOME to a temp dir for unit tests
1435  - #542 gdbus-codegen does not honor "Property.EmitsChangedSignal" annotations
1436  - #656 check for -Werror=format-security broken
1437  - #734 Provide a way to instantiate a GDBusProxy-derived class from a GDBusConnection and a object path without blocking
1438  - #827 gmain: Clarify that g_source_set_callback() is safe on attached sources
1439  - #1055 Provide alignment macros
1440  - #1119 GVolumeMonitor: Results don't reflect current state but state when application was launched
1441  - #1191 add g_assert_equal_variants
1442  - #1261 Add option to leave <default> in gschema empty
1443  - #1271 fstab binds appear as mounts (x-gvfs-hide is being ignored)
1444  - #1310 gdbusproxy: make g-name-owner property useful with unique names
1445  - #1313 Meson: Rework the config.h generation
1446  - #1342 Automatically realign data passed to g_variant_new_from_bytes() or g_variant_new_from_data()
1447  - #1343 g_date_set_parse: Parses "September" in Polish incorrectly
1448  - #1362 Incorrect documentation about GSettings child add/remove notifications
1449  - #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
1450  - #1471 Incorporate oss-fuzz fuzz targets into GLib
1451  - #1489 Use `ld -b binary` to speed up GResource generation for linking
1452  - #1498 distcheck fails in distclean
1453  - #1506 error: redefinition of typedef 'GKqueueFileMonitor'
1454  - #1509 test_timeval_to_iso8601_overflow: 'out' should be NULL
1455  - #1513 GIcon regression?
1456  - #1514 gio/appinfo test sometimes fails in CI
1457  - #1518 /network-monitor/create-in-thread fails in (LXC) containers on glib-2-56
1458  - #1520 Change conditions for installing m4 macros
1459  - #1522 Trash not working on NTFS folder accessed from symlink
1460  - #1523 GIO NetworkMonitor doesn't reflect the current network state
1461  - #1525 GTask allows (buggy) application code to cause callback to be called twice, without warning
1462  - #1527 Meson doesn't install data for installed-tests
1463  - #1528 Meson tests are hard to debug in an autobuilder environment
1464  - #1530 tests/mainloop-test appears to be flaky
1465  - #1535 meson: installed-test metadata not run in TAP mode
1466  - #1536 meson: spurious dependencies on convenience libraries in .pc files
1467  - #1537 meson: absolute paths to ${builddir} included in gtk-doc HTML
1468  - #1538 meson: G_HAVE_GROWING_STACK defined differently
1469  - #1539 meson: Some files are unnecessarily installed executable
1470  - #1541 meson: timeloop-closure test not installed
1471  - #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
1472  - #1544 meson: gtester-report #! not replaced with ${PYTHON}
1473  - #1546 Cross-compilation fails in 2.58
1474  - #1556 build: Too long file path issue with meson on Windows
1475  - #1562 GDate test suite fails with latest glibc
1476  - #1570 ghash.c:694:27: left shift of 1 by 31 places cannot be represented in type 'int'
1477  - #1572 Flags validation fails
1478  - #1575 g_date_time_format() should have format attribute
1479  - #1576 Fails to build with Meson on Debian armel (armv5te EABI softfloat little-endian)
1480  - #1580 glib-compile-resources using strings breaks building e.g. GTK+ on MS Visual C, which limits strings to 65535 chars
1481  - #1581 Memory used for reference counted data might be misaligned.
1482  - #1588 Moving a bookmark item to the same URI causes a crash
1483  - #1589 g_log_writer_is_journald memoizes a single result, even though it accepts a parameter
1484  - #1590 tests: g-file-info-filesystem-readonly fails if run more than once with fuse & bindfs installed
1485  - #1594 Return value of g_dbus_connection_get_unique_name not annotated as nullable
1486  - #1600 g_timeout_source_new_seconds overflows when given interval > (G_MAXUINT / 1000)
1487  - #1601 appinfo test fix is defective
1488  - #1605 g_date_time_format fails when used with non ASCII format string on POSIX locale
1489  - #1615 gdbus-codegen not generating nullable annotation
1490  - !196 [RFC] build: Drop Python 2 support and require Python 3.4+
1491  - !200 Add a new GTlsError to indicate protocol downgrade attacks
1492  - !208 GHashTable improvements
1493  - !219 glocalfilemonitor: Fallback to poll file monitor for NFS
1494  - !238 W32 GFileInfo improvements
1495  - !250 Application replace
1496  - !264 glib-compile-resources: encode data as string
1497  - !268 build: simplify alloca checks. See #1313
1498  - !272 dtrace: Add missing const attributes to types in glib_probes.d
1499  - !273 gtlsbackend: add support for setting the default TLS database
1500  - !277 Use "command -v" instead of "which"
1501  - !282 meson: Add macOS libtool versioning for ABI compatibility
1502  - !286 gspawn: Fix build on systems without O_CLOEXEC
1503  - !287 glib-compile-resources: Fix generated code compiling with C++ compilers
1504  - !289 tests: Add more tests to finish branch coverage of GHashTable
1505  - !290 build: fix installation dir of glib-gettextize
1506  - !292 Remove all ChangeLog files
1507  - !293 Document new volume class `loop`
1508  - !294 portal network monitor: Always emit changed signal on changed
1509  - !295 meson: fix typo
1510  - !296 Add G_GNUC_FALLTHROUGH for __attribute__(fallthrough))
1511  - !297 build: Drop AC_C_CONST from configure.ac
1512  - !302 Document that GTimeVal is subject to the year 2038 problem on 32-bit systems
1513  - !303 liststore: Simplify code
1514  - !304 Add more GListStore/GListModel tests
1515  - !309 codegen: Change pointer casting to remove type-punning warnings
1516  - !312 Enable GIO tests on Windows
1517  - !316 gdbus: Improve error when well-known name is unowned
1518  - !317 Autostart xdg-desktop-portal if needed
1519  - !322 gnetworkmonitornm: Set a GError properly on an error handling path
1520  - !332 gmarkup: Make the documentation even more explicit about untrusted input
1521  - !334 gio: automake: Add libgmodule dependency
1522  - !338 gcharset: fix leaking g_get_language_names_with_category
1523  - !339 Add g_desktop_app_info_get_string_list(); fix g_key_file_free()
1524  - !340 tests: Mark two more tests as slow
1525  - !345 Fix build failure on systems without POSIX spawn
1526  - !347 Use Meson 0.48.0 for CI
1527  - !348 Documentation tweaks for g_array_free
1528  - !353 Meson: Do not run tests/refcount with --tap
1529  - !354 Fix spelling mistakes detected by Debian's Lintian tool
1530  - !358 Autotools: Move libmount from Libs.private to Requires.private
1531  - !360 CI: Test static build on installed glib
1532  - !363 Tests: Mark printf wrappers with G_GNUC_PRINTF
1533  - !364 ci: Enable FreeBSD CI
1534  - !366 gunixmounts: Mark mounts as system internal instead of filtering out
1535  - !372 gmacros: Fix G_[UN]LIKELY to not mask -Wparentheses
1536  - !374 gthreadpool: Include prgname in thread name
1537  - !375 m4macros: Allow information from pkg-config to be overridden
1538  - !376 gthread: Clarify priority handling in GRWLock
1539  - !379 Ignore g_return_*if_fail() branches in lcov coverage report
1540  - !381 Add UTF-8 communication tests for GSubprocess
1541  - !384 gtask: Add a g_task_set_name() method
1542  - !387 ci: Enable FreeBSD CI in the official repository
1543  - !396 m4: Fix AM_PATH_GLIB_2_0 macro
1544  - !400 grefcount: add missing gatomic.h
1545  - !403 build-sys: Pass CFLAGS to $(DTRACE)
1546  - !405 ci/msys2: fix path to the lcov config file
1547  - !406 meson: Mark 1bit-emufutex test as slow
1548  - !407 meson: Increase test timeouts
1549  - !410 gfileutils: Add examples to g_path_get_dirname() documentation
1550  - !411 Various GVariant, GMarkup and GDBus fuzzing fixes
1551  - !412 Enable compile time check of g_date_time_format() format
1552  - !413 Add support for g_auto(s)list to G_DECLARE'd types
1553  - !414 gio, tests: ensure objectmanager sources are generated
1554  - !415 gseekable: fix 'attmepting' typo
1555  - !416 gdbus-peer: Make sure to not include objectmanager-gen.c source
1556  - !417 Fix ^*ay handling in g_variant_iter_loop()
1557  - !418 Meson: Cleanup a FIXME now that we have dict addition
1558  - !420 gdbus-codegen: add autocleanup for FooObject
1559  - !422 GMarkup buffer overflow fixes for error handling, round 2
1560  - !423 gutils: Check whether getauxval function exists
1561  - !424 ci: Fix Docker image version
1562  - !425 gdate: Reinitialize using_twodigit_years and locale_era_adjust.
1563  - !435 gdatetime: Fix formatting of time zones offsets in range -01:00 to +00:00
1564  - !436 valgrind: Add glib_init()-related suppressions
1565  - !440 Fix minor memory leaks in tests
1566  - !443 tests: Avoid multithreaded use of g_test_rand_int_range
1567  - !444 gvarianttypeinfo: Consistently use atomics to access ref_count
1568  - !446 gmain: Fix data races in GUnixSignalWatchSource and GChildWatchSource
1569  - !451 closures test: Avoid timeout on ARM64 CPUs
1570  - !452 Atomic reference count in GVariant, ContainerInfo and GDBus introspection
1571  - !453 tests: Fix some data races in tests
1572  - !454 gdbusproxy: make g-name-owner property useful with unique names
1573  - !458 glib-compile-resources: Fix size allocation for compressed streams
1574  - !460 gatomicrefcount: Make g_atomic_ref_count_init non-atomic
1575  - !461 Meson: Fix build error in gdbus-example-objectmanager
1576  - !462 meson: add aarch64 memory barrier handling
1577  - !463 gio, tests: fix leak of dbus connection.
1578  - !467 Update documentation of g_tls_connection_handshake() again
1579  - !469 docs: add index of new symbols for gio > 2.52
1580  - !470 docs: Clarify return/error behaviour of D-Bus signal subscriptions
1581  - !472 gdbusmessage: Gracefully handle message signatures with invalid types
1582  - !477 gthread: Remove unsynchronized access to g_once_init_list from assertion
1583  - !478 Deprecate TLS rehandshaking
1584  - !480 docs: add a missing semicolon
1585  - !482 Check for 'z' library before fallbacking to subproject
1586  - !483 meson: Turn selinux into a meson feature and make it auto by default
1587  - !484 Meson: Add 'nls' option to disable translation
1588  - !485 gdbus-codegen: Tag interfaces and properties so annotated with G_PARAM_DEPRECATED
1589  - !486 Check for zlib header
1590  - !489 glib-mkenums: Support reading @rspfiles for arguments
1591  - !490 gspawn: Fix g_spawn deadlock in a multi-threaded program on Linux
1592  - !491 Meson: Add missing include_directories when using glib as subproject
1593  - !492 g_value_get_variant: return value is transfer-none not transfer-full
1594  - !494 Resolve "Follow-up from "gunixmounts: Stop considering cifs/nfs as system file systems""
1595  - !500 genviron: make g_environ_* case-insensitive on Windows
1596  - !504 tests: Unset LANGUAGE when running gdatetime tests
1597  - !505 Support isolating directories for unit tests
1598  - !508 ci: Install additional locales used during tests
1599  - !510 Add new Linux Testing project version number to configure script
1600  - !511 gvariant: Fix error handling for parsing Unicode escapes
1601  - !514 fix gdbus-codegen --interface-info-{header,body}
1602  - !515 binding: Clarify the use of g_object_unref() to remove a binding
1603  - !517 Meson: Fix deprecation warning with upcoming 0.49.0 release
1604  - !518 Meson: Fix declare_dependency() calls
1605  - !520 GTlsConnection: add ALPN support
1606  - !521 tests: Rename macro to avoid conflict with encoding prefix
1607  - !522 gtlscertificate: Add support for TPM keys in PEM files
1608  - !524 gdatetime: Fix typo in the comment
1609  - !528 Add GRecMutexLocker
1610  - !530 tests: Minor improvements to mkenums.py and taptestrunner.py used by it
1611  - !534 gtlscertificate: Fix bug in PEM private key parser
1612  - !536 Various minor docs fixes
1613  - !541 gtimezone: Fallback to /etc/timezone on Gentoo
1614  - !546 spawn: add shebang line to script
1615  - !547 Do not check for NULL when calling free()
1616  - !549 Improve documentation of g_assert_error()
1617  - !551 Revert "tests: Fix GOptionContext leak in GSubprocess tests"
1618  - !554 Only subscribe to owner-changed signals on message bus connections
1619  - !555 Suppress -Wint-in-bool-context warning with G_DEFINE_INTERFACE and g++
1620
1621 * Translation updates:
1622  - Brazilian Portuguese
1623  - Czech
1624  - Danish
1625  - Greek
1626  - Hungarian
1627  - Lithuanian
1628  - Norwegian bokmål
1629  - Polish
1630  - Slovak
1631  - Slovenian
1632  - Spanish
1633  - Swedish
1634  - Turkish
1635
1636
1637 Overview of changes in GLib 2.58.0
1638 ==================================
1639
1640 * Tarball built with `ninja dist`, so if you want to build this release with
1641   autotools (which is supported), you will need to re-run autogen.sh. This
1642   release, and all micro releases in the 2.58.x series, support being built
1643   with Meson or autotools. See:
1644   https://mail.gnome.org/archives/gtk-devel-list/2018-June/msg00012.html
1645
1646 * Fix cancellation of g_subprocess_communicate_async() calls. See !266.
1647
1648 * Drop support for the __int64 type, which further breaks compilation on old
1649   MSVC versions (before VS2013). See #1313.
1650
1651 * Expose GSettings schema directory in gio-2.0.pc as `schemasdir`. See !274.
1652
1653 * Support v3 of the xdg-desktop-portal network monitor API. See !265, !279.
1654
1655 * Fix G_MODULE_SUFFIX on macOS when GLib is built with Meson — it should be `so`
1656   rather than `dylib`. Projects that use Meson and the `g_module_build_path()`
1657   API such as glib-networking should pass `name_suffix:` to `shared_module()` to
1658   ensure that plugins continue to be called libfoo.so on macOS. See !280.
1659
1660 Bugs fixed:
1661  !280 meson: Always set G_MODULE_SUFFIX to `so` on macOS
1662  !266 subprocess: Fix communicate_cancelled signature
1663  !279 Revert "Add a gnet utility" (see !265)
1664  !265 Network monitor again
1665  !274 gio: Provide schemas directory information in pkg-config file
1666  !239 gvariant: Fix more bounds checking in GVariant text format parser
1667  !195 garray: add overflow checks before expanding array
1668  #1497 g_strdup_printf warns on invalid format specifier with G_GUINT64_FORMAT on Win32
1669  !270 autotools: remove support for the __int64 type. See #1313
1670  !267 ci: Add an autotools job
1671
1672 * Translation updates:
1673  Czech
1674  Galician
1675  Indonesian
1676  Italian
1677  Kazakh
1678  Korean
1679  Turkish
1680
1681
1682 Overview of changes in GLib 2.57.3
1683 ==================================
1684
1685 * G_GNUC_MALLOC’s definition has been tightened up to match an updated
1686   definition from GCC. Many uses of G_GNUC_MALLOC which were previously
1687   appropriate may cause miscompilation with newer GCC versions. Check your uses
1688   of it against the updated documentation. See #1465.
1689
1690 * Many minor documentation fixes.
1691
1692 * Fix for gint64 and int64_t compatibility on macOS and BSD. See #972.
1693
1694 * Fix free space metadata on some file systems (notably FAT). See #328.
1695
1696 * Support installed-tests with our Meson build system. See #1444.
1697
1698 * Forbid @filename@/@basename@ in glib-mkenums templates, which is a change to
1699   its long-standing behaviour (which was long-standing nonsensical). See !241.
1700
1701 * Various stat() fixes on Windows. See #1452, #1476.
1702
1703 * MinGW-w64 ABI warning: In case you build 64 bit glib without LFS support by
1704   passing --disable-largefile (not the default) and use GStatBuf, you need to
1705   rebuild your application as the size of GStatBuf has changed for this case.
1706   See #1476.
1707
1708 * Improve TAP compatibility of g_test_incomplete(). See #1474.
1709
1710 * Change fallback preferences when loading icons. See !72.
1711
1712 Bugs fixed:
1713  !263 build: Clean files left behind after gio/tests/gresource.c test
1714  !262 gmem: Only evaluate pointer argument to g_clear_pointer() once
1715  #1465 Many uses of G_GNUC_MALLOC are incorrect
1716  #1448 g_error does not abort() as documented
1717  #1494 g_clear_pointer may not use the correct calling convention with its callback
1718  #972 Mismatch between gint64 and int64_t on 64-bit macOS/BSD
1719  !251 gtestdbus: Fix watcher crash on FreeBSD
1720  #1492 gcc-8: -Wcast-function-type: new warnings for g_list_copy_deep()
1721  !252 tests: fix gnotification tests broken due to the recent icon name fallback changes
1722  #328 filesystem::{free,size,used} not set for full FAT fs
1723  !248 network monitor portal: update properties initially
1724  #1373 Incorrect transfer annotation for g_binding_unbind.
1725  #1444 the meson build doesn't support installed tests
1726  #1027 Fix trashing on overlayfs
1727  #1454 gvdb does not treat corrupt files as empty as promised; dconf suffers
1728  !243 tests: Explicitly set TZ=UTC for g_time_val_from_iso8601() testing
1729  #1488 ‘O_CLOEXEC’ undeclared (first use in this function)
1730  !241 glib-mkenums: forbid @filename@/@basename@ in fhead and ftail
1731  !240 gtimer: Ensure arithmetic is correctly signed for ISO 8601 parsing
1732  #1452 GFileInfo: unable to retrieve correct modification time of links and mounted volumes on Windows
1733  !234 DOC: Documentation fix in GTask description
1734  #1363 Meson: Review cross compilation properties
1735  !225 gtimer: Add overflow checks to g_time_val_from_iso8601()
1736  !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
1737  !229 Fix up g_bytes_compare() documentation
1738  #1476 g_stat - possbile memory corruption causing SEGFAULT
1739  !199 Update TLS documentation
1740  #1474 g_test_incomplete() makes test_case_run() return FALSE
1741  #1475 glib/tests/atomic.c test_types() trips -Werror=bad-function-cast on Debian armel
1742  #1472 Test for BROKEN_IP_MREQ_SOURCE_STRUCT is broken on Windows / Mingw
1743  !220 date test: Use g_test_skip(), not g_test_incomplete()
1744  #1467 malloc difference causes refstring test to fail on FreeBSD
1745  !230 gbookmarkfile: Fix some more minor leaks when metadata elements are repeated
1746  #1466 Not Able to Build glib 2.57.2 in Mingw-w64 x64 bits
1747  #1433 test_posix_parse: assertion failed (g_time_zone_get_abbreviation (tz, 0) == "UTC"): ("LMT" == "UTC")
1748  #1446 Follow-up from "Document difference between g_assert() and g_assert_*() wrt G_DISABLE_ASSERT"
1749  !206 grefstring: Avoid an unnecessary NUL assignment
1750  #1458 g_volume_get_mount returns NULL value after g_volume_mount_finish is called with no error
1751  !72 gio: icons should fallback to non-preferred style appropriately.
1752
1753 * Translation updates:
1754  Brazilian
1755  Chinese (Taiwan)
1756  French
1757  German
1758  Lithuanian
1759  Polish
1760  Romanian
1761  Turkish
1762
1763
1764 Overview of changes in GLib 2.57.2
1765 ==================================
1766
1767 * Require pcre 8.31
1768 * Require meson 0.47.0
1769
1770 * Bugs fixed:
1771  742456 Add g_steal_pointer() convenience function to mark ownership...
1772  795569 MinGW CI: fix tests
1773  796341 gmem.h: Use typeof() in g_steal_pointer() macro
1774  #1013 Support for per-session overrides
1775  #1360 glib-mkenums breaks if option specified but no nick
1776  #1175 Add names and tags to various GSources and GTasks constructed in GLib
1777  #903 g_main_context_wait() not deprecated in API, but emits a g_critical()...
1778  #786 Fix memory leaks in libgio tests
1779  #927 gio/gresource.c:do_lookup check for terminating "/"
1780  #976 Document difference between g_assert() and g_assert_*()...
1781  #1447 glib 2.57.1: test_month_names: assertion failed...
1782  #1407 Update to Unicode Character Database 11
1783  #1455 glib python tools have full python path in shebang, limits to 128 characters
1784  #1459 Missing g_return_val_if_fail in g_async_queue_timeout_pop
1785
1786 * Translation updates:
1787  Friulian
1788  German
1789  Romanian
1790  Spanish
1791
1792
1793 Overview of changes in GLib 2.57.1
1794 ==================================
1795
1796 * New api:
1797  - g_hash_table_steal_extended
1798  - G_GNUC_NO_INLINE 
1799
1800 * Bug fixes:
1801  668132 Use libmount and expose mount options on GUnixMountEntry type
1802  736741 Update private copy of valgrind.h
1803  748620 g_regex_* utf-8 validity requirements are not stated clearly
1804  784995 meson: some Windows improvements
1805  788771 NODELETE missing when built with meson
1806  788773 meson does not install correct pc files
1807  789968 Add g_autoptr() support for GTypeClass
1808  794325 Various fixes to compile on OSX
1809  795152 gdesktopappinfo: Mark GDesktopAppInfo constructors as nullable.
1810  795165 Add g_date_time_get_timezone() and g_time_zone_get_identifier()
1811  795180 Investigate performance impacts of recent compiler features on hot functions
1812  795302 Add g_hash_table_steal_extended() API
1813  795376 Add g_ptr_array_steal()
1814  795544 Add binary/textfile/zero size detection
1815  795569 MinGW CI: fix tests
1816  795636 gitlab-ci: generate test coverage reports
1817  795735 Fix comparison for GVariant property values
1818  795802 gdbus-codegen doesn't accept --output-directory with --output for --body and --header
1819  795849 gwin32: Fix detection of MinGW32 vs MinGW-w64
1820  795876 meson: Fix checks for posix_memalign and stpcpy
1821  795960 g_format_size_for_display() is deprecated since 2.30
1822  796085 Meson: Many apps breaks on non-glibc because of missing libintl
1823  796138 Fix typo in g_file_info_set_attribute docs
1824  796139 Add g_autoptr() support for GParamSpec
1825  796164 Fix atomic ops check in meson.build
1826  796186 Typo: "instead off" in gsignal.c
1827  796213 Meson: Fail to build on macosx
1828  796220 meson: do not run atomic test with msvc
1829  796264 Add android CI
1830  796325 meson: Add exception for atomic ops test for Android
1831  796328 gengiotypefuncs.py: Read and parse files in binary mode 
1832
1833 * Translation updates:
1834  Czech
1835  Indonesian
1836
1837
1838 Overview of changes in GLib 2.57.0
1839 ==================================
1840
1841 * Bug fixes:
1842  739424 Rewrite kqueue GFileMonitor backend to drop threading
1843  751826 Use g_get_language_names() for other locale categories
1844  788773 meson does not install correct pc files
1845  793400 g_application_id_is_valid() not strict enough
1846  793578 gdatetime tests depend on Japanese translation of month names
1847  793645 test_month_names: Updated translations needed for el_GR, hr_HR, ru_RU
1848  793729 gitlab-ci: Add Windows MinGW support
1849  793994 GUnixVolumeMonitor doesn’t show user mounts when run as root
1850  794170 gdbus: hexdecode() and hexencode() do not return/use decoded/encoded s...
1851  794194 gobject_gdb.py: 'address' is a property of gdb.Value not a function
1852  794207 leak: g_socket_listener_add_inet_port increases ref-count on socket-li...
1853  794284 Support whitespace stripping for JSON resources
1854  794285 glib-compile-resources should not noisily g_printerr() when xmllint is...
1855  794473 Remove duplicated option in gio.xml
1856  794506 glib-mkenums: Enters infinite loop if using typedef enum SomeIdentifier
1857  794528 Fix segfault caused by use-after-free in GPollFileMonitor
1858  794555 glib meson build fails on MinGW due to misdetected functions
1859  794557 gtkdoc-scangobj fails on gio in meson builds
1860  794606 glib-2.56.0 fails to compile when res_nquery is not available
1861  794635 gmacros: Don't define bogus __has_* macros
1862  794636 G_HAVE_GNUC_VISIBILITY is defined in meson MinGW builds
1863  794686 Date (except weekday) displayed in English
1864  794732 Fix various compiler warnings 
1865
1866 * Translation updates
1867  Hungarian
1868  Slowak
1869  Slovenian
1870  Spanish
1871
1872
1873 Overview of changes in GLib 2.56.0
1874 ==================================
1875
1876 * Bugs fixed:
1877  672777 Error in gdummyfile.c
1878  732184 GObject: warn on use of deprecated properties
1879  733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
1880  742124 g_data_input_stream_read_upto()'s documentation should say that the...
1881  749206 GDateTime: month names in the genitive case
1882  768507 simplify qguark functions
1883  791457 Slow transfer rate when writing to smb/cifs
1884  793272 fix GCC 8.0's -Wcast-function-type warnings
1885  793300 g_hash_table_add() return value change in 2.40 not mentioned in docs
1886  793399 Fix some cases of -Wduplicated-branches
1887  793555 -Wimplicit-function-declaration when using g_abort()
1888  793565 GLib does not compile on macOS 10.13 due to .m file naming
1889  793597 gdbus-tool: Make --dest optional for emit again
1890  793635 Enable CI for GLib
1891  793880 gnetworkmonitor: Minor fixes based on code review 
1892  793578 gdatetime tests depend on Japanese translation of month names 
1893  794180 test_month_names fails unless installed
1894
1895 * Translation updates:
1896  Brazilian Portuguese
1897  British English
1898  Catalan
1899  Czech
1900  Danish
1901  Dutch
1902  Finnish
1903  French
1904  Friulian
1905  Galician
1906  German
1907  Hungarian
1908  Indonesian
1909  Italian
1910  Kazakh
1911  Korean
1912  Lithuanian
1913  Polish
1914  Scottish Gaelic
1915  Serbian
1916  Serbian Latin
1917  Spanish
1918  Swedish
1919  Turkish
1920
1921
1922 Overview of changes in GLib 2.55.2
1923 ==================================
1924
1925 * GFile now has API to get the path without copying
1926
1927 * A network monitor implementation for Windows has been added
1928
1929 * Bugs fixed:
1930  520116 g_utf8_strlcpy()
1931  584284 g_data_input_stream_read_until_async behaves confusingly different f...
1932  605700 request for g_key_file_get_locale()
1933  658713 ngettext (plural forms) needed for "Message has %d file descriptors ...
1934  685442 windows GNetworkMonitor implementation
1935  723003 gsettings list-recursively reports some keys multiple times
1936  749583 GSequence performance improvements
1937  757284 Move G_DIR_SEPARATOR* and G_SEARCHPATH_SEPARATOR* into glibconfig.h
1938  760324 [PATCH] gkeyfile.c: find_file_in_data_dirs fails to return the path ...
1939  761102 Increase performance for main loop
1940  767976 GFile: Add g_file_peek_path()
1941  770335 gdbus-codegen: generated getter for 'ao' property is actually (trans...
1942  772989 Totem allows invalid urls that might cause segfault that's irrecover...
1943  790698 convert: test failure on NetBSD
1944  791015 gdbus-codegen: Split generation of header and source
1945  791622 Disable strict-aliasing in GLib
1946  792050 GResolver is not thread-safe
1947  792217 Deprecate GTlsClientConnection:use-ssl3
1948  792338 meson, autotools: figure out if mem barrier is needed for arm64 host...
1949  792351 gbookmarkfile: check length before dereferencing groups
1950  792364 gdbus-threading test method-calls-in-thread: assertion failed (elaps...
1951  792370 GNetworkMonitor: Rename "network-changed" signal argument
1952  792410 GDateTime new_from_iso8601 test broken in 2.55 on i386
1953  792432 flush stdout after logging (debug) messages
1954  792455 Improve docs of GSequence
1955  792499 deadlock on startup with TCP session bus
1956  792516 gconvert: More consistent handling of embedded NUL bytes
1957  792777 g_notification_set_urgent() unconditionally sets G_NOTIFICATION_PRIO...
1958  792780 gbytes should reference toplevel bytes when slicing with g_bytes_new...
1959  792856 off64_t isn't a part of C standard
1960  792862 gpollableoutputstream: document side effects of WOULD_BLOCK on D/TLS
1961  792903 Clarification between g_try_.. functions and their counterparts
1962  793006 High CPU load for GUnixMountsMonitor consumers
1963  793026 possible mem leak in g_mutex_impl_new
1964  793074 g_message() does not get -Wformat warnings when compiling with G_LOG...
1965
1966 * Translation updates:
1967  Hungarian
1968  Indonesian
1969  Polish
1970
1971
1972 Overview of changes in GLib 2.55.1
1973 ==================================
1974
1975 * Build:
1976  - The --enable-rebuilds configure option has been removed
1977  - The --with-charsetalias-dir configure option has been added
1978
1979 * GList and GSList now have autoptr support
1980
1981 * The gsettings list-schemas command has gained a --print-paths option
1982
1983 * Bugs fixed:
1984  346816 Refactor LIBDIR in libcharset Makefile
1985  508976 Does g_slist_sort preserve the order of equal elements?
1986  562334 2.18.2 break libglade on Solaris
1987  662802 systemtap multiarch issue
1988  684282 Add support static link of GIO modules
1989  692034 Install an invalidation notifier for GClosure in g_source_set_closure()
1990  694723 Get rid of REBUILD stuff in configure.ac
1991  697715 floating point precision problem in check test gst/gstvalue
1992  701156 testgobject assumes that the priv data follows the instance data
1993  720380 Segfault when using GDBusMenuModel on a peer-to-peer connection
1994  724383 glib: document restrictions on various foreach() functions
1995  724412 GLib mappedfile.c test uses g_get_user_runtime_dir instead of a tempo...
1996  724794 Fix "on on" typo in tap-driver.sh comment
1997  732003 gnode: Eliminate implicit signed-to-unsigned integer conversion
1998  734479 G_VALUE_HOLDS etc. cause -Wcast-qual warnings for a const GValue *
1999  737677 gmain: Make GSourceCallback thread-safe
2000  741167 gdbus-codegen fix for boxed out parameters
2001  748534 gtest: if a subprocess assertion fails, print its stdout and stderr
2002  749527 add weak pointer helpers similar to g_set_object
2003  749652 compilation errors with gcc 4.8
2004  754634 Update the list of Linux filesystem magic numbers used in get_fs_type
2005  756011 Fix up annotations for GBookmarkFile
2006  761102 Increase performance for main loop
2007  773980 GIR scanner doesn't interpret array type properly
2008  776147 gio/glocalfilemonitor.c doesn't handle case G_FILE_MONITOR_EVENT_MOVE...
2009  776195 -z nodelete configure check does not work on Solaris
2010  777075 Potential leak of memory pointed to by 'list'
2011  779413 Translated X-Geoclue-Reason string not used in a dialog window
2012  780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
2013  780893 Reword licensing header for gdbus-codegen
2014  782057 Unit tests fail in run-assert-msg-test.sh
2015  784995 meson: some Windows improvements
2016  786796 gtk-doc build fails with meson
2017  788806 Impossible to build static glib via meson
2018  788936 Show mime type icons on OS X
2019  790416 g_date_time_format returns empty string on %r with German locale
2020  790588 Generated file missing from .gitignore
2021  790697 g_object_ref API should propagate parameter type
2022  790785 glib-tap: Add missing mkdir for .test generation rule
2023  790829 glib-genmarshal --body must not generate alias implementations
2024  790830 Mismatch between number of interface methods in text and example code
2025  790837 Meson: missing many configure options
2026  790839 GApplication command line: lacks parameter_string, summary and descri...
2027  790877 fix non-portable check in G_GNUC_CHECK_VERSION
2028  790894 Do not connect to the session bus when trying GProxyResolverPortal io...
2029  790896 docs/reference/README has broken link to http://www.gtk.org/rdp/
2030  790914 gdesktopappinfo: Downgrade a warning to a debug message
2031  790934 gtester doesn't handle skipped tests
2032  790948 GSourceFuncs documentation is confusing: when will dispatch be called?
2033  791036 Guard for g_output_stream_vprintf makes no sense
2034  791128 C runtime complains about bad arguments on each g_log() call
2035  791221 po/README.translators has no useful information in 2017
2036  791235 Fix gschema.dtd regarding flags.
2037  791267 Make gschema.dtd usable.
2038  791296 gtester-report: fix range usage when running as python3 app
2039  791318 GBytes: Improve documentation
2040  791325 Gio handling of thumbnail:: attribute namespace causes inconsistent b...
2041  791334 gbinding.c:898: The target object of type GNetworkAddress has no prop...
2042  791337 Crash opening URIs with g_desktop_app_info_launch_uris_with_spawn()
2043  791342 Add autoptr support for lists
2044  791460 meson: fixes for OSX
2045  791532 Implicit declaration of function ‘memcmp’ in gtestutils.h
2046  791622 Disable strict-aliasing in GLib
2047  791720 Criticals in gio/xdp-dbus.h leading to crash under flatpak
2048  791744 gmenumodel test sometimes fails: assertion failed (items_changed_coun...
2049  791745 not immediately clear whether g_test_slow() is in effect by default
2050  791906 GSocketListenerClass.event has wrong signature
2051  792064 gsettings list-schemas --print-paths
2052  792098 Binding: bind_property’s @notify func is nullable
2053  792099 gdbus-test-codegen: Cast to void* to printf "%p"
2054  792129 meson: skip optional linux/unix deps that default to true when buildi...
2055  792322 GLib-GIO:ERROR:gschema-compile.c:51:test_schema: child process (/gsch...
2056  792324 gkeyfile: Document need for KEEP_TRANSLATIONS with get_locale_string()
2057
2058 * Translation updates
2059  Hebrew
2060  Indonesian
2061
2062
2063 Overview of changes in GLib 2.55.0
2064 ==================================
2065
2066 * New API:
2067   - g_clear_handle_id, to simplify removing sources from the default mainloop
2068   - g_file_load_bytes, to make it more convenient to load files into GBytes
2069
2070 * Bugs fixed:
2071  330458 Sample code for the GLib Key-value parser
2072  483341 g_error and friends create warnings when not used in MSVC
2073  569375 g[u]intptr undocumented
2074  573251 documentation for g_seekable_truncate() needs some love
2075  629347 Missing annotations in GFile (was: Perf throws an exception in cur...
2076  630983 [PATCH] Type accuracy for result of strlen() in string utilities.
2077  632953 Clarify documentation of GValueTransform.
2078  636210 Document that pre-unmount is not guaranteed and backend-dependant
2079  656502 type information for GSettings::backend missing from .gir
2080  661442 Nautilus crashes when refreshing home folder after modifying ~/.co...
2081  668035 gtester-report broken with python 2.7.2 and glib 2.30.1
2082  670139 gbytes.c:try_steal_and_unref nit
2083  677233 (transfer full) annotation not correct for g_closure_new_simple re...
2084  679347 glocalfile seems to leak 'fstype'
2085  679467 Mention translation in g_warning() documentation
2086  689323 Variable scoping in gunixmounts.c
2087  691436 glib-mkenums output arch dependent
2088  695681 gsettings bash completion put error messages
2089  705331 AM_PATH_GLIB_2_0 macro fails with -Wstrict-prototypes -Werror
2090  706667 Fix permission denied error when installing from an nfs directory
2091  711809 gdbus-proxy: Fix erroneous timeout during following tests
2092  722256 gslist: Simplified node removal and got rid of some code duplication
2093  723655 Socket source is left in the poll after the socket is closed
2094  723743 g_child_watch_add() doesn't check for non-pids
2095  725014 g_settings_schema_source_ref should check for NULL pointer
2096  727346 docs: Escape some backslashes for markdown
2097  730296 gsignal: Fix a potential NULL pointer dereference
2098  731625 Improve test for darwin printf format-strings
2099  731705 gio/tests/desktop-app-info assumes /bin/true
2100  737278 Clarify relationship of g_application_quit() to hold count
2101  738176 Skip GSpawnChildSetupFunc closures in introspection
2102  740223 source_object for GAsyncResult should be nullable
2103  740791 gio: cannot specify the source when joining a multicast group (IGM...
2104  740826 glib doesn't know fuse filesystems
2105  742548 configure.ac: stay out of autoconf's namespace
2106  742997 Don't skip invalid enum values in schemas
2107  745723 -Wunused-but-set-variable work-around no longer sufficient
2108  749371 Use a GHashTable as a set when possible
2109  751738 Unused-variable warnings in glib/tests/autoptr.c
2110  752239 Missing dependency for python files in build file
2111  752240 Add DTLS support to GIO
2112  753459 GDateTime: Add conversion functions from/to ISO 8601 strings
2113  753521 g_subprocess_launcher_set_environ misses argument annotations
2114  754026 gfileutils: add some sanity checks
2115  756009 'const gchar* const *' gets incorrectly defaulted to utf8
2116  756103 Skip g_base64_decode_step() in introspection
2117  756128 Fix up annotations in gconvert
2118  756430 g_rw_lock_reader_lock() can return without locking, or error
2119  756470 Fix up annotations in gdataset.c
2120  756588 Fix up annotations on data/qdata API of GObject
2121  760022 Memory leak in gvariant-parser.c
2122  760109 [PATCH] Invalid GDate can't be g_boxed_copy()'d
2123  760716 Fix documentation regarding <glib/gprintf.h>
2124  765063 Update annotations for gio
2125  765552 Please set serial in .m4 files to prevent autoreconf failure on up...
2126  767215 GCC version number is interpreted as start of a list in docs for g...
2127  767239 Tautological comparisons in convert tests
2128  769674 some GIO tests' arbitrary timeouts are too short
2129  769846 gmessages: Add timestamp to g_log_writer_format_fields()
2130  770459 Tutorial article is slightly wrong
2131  773355 Incorrect documentation about stopping a signal emission from a hook
2132  774083 spelling mistakes in glib: charater
2133  776562 Add Intel C Compiler support for G_GNUC_BEGIN/END_IGNORE_DEPRECATI...
2134  777308 GModule win32: disable error dialog popup
2135  777310 gio/gasynchelper.c: fix cast from pointer to smaller int type on w...
2136  777956 gmessages: Update advice for G_LOG_DOMAIN
2137  779182 xdg-open fails with gio open for some uris
2138  779501 Type of GIConv given wrongly on web
2139  780202 introspection: Don't expose GValueArray.free
2140  780296 xdg-open/gnome-open doesn't work if service isn't started
2141  781598 gstdio.h should #include what it needs to work
2142  781867 various gvfsd-* wants to look in /boot/efi, causes unnecessary/ina...
2143  783210 build: Switch to sassc for generating style
2144  783270 Improve Visual Studio support for Meson builds
2145  783825 Suggest that asynchronous operations should invoke the callback in...
2146  786737 No g_variant_get() example for dicts
2147  786785 Commit #fe2a9887a8 breaks gdbus-codegen, cannot find its module so...
2148  787271 Make GListModel usable from G-I bindings
2149  787485 g_tls_backend_supports_dtls () returns true when the backend doesn't
2150  787551 Factor out some duplicated code in GParamSpec validation
2151  787581 tests: Add tests for g_slist_copy() and g_slist_copy_deep()
2152  787671 meson: Fix permissions of installed scripts
2153  787731 g_file_query_filesystem_info() wrongly reports "filesystem::readon...
2154  788138 glib-compile-resources: Fix leak of a GHashTable
2155  788180 G_FILE_ATTRIBUTE_ID_FILE is useless on W32
2156  788270 gmodule - failed to load symbol on Android 64bit
2157  788368 Race condition in GDbusObjectManagerClient
2158  788384 gtypes: Fix signedness of __builtin_bswap() usage
2159  788385 gtestutils: Explicitly cast args to g_assertion_message_cmpnum()
2160  788401 PATCH: MacOS build cannot detect content type from content - xdgmi...
2161  788467 Fatal errors and warnings should be reported as TAP
2162  788488 GFile-based API for g_build_filename()
2163  788489 gmain: add g_clear_source API
2164  788561 Document how to integrate GTest into your project
2165  788594 gdbus-tool doesn’t handle non-message-bus connections correctly
2166  788705 Allow building GLib on older Linux platforms
2167  788766 fixed a doc-typo in socket_get_remote_address
2168  788772 meson installs gdb scripts incorrectly
2169  788863 Add more filename type annotations for strings which can contain f...
2170  788880 gunixmounts: Update list of virtual file systems to ignore
2171  788927 Expose better API for detecting ‘system’ mounts
2172  788936 Show mime type icons on OS X
2173  788948 Document Autotools best practices for genmarshal/mkenums
2174  788975 Meson + Visual Studio: Can't find zlib.h with subprojects/zlib
2175  788978 Document XML has a syntax error
2176  788989 Use subdir-objects with Autotools
2177  788990 Include licensing information in output from glib-mkenums, glib-ge...
2178  789087 gint and guint misrepresented as functions
2179  789170 GFormatSizeFlags should have a value for bits
2180  789245 g_settings_bind() not conforming to lifecycle specification
2181  789444 Fix handling of length in g_utf8_make_valid
2182  789637 glib-mkenums: Fails when --ouput file does not exist
2183  789681 meson: Libmount support not built
2184  789723 [PATCH] gdbus-codegen: Call abspath() earlier
2185  789755 g_get_host_name: ensure return value is always UTF8 encoded
2186  789820 GPollFileMonitor is not cleaning up correctly
2187  790015 docs: Various linking and syntax fixes
2188  790030 GResource/GVariant fails to load from non-pointer aligned memory
2189  790093 gio-tool: fix inverted logic in monitor tool
2190  790126 gengiotypefuncs.py is missing from tarballs
2191  790147 build: Drop data-to-c.pl in favour of data-to-c.py
2192  790157 gmessages: Give examples of G_DEBUG with gdb in the documentation
2193  790272 file: add g_file_load_bytes()
2194  790275 avoid temporary string allocations in g_resources_enumerate_children
2195  790310 speedup path canonicalization in GResourceFile
2196
2197 * Translation updates:
2198  Catalan (Valencian)
2199  Czech
2200  German
2201  Nepali
2202  Norwegian bokmål
2203  Slovak
2204  Slovenian
2205  Spanish
2206
2207
2208 Overview of changes in GLib 2.54.0
2209 ==================================
2210
2211 * Bugs fixed:
2212  780861 Crash in GnomeWallClock
2213  786983 Please make the output of gio-querymodules deterministic
2214  787109 Valgrind false positive in ioctl() in btrfs file copy
2215  787123 glib: Slighty update GIOChannel documentation
2216  787146 GMainLoop: match of parameter pair of LOCK_CONTEXT/UNLOCK_CONTEXT
2217
2218 * Translation updates:
2219  Basque
2220  Catalan
2221  Romanian
2222  Swedish
2223
2224
2225 Overview of changes in GLib 2.53.7
2226 ==================================
2227
2228 * Bugs fixed:
2229  736710 remove unnecessary executions of libtool from configure
2230  785260 gio/tests/appmonitor fails if local dir not writeable
2231  786456 g_subprocess_wait[_check]_async() breaks when cancelled...
2232  786555 g_array_free() is not thread safe w.r.t. g_array_unref()
2233  786580 gdesktopappinfo.c: Add Tilix as a fallback terminal
2234  786807 g_uuid_string_random undefined when built with meson
2235
2236 * Translation updates:
2237  Brazilian Portuguese
2238  Catalan
2239  Czech
2240  Danish
2241  Finnish
2242  French
2243  Friulian
2244  German
2245  Italian
2246  Kazakh
2247  Korean
2248  Latvian
2249  Nepali
2250  Polish
2251  Spanish
2252  Turkish
2253
2254
2255 Overview of changes in GLib 2.53.6
2256 ==================================
2257
2258 * Bugs fixed:
2259  766358 glib doesn't respect XDG_* envvars on W32, ever
2260  783270 Improve Visual Studio support for Meson builds
2261  785955 pthread_setname_np misdetected with meson
2262  786060 Sequences documentation does not make it clear...
2263  786360 gobject: add autoptr support for GClosure
2264  786452 crash on Linux without stderr stream
2265  786460 gio-tool: Unify buffer sizes
2266  786462 Use g_output_stream_write_all instead of while
2267  786463 gio-tool-save: Prevent overwriting error
2268
2269 * Translation updates:
2270  Catalan
2271  Galician
2272  Hungarian
2273  Indonesian
2274  Lithuanian
2275  Nepali
2276  Serbian
2277
2278
2279 Overview of changes in GLib 2.53.5
2280 ==================================
2281
2282 * Bugs fixed:
2283  695573 Untranslatable strings in glib-compile-schemas
2284  725950 GApplication: call dbus_unregister only once, and before destruction
2285  731703 giomodule test misbuilds its test modules as libraries
2286  769135 External control for g_test_add/g_test_run
2287  779332 Rewrite mkenums in Python
2288  779607 Race between mounts-changed signal and g_unix_mounts_get() function
2289  784000 Improve strerror_r() detection
2290  784815 Map G_NOTIFICATION_PRIORITY_HIGH to NOTIFY_URGENCY_NORMAL
2291  784965 Use the glib preset for i18n in Meson
2292  784995 meson: some Windows improvements
2293  785113 glib-mkenums Python port fixes
2294  785130 G_LOG_DOMAIN shouldn't be left undefined for applications
2295  785438 Spurious -Wmaybe-uninitialized in gdatetime.c
2296  785468 glib/gpoll: Unnecessary if conditional included in the poll_rest() function
2297  785520 Replace advice to use removed gdk_spawn functions
2298  785577 clobbers errno while setting GError
2299
2300 * Translation updates:
2301  Slovenian
2302  Spanish
2303
2304
2305 Overview of changes in GLib 2.53.4
2306 ==================================
2307
2308 * Unicode support has been updated to Unicode 10.0.0
2309
2310 * glib-genmarshal and glib-mkenums have been rewritten in python.
2311   Every effort has been made to keep compatibility. Please report
2312   problems related to these tools
2313
2314 * GLib can now be built with meson. autotools are still supported
2315
2316 * Bugs fixed:
2317  722047 drop makefile.msc?
2318  733821 g_strerror() uses strerror(3) instead of strerror_r(3)
2319  773842 g_utf8_find_next_char() won't signal the end of a NUL-terminated string
2320  779332 Rewrite mkenums in Python
2321  780095 g_utf8_get_char_validated() stopping at nul byte even for length specified...
2322  780634 Remove remaining old codepage ABI comapt code
2323  783841 test_GDateTime_new_from_timeval_overflow fails on 32 bit systems
2324  784000 Improve strerror_r() detection
2325  784020 GKeyFile – Add array length annotations to to_data(), get_keys() and get_g...
2326  784037 gio: Mention the ALL_METADATA flag in g_file_copy()
2327  784433 gdbus-codegen with variant type parameters result in nested variant
2328  784456 Update to Unicode 10.0.0
2329  784528 Rewrite glib-genmarshal in Python
2330  784579 Calling g_dir_open on Missing Directory When Executable File Path Contains...
2331  784581 docs: Fix cut'n'paste error in g_resources_get_info() doc
2332  784739 Minor typo in configure error message
2333  784792 Just fixing a little typo in comments
2334
2335 * Translation updates:
2336  Hebrew
2337
2338
2339 Overview of changes in GLib 2.53.3
2340 ==================================
2341
2342 * Bugs fixed:
2343  658446 Add translation comment for wrong password notice string
2344  661926 Improve the default logging setup in GLib
2345  674885 type initialisation deadlock in GObject
2346  775593 GIO cannot write symlinks on FreeBSD and NetBSD
2347  776169 Various gio-tool fixes
2348  776333 Fix annotation on g_file_copy_async()
2349  776504 Upgrade license from LGPLv2+ to LGPLv2.1+
2350  777307 race condition between gdbus signal callback and g_bus_unwatch_name...
2351  778422 gsubprocesslauncher: Clarify the behavior of set_environ()
2352  781301 Stack pointer corrupted by incorrect call of NtNotifyChangeMultipleKeys
2353  782336 Add additional documentation of the GResource XML format
2354  782996 build: Use AM_TESTS_ENVIRONMENT rather than TESTS_ENVIRONMENT
2355  783061 GApplication: Remove some unused members
2356  783130 Make dbus activation sandbox-aware
2357  783193 Adapt to OpenURI api change
2358  783201 gdbus-codegen: Apply --output-directory to generated docs as well
2359  783340 win32: port monotonic times to use QPC
2360  783350 length parameter can be NULL g_data_input_stream_read_line
2361  783392 incorrect (out) annotation for g_dbus_interface_info_generate_xml
2362  783593 GGtkNotificationBackend should use /org/freedesktop/DBus to call Ge...
2363
2364 * Translation updates:
2365  Esperanto
2366  German
2367  Indonesian
2368  Kazakh
2369  Spanish
2370
2371
2372 Overview of changes in GLib 2.53.2
2373 ==================================
2374
2375 * A few new number parsing functions have been added:
2376   - g_ascii_string_to_signed
2377   - g_ascii_string_to_unsigned
2378   These have better error handling than the existing ones.
2379
2380 * glib-mkenums now supports /*< private >*/ and /*< public >*/
2381
2382 * GSettings now consider XDG_DATA_HOME in addition to XDG_DATA_DIRS.
2383
2384 * Bugs fixed:
2385  674885 type initialisation deadlock in GObject
2386  698064 Add g_ptr_array_contains()
2387  732000 gdatetime: Remove an unnecessary NULL pointer check
2388  734946 Implement GContentType on OSX
2389  741335 Possible differences in use of XDG_DATA_DIRS versus XDG base directory specification
2390  748263 Use-after-free in g_dbus_connection_call_internal()
2391  776876 gmodule – Various Android bug-fixes
2392  777030 build error where minor() and major() cant be resolved in gio/gdbusmessage.c
2393  780300 gio/gosxappinfo.c uses deprecated LSFindApplicationForInfo
2394  780309 gio/tests/appinfo build fails: gdesktopappinfo.c skipped on OS X
2395  781755 Avoid compiler warnings in generated marshallers code
2396  781826 portal support: Read /.flatpak-info
2397  781830 Fix some typos and errors in GVariant documentation
2398  781847 Use-after-free under send_message_with_reply_cleanup():gdbusconnection.c:1792
2399  781867 various gvfsd-* wants to look in /boot/efi, causes unnecessary/inappropriate auto...
2400  782068 doc: Trivial typo fixes
2401  782075 gtimer: Handle gmtime() failure in g_time_val_to_iso8601()
2402  782089 gdatetime: Fix overflow checks when constructing from timestamps
2403  782162 Support public/private trigraph in glib-mkenums
2404  782237 make check error
2405  782311 inode/directory is treated as a subclass of application/octet-stream
2406  782628 libmount build dependency check not requiring the right version?
2407
2408 * Translation updates:
2409  Hungarian
2410  Indonesian
2411  Spanish
2412
2413
2414 Overview of changes in GLib 2.53.1
2415 ==================================
2416
2417 * The gdbus tool gained a wait command
2418
2419 * g_unix_signal_source_new support SIGWINCH now
2420
2421 * There are now g_enum_to_string and g_flags_to_string functions
2422
2423 * A new function to instantiate objects: g_objet_new_with_properties
2424
2425 * GParameter and related APIs have been deprecated
2426
2427 * Bug fixes
2428  447907 enum/flags from string + type transform + tests
2429  668962 GUnixMountPoint/GUnixMountEntry not usable through gobject-introspection
2430  669355 gdbus-codegen output contains stray semicolons at file scope (forbidden in C99)
2431  674885 type initialisation deadlock in GObject
2432  698064 Add g_ptr_array_contains()
2433  709865 Add boxing to GParameter
2434  725894 build: Include gettext libraries for static compilation on Mac OS X
2435  734946 Implement GContentType on OSX
2436  741229 gio: Handle NULL cached properties in NetworkManager monitor
2437  745971 gdbus-tool: Add a command to wait for a well-known name on the bus
2438  755046 gfileutils: Add precondition checks to g_file_test()
2439  761102 Increase performance for main loop
2440  761889 GDateTime: %p does not always print AM/PM string
2441  766660 Please clarify the extent to which GInitable, GAsyncInitable must be idempotent
2442  769534 g_unix_signal_source_new does not support SIGWINCH
2443  772221 Take advantage of Unicode
2444  775879 g_log_default_handler should not check G_MESSAGES_DEBUG
2445  776169 various gio-tool fixes
2446  777961 Documentation for g_app_info_equals() could be clearer
2447  778049 race in gsource detected by TSan
2448  778207 gio-querymodules: fix memory leak
2449  778287 G_MODULE_EXPORT and -fvisibility=hidden
2450  779409 Fix false positive g_warning() in remove_filter()
2451  780066 g_base64_encode_close() in glib/gbase64.c produces invalid base64 encoding
2452  780095 g_utf8_get_char_validated() stopping at nul byte even for length specified buffers
2453  780306 Unused function in gunicollate.c for CARBON
2454  780310 g_tls_database_verify_chain doesn't set the GError for failures other than cancell...
2455  780384 gio/tests/contenttype fails on OS X: "public.directory" != "public.folder"
2456  780441 Make the portal implementation of g_app_info_launch() synchronous
2457  780634 Remove remaining old codepage ABI comapt code
2458  780908 gobject: remove duplicate GType sanity check
2459  780924 Memory leak in gdbusmethodinvocation.c
2460  781125 gio-tool: Fix errors format string
2461  781234 the buffer written to by g_input_stream_read is not marked as an out parameter
2462  781298 gfileutils.c:330:3: error: ISO C90 forbids mixed declarations and code
2463
2464 * Translation updates
2465  Catalan
2466  Friulian
2467  German
2468  Hebrew
2469  Indonesian
2470  Polish
2471  Russian
2472
2473
2474 Overview of changes in GLib 2.52.0
2475 ==================================
2476
2477 * Bug fixes:
2478  779799 gdatetime test fails with tzdata 2017a
2479  780032 Add missing attributes to two functions
2480  780144 gio/fam: Remove leftover debug print
2481
2482 * Translation updates:
2483  French
2484  Friulian
2485  Latvian
2486
2487
2488 Overview of changes in GLib 2.51.5
2489 ==================================
2490
2491 * OS X implementations of GContentType and GAppInfo
2492   have been added
2493
2494 * Bugs fixed:
2495  673047 gunicollate is broken on OS X (patch included!)
2496  734946 Implement GContentType on OSX
2497  747146 Implement GNotification on OSX
2498  769983 glib-mkenums generates non-reproducible Makefile snippets
2499  777203 gnulib license information is not correct in glib2.0
2500  778515 Crash in the gio kqueue backend
2501  779456 Make g_utf8_make_valid optionally take a length
2502
2503 * Translation updates:
2504  Danish
2505  Friulian
2506  German
2507  Hungarian
2508  Korean
2509  Lithuanian
2510
2511
2512 Overview of changes in GLib 2.51.4
2513 ==================================
2514
2515 * Memory leak fixes
2516 * Fix the released tarball
2517
2518
2519 Overview of changes in GLib 2.51.3
2520 ==================================
2521
2522 * Bugs fixed:
2523  771997 gchecksum: Add SHA-384 support
2524  778422 gsubprocesslauncher: Clarify the behavior of set_environ()
2525  778581 gdbus-codegen: Fix -Wconversion warning
2526  778801 gdbus-codegen: Add --outdir flag
2527  778991 Plug a mem leak in gdbusauth
2528  779183 g_io_extension_point_get_extensions should check for NULL pointer
2529
2530 * Translation updates:
2531  Basque
2532  Chinese (Taiwan)
2533  Danish
2534  Indonesian
2535  Italian
2536  Serbian
2537
2538
2539 Overview of changes in GLib 2.51.2
2540 ==================================
2541
2542 * Minimal support for UUIDs has been added
2543
2544 * A new file attribute, G_FILE_ATTRIBUTE_RECENT_MODIFIED has been added
2545   to improve sorting of recent files
2546
2547 * Bugs fixed:
2548  639078 UUID support feature request
2549  777135 gkeyfile: Be more specific about error codes in documentation
2550  777307 race condition between gdbus signal callback and g_bus_unwatch_name...
2551  777481 goutputstream: docs: fix typos
2552  777493 g_mkdtemp() not introspectable
2553  777507 Recent view sorting incorrectly
2554  777592 Add minor examples to GDBus and GVariant documentation
2555  778002 race in gdbusprivate.c detected by the ThreadSanitizer
2556  778096 race in gdbusconnection reported by TSan
2557
2558 * Translation updates:
2559  Norwegian bokmål
2560  Polish
2561  Simplified Chinese
2562  Slovak
2563  Spanish
2564  Swedish
2565
2566
2567 Overview of changes in GLib 2.51.1
2568 ==================================
2569
2570 * glib-compile-resources grew a --generate-phony-targets flag
2571
2572 * GLib now installs a valgrind suppressions file for GLib and GIO
2573
2574 * Bugs fixed:
2575  666114 should have infrastructure to run its tests under valgrind
2576  729730 GDBusMessage: Fix segfault if DEBUG_SERIALIZER is enabled
2577  730932 statically assert that reasonable assumptions about enums are true
2578  735731 gobject: Document behaviour of GType checking macros on NULL
2579  736810 gdbus: Fix leak in g_dbus_message_print()
2580  762283 GSocket – Fix race conditions on Win32 if multiple threads are waiting on cond...
2581  767609 Test suite problems
2582  767952 g_dbus_method_invocation_return_*, g_dbus_method_invocation_take_error: They d...
2583  769672 Assert threads for testcase 642026 are sucessfully created
2584  769745 gtask: Add guards for public functions
2585  770175 Add command line argument to mkenums and genmarshal to write output to a file
2586  770646 glib: Namespace global tapset variables by soname
2587  772160 Add g_unix_mount_for() support
2588  772989 Totem allows invalid urls that might cause segfault that's irrecoverable
2589  773823 gio: Bump copy buffer size to 256k by default
2590  774086 fix g_main_context_check declaration
2591  774368 Dependency file output of resource scanner breaks Ninja
2592  774421 Two minor patches
2593  774520 GSocket allocates and processes control messages even if not requested
2594  775309 Crash in gdbusauth
2595  775468 Improve log write supports color method on windows
2596  775510 testing with -fsanitize=undefined reports various undefined behaviour
2597  775517 Password input is echoed in the terminal
2598  775621 gmessages: Fix compilation on Android
2599  775765 FDO notification withdrawal backend sends wrong ID to the server
2600  775913 subprocesslauncher: potential infinite loop in verify_disposition()
2601  776198 Stray semicolon after g_variant_print() function in gvariant.c
2602  776586 License headers cleanup
2603  777077 Use of memory after it is freed
2604
2605 * Translation updates:
2606  Brazilian Portuguese
2607  Czech
2608  Galician
2609  German
2610  Hebrew
2611  Kazakh
2612  Lithuanian
2613  Spanish
2614  Swedish
2615
2616
2617 Overview of changes in GLib 2.51.0
2618 ==================================
2619
2620 * glib-genmarshal and glib-mkenums have gained --output options
2621   for better build system integration
2622
2623 * New API: g_utf8_make_valid
2624
2625 * Bugs fixed:
2626  591603 Make _g_utf8_make_valid public
2627  610969 Nice to have g_utf8_make_valid as public
2628  767882 Bit shift overflow (-Wshift-overflow) warning in gparam.h
2629  769135 External control for g_test_add/g_test_run
2630  769630 gfile: G_FILE_MONITOR_WATCH_MOVES was actually introduced in 2.46
2631  772160 Add g_unix_mount_for() support
2632  772221 Take advantage of Unicode
2633  773303 GApplication leaks option_strings 
2634
2635 * Translation updates:
2636  French
2637  Galician
2638  German
2639  Hungarian
2640  Lithuanian
2641  Norwegian bokmål
2642  Occitan
2643  Polish
2644  Slovak
2645  Turkish
2646
2647
2648 Overview of changes in GLib 2.50.1
2649 ==================================
2650
2651 * Update Unicode support to Unicode 9.0.0
2652
2653 * Bugs fixed:
2654  662946 gunixmounts monitoring doesn't work correctly with libmount
2655  771591 Update to Unicode 9.0.0
2656  772054 glib/gspawn-win32-helper.c: unexpected behavior re CommandLineToArgvW()
2657  772255 gresolver: Mark GResolver as an abstract class
2658  772269 Add --version options to glib-compile-resources and glib-compile-schemas
2659  772297 completion: Complete gsettings describe
2660  772511 g_log_default_handler crashes windows apps with "Unspecified fatal err...
2661
2662 * Translation updates:
2663  Brazilian Portuguese
2664  Catalan
2665  Croatian
2666  Czech
2667  Danish
2668  Hungarian
2669  Italian
2670  Latvian
2671  Polish
2672  Swedish
2673
2674
2675 Overview of changes in GLib 2.50.0
2676 ==================================
2677
2678 * Bugs fixed:
2679  771438 Turn on libmount by default on linux
2680         Fix the annotation for g_log_variant
2681
2682 * Translation updates:
2683  British English
2684  French
2685
2686
2687 Overview of changes in GLib 2.49.7
2688 ==================================
2689
2690 * Add g_log_variant, binding-friendly api for structured logging
2691
2692 Bugs fixed:
2693  646926 arg_data invalid after g_option_context_parse() fails
2694
2695 * Translation updates:
2696  Danish
2697  Finnish
2698  Galician
2699  German
2700  Hebrew
2701  Kazakh
2702  Korean
2703  Latvian
2704  Lithuanian
2705  Polish
2706  Portuguese
2707  Serbian
2708  Slovak
2709  Spanish
2710  Swedish
2711  Thai
2712
2713
2714 Overview of changes in GLib 2.49.6
2715 ==================================
2716
2717 * The gsettings commandline tool now has a describe command
2718
2719 Bugs fixed:
2720  745754 Add gcc-style dependency output to glib-compile-resources
2721  769076 Fix warning: attempt to override closure->va_marshal with new marshal
2722  770372 gdbus-codegen: Strip @since parameters before comparison
2723
2724 Translation updates:
2725  Brazilian Portuguese
2726  Czech
2727  German
2728  Hungarian
2729  Polish
2730  Portuguese
2731  Spanish
2732
2733
2734 Overview of changes in GLib 2.49.5
2735 ==================================
2736
2737 * Structured logging:
2738  - drop libsystemd dependency
2739  - document that g_test_expect_message does not work with structured logs
2740
2741 * Use libmount for unix mount support
2742
2743 * Add an async variant of g_app_info_launch_default_for_uri
2744
2745 Bugs fixed:
2746  522053 GUnixMountMonitor needs to use /proc/self/mountinfo on recent Linux
2747  682794 Add usage guidance to logging documentation
2748  744456 Structured logging API
2749  766370 Add a macro for initializing g_auto(GVariantBuilder)
2750  767240 Regex failures with pcre 8.38
2751  768198 Can't build glib with systemtap enabled
2752  768453 Gdbus test: compilation fails due to -Werror=format-y2k errors
2753  768752 Add async variant of g_app_info_launch_default_for_uri
2754  769027 Docs misleadingly imply G_CHECKSUM_SHA512 is available since 2.16
2755  769029 gmessage: compiler complains about -Wformat-nonliteral
2756  769042 'O_CLOEXEC' undeclared (first use in this function)
2757  769087 gmessages: support NULL log domain
2758  769089 Fix gsettings uint64 testcase
2759  769104 Build failure when using _GLIB_CHECKED_ADD_U32 with the Intel compiler
2760  769139 g_log_writer_journald uses non-standard 'htole64' function
2761  769238 memory increases every time I umount and mount my secondary hard disk.
2762  769245 is_valid_heap_iter define misses NULL pointer check
2763  769507 gmessages: Don’t require is_journald() call before writer_journald()
2764  769785 gmessages: Expand documentation further for structured logging
2765  769995 gdbus-codegen: Allow '@since: UNRELEASED' in documentation comments
2766
2767 Translation updates:
2768  Catalan
2769  Hebrew
2770  Lithuanian
2771  Slovak
2772  Spanish
2773
2774
2775 Overview of changes in GLib 2.49.4
2776 ==================================
2777
2778 * Change the just-introduced structured logging API. The arguments
2779   of g_log_structured() had to be reordered to enable an implementation
2780   within the limits of what the standards guarantee about var args.
2781
2782 Bugs fixed:
2783  744456 Structured logging API
2784  768936 gio doc build fails because of missing gio.xml in the tarballs
2785  768963 improper va_list use in g_log_structured()
2786  768968 gio/tests/socket-listener hangs since e4ee307
2787
2788 Translation updates:
2789  Spanish
2790
2791
2792 Overview of changes in GLib 2.49.3
2793 ==================================
2794
2795 * GLib has a structured logging API, g_log_structured, with support
2796   for writing to the systemd journal. It also supports colored output
2797   in terminals
2798
2799 * Some new GBytes API has been added:
2800  - g_key_file_load_from_bytes
2801  - g_compute_hmac_for_bytes
2802
2803 * Stack-allocated GVariantBuilder and GVariantDict objects can now be
2804   initialized with G_VARIANT_BUILDER_INIT and G_VARIANT_DICT_INIT
2805
2806 * gio:
2807  - Add a way to register handlers for custom uri schemes
2808  - Add a G_FILE_ATTRIBUTE_FILESYSTEM_REMOTE attribute to
2809    have these heuristics in a single place
2810  - Include a gio tool that makes the functionality of the
2811    various gvfs commandline tools available in a single place
2812  - Add portal support to g_app_info_launch_default_for_uri
2813  - Add portal support to GNetworkMonitor
2814  - Add portal support to GProxyResolver
2815  - Add portal support to g_application_send_notification
2816
2817 Bugs fixed:
2818  547200 g_utf8_find_next_char() issues
2819  662802 systemtap multiarch issue
2820  723506 fork/exec from non-main thread when autolaunching could be avoided...
2821  725902 build: simplify dtrace configuration
2822  728207 gsocketservice: Documentation does not mention that is already act...
2823  729914 instead of DEBUG_CODE and IF_DEBUG, provide a common macro to supp...
2824  744456 Structured logging API
2825  744678 Unable to delete relocatable schemas
2826  746685 clarify that g_variant_get_data() can be used instead of g_variant...
2827  747134 glib-compile-resources --generate should detect common C++ file ex...
2828  750257 GSettings changed signal should clearly state the order required
2829  753231 Memory is potentially used after free
2830  754012 missing filename in "Error loading css: Failed to import: Error op...
2831  760115 gtestutils: add missing dash in seed argument's --help documentation
2832  760423 gio-querymodules prints error messages as question marks on some l...
2833  761102 Increase performance for main loop
2834  765338 GLib.compute_hmac_for_data throws every time
2835  766370 Add a macro for initializing g_auto(GVariantBuilder)
2836  766899 Superflous HTML/XML comments in GDBusProxyTypeFunc documentation s...
2837  766933 GSocketAddress leaks in gnetworkmonitornetlink.c:read_netlink_mess...
2838  767765 Add names and tags to various GSources and GTasks constructed in GLib
2839  767880 gkeyfile: add g_key_file_load_from_bytes() API
2840  767887 vfs: add g_vfs_register_uri_scheme()
2841  767949 [patch] Typos in glib docs
2842  768029 infinite loop in parse_name_internal()
2843  768119 Fix fallout from get_supported_schemes() changes
2844  768357 Build the gio tool on Windows/MSVC
2845  768498 portal support for glib
2846  768504 keyfile: g_key_file_get_double behavior doesn't follow documentation
2847  768549 Test failure: test_ip_sync_dgram
2848  768551 Test failure: test_socket_address_to_string
2849  768560 gio/tests/gsettings: fix GSettings reference leaks in some tests
2850  768780 O_PATH is a non-standard flag which may be unavailable on non-Lin...
2851  768806 gdbus tool must swallow -- argument
2852
2853 Translation updates:
2854  Chinese (Taiwan)
2855  French
2856  Hebrew
2857  Indonesian
2858  Lithuanian
2859  Portuguese
2860  Spanish
2861
2862
2863 Overview of changes in GLib 2.49.2
2864 ==================================
2865
2866  * GMainContext and GTask have gained more systemtap probes
2867
2868 Bugs fixed:
2869  673101 resource compiler dependency generation not working for gen...
2870  700756 GFile.new_for_path arguments misses (type filename) annotation
2871  730187 glocalfileoutputstream: Fix an FD leak in an error path
2872  755439 Memory leak in gdbusproxy.c
2873  759813 Add more SystemTap/DTrace probes for main context and GTask
2874  761810 gio: Support using GDBusObjectManagerServer at path ‘/’
2875  767172 docs: Move GIO_USE_VFS to "okay for production" section
2876  767218 Remove a UTF-8 ellipsis from gsignal.h
2877  767245 Add filename type annotations
2878  767824 Some UTC timezones incorrectly recognized on Windows 7
2879
2880 Translation updates:
2881  Occitan
2882
2883
2884 Overview of changes in GLib 2.49.1
2885 ==================================
2886
2887  * GDesktopAppInfo now allows bus activation with dashes. This is
2888    not technically allowed per the Desktop Entry specification, but
2889    it happens in the wild. Rather than forcing people to go through
2890    another traumatic desktop file rename, accept it and translate - to _.
2891
2892  * The support for giving names to threads has been improved. Thread names
2893    are now supported on Solaris as well, and the Linux support no longer
2894    uses prctl() but the pthread api.
2895
2896  * GIO resources can now be overridden at runtime, using the G_RESOURCE_OVERLAYS
2897    environment variable.
2898
2899  * gdbus-codegen can now generate autocleanup definitions for the types
2900    it generates. Use the --c-generate-autocleanup option to control this
2901
2902 Bugs fixed:
2903  665446 Use g_abort() instead of abort()
2904  731988 glocalfile: Avoid a potential NULL pointer dereference
2905  742898 g_value_type_transformable() description differs from the code
2906  747107 GVariant varargs documentation: g_variant_get() example
2907  747478 g_system_thread_set_name() is not implemented for gthread-win32
2908  748474 g_get_language_names() is not thread-safe
2909  748530 gthread: W32 implementation of g_get_num_processors() has lame fallback
2910  748806 GVariant: Better introduction to the concepts and its uses
2911  749583 GSequence performance improvements
2912  749606 tests: always remove app.desktop
2913  755898 [PATCH] settings: add get/set uint64
2914  758174 Fix documentation typos
2915  758738 Usage of GType properties causes crashes due to gulong/gpointer mismatch
2916  760186 namespace clash with gdb pretty-printing code
2917  762994 Race condition in GIO/AppFileChooser crashes Firefox/Gtk3
2918  763379 codegen: Add support for g_autoptr to gdbus-codegen–generated objects
2919  763821 build: Also dist Systemtap files always for gobject/
2920  764092 gstrfuncs: Document the behaviour of g_strjoinv()
2921  764163 g_task_had_error doesn't remember the error after g_task_propagate_*
2922  764415 Very High CPU usage in g_poll() Windows implementation
2923  764574 build: Fix all statfs() tests failing
2924  764575 tests: Fix compilation errors due to Y2K format problems
2925  764685 GApplication documentation about handling command-line options is confusing
2926  764754 '-' in application id: unbreak bus activation and notifications
2927  765173 documentation of g_main_context_push_thread_default() regarding GIO...
2928  765668 GResources: add support for resource overlays
2929  765710 gdbus-tool: only print note about expected argument types if that...
2930  765712 tests: Fix compilation
2931  765861 task: avoid context lock when setting source name
2932  765900 Add g_drive_is_removable() support
2933  765924 Improve external drives detection
2934  765959 socket: set fd field to -1 after closing socket
2935  765990 Visual Studio: Define inline only when necessary
2936  765991 Compilation of gresource.c is broken due to S_ISDIR
2937  766092 Incorrect locale handling in g_date_time_format_locale()
2938  766211 Fix the upper bound in g_unichar_iswide_bsearch
2939  766407 Some build-related defects in glib testsuite
2940  766570 build: Fix a misnamed variable in glib-tap.mk
2941
2942 Translation updates:
2943  Basque
2944  Catalan
2945  Chinese
2946  Occitan
2947  Portuguese
2948  Turkish
2949  Vietnamese
2950
2951
2952 Overview of changes in GLib 2.48.0
2953 ==================================
2954
2955  * a minor build fix in the name of determinism
2956
2957  * a few coverity fixes
2958
2959 Bugs fixed:
2960  763617 giotypefuncs.c: Sort _get_type functions in the 'C' locale
2961
2962 Translations updated:
2963  Danish
2964  Italian
2965
2966 Overview of changes in GLib 2.47.92
2967 ===================================
2968
2969  * gdbus-codegen now supports g_autoptr()
2970
2971  * g_get_user_runtime_dir() now reliably returns an existing directory
2972
2973  * g_array_remove_range() can now remove 0 items from the end of an array
2974
2975  * Many fixes for Windows
2976    * build fixes
2977    * file monitoring
2978    * gsettings backend
2979    * streams
2980    * random numbers
2981    * wide character support
2982
2983  * documentation improvements
2984
2985  * other small bugfixes
2986
2987 Bugs fixed:
2988  724847 Segmentation fault on "gsettings list-recursively"
2989  743933 gapplication: add --app-id command line option
2990  756706 [PATCH] gio/gtestdbus.c: don't use non-standard %m printf modifier
2991  757506 gsettings: schema_list should use the passed schema's source
2992  760694 W32: Apps linked with -mwindows make cursor busy sometimes
2993  762202 g_win32_error_message improvements
2994  762637 build: Unconditionally dist tapset files
2995  762748 Undefined behavior
2996  762937 Mention that g_clear_error can be used with an "empty" GError
2997  763339 array: Support clearing an empty array with g_array_remove_range()
2998  763344 g_get_user_runtime_dir(): ensure directory exists
2999  763379 codegen: Add support for g_autoptr to gdbus-codegen–generated objects
3000
3001 Translations updated:
3002  Brazilian Portuguese
3003  Czech
3004  Finnish
3005  French
3006  Galician s
3007  German
3008  Greek
3009  Hebrew
3010  Hungarian
3011  Italian
3012  Kazakh
3013  Korean
3014  Latvian
3015  Lithuanian
3016  Occitan
3017  Polish
3018  Russian
3019  Serbian
3020  Slovak
3021  Slovenian
3022  Spanish
3023  Swedish
3024
3025 Overview of changes in GLib 2.47.6
3026 ==================================
3027
3028 * Windows usupport:
3029  - Fixes and improvements to the GSettings registry backend
3030  - Handle readability and writability of registry keys
3031  - Use Unicode registry APIs
3032
3033 * Bugs fixed:
3034 760852 744772 761126 747927 761337 744570 761504 761550 761843
3035  744570 GString is missing (transfer none) annotations on many of its methods
3036  744772 systemtap and gdb scripts install in wrong place
3037  747927 Documentation: various small improvements
3038  760852 gdbusobjectmanagerserver: Clarify recommended ObjectManager paths
3039  761126 winiconv: update to upstream version
3040  761337 Fix some annotations
3041  761504 W32 registry GSettings backend does not use Unicode
3042  761550 Cannot build with default flags under Fedora rawhide (-Werror=format-...
3043  761843 gmacros.h is testing attributes with __has_feature (when compiling wi...
3044
3045 * Translation updates:
3046  Brazilian Portuguese
3047  Bulagarian
3048  Chinese (Taiwan)
3049  Hungarian
3050  Polish
3051  Slovak
3052  Slovenian
3053  Spanish
3054  Swedish
3055
3056
3057 Overview of changes in GLib 2.47.5
3058 ==================================
3059
3060 * the system copy of PCRE is now used by default to implement GRegex.
3061   Configure with --with-pcre=internal if a system PCRE version
3062   is unavailable or undesired.
3063
3064 * interfaces for DTLS support have been added.  A new version of
3065   glib-networking will also be required.
3066
3067 * GDBusMethodInvocation now drops replies if the sender set the
3068   NO_REPLY_EXPECTED flag
3069
3070 * several GApplication fixes, including fixes for commandline arguments
3071   in interpreted languages on Windows
3072
3073 Bugs fixed:
3074  624186 Deprecate glib-gettext macros
3075  734095 gtk-demo.py of PyGObject fails to run on Windows (and likely other binding scripts using g_application_run())
3076  735754 Implement close on TLS GOutputStream
3077  748064 gnulib vfprintf returns desired (not actual) number of bytes, ignores errors
3078  752240 Add DTLS support to GIO
3079  755421 GDBus ignores NO_REPLY_EXPECTED flag in messages, leading to warnings on system bus
3080  756875 Include ntdef.h for NTSTATUS
3081  759554 g_application_run() calls g_main_context_default() repeatidly
3082  760199 gsettings: Install gettext ITS rules
3083  760215 G_LIKELY/_UNLIKELY macros need more parentheses
3084  760683 regex test: Check the expected PCRE exceptions at runtime
3085
3086 Translations updated:
3087  Brazilian Portuguese
3088  Czech
3089  German
3090  Lithuanian
3091  Swedish
3092
3093 Overview of changes in GLib 2.47.4
3094 ==================================
3095
3096 * The GApplication documentation has been improved in several areas.
3097
3098 * Bugs fixed:
3099  749092 gdb pretty-printers fail on Python 3 with a TypeError...
3100  757374 macros: clean up "inline" mess
3101  758641 Memory leak in g_dbus_proxy_new_for_bus_sync()
3102  759134 Add missing checks for gnulib vasnprintf()
3103  759408 Do not use uninitialized var 
3104  756475 Stop supporting non-POSIX getpwuid_r, getgrgid_r
3105  757372 GApplication: destroy the impl on shutdown
3106  728099 macros: add G_GNUC_CHECK_VERSION() for compiler checks
3107  757299 glib-compile-resources: do not leak c_name
3108  758553 Fix gettext use
3109  758823 file monitors: reorder some code to avoid segfault
3110  756214 gsettings: Don't translate ""
3111  710243 Add GParamSpec object ref management annotations
3112  735696 xdgmime: Finer handling for cases where mmap() is not available
3113  752983 gapplication: Acquire the main context before running
3114
3115 * Translation updates:
3116  Swedish
3117
3118
3119 Overview of changes in GLib 2.47.3
3120 ==================================
3121
3122 The inline cleanup in the last release accidentally removed three
3123 symbols from libglib-2.0.so.  It is unlikely that this will have caused
3124 any problems because these symbols were only backup symbols for
3125 definitions exported as inlines in the header files, but ABI is ABI.
3126
3127 This release corrects only this problem.
3128
3129 Overview of changes in GLib 2.47.2
3130 ==================================
3131
3132 * We have formalised the assumption that all compilers that are
3133   interested in support 'static inline' and simplified the macros around
3134   this considerably.  Please watch for and report unintentional fallout.
3135
3136 * New API: hardware-assisted helpers for overflow-checked integer math.
3137
3138 * other fixes
3139
3140 Bugs fixed:
3141  696324 gtester-report doesn't work with Python 3.x
3142  719966 glib: Add missing (nullable) and (optional) annotations
3143  752837 gobject and glib-compile-resources rely on .CRT$XCU section, no longer works with Win 10 UCRT (VS 2015)
3144  755364 make gtkdoc-check happy again
3145  756134 Segmentation fault on calling g_simple_action_group_add_action with bad action constructor call
3146  756179 gwin32.c: Replace VerifyVersionInfoW() with RtlGetVersion() due to API deprecation
3147  756988 GSequence should document each function's complexity
3148  757294 Move G_POLLFD_FORMAT to glibconfig.h
3149  757374 macros: clean up "inline" mess
3150  757451 doc: fix g_task_attach_source() example
3151  757628 gio tests fail to build when cross compiling 2.46.1
3152  757693 Invalid free in g_local_file_trash()
3153  757742 Fix up annotations in ghash.c
3154  758181 GTask: fix wrong example code
3155
3156 Translations updated:
3157  Greek
3158  Hebrew
3159  Hungarian
3160  Norwegian bokmål
3161  Portuguese
3162  Scottish Gaelic
3163  Simplified Chinese
3164  Spanish
3165
3166 Overview of changes in GLib 2.47.1
3167 ==================================
3168
3169 * The Unicode support has been updated to version 8.0 of the Unicode standard
3170
3171 * GDesktopAppInfo no longer sets the DISPLAY environment variable when
3172   launching apps. This is now done in the GAppLaunchContext implementations
3173   when appropriate
3174
3175 * Bug fixes:
3176  664740 Key-value file parser, space after integer
3177  687223 cleverer GThreadPool management
3178  692085 stderr and stdout are not always file descriptors 1 and 2
3179  697907 Add interface for socket-like things (GSocket, DTLS, etc)
3180  735754 Implement close on TLS GOutputStream
3181  737116 Add functions to print GSocketConnectables and addresses as strings
3182  743011 Minor additions to GError documentation
3183  749161 undefined reference to `__imp__stat32i64'
3184  749314 Cannot restore a just-trashed file
3185  751924 Add recvmmsg()-like API on GSocket
3186  752240 Add DTLS support to GIO
3187  752837 gobject and glib-compile-resources rely on .CRT$XCU section, no longer...
3188  753310 Remove `#pragma GCC system_header` from gmessages.h
3189  753935 Update example namespace and class names in GObject tutorial
3190  754855 Object instantiation documentation refers to example that no longer ex...
3191  754983 Wayland: g_desktop_app_info_launch_uris_with_spawn() forces DISPLAY va...
3192  754994 g_date_time_get_second () sometimes returns an off-by-one result
3193  755083 Clarify in G_ADD_PRIVATE that it is safe to call _get_instance_private...
3194  755351 Example still contains g_autoptr(gchar)
3195  755355 Move GStrv to glib.h so it can be used with g_auto()
3196  755374 g_variant_get_child(): flatten-first logic on '&'
3197  755496 glib 2.46 fails GStreamer test suite
3198  755609 glib 2.46.0 breaks Sun Java JVM 1.8.0.60
3199  755766 gvalue: The g_auto cleanup function assert if value is G_VALUE_INIT
3200  755795 2.46 considers empty files as octet-stream rather than text (leads to...
3201  755961 Fix up annotations in gbytes.c
3202  756053 MSVC doesn't understand the symbol 'msghdr'
3203  756054 MSVC linker error due to 'g_socket_send_message_with_timeout()'
3204  756077 testutils: remove internal ABI comment
3205  756099 g_main_context_query(): Annotate @n_fds as (in) parameter
3206  756139 musl: ctors called in the wrong order
3207  756179 gwin32.c: Replace VerifyVersionInfoW() with RtlGetVersion() due to AP...
3208  756251 The documentation of G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START is confusing
3209  756255 GOutputStream swallowing errors in splice with G_OUTPUT_STREAM_SPLICE...
3210  756316 GSequence should provide fast api to check if empty
3211  756382 snprintf used on Windows with VS2015 doesn't support %n
3212  756477 gio/gthreadedresolver.c has outdated copy of bionic headers (for android)
3213  756550 gtypes.h: Make G_MININTn literals negative
3214  756875 Include ntdef.h for NTSTATUS
3215  756952 giomodule: return a copy of module name
3216
3217 * Translation updates:
3218  Basque
3219  Czech
3220  Serbian
3221  Serbian Latin
3222  Vietnamese
3223
3224
3225 Overview of changes in GLib 2.46.0
3226 ==================================
3227
3228 * Disable runtime-deprecation warnings
3229
3230 * Fix marshalling of flags on bigendian 64bit architectures
3231
3232 * Translation updates
3233  Brazilian Portuguese
3234  Danish
3235  German
3236  Latvian
3237  Russian
3238  Turkish
3239
3240
3241 Overview of changes in GLib 2.45.8
3242 ==================================
3243
3244 * utf8 validation and utf8-to-ucs4 conversion are faster
3245
3246 * Small speedups to property change notification
3247
3248 * Various other small optimizations for GQuark, GData
3249
3250 * Bugs fixed:
3251  696426 GParamSpecTypeInfo do not need to be static
3252  735429 Cleanup MSVC Project Files Generation
3253  738504 Optimize UTF-8 decoding by unrolling branches and expressions
3254  742903 Add missing (transfer) annotation to GString
3255  748633 g_set_object order of operations
3256  754431 Fix build of glib/gstrfuncs.c on Windows
3257  754560 gioerror: Add more mappings for WinSock error codes
3258  754582 Glib cannot compile
3259  754601 Make g_strerror work with non-glibc POSIX systems
3260  754636 tests/unicode-encoding test fails for glib 2.45.7 on x86-64
3261  754788 more g_strerror stuff
3262  754831 autocleanups: Add GString type
3263  754924 Improve test coverage of g_utf8_validate() by added known-...
3264  754986 Avoid unnecessary signal emission during draw
3265
3266 * Translation updates:
3267  Italian
3268  Kazakh
3269  Korean
3270  Lithuanian
3271  Slovenian
3272  Swedish
3273
3274
3275 Overview of changes in GLib 2.45.7
3276 ==================================
3277
3278 * Add G_FILE_ATTRIBUTE_STANDARD_IS_VOLATILE for use by non-POSIX-like
3279   backends (e.g. cloud storage).
3280
3281 * GFileMonitor: Make the inotify backend work with atomic renames again
3282
3283 * GSettings: change notification is again working unconditionally
3284
3285 * GListStore has a sort function now
3286
3287 * Test infrastructure:
3288  - Tests are now required to have unique names
3289  - TAP support has been improved
3290  - A macro for asserting that two memory regions have identical content
3291    has been added
3292
3293 * Bugs fixed:
3294  708525 A "g_file_query_info" on the file path "/sys/kernel/debug/hid"...
3295  742849 inotify: send paired events to both sides
3296  744060 Update GObject tutorial documentation to use G_DECLARE_FINAL_T...
3297  747364 Fix GError leak in g_file_query_writable_namespaces()
3298  749492 Support file creation time on FreeBSD and NetBSD
3299  752769 (g_socket_receive_message | g_socket_send_message) performance
3300  753745 glib-genmarshal still needed for cross-compilation
3301  754152 Add g_list_store_sort
3302  754211 Memory leak in g_file_enumerator_iterate ()
3303  754264 GLib 2.44 certificate chain construction fails if the PEM incl...
3304  754283 gtestutils: add g_assert_cmpmem()
3305  754284 gtestutils: print the TAP test plan first, not last
3306  754286 misc gtestutils fixes
3307  754307 size of array '_GStaticAssertCompileTimeAssertion_3387' is neg...
3308
3309
3310 * Translation updates:
3311  Chinese (Taiwan)
3312  French
3313  Galician
3314  Greek
3315  Hebrew
3316  Hungarian
3317  Indonesian
3318  Polish
3319  Portuguese
3320
3321
3322 Overview of changes in GLib 2.45.6
3323 ==================================
3324
3325 * Fix a test failure and a build failure
3326
3327 Overview of changes in GLib 2.45.5
3328 ==================================
3329
3330 * GNetworkMonitor now provides information about metered networks
3331
3332 * g_mem_set_vtable has been deprecated; it has not been working for
3333   quite a while. The recommendation is to use valgrind, or replace
3334   malloc itself.
3335
3336 * Bugs fixed:
3337  656325 Make GDBusInterfaceVTable binding friendly
3338  741779 Documentation tweaks addressing real-world API misuses
3339  741822 Fails to build with VS 2015
3340  742386 gdbusconnection: Don't g_printerr() when exiting
3341  743018 gobject: Add more cross-links between documentation pages
3342  750282 Add g_network_monitor_get_network_metered() to get if the connection...
3343  751358 GFileMonitor doesn't react to "mv some-file watched-file"
3344  751592 Stop using GMemVtable
3345  751598 Stop 'handle-local-options' propagation when callback reports an err...
3346  751610 g_str_hash produces collisions with strings of length 2
3347  751751 Wrong docs of g_async_queue_remove
3348  752210 gdbus command crashes with SIGSEGV
3349  752656 gdbusconnection: Fix signal subscription documentation
3350  752767 Fix typo in g_hash_table_replace() documentation
3351  753278 gdbus: Don't use g_assert_no_error() GDBusObjectManagerServer
3352  753285 g_menu_item_set_icon fails if called with NULL icon
3353
3354 * Translation updates:
3355  Catalan
3356  Czech
3357  French
3358  Indonesian
3359  Lithuanian
3360  Norwegian bokmål
3361  Slovak
3362  Spanish
3363  Thai
3364  Turkish
3365
3366
3367 Overview of changes in GLib 2.45.4
3368 ==================================
3369
3370 * Bugs fixed:
3371  727829 win32: glibconfig.h.win32 updates
3372  741901 Clang cannot know that g_error don't return
3373  746339 GSocket kills process when fd is not a socket
3374  747676 gio/tests/socket fails: test_fd_roundtrip
3375  748610 Some tests fail with non-English locales
3376  749911 g_inet_address_to_string broken on XP/2003
3377  749912 g_inet_address_new_from_string broken on XP/2003
3378  750625 Should dismiss Software Updates Available notification after...
3379  750807 G_BREAKPOINT doesn't work as intended on Darwin
3380  751160 gtask does unnecessary work
3381  751672 -Wduplicate-decl-specifier in glib/tests/keyfile.c
3382  751731 GFile/DirectoryMonitor emit move events with other_file=NULL
3383  751737 gio/tests/appmonitor test fails in 2.45.3
3384  751798 Wrong enum type used in some test-cases
3385  752089 make gsocketservice::active a property
3386  752293 small cleanup: use list_free_full
3387
3388 * Translation updates:
3389  Greek
3390  Hebrew
3391  Portuguese
3392
3393
3394 Overview of changes in GLib 2.45.3
3395 ==================================
3396
3397 * Improve performance of g_signal_handler_disconnect for signals
3398   with many handlers
3399
3400 * GDBus has gained a new call flag to allow interactive authorization
3401
3402 * GSettings:
3403  - New API: g_settings_schema_list_keys
3404  - Deprecated: g_settings_list_keys
3405
3406 * OS X:
3407  - Implement GNotification
3408  - Bump the OS X requirement to 10.9
3409
3410 * Windows:
3411  - Add registry reading API
3412  - Reimplement GAppInfo using registry information
3413
3414 * Bugs fixed:
3415  666831 Support URI opening on W32
3416  728489 property action with inverted boolean state
3417  730168 Incorrect annotation on g_action_group_get_action_state_type return...
3418  733325 Several regex tests fail with pcre3 8.35
3419  734888 GLib has no helper functions to work with W32 Registry
3420  737009 signal handler lookup doesn't scale
3421  738185 Misleading language about "file name encoding" in the docs on g_env...
3422  738504 Optimize UTF-8 decoding by unrolling branches and expressions
3423  739122 glib not handling -1 return ("no limit") from sysconf (_SC_THREAD_S...
3424  739424 gnome-shell crashes when files are added, deleted, or modified in $...
3425  739616 DBus; Add new call flag to allow interactive authorization
3426  740308 Add g_settings_schema_list_keys() method
3427  740516 RFE: please provide an introspectible version of g_log_set_handler
3428  741788 Document GSettings build system integration
3429  745013 GBinding not thread safe
3430  747146 Implement GNotification on OSX
3431  747941 try XDG_RUNTIME_DIR/bus before falling back to X11 autolaunch (dbus...
3432  748727 Filechooser dialog shows no icons for directories on W32
3433  749693 GActionGroupExporter: flush queue on requests
3434  750203 GNetworkMonitorNetlink hangs in user namespace
3435  750322 gapplication: Make sure --help output is translated
3436  750344 GTlsInteractionClass is missing from doc
3437  750369 Various GBinding cleanups
3438  750386 Race condition in g_io_condition_get_type
3439  750399 Typo "equilalent" in glib documentation's glib-Error-Reporting.html...
3440  750573 GTlsDatabaseClass is not documented
3441  750918 genmarshal: silence register storage class warnings
3442  751122 gsocket: avoid unnecessary g_socket_cond_wait() in _send_messages()
3443  479730 The "g_key_file_set_comment" interface prepends '#' character to...
3444
3445 * Translation updates:
3446  Hungarian
3447  Spanish
3448
3449
3450 Overview of changes in GLib 2.45.2
3451 ==================================
3452
3453 * Improve error reporting in glib-compile-schemas.
3454
3455 * Add introspection annotations to GListStore.
3456
3457 * Bugs fixed:
3458  696749 win32 : failed to compile because of careless mistake in the code
3459  723394 const parameter to GtkPopover gtk_popover_set_pointing_to
3460  724113 gdbus-connection-loss test can fail on slow machines
3461  725981 tap-driver.sh: internal error getting exit status
3462  733325 Several regex tests fail with pcre3 8.35
3463  744895 Unknown or unsupported transport 'this-should-not-be-used-and-will...
3464  747882 gtype: Bump allowed number of children
3465  748534 gtest: if a subprocess assertion fails, print its stdout and stderr
3466  748612 de_DE locale used in option-context test is not supported by FreeBSD
3467  748614 Double unref in g_socket_listener_add_inet_port
3468  748834 glocalfilemonitor: Emit notification on rate limit change
3469  749079 gdbus-peer test: TCP tests can fail with ECONNRESET due to a race...
3470  749080 gdatetime test: fails if close to rollover between seconds
3471  749180 gnetworkaddress: add return type annotation to parse methods
3472  749352 g_binding_unbind() fails when source is also the target
3473  749353 GBinding does not connect to the detailed notify signal
3474
3475 * Translation updates:
3476  Catalan
3477  French
3478  Slovak
3479  Thai
3480
3481
3482 Overview of changes in GLib 2.45.1
3483 ==================================
3484
3485 * The GSettings schema compiler, glib-compile-schemas has been changed
3486   to reject schema xml that has duplicate <summary> or <description>
3487   elements. Such elements typically occur when translations are merged
3488   into the schema, with xml:lang attributes. This is not the correct
3489   way to translate schemas. Instead keep the translations in the .mo
3490   file and set the gettext-domain attribute on the <schemalist> element.
3491
3492 * The file monitoring infrastructure has been rewritten, and all backends
3493   have seen major improvements.
3494
3495   The inotify backend is reporting events with less delay (no event will
3496   be delayed more than 10ms) and wakeups due to file monitoring have been
3497   significantly reduced. A CHANGES_DONE event will also be sent when new
3498   files appear.
3499
3500   The poll implementation is now using the thread default main context.
3501
3502   The fam implmentation is now running in the worker thread.
3503
3504   The fen implementation has been removed, since it was unmaintained.
3505
3506 * The GSettings schema compiler, glib-compile-schemas, is more strict
3507   about rejecting schemas with xml:lang style merged translations.
3508   Schema translations should be done by specifying the gettext domain
3509   in the xml, and keeping the translations in gettext. To avoid breaking
3510   already-installed schemas, this change is only taking effect when
3511   you use the --strict option.
3512
3513 * The hardcoded 10-thread limit of GTask's thread pool has been removed,
3514   since it was prone to causing deadlocks. The thread pool is now allowed
3515   to grow dynamically and will shrink back over time.
3516
3517 * GSimpleAsyncResult has been deprecated in favor of GTask.
3518
3519 * The algorithm used by GAppInfo to find default handlers for mime types
3520   has been tweaked to prefer apps that handle the specific subtype over
3521   default handlers for a generic supertype.
3522
3523 * Bug fixes:
3524  627285 inotify file monitor hardwired delay
3525  631597 Segmentation fault in append_escaped_text
3526  661767 merge/improve various bits of run-in-thread functionality
3527  687223 cleverer GThreadPool management
3528  711547 win32: silence some build warnings
3529  719966 glib: Add missing (nullable) and (optional) annotations
3530  726447 Possibly an error in text string
3531  728663 W32: wrong stat struct is used when built with MinGW-w64
3532  728669 W32: GLocalFile can't measure size of files larger than 2^32...
3533  730188 gsocket: Document FD ownership with g_socket_new_from_fd()
3534  733325 Several regex tests fail with pcre3 8.35
3535  738207 Add a way to set SO_SENDBUF and SO_RECVBUF on listener (and...
3536  739850 GClosure: add valgrind hints
3537  741791 gmain: Save errno when handling unix signals
3538  744282 gvfs-open for application/x-virt-viewer changed behaviour bet...
3539  745255 Add support for copying sessions between GTlsClientConnections
3540  745745 gdbus: fix out-of-bound array access
3541  745821 Don't use __alloc_size__ attribute with clang
3542  746749 GLib-GIO:ERROR:inotify-kernel.c:327:ik_source_dispatch: ass...
3543  746753 Glib-compile-resources --generate-header not using ".h" as ...
3544  747209 glib-compile-schemas ought to reject repeated <summary> and...
3545  747349 Conversion of gdbus to use GTask causes deadlocks
3546  747363 gatomic: Add missing new line in API doc comment
3547  747472 Don't ignore already-installed schemas with multiple <summa...
3548  747541 gdbus segfaults with invalid --dest
3549  747772 Having hardcoded utf8 strings in the source code does not p...
3550  748019 gsocketconnection: Fix copy-pasto in documentation
3551  748177 not all test schemas are distributed, "make distcheck" fails
3552
3553 * Translation updates:
3554  Basque
3555  Czech
3556  Danish
3557  Finnish
3558  German
3559  Hebrew
3560  Icelandic
3561  Norwegian bokmål
3562  Russian
3563  Turkish
3564
3565
3566 Overview of changes in GLib 2.43.92
3567 ===================================
3568
3569 GLib is now considered frozen.  We do not expect any major changes
3570 before the release of 2.44.0.
3571
3572  * GUnixMountMonitor now properly supports multiple main contexts
3573
3574  * many documentation improvements and cleanups.  We are now
3575    approaching a point where the documentation is 100% complete and the
3576    xml will build without warnings.  This will probably be enabled by
3577    default in the next cycle.
3578
3579  * new support for HTTP proxies in GIO
3580
3581  * new GTask:completed property
3582
3583  * use "private" futexes in order to further improve the performance of
3584    the contended case of GMutex and g_bit_lock()
3585
3586 Bugs fixed:
3587  614684 Make various parts of GObject const-correct
3588  730352 Use inet_pton(), if_nametoindex() and if_indextoname() for newer versions of Windows
3589  733876 Proxy protocol 'http' is not supported.
3590  741442 threads: use FUTEX_WAIT_PRIVATE and FUTEX_WAKE_PRIVATE if possible
3591  742599 Clean up GUnixMountMonitor
3592  743636 gtask: Add a GTask:completed property
3593  743661 g_win32_check_windows_version() is missing from doc
3594  744722 docs: Expand introduction to mention using async calls over sync ones
3595  745589 [Patch] gio: add some missing autocleanup
3596  745634 [GNotifications] Use themed icon as icon-name
3597
3598 Translations updated:
3599  Bosnian
3600  Bulgarian
3601  Catalan
3602  Czech
3603  French
3604  German
3605  Greek
3606  Hungarian
3607  Italian
3608  Kazakh
3609  Korean
3610  Latvian
3611  Lithuanian
3612  POTFILESin
3613  Polish
3614  Russian
3615  Serbian
3616  Slovak
3617  Slovenian
3618  Spanish
3619  Swedish
3620  Vietnamese
3621  pa  for Gnome
3622
3623 Overview of changes in GLib 2.43.91
3624 ===================================
3625
3626 We have now added 'g_autofree' as a libgsystem-style autocleanup macro
3627 that calls g_free() on the content of a local variable when it leaves
3628 scope (working only on GCC and clang).
3629
3630 GApplication now has an "is-busy" property, allowing one to query the
3631 effective busy state.
3632
3633 There have been various other bugfixes and cleanups.
3634
3635 Bugs fixed:
3636  661554 GIO's use of GError is wrong
3637  744263 Fix format specifier for __LINE__ in G_OBJECT_WARN_INVALID_PSPEC
3638  744565 gapplication: add bind_busy_property()
3639  744747 Add g_autofree
3640  744756 Can't find out if gapplication is marked as busy
3641  744830 autocleanups: Add GArray and GPtrArray
3642  744876 Unclean exit from from g_application_run
3643  745239 g_property_action_new missing type annotation
3644
3645 Translations updated:
3646  Chinese (Taiwan)
3647  French
3648  Galician
3649  Lithuanian
3650  Slovak
3651
3652 Overview of changes in GLib 2.43.90
3653 ===================================
3654
3655 * new GSimpleIOStream class to construct a GIOStream from an arbitrary
3656   GInputStream and GOutputStream
3657
3658 * GApplication: new API for marking 'busy' state according to the value
3659   of a boolean property on another object
3660
3661 * GOptionGroup: add binding support (boxed type, annotation fixes, etc.)
3662
3663 Bugs fixed:
3664  739724 Test functions should have async scope
3665  741024 glist: Mention that g_list_length() is bad for checking list emptiness
3666  741630 Add GSimpleIOStream class
3667  743349 goption: Add boxed type for GOptionGroup
3668  743990 GDBus connection closing is broken
3669  744565 gapplication: add bind_busy_property()
3670
3671 Translations updated:
3672  Greek
3673  Italian
3674  Norwegian bokmål
3675  Russian
3676  Slovenian
3677  Swedish
3678
3679 Overview of changes in GLib 2.43.4
3680 ==================================
3681
3682 * GType now has type declaration macros G_DECLARE_DERIVABLE_TYPE,
3683   G_DECLARE_FINAL_TYPE and G_DECLARE_INTERFACE, which significantly reduce
3684   the boilerplate needed for GObject types and interfaces.
3685
3686 * g_autoptr and g_auto are macros for declaring variables with automatic
3687   cleanup. They only work with gcc and clang.
3688
3689 * GListModel is a new interface that represents a dynamic list of GObjects.
3690
3691 * GListStore is a GSequence-based implementation of GListModel.
3692
3693 * Support thread names on OS X
3694
3695 * g_simple_action_set_state_hint: New function to set the state hint
3696   of GSimpleActions
3697
3698 * g_win32_check_windows_version: New function to check Windows version
3699
3700 * g_settings_schema_list_children and g_settings_schema_key_get_name
3701   are new functions to complete the GSettingsSchema API.
3702
3703 * Bugs fixed:
3704  389585 G_DEFINE_TYPE hack for header files
3705  729351 Add GListModel
3706  736914 Docs: various fixes and improvements
3707  741807 Add thread name support on OS X and iOS
3708  741895 gwin32: Add Simple API to check whether we are on at least a v...
3709  742456 object: Add g_steal_pointer() convenience function to mark own...
3710  743508 polkitd fails to start: patch for gio/gcredentialsprivate.h
3711  743517 GSettings API is missing some introspection functions
3712  743521 GSimpleAction: add g_simple_action_set_state_hint
3713  743596 G_DECLARE_DERIVABLE_TYPE() should allow additional typedef for...
3714  743640 add __attribute__((cleanup)) support
3715  743827 Fix build of GListModel (on Visual Studio)
3716  743927 GListStore: add sorted insert function
3717  743936 glib: handle unsigned modifier for long long in internal printf
3718  744012 Add GMutexLocker
3719  744190 Fix build on Compilers That Do Not Use inline for Plain C Code
3720
3721
3722 Overview of changes in GLib 2.43.3
3723 ==================================
3724
3725 * add g_set_object() convenience function
3726
3727 * GNetworkMonitor: check if NM is not running and don't crash
3728
3729 * fix some races with g_mkdir_with_parents
3730
3731 * fix some warnings in MSVC
3732
3733 * avoid use of G_STRLOC in G_OBJECT_WARN_INVALID_PSPEC in order to save
3734   on static strings
3735
3736 * fix some content type vs. mime issues
3737
3738 * documentation improvements
3739
3740 * Bugs fixed:
3741  719455  g_file_make_directory_with_parents() can erroneously throw G_IO_ERROR_EXISTS
3742  732439  GSocket: avoid unnecessary g_socket_wait_condition() for blocking sockets
3743  734946  Implement GContentType on OSX
3744  741589  gobject: Add g_set_object() convenience function to set GObject pointers
3745  741653  gnetworkmonitornm: Check if network-manager is running
3746  741654  [patch] gobject: don't use G_STRLOC in G_OBJECT_WARN_INVALID_PSPEC() macro
3747  741707  Gsocket blocks trying to send data
3748  741788  Document GSettings build system integration
3749  742548  configure.ac: stay out of autoconf's namespace
3750  742851  avoid MSVC warnings in G_STMT_END
3751  742972  ggettext: Include an example of setlocale() and friends in the i18n docs
3752  743014  gtestutils: Add an example of using test fixtures 
3753
3754 * Translations updated:
3755  Basque
3756  Brazilian Portuguese
3757  Spanish
3758
3759 Overview of changes in GLib 2.43.2
3760 ==================================
3761
3762 * New function: g_strv_contains
3763
3764 * New function: g_network_address_new_loopback
3765
3766 * New function: g_socket_send_messages
3767
3768 * A new GNetworkMonitor implementation using NetworkManager provides
3769   more detailed connectivity information
3770
3771 * Bugs fixed:
3772   11059 Linux poll issue
3773  664562 captive wifi portal support for GNetworkMonitor
3774  685880 Add g_strv_contains()
3775  712570 Hang in g_threaded_socket_service_func
3776  719646 GSocket: add g_socket_send_messages() to send multiple messages...
3777  728928 Provide separate error code for "Connection reset by peer"
3778  732317 Support GSocketConnectable for loopback addresses
3779  740814 "make check" should ensure that every symbol is documented
3780  740848 Backend subscription fails when connecting to a signal with a d...
3781  741016 gio: add G_IO_ERROR_NOT_CONNECTED
3782  741226 keyfile: Add "in group" to GError message consistently
3783
3784 * Translation updates:
3785  Gujarati
3786  Hebrew
3787  Hungarian
3788  Kannada
3789  Turkish
3790  Vietnamese
3791
3792
3793 Overview of changes in GLib 2.43.1
3794 ==================================
3795
3796 * GQueue now accepts NULL as a sibling in g_queue_insert_before() and
3797   g_queue_insert_after()
3798
3799 * Bugs fixed:
3800   11059 Linux poll issue
3801  726037 Add G_PARAM_READWRITE value to the GParamFlags enumeration
3802  727988 GMemoryOutputStream hangs when writing more than 1GiB
3803  729739 tlscertificate: add support for loading certificate chains
3804  733791 GSettings: delay backend subscription
3805  736286 Clarify g_file_replace behavior with etags
3806  736620 GQueue: accept NULL sibling for insert_before() and insert_after()
3807  737150 GLib-GIO-WARNING **: Failed to parse translated string 'visible-name...
3808  737160 unhelpful error message
3809  738259 GDBusInterfaceVTable: clarify memory handling for the method() virt...
3810  738551 'interface' variable conflicts with Windows defines
3811  738633 Need to disable SSLv3 in glib-networking
3812  740157 <app> --help doesn't work even when options were added
3813  740309 Fix docs in g_strfreev
3814  740413 Fix the GSettings Registry Backend 
3815
3816 * Translation updates:
3817  Norwegian bokmål
3818
3819
3820 Overview of changes in GLib 2.43.0
3821 ==================================
3822
3823 * GObject gained a debug option to provide instance counts. To use it,
3824   set GOBJECT_DEBUG=instance-count and call g_type_get_instance_count().
3825
3826 * GOption now has a strict POSIX mode in which it stops parsing arguments
3827   as soon as a non-option argument is encountered.
3828
3829 * Bugs fixed:
3830  354457 Feature Proposal: Per-Type Statistics for Instantiable GTypes
3831  695082 g_hash_table_remove_all is not save against a call to g_hash_table_remove
3832  723160 GOption: add strict posix mode
3833  728256 gcredentials: add NetBSD support
3834  729739 tlscertificate: add support for loading certificate chains
3835  733338 Don't segfault in GNetworkMonitor when IPv6 support is unavailable
3836  736273 gdesktopappinfo: Use symbolic names in the code
3837  736284 Keep only one list of signal emissions
3838  736806 gtask: Fix reference count loop causing leaks
3839  736914 Docs: various fixes and improvements
3840  737143 Include <stdint.h> in glib/valgrind.h
3841  737259 gcancellable: Clarify that GSources hold references to GCancellables
3842  737338 gmain: Unref child sources when finalising a GSource
3843  737446 tests: Fix some minor leaks in the unit tests
3844  737451 Provide api to read_all_async
3845  737741 g_datalist_id_get_data assertion fails for non-existant keys
3846  737869 GApplication command line handling breaks --help
3847  738170 g_byte_array_new_take() doesn't initialize array->alloc
3848  738197 g_cond_timed_wait() doesn't time out on Mac OS X
3849  738374 gfile: g_file_equal (x, x) is TRUE
3850  738675 GSubprocessLauncher is missing some data on the docs 
3851
3852 * Translation updates:
3853  Bengali (India)
3854  Bulgarian
3855  Gujarati
3856  Italian
3857  Telugu
3858
3859
3860 Overview of changes in GLib 2.42.0
3861 ===================================
3862
3863 All changes in this release are trivial in nature.
3864
3865  - introspection warning fixes
3866
3867  - g_application_add_main_option now uses an enum instead of an 'int'
3868    for the type of a parameter
3869
3870  - added a G_OPTION_FLAG_NONE so that people don't need to use 0
3871
3872  - gresource: Use GError in more places
3873
3874  - gresource commandline tool: improve extraction from multiple sections
3875
3876  - GSource now takes the context lock (if any) in g_source_set_name()
3877
3878  - new documentation to clarify the use of some APIs related to
3879    GVariant, GSource, GApplication
3880
3881  - other minor updates to docs
3882
3883 * Bugs fixed
3884  736683 Thread safety issues with g_main_context_find_source_by_id
3885  736975 [patch] please document that GVariant serialization needs an
3886         out-of-band length field
3887
3888 * Translation updates
3889  Danish
3890  Hindi
3891  Marathi
3892  Punjabi
3893  Serbian
3894  Simplified Chinese
3895
3896 Overview of changes in GLib 2.41.5
3897 ==================================
3898
3899 * Bug fixes:
3900  735819 single native credential struct used for two purposes
3901  735915 glib-building.html uses --enable-gcov instead of --enable-coverage
3902  736350 GDesktopAppInfo: avoid polling on missing desktop dirs
3903  736351 Don't use issetugid() on Android
3904         Fix the default application logic in GDesktopAppInfo
3905  736458 Only use rand_s() when targetting Visual Studio >= 2005
3906
3907 * Translation updates
3908  Galician
3909  Hungarian
3910  Indonesian
3911  Kannada
3912  Latvian
3913  Polish
3914  Russian
3915  Slovenian
3916  Tamil
3917
3918
3919 Overview of changes in GLib 2.41.4
3920 ==================================
3921
3922 * GApplication now has binding-friendly API to handle
3923   commandline options: g_application_add_main_option
3924
3925 * G_GNUC_BEGIN_IGNORE_DEPRECATIONS works with clang
3926
3927 * Bugs fixed:
3928  583330 poll list of mounted file systems (no mtab support)
3929  727455 Command line option parsing from bindings
3930  734126 add G_GNUC_BEGIN_IGNORE_DEPRECATIONS macro for clang
3931  735179 gsocketclient: Handle cancellation between CONNECTING...
3932  735297 Docs claim that GThread struct is deprecated 
3933
3934 * Translation updates:
3935   Assamese
3936   Catalan
3937   Catalan (Valencian)
3938   Czech
3939   French
3940   German
3941   Greek
3942   Hebrew
3943   Korean
3944   Oriya
3945   Traditional Chinese
3946
3947
3948 Overview of changes in GLib 2.41.3
3949 ==================================
3950
3951 * g_clear_pointer and g_clear_object no longer use atomics
3952
3953 * Bugs fixed:
3954  711547 win32: silence some build warnings
3955  725511 Compiled resource files should have the same /-separators everywhere
3956  725513 Some tests fail to build on W32
3957  725514 W32: gfileutils does not preserve errno correctly
3958  725515 test-printf fails on W32
3959  728730 gsocket: Set SO_NOSIGPIPE on sockets on Darwin
3960  729703 Leaks a GError in g_file_move
3961  730932 statically assert that reasonable assumptions about enums are true
3962  732085 gtype: Fast-path for g_type_is_a
3963  732754 GDBusMessage: optimise (de)serialisation of fixed arrays
3964  733345 ginetaddress: Add a precondition to g_inet_address_new_from_string()
3965  733576 Patches from static analysis run on 2.40
3966  733715 glib's configure.ac makes accidentally use of nested function
3967  733934 win32: improve the package installation dir lookup
3968  733960 W32: spawning a console process creates a new window when stdout...
3969  733969 Remove atomic aspects of g_clear_pointer/object
3970  733982 Do not crash when checking whether an instance type is of a given...
3971  734035 gedit hangs up when there's no GSettings key in the registry 
3972
3973 * Translation updates:
3974  Basque
3975  Brazilian Portuguese
3976  Lithuanian
3977  Slovenian
3978  Spanish
3979
3980
3981 Overview of changes in GLib 2.41.2
3982 ==================================
3983
3984 * The Unicode support has been updated to version 7.0
3985   of the Unicode standard
3986
3987 * GNotification now supports priorities for notifications
3988
3989 * GCredentials has gained NetBSD support
3990
3991 * GMutex now uses a faster, native implementation on Linux
3992
3993 * Bugs fixed:
3994  699132 Pluggable event loop backends
3995  720708 g_assert_warning(): number of arguments doesn't match for...
3996  722092 Add GtkApplication resources support
3997  724986 Change gio/data-to-c.pl to /usr/bin/env perl.
3998  727974 Fix up failure-to-see-expected-message logging
3999  728256 gcredentials: add NetBSD support
4000  728401 GDateTime: Add guards to g_date_time_new()
4001  729825 Formatting of g_alloca documentation
4002  729914 instead of DEBUG_CODE and IF_DEBUG, provide a common macro...
4003  730293 clang++-3.4: error: 'register' storage class specifier is ...
4004  731339 giochannel: avoid setting uninitialised length
4005  731424 #ifdef spaghetti for load_user_special_dirs() implementations
4006  731623 GNotification: add support for a priority setting
4007  731929 update tables to unicode 7.0.0
4008  731950 gvalue: New g_value_from_instance
4009  731986 GLib: implement GMutex natively on Linux
4010  732184 GObject: warn on use of deprecated properties
4011  732357 Docs: various fixes and improvements
4012  732429 GActionEntry: improve documentation
4013  732465 Fix build on x64 Visual C++ builds
4014  732704 Docs: various fixes and improvements
4015  732739 ginetsocketaddress: Explicitly initialise flags for getaddr...
4016  732754 GDBusMessage: optimise (de)serialisation of fixed arrays
4017  732984 g_object_ref(NULL) in g_dbus_object_manager_client_finalize
4018  733084 Typos in g_bytes_hash() and g_time_zone_find_interval() docs
4019  733146 spawn helper does not use correctly the parameters 
4020
4021 * Translation updates:
4022  Lithuanian
4023
4024
4025 Overview of changes in GLib 2.41.1
4026 ==================================
4027
4028 * Bug fixes:
4029  697229 Custom Interface implementations will be broken with glib 2.37/38
4030  698614 GObject: prevent installing properties after init
4031  729269 gvariant: Fix confusion between type and format strings in the docs
4032  730198 broken valgrind.h leads to crashes in g_type_free_instance on mingw64
4033  730807 GMutex performance regression
4034  730963 gconvert: mention that the g_convert len should be in bytes
4035  730984 Faster instance type check for fundamentals
4036  731050 <structname> tags appear in documentation
4037  731200 unconditional 'notify' during g_object_set() is problematic
4038  731335 gtype: guard uses of new fundamental type check
4039  731341 gparam: change value of G_PARAM_EXPLICIT_NOTIFY
4040  731366 run-assert-msg-test.sh gdb leaves assert-msg-test zombie
4041  731425 giomodule protects function-call with different token than function...
4042  731513 clang: build failure: implicit declaration of function '__atomic_load_4'
4043  731584 gbookmarkfile: Cleaner error handling code to pacify static analysis
4044  731657 Prevent an invalid @CARBON_LIBS@ from appearing in the .pc files
4045  731979 docs: Correct param to interface's default_init()
4046  731996 Return folder as icon for directories
4047  732002 gwakeup: Clarify buffer sizing in g_wakeup_signal()
4048  732005 Remove unused assignments
4049  732019 gtestdbus: Don’t close stdout for dbus-daemon
4050  732068 gsignal: Add an example to the g_signal_connect_swapped() documentation
4051  732081 gsocket: Document that g_socket_create_source() holds a socket ref
4052  732107 gsocketlistener: Reconsider closing sockets on listener finalisation
4053
4054
4055 Overview of changes in GLib 2.41.0
4056 ===================================
4057
4058 * Many bugfixes found by static analysis, including potential fd leaks
4059   and NULL pointer dereferences.
4060
4061 * Increased use of (nullable) attribute on out values and return types
4062   now that it is supported (mostly from porting Vala metadata).
4063
4064 * use XDG_CURRENT_DESKTOP for OnlyShowIn/NotShowIn handling of desktop
4065   files, deprecating g_desktop_app_info_set_desktop_env()
4066
4067 * add support for g_desktop_app_info_get_implementations() to find
4068   desktop files that have an Implements= line for a given interface
4069
4070 * GHmac has gained SHA-512 support
4071
4072 * support the new mimeapps specification (most notably, moving the
4073   assoications/defaults configuration to ~/.config/mimeapps.list).
4074
4075 * libgobject is now linked -Wl,-z,nodelete when possible to avoid errors
4076   when gobject is used from a module for a program that does not itself
4077   use gobject and that module is unloaded/reloaded
4078
4079 * ... and many other bug fixes.
4080
4081  623552 glib warns if backtrace.py is not present
4082  667468 glib-2.30.2: ipv6 tests fail when no ipv6 support is available
4083  668152 -framework Carbon linker flag not passed to pkg-config .pc files
4084  707298 libgobject should be linked with -Wl,-z,nodelete
4085  712391 Add g_desktop_app_info_get_implementors()
4086  722723 Infinite recursion when calling g_io_stream_close_async() from libsoup
4087  724741 hmac: Fix support for SHA-512 in GHmac
4088  726040 networkaddress: fix parsing of uri with @ after authority
4089  726318 gio: Document that GSocket is not thread safe
4090  726611 socketclient: Leak on cancellation
4091  726872 gio: Add names to idles and timeouts
4092  727119 wrong IN6_IS_ADDR_MC_LINKLOCAL usage break android build
4093  727123 GNotification: Some small documentation fixes
4094  727320 docs: Remove escaping '\' from literals
4095  727551 Check use_count of GApplication in g_application_release()
4096  727559 g_file_copy: Don't set GError when we intend to ignore errors
4097  727692 gio/gtlscertificate.c -- broken PEM-file processing (affects local CA root stores, for starters)
4098  727890 soup_content_sniffer_real_sniff segfault
4099  727900 gio: Add newer dbus UnknownXxxx and PropertyReadOnly errors
4100  727928 gapplication-tool fixes
4101  727939 INTLLIBS are always appended in configure checks
4102  727964 g_io_extension_point_get_extension_by_name: Warn, but don't crash, for NULL inputs
4103  728040 Implement new mimeapps spec
4104  728066 Deal with startup notify id being NULL
4105  728280 platform_get_argv0: fix sysctl(3) use on OpenBSD
4106  728285 docs: Use markdown links in .h files, too
4107  728350 gaction: Minor clarifications in the GAction documentation
4108  728380 docs: Remove <!-- --> comment before plural s
4109  728565 gfile: More explicitly document the context for GFileProgressCallback
4110  728983 Docs: various fixes and improvements
4111  729167 gobject: Document that classes/objects/interfaces are zero-filled
4112  729563 GOption: A short option's value is included in G_OPTION_REMAINING
4113  729813 AppInfo: use XDG_CURRENT_DESKTOP for OnlyShowIn
4114  729875 gio: cleanup gdbusmessage.c file
4115  730045 Avoid overeager warning about deprecated properties
4116  730189 gtestutils: Fix a very unlikely FD leak in test fork handling
4117  730190 gsocket: Add missing preconditions to g_socket_send_message()
4118  730277 gthread: Fix use of a local variable after it went out of scope
4119  730278 gsubprocess: Add a missing va_end() call
4120  730295 gdbus-tool: Remove dead variables
4121  730493 Port annotations from Vala metadata
4122
4123 Translations updated:
4124  Basque
4125  Brazilian Portuguese
4126  Catalan
4127  Czech
4128  Danish
4129  Greek
4130  Hebrew
4131  Hungarian
4132  Punjabi
4133  Serbian
4134  Slovenian
4135  Spanish
4136  Ukrainian
4137
4138 Overview of changes from GLib 2.39.91 to GLib 2.39.92
4139 =====================================================
4140
4141 This is a release candidate for 2.40.0.
4142
4143 There are no major changes in this release, but a few serious bugs have
4144 been fixed.
4145
4146 * Bugs fixed:
4147  710367 Crash in g_settings_backend_dispatch_signal()
4148  723899 G_DEFINE_TYPE() causes compiler warnings with clang due to foo_get_instance_private
4149  724859 Let the test_wait_until() test also run on non-*nix
4150  724916 gio unmount code makes XFCE's Thunar crash
4151  725651 GSubprocessLauncher: Does not copy the calling process environment.
4152  725656 Unskip GVariantDict
4153  725891 gio tests: add codegen to BUILT_SOURCES
4154  726046 Recent commit created symbolic icons issues
4155
4156 * Translations:
4157  Chinese
4158  French
4159  Korean
4160  Latvian
4161  Norwegian bokmål
4162  Portuguese
4163  Russian
4164  Traditional Chinese
4165
4166 Overview of changes from GLib 2.39.90 to GLib 2.39.91
4167 =====================================================
4168
4169 This release introduces a hard dependency on present and functioning
4170 clock_gettime() and CLOCK_MONOTONIC.  It also introduces a dependency on
4171 pthread_condattr_setclock() unless your system happens to have
4172 pthread_cond_timedwait_relative_np() (as do Mac OS and Android).  This
4173 release is known to be broken with at least GNU/Hurd, pending addition
4174 of working pthread_condattr_setclock(CLOCK_MONOTONIC) there.
4175
4176 New API: g_str_to_ascii()
4177
4178 * Fixed bugs:
4179  670144 unconditional use of CLOCK_MONOTONIC is broken
4180  673607 invalid assumption in g_cond_wait_until() / g_get_monotonic_time() API
4181  710142 Add more impressive transliteration to GLib
4182  722360 make check fails
4183  722604 (partial) Various tests are failing with 2.39.3
4184  723316 g_hash_table_iter_remove() should be explicit whether or not it is safe while iterating the table
4185  724609 Fix build of GIO on Windows
4186  724687 gmain: make monotonic time really monotonic, everywhere
4187  724706 gsource: document priority of child sources
4188  724707 some GSocket source improvements
4189  724839 GMainContext: some source ID cleanups
4190  724858 Dist gtranslit-data.h
4191  724994 Missing icons for bookmarks in file chooser
4192  725023 Can no longer find apps by executable/desktop file name
4193
4194 * Translations:
4195  Lithuanian
4196  Polish
4197  Thai
4198
4199 Overview of changes from GLib 2.39.4 to GLib 2.39.90
4200 ====================================================
4201
4202 * Fixed bugs:
4203  625408 make GVariant dictionaries more useful
4204  660809 document that if you fail a precondition check, documented guarantees do not apply
4205  661576 fix handling of constructors that destroy half-constructed objects
4206  679957 g_inet_address_new_from_string is not able to handle dots and numbers IPv4 addresses
4207  712837 gvariant: Document the need to cast varargs when constructing GVariants
4208  721458 g_simple_async_result_is_valid has a NULL check for the wrong source_tag
4209  721977 improve split handling of command line arguments
4210  722033 win32: fixup lib.exe invocation
4211  723422 Fix g_socket_get_available() with TCP on Windows
4212  723616 gio/tests: fix race when generating code
4213  724001 gsubprocess: Fix a broken link in the documentation
4214  724124 glib/tests/collate.c fails if no en_US locale
4215  724126 intermittent GApplication test failure: /gapplication/local-actions: lines of output permuted
4216  724233 gsocketservice: Note g_socket_listener_close() for closing open sockets
4217  724239 soup_session_queue_message - Connection terminated unexpectedly
4218  724278 gsocketconnection: Document closing connections with g_io_stream_close()
4219  724330 configure.ac: tweak inotify check
4220  724385 gtestutils: make the new assert messages more detailed
4221  724401 gsubprocess: Mutex leak
4222  724417 glib master build broken on OpenBSD
4223  724434 Build failure in gio/gresolver.c
4224
4225 * Updated translations:
4226  Brazilian Portuguese
4227  Galician
4228  Indonesian
4229  Italian
4230  Kannada
4231  Norwegian bokmål
4232  Spanish
4233  Thai
4234
4235 Overview of changes from GLib 2.39.3 to GLib 2.39.4
4236 ===================================================
4237
4238 * Fixed Bugs:
4239  139699 Correction for g_main_context_unref()
4240  583036 g_strchomp and g_strchug are not declared const
4241  683388 improve documentation for application developers
4242  685204 ./configure fails to add the '-g' flag to CFLAGS
4243  688406 GStaticMutex broke ABI on at least ARM EABI during 2.31.x
4244  693299 cannot compile on Solaris: error in gbitlock.c
4245  707111 Clarify type transformability and compatibility
4246  711547 win32: silence some build warnings
4247  719344 Fix the various test programs (or GLib itself) on Windows
4248  722025 cleanup/clarify command line argument encoding on Windows
4249  722323 remove unused include 'gslist.h' in 'gbookmarkfile.c'
4250  722326 gstringchunk: Use g_slist_free_full() where possible
4251  722357 gio: fix small memory leak on local xattr
4252  722436 Adjust doc to Makefile.decl renaming
4253  722503 GSimpleAction: add default activate handler
4254  722526 glib/deprecated/gthread.h error on FreeBSD
4255  722591 [documentation] broken link to GtkAction from GAction.html
4256  722973 Broken example in GApplication reference
4257  723048 'network-access' test can fail to guess interface index
4258  723360 gmain: Note that g_source_destroy() can be called multiple times 
4259
4260 * Updated Translations:
4261  Assamese
4262  Tamil
4263  Traditional Chinese
4264
4265
4266 Overview of changes from GLib 2.39.2 to GLib 2.39.3
4267 ===================================================
4268
4269 No major changes this release -- mostly lots of small fixes and
4270 improvements in test coverage.
4271
4272  * fix a crasher in code from gdbus-codegen
4273
4274  * improvements to gobject gdb helper script
4275
4276  * portability:
4277
4278    - fix a deadlock issue with kqueue on FreeBSD
4279
4280    - work around a quirk in the sunstudio compiler
4281
4282    - rename a variable to avoid clashing with a macro definition of
4283      'environ' on some platforms (like mingw)
4284
4285    - use POSIX-specified <poll.h> over <sys/poll.h>
4286
4287    - many improvements to Visual Studio projects and and some build
4288      fixes for Windows
4289
4290  * tests
4291    - a very large number of improvements in test coverage
4292
4293    - don't report skipped tests as failures
4294
4295    - return 77 if we skip all tests in an executable
4296
4297    - improve gtest documentation and fix some minor issues
4298
4299    - fix g_test_trap_reached_timeout() return value
4300
4301    - remove some dead code uncovered during test coverage expansion
4302
4303    - Use tap mode for installed tests too, when using tap
4304
4305  * fix races in unix signal handling
4306
4307  * make our GVariant-based commandline tools (glib-compile-schemas,
4308    gdbus, gapplication) print out GVariant parse errors in context
4309
4310  * GApplication now has a --gapplication-service command line switch to
4311    turn any GApplication into a service
4312
4313  * improve compatibility of GApplication and GOptionContext
4314
4315  * fix gsettings.m4 wrt. builddir != srcdir with non-recursive make
4316
4317  * use a directory monitor in GKeyfileSettingsBackend
4318
4319  * improve robustness of some GIcon classes
4320
4321 Bugs fixed
4322  141251  poll(2) is in <poll.h>, not <sys/poll.h> per SUS standard
4323  613732  [PATCH] gobject.py: Don't install frame filters when GDB does not support them
4324  708212  g_variant_parser_error_get_quark() has unexpected name.
4325  710965  GApplication: add --gapplication-service switch
4326  711090  periodic failure of spawn-multithreaded async testcase
4327  712171  gsettings.m4: @GSETTINGS_RULES@: Support srcdir != builddir with nonrecursive make
4328  712630  Revert "gsettings m4: check for .xml in src/builddir"
4329  715028  GVariant: add way to print context of parse errors
4330  719344  Fix the various test programs (or GLib itself) on Windows
4331  720263  gtestutils: skipping a test should count as success, not failure
4332  720539  gdbus-codegen: Fix crasher in goa-using apps
4333  720635  Make gdb pretty-printers compatible with Python3
4334  720891  g_settings_get_child does not inherit the backend
4335  721034  glib 2.38.2 cannot be compiled with SunStudio Compiler under Solaris
4336  721059  g_subprocess_launcher_set_environ vs "environ"
4337  721074  kqueue: deadlock
4338  721087  Missing -lselinux in pkg-config --libs --static gio-2.0
4339  721324  Error message is printed to stdout
4340  721624  Regression in GTest framework reorders existing test cases
4341  721625  backwards NEWS entry about g_source_remove change
4342  721796  insufficient escaping in g_dbus_annotation_info_generate_xml()
4343  721947  Improve GApplication ⇔ GOptionContext compatibility 
4344
4345 Translations updated:
4346  Brazilian Portuguese
4347  Galician
4348  Greek
4349  Hebrew
4350
4351 Overview of changes from GLib 2.39.1 to GLib 2.39.2
4352 ===================================================
4353
4354 * Portability
4355
4356   - Remove alleged support for OS/2
4357
4358   - Remove alleged support for BeOS
4359
4360   - Remove alleged support for last-millennium Unixes
4361
4362   - Require C90 compliance
4363
4364   - Require POSIX.1 (1990) compliance on Unix
4365
4366   - Require GNU make
4367
4368 * Bugs fixed:
4369  113075 support "nonnull" attribute
4370  159528 g_ptr_array_remove_range()
4371  307947 The check for growing stack pointer in configure can fail
4372  607016 docs should mention property notification order
4373  671557 Fun with integers and g_key_file_load_from_data()
4374  676761 don't use g_critical for a runtime error
4375  690525 g_file_replace_contents_async doesn't copy its @conten...
4376  691608 Support compilation with clang 3.2
4377  697585 g_variant_builder_add's doc example is leaking
4378  697828 g_hash_table_add() should return a boolean
4379  702862 gdbus-codegen : look for deps in default install path
4380  703522 Reference leak in GvariantBuilder documentation
4381  705902 g_get_current_dir() should check PWD env var and retur...
4382  708274 Added GObject Introspection annotations to genums.c
4383  710519 Portability schmortability
4384  710741 some mainloop instrumentation
4385  710983 Test failures on powerpc
4386  711047 Enable the build of the various test programs on Windo...
4387  711051 Add basic test for the GNotification gtk backend
4388  711088 gbacktrace: Don't close stderr when running gdb
4389  711103 gmessages: Add g_info macro for G_LOG_LEVEL_INFO
4390  711178 appinfo test problems
4391  711546 utf8: report allocation error
4392  711640 gdesktopappinfo: Rank Keywords matches higher than Gen...
4393  711751 Fix memory leaks in libglib tests
4394  711753 gthread-posix: Don't use gslice allocated GRecMutex
4395  711796 glib-tap.mk: fix to actually use the TAP driver
4396  711800 fix g_test_set_nonfatal_assertions()
4397  711801 giomodule: Allow overriding source directory gio modul...
4398  711805 gdbus-connection: Fix race condition in test
4399  711806 gtestdbus: Don't destroy GSource twice
4400  711807 gtestdbus: Properly close server connections
4401  711871 Broken and misleading configure check for growing stack
4402  712136 'O_CLOEXEC' undeclared (first use in this function)
4403  712148 Add system bus support to GTestDBus
4404  712171 gsettings.m4: @GSETTINGS_RULES@: Support srcdir != bui...
4405  712314 AIX port: splice(); major()/minor(); libtool library order
4406  712315 GSettings: More docs for deprecated _list_schemas()
4407  712393 gobject: Box GMappedFile
4408  712547 GSocketClient "event" not useful for determining resol...
4409  715164 Clang static analysis fixes
4410  719395 GPtrArray add g_ptr_array_insert
4411  719402 Crashes when startup
4412  719472 leak in generated proxy-side property-setter
4413  719687 fix or remove g_trap_object_ref
4414  719809 Signal connection ids are always > 0 if successful
4415  719837 gdbus-connection: Work around race in connection tests
4416  719884 Fix documentation typos in GTask and GCancellable examples
4417  719979 g_settings_get: check validity of format string
4418  720080 Truncating a GMemoryOutputStream to a larger size cause...
4419  720210 gdataset: Remove unused define
4420  720236 Allow clean simple use of g_test_trap_subprocess() 
4421
4422 * Translations updates:
4423  Italian
4424  Lithuanian
4425  Simplified Chinese
4426  Spanish
4427
4428
4429 Overview of changes from GLib 2.39.0 to GLib 2.39.1
4430 ====================================================
4431
4432  * GSettings fixes/improvements
4433
4434    - GSettingsSchema API is now more powerful and consistent
4435
4436    - new GSettingsSchemaKey API allows accessing metadata for keys:
4437      type, default value, range and the long-awaited support for summary
4438      and description
4439
4440    - GSettingsSchemaSource gains support for listing schemas within a
4441      source.  Deprecate the global API that did this for the default
4442      source.
4443
4444    - 'gsettings list-schemas' now works properly with --schemadir
4445
4446    - deprecate a bunch of now-redundant functionality on GSettings
4447
4448    - add API to GSettings for getting the default value of a key (as set
4449      by the sysadmin)
4450
4451    - add API to GSettings for determining if the user has assigned a
4452      particular value to a key (ie: we are not just reading the default)
4453
4454    - ignore qualified tags and attributes appearing in schema files
4455
4456  * Applications/Actions
4457
4458    - make GSimpleAction a bit more strict with respect to state changes
4459      that would violate the interface (ie: by changing the state type
4460      after construction)
4461
4462    - throw an error when attempting to 'Describe' a non-existent action
4463      via D-Bus instead of returning a bogus description
4464
4465    - throw an error when attempting to invoke unsupported methods on an
4466      Application (eg: 'Open' on an app that doesn't HANDLES_OPEN)
4467      instead of emitting a g_critical() in context of the app (which is
4468      not itself at fault for the errant call)
4469
4470  * Appinfo
4471
4472    - substantially rework GDesktopAppInfo to reduce the amount of disk
4473      accesses that are performed in common situations
4474
4475    - add a new class: GAppInfoMonitor for discovering when applications
4476      are installed/removed
4477
4478    - add a new g_desktop_app_info_search() API for searching for
4479      installed applications by name, keywords, etc.
4480
4481  * GMarkup: add new G_MARKUP_IGNORE_QUALIFIED flag for skipping over
4482    "qualified" tags and attributes (those with a colon in the name, such
4483    as 'my:tag')
4484
4485  * GDBus
4486
4487    - ignore qualified tags, as above
4488
4489    - GTestDBus: unset all D-Bus addresses (such as STARTER) to ensure
4490      that test programs don't pick them up
4491
4492    - add new session_bus_run() convenience in the tests and use it
4493
4494  * GRand: use real random data as a seed on win32 and use the
4495    timestamp/pid/uid fallback only on UNIX machines where we can't open
4496    '/dev/urandom'.  This may cause issues with older mingw32 releases
4497    due to a missing prototype for the rand_s() API.
4498
4499  * Many win32 (and particularly MSVC) portability fixes.  Many
4500    additional tests are now runnable when building with MSVC.
4501
4502  * Due to early testing of the (soon to land) GCleanup framework, a very
4503    large number of memory errors have been found and fixed (mostly in
4504    the testcases, but some in glib itself).
4505
4506  * GIO:
4507
4508    - some more seeking cleanups: particularly on GLocalFileInputStream
4509
4510    - don't leave a .trashinfo file around if trashing a file fails
4511
4512    - Add a request_certificate virtual method to GTlsInteraction
4513
4514 Translations updated:
4515  Assamese
4516  Galician
4517  Greek
4518  Spanish
4519  Tamil
4520
4521 Bugs fixed:
4522  635641 schema compiler should ignore unknown attributes
4523  637257 g_tls_client_connection_gnutls_retrieve_function needs to be able to block
4524  637956 GKeyfileSettingsBackend should ignore file deletions
4525  645453 keys from base schema missing from extended schema
4526  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes in XML files
4527  668232 Unable to get description and summary for a key
4528  668233 Unable to determine if a key is set to the default / what the default value is
4529  680838 Need g_settings_schema_source_get_schemas()
4530  683017 API for accessing GSettings Schema metadata
4531  687185 org.gtk.Actions.Describe doesn't return an error for non-existing action names
4532  687202 If trashing fails, the ".trashinfo" file is not removed
4533  695558 The --schemadir option has no effect
4534  696424 GSimpleAction.state property is not right
4535  697348 GTestDBus should unset DBUS_STARTER_ADDRESS, DBUS_STARTER_BUS_TYPE
4536  710133 Emit backward compatible code with gdbus-codegen
4537  710691 glib-networking: locking during implicit handshake
4538  710738 GRand has lame fallback for Windows
4539  710859 Typo in gio docs
4540  710885 Two fixes for GApplication
4541  710962 error: 'F_DUPFD_CLOEXEC' undeclared (first use in this function)
4542  710964 Add g_hash_table_get_key_array()
4543  710991 test: g_debug messages shouldn't affect g_assert_expected_messages
4544  711016 g_settings_list_keys () segfaults for empty schemas
4545  711048 glocalfileinputstream.c allows skip past end of file
4546  711049 Fix build of GLib-GIO 2.39.x on Windows/MSVC
4547  711064 Adding child source to blocked source can cause a segfault
4548  711070 Copying a symlink over another one segfaults
4549  711099 gapplication test failure
4550  711520 GDesktopAppInfo: allow more than one level of legacy folder prefixes
4551  711556 Add GAppInfoMonitor
4552  711557 Add g_desktop_app_info_search()
4553  711600 trivial portability fix
4554  711632 The desktop-app-info test fails during make check
4555  711754 gmain: Fix use of uninitialized memory in sigaction structure
4556  711755 private: Use threading primitives correctly in private test
4557  711756 gthreadpool: Don't pass bad data to GThreadPool sorter
4558  711768 Fix memory leaks in libgmodule tests
4559  711775 utils: Don't free memory owned by glib in test
4560  711782 boxed: Fix double free in boxed unit tests
4561  711803 gsubprocess: Fix a number of leaks and a segfault
4562  711808 gtestdbus: Fix leak of GMainLoop 
4563
4564 Overview of changes from GLib 2.38.0 to GLib 2.39.0
4565 ====================================================
4566
4567  * prep for the 2.40 series (version macros, docs index, etc.)
4568
4569  * GNotification
4570
4571    - new API for sending persistent notifications via the desktop shell
4572
4573    - notifications persist when the application has quit and clicking on
4574      them can restart the application with an action (via
4575      DBusActivatable)
4576
4577  * GSubprocess
4578
4579    - new API for launching subprocesses
4580
4581    - nice GIO integration like async functions, cancellability, etc.
4582
4583    - a convenient communicate() API inspired by the same API in Python
4584
4585    - related: the gspawn API now has a CLOEXEC flag for the created
4586      pipes for stdin/stdout/stderr
4587
4588  * New gapplication(1) commandline tool
4589
4590    - intended to be used with DBusActivatable apps
4591
4592    - can be used for launching apps, opening files, invoking application
4593      actions and listing apps and actions
4594
4595    - bash tab completion is supported
4596
4597  * GDesktopAppInfo changes:
4598
4599    - g_file_get_path() can implicitly cause a FUSE mount so don't call
4600      it until we know we need it (for an app that doesn't support URIs)
4601
4602    - don't crash when trying to load from a keyfile with
4603      DBusActivatable=true
4604
4605    - remove some dead code, refactor the search path handling a bit and
4606      do a large-scale whitespace cleanup (prep work for the pending
4607      desktop file index)
4608
4609  * File monitors
4610
4611    - fix broken handling of mount point monitoring
4612
4613    - remove some strange use of GObject::constructor() from the base
4614      class and inotify backend
4615
4616    - fix GFileMonitor to work in the non-default main context even when
4617      the main context is not running (or is blocked)
4618
4619    - add internal private API for easily creating a file monitor in the
4620      GLib worker thread
4621
4622  * GSettings
4623
4624    - g_settings_list_children: only list viable schemas.  This fixes a
4625      longstanding issue where 'gsettings list-recursively' will crash
4626      when there are invalid schemas installed
4627
4628    - don't accept invalid paths on g_settings_new_with_path, etc.
4629
4630  * GIO
4631
4632    - GFile now has a thumbnail::is-valid attribute to check if the
4633      thumbnail in thumbnail::path needs to be regenerated
4634
4635    - GDBusProxy now has a flag to control autostarting of services at
4636      construction time
4637
4638    - for GSeekable, properly introduce the concept of "resizable" vs.
4639      "fixed-sized" streams in the docs, explaining the expected
4640      semantics of the interface in each case
4641
4642    - fix some cases in GMemoryOutputStream that were violating the above
4643      expectations (which may cause a slight API incompatibility)
4644
4645    - clean up GCredentials code and add support for Hurd and Solaris
4646
4647    - improve splicing by using different codepaths for the case where we
4648      have real _read_async() and _write_async() implementations on the
4649      stream vs. the case where they are internally emulated (via
4650      dispatching the sync variant of the call in a thread)
4651
4652  * GKeyFile
4653
4654    - fix a leak in g_key_file_get_(u)int64 when we fail to parse the
4655      value as an integer
4656
4657    - add long-requested API g_key_file_save_to_file()
4658
4659  * Portability improvements
4660
4661    - avoid using O_DIRECTORY on platforms that don't have it
4662
4663    - be careful about systems that define SOCK_CLOEXEC but don't
4664      actually support it (like Hurd)
4665
4666    - only use SA_RESTART if it exists
4667
4668  * Other small API changes/additions
4669
4670    - a pair of functions to support matching strings for the type of
4671      search functionality that you'd expect to have with things like
4672      GtkSearchBar.  This will also be used by the desktop file index.
4673
4674    - g_str_is_ascii() with obvious purpose
4675
4676    - g_test_expect_message() no longer appears to allow you to catch
4677      G_LOG_ERROR messages
4678
4679  * GMainContext/GSource
4680
4681    - fix handling of overflowing the 'next source id' counter
4682
4683    - g_source_remove() will now throw a critical in the case that you
4684      try to remove a non-existent source.  We expect that there is some
4685      code in the wild that will fall afoul of this new critical but
4686      considering that we now reuse source IDs, this code is already
4687      broken and should probably be fixed.
4688
4689    - simplify handling of the 'current dispatching source' to not
4690      require use of a linked list
4691
4692  * GObject
4693
4694    - the long-broken (and leaky) pattern of destroying a just-allocated
4695      object from inside of a custom GObject::constructor is now
4696      officially completely illegal and will abort the program
4697
4698  * Unicode: update to 6.3.0
4699
4700  * Bug fixes
4701
4702    - g_file_copy() now falls back to pathname queryinfo.  This should
4703      clear up the bugs with copying from some GVfs backends (afp,
4704      gphoto, archive, at least).
4705
4706    - fix an out-of-bounds read in the xdgmime code
4707
4708    - fix a typo in the /org/freedesktop/DBus path on the object manager
4709      client
4710
4711    - skip emitting path_namespace='/' in match rules in order to
4712      workaround a bug in the D-Bus daemon and fix our own implementation
4713      (which shared exactly the same bug)
4714
4715    - fix crashes on precondition violations for GParamSpec constructors
4716
4717    - many other small fixups (see bug list)
4718
4719   * Many documentation improvements
4720
4721 Bugs fixed:
4722  309224 g_key_file_save_to_file missing
4723  583321 QNX: no SA_RESTART
4724  661576 fix handling of constructors that destroy half-constructed objects
4725  672102 GSubprocess class
4726  684842 Seeks on GMemoryOutputStream don't have opaque semantics
4727  688492 Add a notification API
4728  691581 g_output_stream_real_splice_async doesn't use overriden read/write_async functions
4729  702516 gfileutils: Make -Werror=format-nonliteral happy
4730  704218 New gapplication(1) tool
4731  704593 g_setenv: on some systems (BSD, OSX…), setting a variable to NULL crashes the system
4732  704882 GLocalDirectoryMonitorClass mount_notify field is useless
4733  704887 file monitoring improvements
4734  705029 Support for Solaris credentials
4735  705688 g_settings_list_children: only list viable schemas
4736  706254 Afp backend cannot copy files
4737  707887 Attempting to create GObject Property with underscore prefix segfaults
4738  708042 gapplication: don't rely on cmdline being finalized immediately
4739  708265 add support for GNU/Hurd in GLib D-Bus Library
4740  708266 fix error code checks when SOCK_CLOEXEC is defined but not supported
4741  708529 xdgmime: valgrind warns about invalid reads
4742  708677 incorrect object path 'deskop' used in gio/gdbusobjectmanagerclient.c
4743  708714 Typo in docs of GLIB_VERSION_2_40 macro.
4744  708753 gdesktopappinfo: Call g_file_get_path() on demand
4745  708793 glib build fails with clang < 3.1: error: expected ';' after top level declarator
4746  708828 GDBusProxy: add the ability to call methods on non autostarted proxies
4747  708860 glib-2.38.0 doesn't build on Solaris 10
4748  708972 gnetworking.h in tarball screws up out-of-source builds
4749  709113 [PATCH] Main loop dispatch path has needless linked list
4750  709227 Update to unicode 6.3.0
4751  709301 goutputstream: Add clear warning about short writes to _write_bytes() and async version
4752  709326 GDesktopAppInfo crashes creating a DBusActivatable app without a filename
4753  709440 Fix overloading of "source" and "target" terminology in GBinding
4754  709615 Cannot use g_test_expect_message with g_error
4755  709753 Add helpers for string matches when using GtkSearchBar-like widget
4756  709898 Expose thumbnail validity in GFile attributes
4757  709966 Remove outdated documentation
4758  709994 Minor fix for HACKERS doc to direct hackers to proper help file
4759  709995 Obsolete makefile rules
4760  710002 G_MAXUINT may be assigned as duplicate source id
4761  710313 Memory leak in g_key_file_get_(u)int64 with invalid integer values
4762  710345 [Patches] Fix some redundant-decls
4763  710496 g_locale_to/from_utf8() doc updated.
4764  710625 g_file_error_from_errno: Remove unneeded breaks
4765  710666 Frame clock related bug fixes
4766  710724 gmain: Warn when g_source_remove() fails
4767  710726 Work around D-Bus bug with path_namespace='/' match rules
4768
4769 Translations:
4770  Assamese
4771  Brazilian Portuguese
4772  Indonesian
4773  Russian
4774  Tamil
4775  Traditional Chinese
4776
4777 What's new in Glib 2.38
4778 ========================
4779
4780  * Application support
4781
4782   - GIO now provides an implementation of Desktop Actions from the
4783     desktop entry specification
4784
4785   - GApplication now implements the org.freedesktop.Application
4786     interface as per the desktop entry specification, allowing for
4787     standards-based D-Bus launching of GLib-based applications
4788
4789   - GDesktopAppInfo now supports DBusActivatable as per the desktop
4790     entry specification, allowing GLib-based applications to use D-Bus
4791     to launch other applications
4792
4793   - GApplication now has a "busy" flag that can be set on an application
4794     to allow the shell to show that it is busy
4795
4796  * GObject
4797
4798   - the private offset for a given class type is now always constant.
4799     This was done by reorganising the memory layout of instances so that
4800     the private data comes before the "official" pointer for the object
4801     (ie: at a negative offset).  Valgrind macros were added to mitigate
4802     any problems that this may have caused.
4803
4804   - a new G_DEFINE_TYPE_WITH_PRIVATE has been added along with a
4805     generated function *_get_instance_private() that can now serve as an
4806     equally-performing alternative to ->priv pointers in instances
4807     (allowing memory savings)
4808
4809   - new G_PRIVATE_FIELD, G_PRIVATE_FIELD_P and G_PRIVATE_OFFSET macros
4810     provide a convenient method of converting between named variables in
4811     private structures and their (now constant) offsets
4812
4813   - installing properties on a GObjectClass must now be done from
4814     class_init.  It is no longer valid to install them after class_init
4815     has returned.
4816
4817   - it is now possible to manually break a GObject property binding
4818     without destroying one of the objects involved
4819
4820  * Icons
4821
4822   - the requirements for implementing the GIcon interface have changed
4823     in order to make it possible to consume all implementations of GIcon
4824     with a finite number of cases
4825
4826   - a new GBytesIcon type was added for an icon represented by an
4827     in-memory binary blob in a known image format (ideally png).
4828
4829   - new APIs g_icon_serialize() and g_icon_deserialize() replace the old
4830     to/from_string APIs and will always work, irrespective of which
4831     types have been initialised in the calling process, allowing for a
4832     serialised GdkPixbuf to be deserialised in a process that doesn't
4833     have GdkPixbuf
4834
4835   - support for icons has been added to GMenuModel using the new APIs
4836
4837  * Actions and menus
4838
4839   - GPropertyAction provides a convenient way of creating a stateful
4840     property corresponding to a property on a GObject, such as the
4841     "visible-child-name" property of a GtkStack
4842
4843   - new API g_menu_remove_all()
4844
4845   - we now have established rules about what is a "valid" action name
4846     and an API to check them
4847
4848   - a new API for converting detailed action names to and from the
4849     split-out name and parameter value (as GVariant)
4850
4851   - for backwards compatibility, invalid action names can still be used
4852     with most functions, but this is not recommended
4853
4854  * Other GIO
4855
4856   - GDBus now supports services that wish to handle some of all
4857     properties on an interface asynchronously, without requiring the
4858     service to reimplement the entire org.freedesktop.DBus.Properties
4859     interface
4860
4861   - GFile now has a new _measure_disk_usage() (and async) API for
4862     recursively determining the amount of disk space used by a
4863     particular directory (akin to 'du').
4864
4865   - asynchronous version of g_file_trash() and g_file_make_directory()
4866     have been added
4867
4868  * Other new API
4869
4870   - GRegex has a new function to query the maximum lookbehind length to
4871     allow for regexp matching on streams
4872
4873   - GVariant has two new APIs for constructing strings that allow
4874     avoiding copies in some cases: g_variant_new_take_string() and
4875     g_variant_new_printf()
4876
4877  * Testing
4878
4879   - we can now generate TAP output
4880
4881   - new support functions for simplifying the process of dealing with
4882     data files for srcdir != builddir and installed test cases
4883
4884   - g_test_trap_subprocess() provides a portable alternative to
4885     g_test_trap_fork()
4886
4887  * Other
4888
4889   - GLib now builds on Android against the bionic C library
4890
4891 Overview of changes from GLib 2.37.93 to 2.38.0
4892 ================================================
4893
4894 * fix the documentation for GSourceFuncs
4895
4896 * fix compilation on OS X/ppc64
4897
4898 Bugs fixed: 708445, 647145
4899
4900 Translations updated:
4901  Danish
4902  French
4903  Portuguese
4904  Punjabi
4905
4906 Overview of changes from GLib 2.37.92 to 2.37.93
4907 ================================================
4908
4909 * a couple of bugfixes in the new g_file_measure_disk_usage() API
4910
4911 * updated Traditional Chinese translation
4912
4913 Overview of changes from GLib 2.37.7 to 2.37.92
4914 ===============================================
4915
4916 * new API g_file_measure_disk_usage() similar to du(1)
4917
4918 * minor fixes
4919
4920 * Translation updates:
4921  Assamese
4922  Belarusian
4923  Brazilian Portuguese
4924  Catalan
4925  Czech
4926  Galician
4927  German
4928  Hungarian
4929  Indonesian
4930  Italian
4931  Korean
4932  Korean
4933  Latvian
4934  Lithuanian
4935  Polish
4936  Serbian
4937  Slovenian
4938  Spanish
4939
4940 Overview of changes from GLib 2.37.6 to 2.37.7
4941 ==============================================
4942
4943 * GDateTime now supports %:z formatting variations
4944   for timezones. This is a GNU date extension.
4945
4946 * Bugs fixed:
4947  685387 Segfault with GObject.signal_handler_is_connected()...
4948  686786 g_socket_get_available_bytes() returns wrong value ...
4949  705027 GSocket GSource not threadsafe on Windows
4950  706469 Fix G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE documentation
4951  706706 Fix Gir annotations on g_loadable_icon_load_finish
4952  706888 gtype: fix a no-op assertion
4953  706958 configure.ac: fix atomic opts detection
4954  707092 "File Utilities" page for GLib documentation doesn'...
4955  707151 gdatetime: Extend the '%z' timezone format
4956
4957 * Translation updates:
4958  Catalan
4959  Hungarian
4960  Japanese
4961  Polish
4962  Slovak
4963  Tamil
4964
4965
4966 Overview of changes from GLib 2.37.5 to 2.37.6
4967 ==============================================
4968
4969 * Tests using the g_test facilities can now generate TAP output
4970
4971 * Bugs fixed:
4972  680926 generic type fallback logic is broken for -symbolic
4973  684327 setting null icon to icon list
4974  689245 GSocket unable to reuse (address,port) on Mac OS X
4975  692125 Support TAP as GTest output format
4976  693335 build: fix dtrace-related warnings
4977  696633 gdbus-codegen trips over unicode chars when using python 3.x
4978  696970 Compiling 2.36.0 for win64 fails
4979  697185 GSocket – Allow specifying the multicast interface from...
4980  700268 Add support for using the clang analyzer
4981  701318 Add G_SPAWN_DEFAULT to GSpawnFlags
4982  701529 glib/tests/gdatetime: use UTC time in test_GDateTime_diff()
4983  701800 a new approach to reporting critical errors
4984  702674 g_date_time_new_utc crash
4985  704165 GLib.IOChannel read_unichar() fails
4986  705075 Simplify g_get_tmp_dir()
4987  705152 Race in glib/task.test
4988  705398 gtype: Fix typo in g_type_class_add_private() error message
4989  705570 Check ref_count in g_object_notify_by_pspec
4990  705600 Deprecate GSimpleActionGroup functions?
4991
4992 * Updated translations:
4993  Assamese
4994  Brazilian Portuguese
4995  Czech
4996  Dutch
4997  Galician
4998  Gujarati
4999  Hebrew
5000  Italian
5001  Lithuanian
5002  Marathi
5003  Norwegian bokmål
5004  Russian
5005  Slovenian
5006  Spanish
5007  Thai
5008  Traditional Chinese
5009
5010
5011 Overview of changes from GLib 2.37.4 to 2.37.5
5012 ==============================================
5013
5014 * Implement the Desktop Action specification: In the case that the
5015   application is a GApplication and DBusActivatable, actions from the
5016   desktop file are translated into GActions that have been added to
5017   the  application with g_action_map_add_action().
5018
5019 * GPropertyAction is a new type of GAction that represents the value
5020   of a property on an object, and allows to change the value when
5021   activated.
5022
5023 * GNetworkMonitorNetlink can now handle default routes via a device.
5024
5025 * The gsettings tool now reports failure to write a key (e.g. because
5026   the key was locked down)
5027
5028 * Miscellaneous new api:
5029  - g_variant_new_printf
5030  - g_action_print_detailed_name
5031  - g_regex_get_max_lookbehind
5032
5033 * Bugs fixed:
5034  664444 Support additional application actions in .desktop files
5035  684123 glib build only tries -D_GNU_SOURCE if glibc is detected
5036  689794 support incremental matching
5037  699259 add org.freedesktop.Application support to GIO
5038  700460 rewrite tests to not rely on precise timing of timeouts
5039  701511 updates to various GSource types
5040  701609 gnetworkmonitornetlink: handle default route via device
5041  703270 add GPropertyAction
5042  704157 GAction: add function for printing detailed names
5043  704250 Doc: various fixes
5044  704267 regression gsourceclosure: segfault in gedit file chooser
5045  704322 glib-unix: fix handling of multiple signal source for the...
5046  704424 No error when failing to override a locked key
5047  704447 Fix build/use of g_child_watch_closure_callback on Windows
5048  704523 g_thread_create_full() can dereference NULL pointer
5049  704543 Add implementations for G_GNUC_*_IGNORE_DEPRECATIONS for ...
5050  704567 gdbusnameowning: Don't spew an error if we're releasing a...
5051  704585 libc printf can give mixed-case strings for NaN and Inf
5052  704587 FTBFS: statfs_result is undeclared for statvfs()
5053  704699 gmain: Reset signal handlers to default when source is
5054  704704 AI_NUMERICSERV cannot be used with ai_socktype = 0
5055  704873 inotify: don't assume mainloop is running
5056  704999 glib/convert.test crashing due to lack of iconv cache
5057  704931 GMenuModel: add annotations to virtual functions
5058
5059 * Translation updates:
5060  Assamese
5061  Czech
5062  German
5063  Gujarati
5064  Spanish
5065  Tamil
5066
5067
5068 Overview of changes from GLib 2.37.3 to 2.37.4
5069 ==============================================
5070
5071 * Bugs fixed:
5072  701283 g_source_add_child_source() segfault
5073  702147 inconsistency of G_STRFUNC
5074  703191 new private macros interact poorly with versioning macros
5075  703254 Doc: various fixes
5076  703407 g_spawn_async() keeps child_pid_report_pipe open in child process
5077  703437 GDBusConnection: be more careful with async GetAll
5078  703478 Missing G_BEGIN/END_DECLS in gsettingsschema.h
5079
5080 * Translation updates:
5081  Catalan
5082
5083 Overview of changes from GLib 2.37.2 to 2.37.3
5084 ==============================================
5085
5086 * add a new API for instance private data: G_DEFINE_TYPE_WITH_PRIVATE
5087
5088 * fix timestamps in tarball to prevent automake from being required to
5089   build the unmodified source
5090
5091 * add new D-Bus API for async property handling
5092
5093 * add back fsync() on ext4 for g_file_set_contents() after it was
5094   discovered that despite statements in the ext4 documentation
5095   suggesting that this is safe, it is not safe.
5096
5097 * Translations:
5098  Italian
5099  Norwegian bokmål
5100
5101 * Bugs fixed:
5102  698375 - D-Bus async properties
5103  700350 - timestamp issue
5104  701560 - fsync issue (fixed again)
5105  700035 - new API for instance private data
5106
5107 Overview of changes from GLib 2.37.1 to 2.37.2
5108 ==============================================
5109
5110 * The GLib test utilities have grown some file-related APIs
5111   to support tests that can be used installed and uninstalled.
5112
5113 * Installing properties after class initialization is deprecated,
5114   and will trigger a warning.
5115
5116 * GApplication:
5117  - Support org.freedesktop.Application, including D-Bus activation
5118    from desktop files
5119  - Set prgname to appid for services
5120
5121 * Bugs fixed:
5122  549783 gtester lacks framework for tests with data files
5123  692848 Fix property example in gobject tutorial
5124  698018 Add an explicit g_binding_release()
5125  698614 GObject: prevent installing properties after init
5126  699259 add org.freedesktop.Application support to GIO
5127  699959 g_file_copy(): Ensure we create private files by default
5128  700123 Test failure: g_inet_socket_address_get_scope_id
5129  700725 GIcon: NULLify the `type' out param in the sync methods too
5130  701401 gtest: add function for testing for WINE
5131  701456 Error in gnome/glib/gio/tests/file.c
5132  701474 Error building glibmm due to extra comma in glib/gtestutils.h
5133  701560 various improvements for g_file_set_contents()
5134  701680 GFileEnumerator: Add some documentation about ordering
5135  701878 Check wakeup() before iteration(TRUE) doesn't block
5136
5137 * Translations:
5138  Assamese
5139  Czech
5140  Galician
5141  Gujarati
5142  Kannada
5143  Marathi
5144  Odia
5145  Polish
5146  Slovenian
5147  Spanish
5148  Telugu
5149
5150
5151 Overview of changes from GLib 2.37.0 to 2.37.1
5152 ==============================================
5153
5154  * add support for installed tests:
5155    https://live.gnome.org/GnomeGoals/InstalledTests
5156
5157  * add a new g_test_trap_subprocess() that works on Windows as a
5158    replacement for the (now deprecated) g_test_trap_fork()
5159
5160  * support for explicitly cancelling a gobject property binding
5161
5162  * performance improvements for signal argument handling
5163
5164  * stop using `quotes' in very many log messages generated by GLib, for
5165    favour of 'this style'.  This may cause testcases in other packages
5166    to fail if they were matching on the previous text.
5167
5168  * improve manpages: add missing arguments and flags
5169
5170 Translations: 
5171  Aragonese
5172  Assamese
5173  Gujarati
5174  Hindi
5175  Kannada
5176  Norwegian bokmål
5177  Odia
5178  Slovenian
5179  Spanish
5180  Tamil
5181  Telugu
5182
5183 Bugs fixed:
5184  679683 replace g_test_trap_fork()
5185  694380 Improve signal argument collection performance
5186  695233 Strings require plural forms
5187  697849 spelling fixes in cross.xml and running.xml
5188  698877 GProxyAddressEnumerator calls g_network_address_parse_uri without port
5189  698981 [PATCH] test /gdbus/connection/large_message could hang forever
5190  699079 Prototype support for installed tests
5191  699485 [PATCH] tests/mappedfile: Also handle ENOMEM
5192  699493 SOCKS5 proxy code crashes if it cannot authenticate
5193  699500 gbitlock: fix this to not unconditionally use futex emulation
5194  699779 [PATCH] G_GNUC_FORMAT: documentation error
5195  700263 m4macros/glib-gettext.m4: Don't use AC_HEADER_STDC
5196  700714 [PATCH] gtestutils: Ensure test subprocesses don't dump core
5197  700746 Use 'dumb quotes' rather than `really dumb quotes'
5198
5199 Overview of changes fron GLib 2.36.0 to 2.37.0
5200 ==============================================
5201
5202 * The syntax for detailed action names has been documented,
5203   and a parser API for them is now provided
5204
5205 * GApplication has gained a busy state. This feature is intended for
5206   clients that want to signal a desktop shell their busy state, for
5207   instance because a long-running operation is pending.
5208
5209 * GLib can now be built with the bionic C library
5210
5211 * GIcon can now be serialized to a GVariant
5212
5213 * Bugs fixed:
5214  548353 Finish implementing GFile interface (mostly asynchron...
5215  645881 Full port of glib-2.28.1 onto Android-ARM
5216  665445 Glib mistakes nl_langinfo() from plibc for the real t...
5217  672018 Need API to set global application state (busy, count...
5218  687659 drop support for adding interfaces after class_init
5219  688820 GIcon is a bad interface
5220  688954 extend 'detailed action' syntax, provide parser
5221  689223 Fix compilation on Android with the bionic C library
5222  695156 Add support for arg0namespace matching in signal_subs...
5223  696108 gdbus-codegen: avoid warnings in generated code
5224  696629 fix sed(1) usage
5225  696652 GTask won't free its error member variable on finalize
5226  696857 GThreadedResolver: set an error if no records could b...
5227  696973 Compiling 2.36.0 for win64 fails in gdbusmessage.c
5228  697131 No --version
5229  697160 [PATCH] gmacros: Mark G_UNAVAILABLE() functions as de...
5230  697229 Custom Interface implementations will be broken with ...
5231  697250 Documentation glitch of G_DEFINE_TYPE_EXTENDED causes...
5232  697365 Fix usage of hasmntopt in gunixmounts.c
5233  697367 Remove warning on gio/gunixmounts.c
5234  697386 Except const argument with atomic is not lock free
5235  697595 g_main_context_unref unlocks a mutex twice
5236  697601 reduce GMenuModel D-Bus traffic
5237  697626 Allow posix threads to be used on w32
5238  697652 Help options generated even when help disabled
5239  697771 fix a typo of "fo" to "of" in building.xml
5240  697887 GVariant: fix transfer annotation
5241  697942 abicheck.sh fails on mips
5242  698056 rewrite g_object_new()
5243  698081 Pidgin hangs in g_spawn_command_line_sync
5244  698455 GVariant: add new g_variant_new_take_string() API
5245  698457 g_variant_get_data_as_bytes() always returns toplevel...
5246  698478 gactionmap: don't require GActionGroup
5247  698595 the valgrind/priv-before-instance bug
5248  698655 desktop-app-info test relies on true being in /usr/bin/
5249  698686 GUnixSocketAddress: fix construct parameter issue
5250  698716 Use of g_mem_set_vtable() breaks after gobject automa...
5251  698999 bytesicon: fix a memory leak
5252  699001 bytesicon: don't use g_object_unref() on GBytes
5253  699361 gio: fix small leak
5254
5255 * Translation updates:
5256  Assamese
5257  Gujarati
5258  Hungarian
5259  Italian
5260  Kannada
5261  Norwegian bokmål
5262  Polish
5263  Spanish
5264  Tamil
5265
5266
5267 Overview of changes fron GLib 2.35.9 to 2.36.0
5268 ==============================================
5269
5270 This release contains only small bugfixes and translations updates.
5271
5272  - g_file_copy(): fix bug where attributes were not applied properly to
5273    the destination file
5274
5275  - fix some 'available since' annotations
5276
5277  - fix gdbus-codegen to produce more pedantically-correct code
5278
5279 * Bugs fixed:
5280  696108 gdbus-codegen: avoid warnings in generated code
5281  696014 g_file_copy(): Ensure G_FILE_COPY_OVERWRITE preserves permissions
5282
5283 * Translations updated:
5284  Basque
5285  Czech
5286  Gujarati
5287  Hindi
5288  Hungarian
5289  Japanese
5290  Malayalam
5291  Marathi
5292  Odia
5293  Punjabi
5294  Russian
5295  Tadjik
5296  Tamil
5297  Telugu
5298
5299 Overview of changes from GLib 2.35.8 to 2.35.9
5300 ==============================================
5301
5302 This release drops the old codepage ABI from gutils.c. This is a
5303 source-compatible change and only breaks ABI with respect to truly
5304 ancient binaries (and those binaries are already broken for other
5305 reasons).  This change only affects Windows.
5306
5307 * Bugs fixed:
5308  682896 glib doesn't build on mingw32
5309  693204 split up g_get_{hostname,username,realname,home_dir} etc.
5310  694181 Handle GNetworkAddress better in g_network_monitor_base_...
5311  694253 occasional /gdbus/unref-pending test failure
5312  694350 Add type names to gsignal warnings
5313  694757 Use separate GLIB_WARN_CFLAGS that can be overridden ext...
5314  568405 Which is the correct replacement for g_strncasecmp, if...
5315  630284 g_hash_table_get_keys docs
5316  659428 docs: Small clean-up of howto subsection headers
5317  675333 Cannot forget association in Open With dialog: program...
5318  694669 consider unicode corrigendum #9
5319  694843 g_base64_decode_step () produces invalid data
5320  695147 Don't use PATH_MAX as it's not guaranteed to be defined
5321  695191 Commit f641699 broke /appinfo/mime/api test case
5322  695339 Swapped msgid plural forms for translation
5323  695376 GDBusMethodInvocation leak and potential crash
5324  695425 Untranslatable message in gsettings-tool
5325  695887 Improvements to GObject API documentation
5326  695925 GUINT32/64_SWAP_LE_BE macros do not enclose val argume...
5327  696015 PATCH Add doc warning to g_base64_decode()
5328
5329 * Translation updates:
5330  Assamese
5331  Belarusian
5332  Brazilian Portuguese
5333  Catalan
5334  Catalan (Valencian)
5335  Danish
5336  French
5337  Galician
5338  German
5339  Greek
5340  Gujarati
5341  Italian
5342  Korean
5343  Latvian
5344  Lithuanian
5345  Polish
5346  Portuguese
5347  Punjabi
5348  Serbian
5349  Simplified Chinese
5350  Slovak
5351  Slovenian
5352  Spanish
5353  Thai
5354  Traditional Chinese
5355  Uyghur
5356  Vietnamese
5357
5358
5359 Overview of changes from GLib 2.35.7 to 2.35.8
5360 ==============================================
5361
5362 This release contains one major change that may cause problems: type
5363 modules are now never unloaded.  This is implemented by (effectively)
5364 leaking the last reference on dynamic types.  Some testcases that check
5365 for unloading of types have been observed to be broken by this change,
5366 but we know of no actual cases of "real code" breaking.  Please report
5367 any problems.
5368
5369 Other changes:
5370  * A couple of build fixes for Solaris
5371  * Fix signal emission for GDBusObjectManagerClient
5372  * annotations fixes
5373  * new API: g_dbus_address_escape_value()
5374  * GSocketClient: add proxy-resolver property
5375  * GSimpleProxyResolver: new simple GProxyResolver class
5376  * documentation fixes
5377  * gnetworkaddress: preserve IPv6 scope ID in IP literals
5378
5379 Bugs fixed:
5380  691105 Allow GSocketClient to override GProxyResolver for per client proxy settings.
5381  692827 configure test fails for arpa_nameser.h
5382  692829 new Btrfs support causes build failure on Solaris
5383  693285 GDBusObjectManagerClient: won't emit object-added|removed if name-owner arrives later
5384  693502 Cross-compiling documentation: typo (np -> no)
5385  693673 add g_dbus_address_escape_value()
5386  693694 gio: Fix annotations on g_[async_]initable_new() and friends 
5387
5388 Translations:
5389  Dutch
5390  Galician
5391  Polish
5392  Serbian
5393
5394 Overview of changes from GLib 2.35.6 to 2.35.7
5395 ==============================================
5396
5397 This is a quick follow-up release with a few bug fixes.
5398
5399 * Fix the build on systems with strict linkers by adding -pthread back
5400   to the LDFLAGS for a testcase.
5401
5402 * Re-enable native atomic operations on some buggy versions of clang
5403   that ship as part of the MacOS X SDK.
5404
5405 * Make G_IO_FLAG_IS_WRITEABLE an enum again (the #define broke bindings)
5406
5407 * a small docs fix
5408
5409 * Bugs fixed:
5410  657045
5411  636683
5412  682818
5413  693105
5414
5415 * Translations:
5416  Italian
5417
5418 Overview of changes from GLib 2.35.4 to 2.35.6
5419 ==============================================
5420
5421 * GUnixFdSource is a new way to add file descriptors
5422   to the mainloop
5423
5424 * g_source_set_ready_time lets you mark a source to become
5425   ready at a specified monotonic time
5426
5427 * The internal visibility handling of GLib has been reworked
5428
5429 * GFileMonitor will now automatically use fam instead of inotify
5430   if $HOME is on NFS
5431
5432 * The file monitor implementation can now be overridden with
5433   the GIO_USE_FILE_MONITOR environment variable
5434
5435 * Bugs fixed:
5436  570572 2 make check errors on
5437  592211 No monitoring over NFS mounts
5438  625552 wrong behaviour of GVolume GVolumeMonitor related func...
5439  657729 modernise GMainLoop
5440  658020 GSource for a single GPollFD
5441  678223 g_mutex_free
5442  682560 leak fixes
5443  682819 EINTR-harden all the things
5444  684404 When using g_network_address_address_enumerator_next()...
5445  686853 new GSource fd API
5446  688169 G_DISABLE_DEPRECATED doesn't cover deprecated/gthread....
5447  688681 build: Make .symbols file canonical on all platforms
5448  690118 Crash when closing last tab of a window using Ctrl-w
5449  691624 glib/gtester.c: missing include
5450  691812 gioinputstream - give task as callback_data not task_data
5451  691866 fails out of source build directory - gnetwork.h not f...
5452  692029 Add new API checking utility
5453  692034 Install an invalidation notifier for GClosure in g_sou...
5454  692058 Broken makefile for gio tests
5455  692079 build failure in gmarkup.c when using gcc 4.8 and buil...
5456  692201 inotify: fix a memleak
5457  692202 gfile: don't report completion twice on g_file_load_co...
5458  692229 Incorrect string formatters in a translation string
5459  692332 GNetworkMonitorNetlink: make the netlink socket cloexec
5460  692360 possibly non-threadsafe code in g_content_type_guess()?
5461  692404 tester: Use FD_CLOEXEC when creating pipes
5462  692408 nautilus SIGSEGV in g_file_info_get_size()
5463  692544 [PATCH] gfile: Ensure we create internal pipe with FD_C...
5464  692583 atomic get doesn't accept a const argument on architect...
5465  692618 Use g_timeout_add_seconds
5466  692815 Using g_hash_table_insert() when using a hash table as ...
5467  692865 Invalid docbook generated by gdbus-codegen
5468  692928 Document G_MENU_{ATTRIBUTE,LINK}_*
5469
5470 * Translation updates:
5471  Hebrew
5472  Kannada
5473  Lithuanian
5474  Norwegian bokmål
5475  Polish
5476  Serbian
5477  Slovenian
5478  Spanish
5479  Uyghur
5480
5481
5482 Overview of changes from GLib 2.35.3 to 2.35.4
5483 ==============================================
5484
5485 * New features:
5486  - New API: g_get_num_processors
5487  - New API: g_application_command_line_get_stdin
5488  - New GFileMonitor flag: G_FILE_MONITOR_WATCH_HARD_LINKS
5489  - Parse more timezone offset formats
5490  - Better timezone support on Windows
5491  - Make GParamSpec constructors introspectable
5492
5493 * Removed or deprecated features:
5494  - Disallow adding interfaces after class_init
5495
5496 * Bug fixes:
5497  532815 gio + inotify support for hardlinks
5498  614930 add g_get_num_processors (), return the max concurrent...
5499  626497 Btrfs clone/reflink ioctl support in g_local_file_copy
5500  633117 glib fails stests if /etc/localtime is not properly set
5501  661767 merge/improve various bits of run-in-thread functionality
5502  668210 Add g_application_command_line_get_stdin()
5503  675856 Use GDbus via gobject-introspection instead dbus-python
5504  684103 make glib work with python3
5505  684723 run-assert-msg-test.sh fails
5506  686058 OpenBSD: disable ipv6_v4mapped test
5507  686128 GTimeZone should be able to parse POSIX format for...
5508  687223 cleverer GThreadPool management
5509  687659 drop support for adding interfaces after class_init
5510  687920 GCredentials should have an accessor for the process ID
5511  688681 build: Make .symbols file canonical on all platforms
5512  688829 Variable overflow in utils.c test on 32-bit machine
5513  689324 Variable scoping in gunixmounts.c
5514  689810 Include guard optimization
5515  690043 Broken link for gsettings tutorial: gnome-utils in...
5516  690084 gmarkup: Make GMarkupParseContext a boxed type
5517  690388 Check if CMSG_FIRSTHDR() returns NULL when there is...
5518  690538 gschema DTD is invalid
5519  690543 Add test coverage for testing in-tree DBus services...
5520  690670 local_command_line not introspectable/annotated
5521  690902 G_END_DECLS needs to be at the end of gutils.h
5522  690970 Unhelpful deprecation message for g_value_array_get_nth
5523  691001 building docs is broken on master branch
5524  691011 Automake-1.13 errors on obsolete AM_PROG_CC_STDC
5525  691077 gio-querymodules crashes with SIGSEGV
5526  691110 g_cond_wait() docs incomplete
5527  691489 Crash in Oscars 2013 page
5528  691558 Only check for .hidden files if standard::is-hidden...
5529  691608 Support compilation with clang 3.2
5530
5531 * Translation updates:
5532  Assamese
5533  Bulgarian
5534  Estonian
5535  Galician
5536  Greek
5537  Hebrew
5538  Norwegian bokmål
5539  Polish
5540  Slovak
5541  Slovenian
5542  Spanish
5543  Tamil
5544
5545
5546 Overview of changes from GLib 2.35.2 to 2.35.3
5547 ==============================================
5548
5549 * This release contains an incompatible change to the g_get_home_dir()
5550  function. Previously, this function would effectively ignore the HOME
5551  environment variable and always return the value from /etc/password.
5552  As of this version, the HOME variable is used if it is set and the
5553  value from /etc/passwd is only used as a fallback.
5554
5555 * We now install a public "gnetworking.h" header that can be used to
5556  include the relevant OS-dependent networking headers. This does not
5557  really abstract away unix-vs-windows however; error codes, in
5558  particular, are incompatible.
5559
5560 * Bugs fixed in this release:
5561  142568 Allow $HOME to override passwd entry if the user really wants
5562  587806 The file selector should honor .hidden files
5563  602715 [GChecksum] Please add support for SHA512
5564  623187 provide some support for arbitrary setsockopt()s?
5565  629301 .goutputstream files left behind when cancelling I/O
5566  652650 Optimize GDBusMessage serialization
5567  664627 /gapplication/basic test intermittently fails: cmdline re-or...
5568  675516 Win32: Don't start a DBus server when built as static library
5569  679683 replace g_test_trap_fork()
5570  684145 Current Git sources fails to cross-compile for Windows in Li...
5571  686895 file-info: catch thumbnail files in large directory as well
5572  687092 IPv6 <-> IPv4 mismatch when subscribing to multicast (send)
5573  688180 GObject: Minor error in description of floating reference
5574  688319 gthread: add missing AVAILABLE_IN_2_32 annotations
5575  688377 configure: add missing square bracket in AS_IF for memmove
5576  688419 gtask: source_object arguments and return values not annota...
5577  688497 AppInfo: Add sufficient api to port gnome-session from Egg...
5578  688681 build: Make .symbols file canonical on all platforms
5579  688704 Add boxed GType for GThread
5580  688886 Improve the i18n documentation
5581  688931 GMemoryOutputStream: Add new _resizable() constructor usab...
5582  689037 need helper for creating a GFile from a remote commandline...
5583  689377 Fix a compiler warning in GDBus
5584  689538 Source object tag set too late in gsocketlistener
5585  689800 Treat lost+found directory as a hidden file
5586  689847 Add fast repeated typename -> GType resolver
5587  689982 Make GChecksum more fully introspectable
5588  690069 g_unix_open_pipe: Add missing F_SETFD
5589  690083 gfileenumerator: Add a g_file_enumerator_get_child method
5590  690163 Add a pre-configured gio/gnetworking.h for Visual C++ builds
5591  690346 Remove an unneeded escaping in NAMESER_COMPAT_INCLUDE
5592  690348 Fix g_type_add_class_private() name in g_warning
5593
5594 * Translation updates:
5595  Assamese
5596  Galician
5597  Hebrew
5598  Hindi
5599  Kannada
5600  Odia
5601  Polish
5602  Spanish
5603
5604
5605 Overview of changes from GLib 2.35.1 to 2.35.2
5606 ==============================================
5607
5608 Note that the incompatible change to the ->constructed() vfunc that was
5609 made in the last unstable release (2.35.1) has been reverted due to
5610 causing regressions in applications.
5611
5612 A new incompatible change has been introduced in this version: it is no
5613 longer permitted to add interfaces to a class after the first
5614 instantiation (or more strictly: after g_type_class_ref()).  Bug #687659
5615 is tracking this.
5616
5617 Two private symbols (g_menu_{attribute,link}_hash_iter_get_type) which
5618 were accidentally exported have also been properly hidden.  This may
5619 cause some tools to issue warnings about ABI mismatch.
5620
5621 The remaining changes should be relatively harmless: 
5622
5623  * GIO now has kqueue support for GFileMonitor (BSDs, Mac OS)
5624
5625  * New g_variant_new_from_bytes() API
5626
5627  * UNIX signal sources now allow watching SIGUSR1 and SIGUSR2
5628
5629  * Many pedantic cleanups to adhere to a higher level of -W use
5630
5631  * GTask changes to avoid a deadlock
5632
5633  * many cleanups/fixes for Windows
5634
5635  * Boxing for GPollFD, GIOChannel, GBytes, GByteArray
5636
5637  * Fix URL-encoding of trashed files
5638
5639  * Many other docs and annotations fixes
5640
5641 Translations:
5642
5643  Galician
5644  Gujarati
5645  Lithuanian
5646  Serbian
5647  Slovak
5648  Slovenian
5649
5650 Bugs closed:
5651
5652  649302 Add support for GNU/FreeBSD
5653  668842 [GSocket] Add caching for the sender address in g_socket_receive_from()
5654  672924 Add annotations for g_filename_from_uri()
5655  673229 glib: Use Returns:, not @returns
5656  677062 (partial) GVariant: Make g_variant_new_from_bytes() public, add more GBytes API
5657  686185 g_date_time_format Transcoding Fails on OSX      
5658  686191 g_mutex_get_impl() should use g_atomic_pointer_get()
5659  686797 Box GPollFD to make it introspectable
5660  686810 [regression] Infinite wait in g_task_run_in_thread_sync()
5661  686822 possible dlopen()/dlclose() issue with automatic g_type_init()
5662  686839 mkinstalldirs: Move to glib-mkinstalldirs
5663  686895 file-info: catch thumbnail files in large directory as well
5664  686898 g_unix_signal_source_new: Allow SIGUSR1 and SIGUSR2
5665  686920 gdbus: Allow GDBusObjectManagerClient to work on peer connections
5666  686921 Remove some of the repetition from gio/tests/Makefile.am
5667  687075 g_spawn_sync diagnostic incorrectly complains about SIGCHLD
5668  687089 g_dbus_connection_export_menu_model(): fix a crash
5669  687098 Repeated g_timeout_add* use can lead to guint overflow
5670  687385 Add some stricter CFLAGS, fix up the code
5671  687441 ABI break in master: g_menu_attribute_hash_iter_get_type, g_menu_link_hash_iter_get_type removed
5672  687516 typo in string: KB should be kB
5673  687540 In Trash folder, Nautilus misinterprets "\n" in filename as a line break
5674  687541 GSignalQuery param_types field needs array annotation
5675  687600 gfileutils.c performs invalid cast of (varargs) open to non-vararg type
5676  687698 plural forms needed
5677  687700 ending spaces
5678  687742 Add support for internal linkage to glib-compile-resources
5679  687801 tests/buffered-input-stream: Fix size of parameter passed
5680  688109 win32 warning/error fixes
5681  688255 'make check' regressed in 138f4c1 because GMarkup error messages changed
5682  688338 [PATCH] gobject/gtype.c: Fix spelling of »exceed«
5683  688370 GDBusError documentation improvement for client-side
5684  688378 g_socket_join_multicast_group not working
5685  688518 gio-kqueue: use O_EVTONLY on MacOS
5686
5687
5688
5689 Overview of changes from GLib 2.34.0 to 2.35.1
5690 ==============================================
5691
5692 These two changes in particular may be slightly incompatible.  Please
5693 give feedback if they cause trouble:
5694
5695   * Signal handlers connected with g_signal_connect_object() are now
5696     automatically disconnected on target object destruction
5697
5698   * The ->constructed vfunc is now called after all properties are set
5699
5700 The remaining changes should not cause problems.
5701
5702   * g_type_init() is no longer necessary and has been deprecated
5703
5704   * GTask (the new GAsyncResult implementation) has landed 
5705
5706   * GLib version macros updated
5707
5708   * Update to Unicode 6.2
5709
5710   * Thread safety fixes for GFileMonitor in non-default main contexts
5711
5712   * GTimeZone support for old-format zoneinfo database (as on Mac OS)
5713
5714   * g_settings_bind() now works with non-canonical property names
5715
5716   * Fix crashes related to NULL connection passed to
5717     GBusNameVanishedCallback and document this situation
5718
5719 * Bugs fixed:
5720  118536 Make g_signal_connect_object'ed handlers disconnect when the data object is destroyed
5721  661767 merge/improve various bits of run-in-thread functionality
5722  682950 GFileMonitor crashing on high event count when running in different thread
5723  683642 Missing g_content_type_get_symbolic_icon
5724  684882 Gsettings should spaw a warning when binding against a low_underscored_property
5725  684909 codegen: Explicitly close output
5726  684912 Update to Unicode 6.2
5727  685037 g_strcmp0: Returns shall include values less and greater than zero
5728  685069 Leak in glib-compile-resources
5729  685208 missing g_return_if_fail
5730  685608 [Patch] Port gio tests from pygobject to pygi
5731  685697 Documentation typo in g_dbus_interface_skeleton_has_connection()
5732  685733 Call ->constructed() after all properties are set
5733  685787 gtestdbus: correct documentation typos
5734  685995 Crash in g_menu_exporter_name_vanished
5735  686091 Invalid reads in g_bytes_unref_to_data
5736  686119 dtrace, gobject_probes.d, the last three probes - semicolon missing
5737  686161 Deprecate g_type_init()
5738  686231 GBusNameVanishedCallback: document NULL connection
5739  686458 slightly increase poll duration in test_timed_wait 
5740
5741 * Translations updated
5742   Catalan (Valencian)
5743   Czech
5744   Danish
5745   Italian
5746   Lithuanian
5747   Norwegian bokmål
5748   Slovenian
5749
5750 Overview of changes from GLib 2.33.14 to 2.34.0
5751 ===============================================
5752
5753 * Bug fixes:
5754  654239 g_type_init()'s docs have no statement about how to...
5755  674620 Update GSettings migration guide for intltool updates
5756  676034 Fix doc annotation for g_ptr_array_ref()
5757  684278 Fix GIO build on Windows
5758
5759 * Translation updates:
5760  Brazilian Portuguese
5761  British English
5762  Bulgarian
5763  Catalan
5764  Galician
5765  German
5766  Hebrew
5767  Hindi
5768  Hungarian
5769  Kannada
5770  Latvian
5771  Marathi
5772  Spanish
5773  Telugu
5774
5775
5776 Overview of changes from GLib 2.33.12 to 2.33.14
5777 ================================================
5778
5779  * CVE-2012-3524: don't run dbus-launch from setuid binaries
5780
5781  * g_content_type_get_generic_icon_name():
5782      new API for getting the icon name for a mime type
5783
5784  * Introspection fixes:
5785   - GDBusConnection nullability fixes
5786   - give a box type to GTimeZone
5787
5788  * Drop GVFS_INOTIFY_DIAG
5789
5790  * Add a new "Writing GLib Applications" section to the reference
5791    documentation with general info on security, threads, etc.
5792
5793  * gwin32mount.c: Fix syntax error
5794
5795  * gresource tests: srcdir != builddir fixes
5796
5797  * tests/gvariant: Fix test on big endian architectures
5798
5799  * Fix regression in g_shell_parse_argv()
5800
5801 Bugs fixed:
5802  562907 g_shell_parse_argv() mishandles # (hash)
5803  683167 g_time_zone_new not introspectable
5804  683384 /gvariant/checksum-basic failure on big endian machines
5805  683641 Typo in gwin32mount.c
5806  683744 have a way to get the generic icon name for a mime type
5807
5808 Translation updates:
5809  Assamese
5810  Belarusian
5811  British English
5812  Czech
5813  Danish
5814  French
5815  Galician
5816  German
5817  Greek
5818  Hebrew
5819  Indonesian
5820  Indonesian
5821  Korean
5822  Lithuanian
5823  Marathi
5824  Marathi
5825  Polish
5826  Portuguese
5827  Punjabi
5828  Russian
5829  Serbian
5830  Slovenian
5831  Traditional Chinese
5832
5833 Overview of changes from GLib 2.33.10 to 2.33.12
5834 ================================================
5835
5836 * Add a G_DEFINE_QUARK macro
5837
5838 * Add symbolic icon support to drive, volume, and mount, file
5839   and content types
5840
5841 * Add API to allow thread-safe access to the same qdata item
5842
5843 * Bugs fixed:
5844  562907 g_shell_parse_argv() mishandles # (hash)
5845  627240 add G_DEFINE_QUARK
5846  672329 memory leaks in gutils.c and glib tests
5847  673012 Stable byte-level specification for normal form
5848  674805 gdbusproxy async test is broken
5849  679835 gvariant format string parsing (and assertions)...
5850  682075 gdbus: Fix double free and use after free of ob...
5851  682101 Provide a way to get a symbolic icon for a device
5852  682222 test_method_calls_on_proxy: assertion failed (e...
5853  682284 mount-op: use gint64 instead of guint64 for tim...
5854  682386 "make check" fails due to sys/resource.h not be...
5855  682560 leak fixes
5856  682586 gsettings-tool: make list-recursively really re...
5857  682819 EINTR-harden all the things
5858  682833 Handle EINTR for open()
5859  682849 drop the global lock for g_object_weak_ref
5860  682965 gdbus-tool: Check return value of strrchr()
5861  683088 gdbus-codegen: fix error when wrong interface n...
5862         Fix the build with gtk-doc-stub
5863         Don't crash if set_app_info is called before ad...
5864
5865 * Translation updates
5866  Assamese
5867  Galician
5868  Greek
5869  Indonesian
5870  Japanese
5871  Latvian
5872  Lithuanian
5873  Norwegian bokmål
5874  Polish
5875  Portuguese
5876  Punjabi
5877  Russian
5878  Spanish
5879  Traditional Chinese
5880  Vietnamese
5881
5882
5883 Overview of changes from GLib 2.33.8 to 2.33.10
5884 ===============================================
5885
5886 * New GTest API for testcases where log output is expected:
5887   g_test_expect_message()
5888
5889 * GMenuItem now has 'get' accessors and a construct-from-GMenuModel API
5890
5891 * GVariant now has a function to check a format-string for type
5892   compatibility
5893
5894 * win32: We now use overlapped IO to support multiple asynchronous
5895   operations (ie: reading and writing) at the same time.
5896
5897 * GMappedFile: Add g_mapped_file_get_bytes()
5898
5899 * The problems with g_file_make_directory_with_parents() should be
5900   resolved.
5901
5902 * The long-standing issues with placeholder generation of manpages are
5903   now resolved.
5904
5905 * gtlscertificate: Add GBytes based certificate and private-key props
5906
5907 * build: Switch back to using AS_IF for conditionals
5908
5909 * test coverage improvements, documentation improvements, leak fixes
5910
5911 * Bugs fixed
5912  326931 Better docs for G_GNUC_*
5913  550433 g_test_init doesn't recognize --help
5914  600751 GCompletion should better document if and how items memory is managed
5915  628193 Miscellaneous string fixes
5916  637460 man glib-genmarshal is hard to use
5917  674483 broken configure results when cross-compiling with gcc >= 4.5
5918  677065 GMappedFile: Add g_mapped_file_get_bytes()
5919  679288 win32: use overlapped events for streams
5920  679556 it's hard to use gtest when g_warning() is expected
5921  680823 g_file_make_directory_with_parents: Fix error propagation
5922  681319 gtlscertificate: Add certificate-bytes and private-key-bytes props
5923  681336 man pages not built if --enable-gtk-doc not specified
5924  681413 build: Switch back to using AS_IF for conditionals
5925  681501 gmem: array only partially filled with memcpy
5926  681854 Documentation fix for Howto compile a program with glib
5927  682025 Documentation correction
5928  682067 Fix problems with CLEANFILES and automake-1.11.1 
5929
5930 * Translations updated:
5931  Lithuanian
5932  Spanish
5933  Galician
5934  Telugu
5935  Serbian
5936  Assamese
5937  Marathi
5938  Indonesian
5939  Traditional Chinese
5940
5941 Overview of changes from GLib 2.33.6 to 2.33.8
5942 ==============================================
5943
5944 * GIO now has a g_file_delete_async function
5945
5946 * The defaults for GThreadPools max_unused_threads
5947   and max_idle_time values have been changed to
5948   2 and 15*1000, respectively.
5949
5950 * Bugs fixed:
5951  661767 merge/improve various bits of run-in-thread functionality
5952  680074 undefined symbol "get_C_locale"
5953  680121 g_cancellable_source_new: don't use a file descriptor
5954  680148 gthread: check for definition of PR_SET_NAME
5955  680310 Sorting of access points by strengh not working
5956  680704 g_utf8_strup() crash
5957  68076a0 GFile: Add g_file_delete_async()
5958  680787 Add .dir-locals.el to tell Emacs users not to use tabs...
5959  680823 g_file_make_directory_with_parents: Fix error propagation
5960  680994 STATIC_ASSERT in GDBusError docs don't have much utility
5961  681116 gtlscertificate: Add g_tls_certificate_equal() function
5962  681118 gtlsdatabase: Don't complain if no callbacks for async...
5963  669331 try to get gio tests working a little better on win32
5964  674314 Make gtk-doc not a hard dependency of GLib
5965  674800 gclosure: generic marshaller leaks return value
5966  675524 gsocket: FIONREAD undeclared (needs sys/filio.h)
5967  679509 use after free in g_dbus_action_group_describe_all_done()
5968  679996 gobject docs minor cleanup
5969  680459 Extra newline char in local implementation of g_applic...
5970  680505 object_path memory leak in gdbusobjectproxy.c
5971  680831 Deprecate and remove g_slice_[sg]et_config.*
5972  680912 gchecksum: Add g_compute_checksum_for_bytes()
5973  681151 checksum: Use functions instead of macros when buildin...
5974  681158 gtlscertificate: Don't confuse certificate and public ...
5975
5976 * Translation updates:
5977  Galician
5978  German
5979  Gujarati
5980  Hebrew
5981  Norwegian bokmål
5982  Serbian
5983  Slovenian
5984
5985
5986 Overview of changes from GLib 2.33.4 to 2.33.6
5987 ==============================================
5988
5989 * GAsyncInitable: partially revert the init_finish changes,
5990   some applications were found to rely on behaviour that
5991   was broken by these changes
5992
5993 * Bugs fixed:
5994  679617 win32: fix g_get_environ()
5995  679968 Add some annotations to GBytes, GVariantType...
5996  680111 GIOScheduler assumes GCancellable "cancelled...
5997
5998 * Translation updates:
5999  Spanish
6000
6001 Overview of changes from GLib 2.33.3 to 2.33.4
6002 ==============================================
6003
6004 * GMainContext: the source list has been reorganzied to
6005   avoid O(n) behaviour
6006
6007 * GRegex: Update included PCRE to 8.31 and expose new
6008   functionality in 8.x versions of PCRE
6009
6010 * GMountOperation gained a ::show-unmount-progress signal
6011   which provides information about slow unmount operations
6012
6013 * Bugs fixed:
6014  616892 gio: Add a boxed type for GFileAttributeMatcher
6015  619329 g_source_attach() O(n) in number of sources
6016  639771 g_dir_read_name() can also return NULL on error
6017  661767 merge/improve various bits of run-in-thread fun...
6018  667375 GAsyncInitable subclassing (and async subclassi...
6019  671545 Constify collect and lcopy strings in GTypeValu...
6020  674452 SEGFAULT in gio contenttype test
6021  674898 Deal with GLIB_VERSION_MIN_REQUIRED/MAX_ALLOWED...
6022  675504 Fix up GObject interface documentation
6023  677064 GString: Tweak documentation, add g_string_free...
6024  677578 error in PCRE error code conversion
6025  677579 update GRegexError for newer PCRE error codes
6026  678066 gdbus codegen does not work with python3
6027  678273 unicode othercasing is wrong in gregex
6028  678576 GIOScheduler performance enhancements
6029  678758 GTlsInteraction unlocks an unlocked mutex
6030  678808 GTestDBus issues
6031  678881 Test failures in /socket/timed_wait in some cas...
6032  678941 /contenttype/guess test case failure
6033  678944 gio returns the wrong default applications for ...
6034  678949 wrong definition of ulong_bool for 64 bit big e...
6035  678959 /mainloop/timeouts race condition: assertion fa...
6036  679193 update included pcre to 8.31
6037  679258 The 'Since' tag for G_SOURCE_CONTINUE and G_SOU...
6038  679473 Don't generate invalid property names
6039  679691 Add g_spawn_check_exit_status()
6040  679671 GDBusNodeInfo: the XML string must contain exac...
6041  676111 mount-operation: add show-unmount-progress signal
6042  679691 win32: fix build g_spawn_check_exit_status() wi...
6043  679813 Documentation bug on http://developer.gnome.org...
6044
6045 * Translation updates:
6046  Assamese
6047  Belarusian
6048  Bulgarian
6049  Galician
6050  Greek
6051  Norwegian bokmål
6052  Polish
6053  Spanish
6054  Traditional Chinese
6055  Vietnamese
6056
6057
6058 Overview of changes from GLib 2.33.2 to 2.33.3
6059 ==============================================
6060
6061 This release contains mostly bugfixes, cleanups and performance
6062 improvements (including many fixes contributed by Colin on the advice of
6063 Coverity).  There are a few notable externally-visible changes:
6064
6065 * Thumbnails are now in XDG_CACHE_HOME
6066
6067 * new GDBus API: per-thread g_dbus_connection_get_last_serial()
6068
6069 * GUnixOutputStream now has a can_poll() implementation
6070
6071 * New deep copy APIs for G(S)List: g_(s)list_copy_deep
6072
6073 * Bugs fixed:
6074  518309 Incorrect data*dir path in glib-gettextize output
6075  566994 Safer passing of -framework flag
6076  672889 GLib.utf8_validate does segfault
6077  673253 Not strict enough autconf test for libelf
6078  675024 adds g_list_copy_deep() and g_slist_copy_deep
6079  675168 prepare for thumbnails to move to XDG_CACHE_HOME
6080  675966 gresolver: More robust parsing of DNS responses
6081  676594 [Patch] fix g_reload_user_special_dirs_cache
6082  676825 Implement g_dbus_connection_get_last_serial ()
6083  677235 Clarify the comment at the top of gmarshal.list
6084  677527 OS X: gthread/spawn-async selftest failure
6085  677718 GDBusProxy: treat org.freedesktop.systemd1.Masked error as non-fatal
6086  677770 GUnixOutputStream does not implement can_poll
6087  677782 Install bash completion files in /usr/share
6088  677817 g_key_file_to_data adds extra blank lines in some cases
6089  677952 Missing annotation for GDBusConnection signal "closed"
6090  678052 g_wakeup_acknowledge is called too often.
6091  678273 unicode othercasing is wrong in gregex
6092  678333 gdbus-codegen code causes warnings under -Wfloat-equal
6093
6094 * Translations updated:
6095  Arabic
6096  Assamese
6097  Galecian
6098  Greek
6099  Spanish
6100  Telugu
6101
6102 Overview of changes from GLib 2.33.1 to 2.33.2
6103 ==============================================
6104
6105 * GLIB_VERSION_MIN_REQUIRED now defaults to the current stable version
6106
6107 * GIO input and output stream classes have grown GBytes-based methods
6108
6109 * GApplication now has hooks to register D-Bus objects before the bus
6110   name is taken
6111
6112 * Bugs fixed:
6113  605976 add g_type_ensure(), to ensure that a type has...
6114  660851 Breakage of code due to changes in the GThread...
6115  666386 Empathy doesn't open Redirect URI with particu...
6116  671139 need (transfer async) for io stream buffers
6117  672329 memory leaks in gutils.c and glib tests
6118  672548 g_utf8_validate: @str shouldn't end up annotat...
6119  674111 Provide an accessor for MimeType desktop entry...
6120  674483 broken configure results when cross-compiling ...
6121  674634 Add g_clear_pointer()
6122  674777 What's the (transfer) of g_variant_lookup()?
6123  675309 gkeyfile: Fix annotations for g_key_file_load_...
6124  675446 gfile: Plug memory leak in g_file_make_directo...
6125  675509 add extra dbus hooks
6126  675832 Incomplete gsettings bash auto-completion
6127  676208 The tmpl parameter to g_file_new_tmp can be NULL
6128  676265 GNetworkMonitor leaks a lot of memory
6129  676277 Document that g_app_info_create_from_commandli...
6130  676397 g_environ_* should work with NULL envp
6131  676398 g_spawn_* should take PATH from the passed env...
6132  676478 Broken gzip decoding
6133  676594 [Patch] fix g_reload_user_special_dirs_cache
6134  676816 Add more GLIB_AVAILABLE_IN_*
6135  676937 Document notify signal deduplication with free...
6136
6137 * Translation updates:
6138  Czech
6139  French
6140  German
6141  Greek
6142  Japanese
6143  Russian
6144  Slovenian
6145  Spanish
6146
6147
6148 Overview of changes from GLib 2.32.1 to 2.33.1
6149 ==============================================
6150
6151 * GApplication
6152  - can now have a NULL application ID
6153  - add accessors for determining dbus connection and object path
6154
6155 * g_clear_object: fix warnings when using it on C++ (due to lack of
6156   ability to implicitly cast void*)
6157 * add g_clear_pointer as a generic form of g_clear_object
6158
6159 * GDBus:
6160  - add our own implementation of the message bus for use on Windows only
6161  - fix up a few bugs that use of this bus uncovered in GDBus
6162  - escape nonce files in dbus addressess (think 'c:\')
6163  - support initial underscores in dbus codegen namespace (for private)
6164  - add GTestDBus for bringing up a session bus for testing purposes
6165  - gdbus-codegen: Avoid warnings in generated code
6166  - GDBusAuthObserver: Add a way to control what authentication mechanisms to use
6167  - 
6168
6169 * Fix misdetection of GNUstep as Cocoa (for the MacOS GSettings backend)
6170
6171 * make sure configure fails if AC_CHECK_ALIGNOF cannot detect the alignment
6172
6173 * GAppInfo
6174  - overwrite the DISPLAY only if it is set in the launch context
6175  - add accessor for StartupWMClass
6176
6177 * glib/tests/date: force US locale running the GDateTime tests
6178
6179 * Resources:
6180  - fix broken use of GVDB on big endian machines
6181  - set a 'display name' so that pretty file names appear in Gtk CSS
6182    warning messages
6183
6184 * GMainContext:
6185  - block child sources when blocking the parent
6186  - introduce more testcases for child sources
6187
6188 * GResolver: add support for MX, TXT, NS and SOA records
6189
6190 * GSocketControlMessage: Don't warn about unknown messages
6191
6192 * GIO:
6193  - implement GSeekable for the data and buffered stream classes
6194  - implement GPollable for many more classes as well
6195  - fix GConverterInputStream infinite loop when fill_buffer returns an error
6196  - fileinfo: document the correct type for trash::orig-path
6197
6198 * test coverage improvements and general fixes
6199
6200 * new 2.34 stuff: version macros, docs index section, etc.
6201
6202 * Build:
6203  - add --disable-modular-tests build option
6204  - don't require host binaries if tests are not enabled for cross-builds
6205
6206 * Translations updated
6207  Brazilian Portuguese
6208  Bulgarian
6209  Czech
6210  French
6211  Galician
6212  German
6213  Hebrew
6214  Hindi
6215  Italian
6216  Norwegian bokmål
6217  Polish
6218  Russian
6219  Russian
6220  Serbian
6221  Simplified Chinese
6222  Slovenian
6223  Spanish
6224  Telugu
6225
6226 Overview of changes from GLib 2.32.0 to 2.32.1
6227 ==============================================
6228
6229 * Bugs fixed:
6230  670254 glib-2.30.2: Fails /GDateTime/new_from_unix test
6231  672541 glib-compile-resources prepends --sourcedir to absolute paths
6232  673139 URL to mailing lists in README incorrect
6233  673174 g_input_stream_read[_finish]: document returning 0 on EOF
6234  673191 glib/gchecksum.c warning: dereferencing type-punned pointer...
6235  673216 [W32] gtestutils does not use path separators consistently
6236  673439 Properly deprecate g_value_{set,get}_char
6237  673612 Fails to decode dictionaries wrapped in two layers of array
6238  673803 gclosure: Support return values of GVariants
6239  669285 glib/tests/markup-parse fails under non-english locale
6240  673911 gio-2.0.pc lists full path to executables, breaking cross com..
6241  673762 gnextstepsettingsbackend.c:343: error: parse error before 'in'
6242
6243 * Updated translations:
6244  Belarusian
6245  British English
6246  Bulgarian
6247  Catalan
6248  Czech
6249  French
6250  German
6251  Hebrew
6252  Hindi
6253  Hungarian
6254  Italian
6255  Japanese
6256  Kannada
6257  Latvian
6258  Lithuanian
6259  Marathi
6260  Norwegian bokmål
6261  Odia
6262  Polish
6263  Serbian
6264  Slovenian
6265  Spanish
6266  Swedish
6267  Telugu
6268
6269
6270 Overview of changes from GLib 2.31.22 to 2.32.0
6271 ===============================================
6272
6273 * Bugs fixed:
6274  671988 Quickly registering / unregistering objects on bus...
6275  672095 glib needs stable sort function
6276  672406 glib/tests/include.c fails to build on FreeBSD
6277
6278 * Updated translations:
6279  Telugu
6280
6281
6282 Overview of changes from GLib 2.31.20 to 2.31.22
6283 ================================================
6284
6285 * Bugs fixed:
6286  531901 Use __builtin_bswap* for GUINT*_SWAP_LE_BE if building...
6287  653167 Out of tree build is broken on windows
6288  668973 Test /gvariant/parser fails on Solaris 10
6289  669797 gvfs now lists its fuse mounts
6290  670846 deadlock: GStreamer-WARNING **: wrong STREAM_LOCK count 0
6291  671664 gio-querymodules: unlink instead of writing empty cache
6292  671676 Glib can't be cross-compiled any more after merge of...
6293  671918 gnome-shell is inaccessible unless started while an AT...
6294  671942 GSocketMsgFlags: annotate as a flags
6295  671997 Unix signal handling assumes that volatile 1-byte writes...
6296  672013 GSimpleAsyncResult: support reliable cancellation
6297  672026 default log output should include pid and/or prgname
6298  672095 glib needs stable sort function
6299  672201 G_SPAWN_SEARCH_PATH should continue on ENODEV and ETIMEDOUT
6300  672239 request NO_REPLY from g_dbus_connection_call() with no as...
6301  672249 gdbusproxy leaks asyncresult in an error case instead of...
6302
6303 * Translation updates:
6304  Assamese
6305  British English
6306  Catalan
6307  Catalan (Valencian)
6308  Danish
6309  Esperanto
6310  Finnish
6311  French
6312  German
6313  Hungarian
6314  Korean
6315  Lithuanian
6316  Norwegian bokmål
6317  Polish
6318  Portuguese
6319  Russian
6320  Traditional Chinese
6321
6322
6323 Overview of changes from GLib 2.31.18 to 2.31.20
6324 ================================================
6325
6326 * Update to Unicode 6.1
6327
6328 * Update PCRE to 8.30
6329
6330 * Deprecations are now versioned, and new API is
6331   marked with the version it was introduced.
6332   Use these with GLIB_VERSION_{MIN,MAX}_REQUIRED
6333
6334 * The performance of signal emissions has been
6335   improved for simple cases
6336
6337 * Bugs fixed:
6338  529806 Cannot build in 64-bit Mac OS X due to libiconv
6339  580873 Documentation of register type functions incomplete
6340  592666 Document how to unset an attribute
6341  597785 g_type_class_add_private code snippet is a bad example
6342  621368 glib-2.24.1: FAIL: run-assert-msg-test.sh when updating...
6343  622149 --disable-regex breaks glib2 build
6344  639873 GBinding: Crash when binding two properties on the same...
6345  640202 For GLIB v. 2.23.6 and above: impossibility to build mu...
6346  668295 Need a way to classify GVolume instances
6347  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
6348  670542 Add version information for deprecations
6349  670557 gvaluetransform: Fix an infinite loop with GFlagsValue...
6350  670721 global variable for signal ID should be hidden
6351  670751 IceWM build fails due to the G_DEPRECATED_FOR macro
6352  670909 g_dbus_connection_call leaks when it receives an error...
6353  670922 Include path to gdbus-codegen in the pkgconfig file
6354  670969 GSequence lookup may fail if there was no sort prior to...
6355  671025 Constants and identifiers starting with a number are no...
6356  671270 make distclean failures
6357  671281 glib-compile-resources.xml is missing from the dist tar...
6358
6359 * Translation updates:
6360  Basque
6361  Belarusian
6362  Brazilian Portuguese
6363  Bulgarian
6364  Galician
6365  Hebrew
6366  Lithuanian
6367  Persian
6368  Punjabi
6369  Serbian
6370  Simplified Chinese
6371  Slovenian
6372  Telugu
6373  Traditional Chinese
6374  Uyghur
6375  Vietnamese
6376
6377
6378 Overview of changes from GLib 2.31.16 to 2.31.18
6379 ================================================
6380
6381 * GDBusProxy has now a flag, G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,
6382   which can be set to make GDBus automatically reload
6383   changed properties even if the propertychanged signal
6384   does not contain the new values.
6385
6386 * GApplication puts non-unique applications on the bus
6387
6388 * GApplication now has g_application_quit()
6389
6390 * g_async_queue_timed_pop has been deprecated in favor of
6391   the new g_async_queue_timeout_pop, which uses relative
6392   delays in microseconds instead of a GTimeVal.
6393
6394 * a huge number of API documentation fixes
6395
6396 * Bugs fixed:
6397  647986 put non-unique apps on D-Bus
6398  658484 vpn connection vs NetworkSecretDialog
6399  664237 GDateTime falls back to UTC if TZ is set
6400  669329 gthread-win32: update for g_get_monotonic_time() changes
6401  669330 glocalfile: fix error code when opening a directory on win32
6402  669372 glib/tests memory leaks.
6403  669412 mem leak in g_environ_unsetenv
6404  669538 Fix compilation of glib-compile-resources.c on Windows
6405  669544 gdbus-codegen example introspection XML is not complete
6406  669595 glib-mkenums: fix handling of forward enum declarations
6407  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
6408  669671 gobject: use #pragmas to avoid deprecated function warnings
6409  669689 Retrieve cwd and environ in local GApplicationCommandLine
6410  669810 socket/win32: flush pending read before signaling HUP
6411  669865 g_regex_fetch()
6412  670085 memory leak in g_output_stream_write_async
6413  670138 gbytes.h is missing the G_BEGIN/END_DECL guards
6414  670485 Simplify session API (shared bug with gtk+)
6415
6416 * Updated translations:
6417  Belarusian
6418  Danish
6419  Galician
6420  Serbian
6421  Telugu
6422  Hebrew
6423
6424
6425 Overview of changes from GLib 2.31.14 to 2.31.16
6426 ================================================
6427
6428 * GResource:
6429  - The resource compiler can now convert pngs into
6430    pixel data that can be used without parsing at runtime
6431    (requires gdk-pixbuf-pixdata to be present)
6432
6433 * Bugs fixed:
6434  669123 resource compiler: failing to-pixdata should...
6435  669173 resource: fix xml preprocess entity handling
6436  669224 Cross-compilation broken by data-to-c
6437  669253 gsettings set buggy on array values
6438  669334 fix memory leak in bookmark file parser
6439
6440 * Translation updates:
6441  Norwegian bokmål
6442  Spanish
6443
6444
6445 Overview of changes from GLib 2.31.12 to 2.31.14
6446 ================================================
6447
6448 * GResource:
6449  - GLib now includes a commandline utility, gresource,
6450    to explore resources in ELF files
6451  - The resource compiler can now optionally strip
6452    ignorable whitespace from XML resources
6453  - The resource compiler can now generate build dependencies
6454  - The resource compiler will now autoselect output formats
6455
6456 * GApplication:
6457  - The menu markup parser API has been dropped, the
6458    menu XML support lives in GTK+ now
6459
6460 * GValueArray has been deprecated
6461
6462 * Bugs fixed:
6463  626258 N-ary Trees - 'nodes' can be inserted before and after...
6464  634232 Core Dump / Aborted using g_key_file_to_data
6465  639099 schema compiler chokes on valid schema
6466  667228 Deprecate GValueArray
6467  667243 Add an element clear function to GArray
6468  667929 glib-compile-resources: xml resources doesn't need to...
6469  668250 g_date_time_format() produces a non-UTF8 string
6470  668468 'IP_ADD_SOURCE_MEMBERSHIP' undeclared
6471  668532 resources: add dependency generator to the resource compiler
6472  668539 resources: compiler should autoselect output format...
6473  668561 gresource-tool not internationalized
6474  668572 glib_cv_g_atomic_lock_free config.cache setting not honored...
6475  668650 GRealArray->clear_func should be initialized
6476  668756 GKeyFile: allow loading from empty strings
6477  668857 fix couple of typos in comments
6478  669024 goption: implement platform_get_argv0() for OpenBSD
6479
6480 * Updated translations:
6481  Galician
6482  Norwegian bokmål
6483  Spanish
6484  Traditional Chinese
6485
6486 Overview of changes from GLib 2.31.10 to 2.31.12
6487 ================================================
6488
6489 * GApplication:
6490  - Drop support for exporting menus - this functionality
6491    will be provided in GtkApplication
6492  - Add a way to create actions that change settings
6493
6494 * Bugs fixed:
6495  629503 Add async versions of g_unix_connection_{receive,send}_credentials
6496  656301 glib-compile-schemas should not create an empty file
6497  668071 mingw-gcc build fails on gio/gsocket.[c|h]
6498  668118 the big appmenu switcheroo
6499  668158 base64 encode and line termination
6500  668163 GDBusConnection: note that exit-on-close is sometimes TRUE
6501  668269 gsignal: add g_signal_handlers_disconnect_by_data
6502  668279 create GAction from GSettings
6503
6504 * Translation updates:
6505  Norwegian bokmål
6506
6507
6508 Overview of changes from GLib 2.31.8 to 2.31.10
6509 ===============================================
6510
6511 * GResource:
6512  - A new facility to allow linking data files into binaries
6513    and make them available as resources
6514  - Resources are compiled using glib-compile-resources
6515  - GIO supports resource:/// uris to access resources
6516
6517 * Bugs fixed:
6518  619126 Missing dependency libs
6519  658315 g_key_file_get_keys() should set length to 0...
6520  660371 is it ever valid to have 0 as a GError domain?
6521  666700 Add some missing (allow-none) annotations
6522  667375 GAsyncInitable subclassing (and async subclassing...
6523  667447 Missing many introspection annotations
6524  667790 Protect call to pthread_condattr_setclock with define
6525  667938 wrong gtypes generated for empty flags enums
6526
6527 * Translation updates:
6528  Hebrew
6529  Spanish
6530
6531
6532 Overview of changes from GLib 2.31.6 to 2.31.8
6533 ==============================================
6534
6535 * GObject:
6536  - The type checks for overriding properties have been loosened.
6537    In particular, it is now possible to add the CONSTRUCT flag
6538    to an overridden property
6539  - GWeakRef is a new API for weak references; unlike g_object_weak_ref
6540    and g_object_add_weak_pointer, it is thread-safe.
6541
6542 * GHashTable has grown new convenience api for use as a set:
6543   g_hash_table_add, g_hash_table_contains
6544
6545 * GSocketConnection has gained API for managing connection status
6546
6547 * GSettings: a native OS X backend has been added, under the
6548   name 'nexstep'
6549
6550 * Bugs fixed
6551  455640 Something fishy with GRegex and unicode
6552  548954 weak references are not threadsafe
6553  625751 Add G_FILE_ATTRIBUTE_FILESYSTEM_USED
6554  658871 gbacktrace: g_get_prgname () isn't called for a NULL argu...
6555  664069 gvariant: Never break out of g_variant_iter_loop
6556  664830 g_strescape doesn't natively handle \v (vertical tab)
6557  665211 GDBusConnection singleton access can race with disposal
6558  665805 Add GSocketClient::action, for tracking socket client status
6559  666116 some tests provoke undefined behaviour, which is undesira...
6560  666422 Unreachable code in gio gnetworkmonitornetlink.c
6561  666551 Crash in g_thread_xp_SleepConditionVariableSRW
6562  666595 menu parser disallows id='' on submenu and section
6563  666615 loosen property override flag restrictions
6564  666616 gobject: fix property override type checks
6565  666803 g_utf8_validate() fails to validate strings with known size
6566  666804 g_ateaxit deprecation warning in devhelp points in wrong ...
6567  666951 g_mkdtemp: Since version incorrect in docs
6568  666978 Fails to compile glib applications with ISO C90 compiler
6569  667098 ginetaddressmask leaks its address property
6570  667225 GSocket: add missing type checks to public methods
6571  667226 GSocket: fix an error return value
6572  667279 Sometimes crashes when launching commandline-crea...
6573  667285 Wrong keyname listed in documentation for g_deskt...
6574  667331 Use g_queue_free_full() convenience function
6575  667420 GHashTable GDB pretty printing is broken
6576
6577 * Updated translations
6578  Belarusian
6579  Bulgarian
6580  Hebrew
6581  Norwegian bokmål
6582  Norwegian Nynorsk
6583  Spanish
6584  Vietnamese
6585
6586
6587 Overview of changes from GLib 2.31.4 to 2.31.6
6588 ==============================================
6589
6590 * GApplication no longer has APIs for setting menus.  Those have been
6591   moved to GtkApplication.
6592
6593 * the GActionGroup import/export functionality has been decoupled from
6594   GApplication by the introduction of a new interface for the purpose of
6595   handling platform data: GRemoteActionGroup.  This allows Gtk to
6596   properly deal with platform data (and gdk threads) on window actions.
6597
6598 * lots of documentation improvements
6599
6600 * bug fixes and a huge number of memory leak fixes
6601
6602 * the test suite now passes on ARM and some of the GDBus testcase hangs
6603   we've been seeing have been resolved (although others could remain)
6604
6605 * g_bytes_get_data() API changed: now includes 'size' out parameter
6606
6607 * new g_queue_free_full() API similar to g_[s]list_free_full()
6608
6609 * desktop files: use standard "Keywords" now, not "X-GNOME-Keywords"
6610
6611 * gsettings commandline tool now has --schemadir option for schemas not
6612   installed in the usual place (ie: as part of plugins)
6613
6614 * Bugs fixed:
6615  643736 GApplication doesn't emit dbus signals on action updates
6616  657433 g_queue_free_full() missing
6617  664699 glib: documentation fixes
6618  665737 acquire/release gdk threads lock on incoming dbus
6619  665879 GBytes: add a size argument to g_bytes_get_data
6620  666113 various leaks in GLib, GIO are visible in the regression tests
6621  666115 various tests leak memory, obscuring real leaks in the library
6622  666145 Doc could be more explicite that g_thread_init calls can be droped
6623  666173 Configure warning - linux/netlink.h usability... no
6624  666296 Race condition in g_thread_xp_get_srwlock
6625  666415 Settings tools should allow specifying a schema directory 
6626
6627 * Translations updated:
6628  French
6629  Spanish
6630
6631 Overview of changes from GLib 2.31.2 to 2.31.4
6632 ==============================================
6633
6634 * EXPERIMENTAL: Menu support has been added to GApplication.  Menus
6635   are exported on the bus, alongside the actions that are already there.
6636   There have also been many related improvements to action group
6637   functionality.
6638
6639   These new APIs are subject to changes in the coming releases.  In
6640   particular, it seems somewhat likely that the APIs for registering
6641   menubars may change in order to accommodate windows with different
6642   types of menubars.
6643
6644 * GDBusConnection previously directly dispatched destroy notifies when
6645   unregistering objects if the current main context was the same context
6646   the object was exported on.  It now unconditionally dispatches these
6647   through an idle on the context.
6648
6649 * Clean up Requires in pc files. Linking against GIO no
6650   longer drags in gmodule. This may require dependency
6651   fixes here and there.
6652
6653 * Introduce GBytes, a data type for immutable, fixed-size
6654   byte sequences. This makes the pre-existing GBuffer
6655   API available outside GLib
6656
6657 * GDBusInterfaceSkeleton can now be exported on multiple
6658   connections
6659
6660 * Bugs fixed:
6661  600161 Do not use static GTypeInfo and GInterfaceInfo
6662  640077 GFileMonitor: Always send CHANGES_DONE_HINT after a move...
6663  641720 Misleading definition for local_command_line() in GApplic...
6664  648516 Little comment error and 2 useless lines of code
6665  651997 Dummy backend for gapplication
6666  652560 Test for g_ascii_strtod is failing
6667  662208 failure to initialize a GInitable should be considered...
6668  662718 GDBusInterfaceSkeleton should be able to export on multi...
6669  663291 GBytes: Immutable, refcounted sequence of bytes
6670  664406 Need context for a proper translation
6671  664455 Build fixes for GLib GIT master (2.31.x)
6672  664558 GDBusWorker.frozen has a value > 1 in a gboolean
6673  664559 sys/wait.h not available on windows
6674  664617 gdbus segfault error 4 in libgio-2.0.so.0.3102.0
6675  664635 GMemory{Out,In}putStream _async functions break sub-class...
6676  664809 Add command line option to gtester to allow skipping tests
6677  665067 cryptic assertion failure if nonsensical flag combinations...
6678  665184 Check ref. count before reffing/unreffing
6679  665298 Add 'Requires.private: libpcre' to glib-2.0.pc
6680  665391 update documentation around mainloops
6681  665607 ./configure is there for fiddling with cross-compile enviro...
6682  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes...
6683  665685 Add a #define for the max length of a Unicode decomposition
6684  665733 GDBusConnection holds lock while calling destroynotify
6685
6686 * Translation updates:
6687  Norwegian bokmål
6688  Spanish
6689
6690
6691 Overview of changes from GLib 2.31.0 to 2.31.2
6692 ==============================================
6693
6694 * Monotonic time is now properly supported on Windows
6695
6696 * glib-mkenums: fix @ENUMPREFIX@ with /*< underscore_name=... >*/
6697
6698 * EXPERIMENTAL: introduce new GSettingsSchema and GSettingsSchemaSource
6699   APIs for the convenience of plugin system authors and those who wish
6700   to introspect the contents of schemas.  This API may change.
6701
6702 * Improve the performance of GObject property notifies.
6703
6704 * GDBus:
6705  - fix a race when unowning a name immediately after owning it
6706  - thread safety improvements on GDBusConnection
6707  - fixes for exit-on-close functionality
6708
6709 * Deprecations:
6710  - add G_SIGNAL_DEPRECATED
6711  - don't use G_DISABLE_DEPRECATED masking for functions anymore
6712
6713 * docs
6714  - tmpl/ is finally dead for glib
6715
6716 * GIO:
6717  - GInetAddressMask: new type for internet address range matching
6718  - various GIO file and stream fixes
6719  - improvements to attribute and fileinfo handling
6720
6721 Overview of changes from GLib 2.29/2.30 to 2.31.0
6722 =================================================
6723
6724 This release contains a huge number of changes (500 commits worth).  The
6725 list below attempts to summarise, but not every change is listed.
6726
6727 * Major changes to threading and synchronisation
6728  - threading is now always enabled in GLib
6729  - support for custom thread implementations (including our own internal
6730    support for errorcheck mutexes) has been removed
6731  - a whole lot of dead code (to deal with the non-threaded case) has
6732    been ripped out.  This includes the racy path of GMainContext that
6733    caused deadlocks with respect to child process exits in
6734    single-threaded programs (such as gtester).
6735  - libgthread is now an empty shell and g_thread_init() is no longer
6736    required (and has been deprecated)
6737  - GMutex and GCond can now be statically allocated without explicit
6738    initialisation.  Dynamic allocation for these types is deprecated.
6739  - new types GRecMutex and GRWLock can also be statically allocated
6740    without explicit initialisation.
6741  - GPrivate can now be statically allocated and has an improved API.
6742    Dynamic allocation of GPrivate is deprecated.
6743  - GStaticMutex, GStaticRecMutex, GStaticRwLock, GStaticPrivate are
6744    deprecated.
6745  - GCond now uses monotonic time internally and a new API takes
6746    monotonic time for timed waits, deprecating the wallclock API
6747  - removal of the insane macro indirection used in the previous
6748    implementation of threading and synchronisation APIs
6749  - use SRWLock and CONDITION_VARIABLE APIs when available on Windows
6750    (Vista and later) and emulate them on XP
6751  - leaks of G(Static)Private-allocated data on some cases of thread exit
6752    have been fixed
6753  - simplified new thread creation API with the old API deprecated.  The
6754    concept of joinability has disappeared (all threads are joinable) as
6755    have priority levels, 'bound'ness (ie: kernel vs. userspace threads)
6756    and ability to manipulate the stack size.
6757  - GThread is now a refcounted type
6758  - other implementation details changed
6759
6760 * Move headers for some deprecated functionality to a separate
6761   deprecated/ directory.
6762
6763 * New support for attribute-based deprecations to issue compiler
6764   warnings instead of breaking the build and/or giving warnings about
6765   implicit declarations (and possibly miscompiling).
6766
6767 * GCache has been deprecated (after its last use was removed from our
6768   platform over a year ago).
6769
6770 * It is no longer possible to include individual headers (like
6771   "ghash.h") -- you must #include <glib.h>.
6772
6773 * The misguided experiment of allowing the program to stumble along with
6774   missing GSettings schemas is now over -- the abort is back.
6775
6776 * Clarify that fork() is not valid while using GMainContext.  This is
6777   because the internal resources of the GMainContext end up being shared
6778   by both processes.  We had an assert here but it was breaking existing
6779   (valid) use cases as well, so it has been removed for now.
6780
6781 * GApplication
6782   - add ::shutdown signal as logical dual to ::startup
6783   - don't use a GMainLoop: iterate the GMainContext directly (improves
6784     quit logic)
6785
6786 * Several portability fixes for Windows, OpenBSD, Solaris
6787
6788 * Add new GValue API to specifically deal in signed chars (in case the
6789   platform defines 'char' as unsigned)
6790
6791 * some new API to mitigate the problems associated with calling setenv()
6792   in a multi-threaded program
6793
6794 * Use CLOCK_MONOTONIC unconditionally if the libc has support at compile
6795   time (ie: stop checking for kernel support at runtime).
6796
6797 * pkg-config files:
6798   - drop -uninstalled variants
6799   - remove gobject dependency on gthread
6800
6801 * New macro G_ATOMIC_LOCK_FREE is defined if the atomic operations are
6802   implemented without use of a mutex.  Cleaned up atomic-related
6803   compilation issues with mingw compilers on win32 systems.
6804
6805 * SOCKS proxy and resolver improvements
6806
6807 * Fix the spelling of G_IO_FLAG_IS_WRITABLE (was WRITEABLE) and
6808   introduce a macro for backwards compatibility.
6809
6810 * GDBus:
6811   - many code generation updates and improvements
6812   - some race condition fixes, including testcase hangs
6813
6814 * GVariant:
6815   - new g_variant_new_from_fixed_array() API
6816   - substantial docs improvements/clarifications
6817
6818 * GKeyFile is now refcounted and boxed
6819
6820 * mount monitoring is now based on /proc/mounts (where available)
6821   instead of mtab
6822
6823 * new macros G_SOURCE_CONTINUE and G_SOURCE_REMOVE for returning from
6824   GSourceFunc (so you don't have to remember what TRUE and FALSE mean)
6825
6826 * use xlocale functions where available to avoid too much heavy lifting
6827   in functions like g_ascii_strtod()
6828
6829 * GMappedFile can now be created from an fd
6830
6831 * error message strings grammar/i18n fixes
6832
6833 * many docs updates
6834
6835 * Partial list of bugs closed:
6836  70598  Unify GStaticMutex and GMutex.
6837  320888 optimization for g_main_context_wakeup
6838  398418 GChildWatch race condition?
6839  527214 g_timer_elapsed() returns random values
6840  580505 add a way to set/get name for a thread
6841  583511 race condition means g_main_loop_quit() does not work
6842  590808 GKeyFile should have a refcount and a boxed type in GObject
6843  592715 Document that g_str_hash() and g_int_hash() are not NULL safe
6844  631413 Add macros for GSourceFunc return values
6845  632049 not immediately clear what g_variant_get_fixed_array expects
6846  640212 "Error stating file" is not a friendly message
6847  640293 Use xlocale functions to implement g_ascii_strtod()
6848  640975 Check that error exists before trying to set it
6849  643934 GApplication lacking a logical dual for the ::startup signal
6850  651268 assertion failed in GDBus worker thread
6851  653987 g_key_file_get_integer cannot interpret trailing spaces
6852  654412 Documentation for g_variant_get_child_value unclear
6853  654563 info capplet: Failed to calculate disk space
6854  655366 missing GSettings schemas lead to obscure crashes
6855  656621 g_spawn_*() calls executables in current directory
6856  656679 [gi] Add two annotations to gio
6857  657992 Add glib__private__() API to share between glib,gio
6858  658188 _set_as_last_used_for_type generates a broken mimeapps.list
6859  658206 gsocks5proxy.c has invalid gettext use
6860  658207 glib-compile-schemas says "can not"
6861  658558 simpleaction: Fix documentation of :enabled
6862  658683 clean up charset/language threading issues
6863  658692 add introspection annotations to g_time_val_from_iso8601()
6864  658715 Duplicite strings
6865  658769 Invalid reuse of GError in GThreadedResolver
6866  658806 sign error in string hash implementation
6867  658976 gdbus-codegen's C namespace option needs to support Ugly_Case
6868  659070 gdbus-codegen generated code segfaults when property changes
6869  659082 gdbus-codegen: Single letter namespaces get dropped from names
6870  659212 GMappedFile should fail on non-regular files
6871  659324 _SPLICE_CLOSE_TARGET doesn't mark the output stream as closed
6872  659423 Use adaptive mutexes when available
6873  659427 Move deprecated code to a separate directory
6874  659646 gdbus-codegen produce code that warnings at build
6875  659690 Possible build warning in code generated by gdbus-codegen
6876  659699 property name collision when generating code for "Connection"
6877  659754 Add API to GMappedFile that allows to pass FD
6878  659838 incorrect types in introspection for g_object_bind_property
6879  659866 pthread_rwlock_t requires defined __USE_UNIX98
6880  659870 gvalue: Fix signedness of g_value_get_char()
6881  659889 glib-2.29.92/gio-2.0.pc.in has a wrong line.
6882  659916 GObject size of 64K is not actively enforced
6883  659920 Missing setter for read/write property 'closed' of GIOStream
6884  659923 Add g_variant_new_fixed_array() function
6885  660013 Remove old g_atomic configure cruft
6886  660096 glib/rwlock tests failure (tests asserted)
6887  660130 Possible loss of user data when updating mimeapps.list
6888  660147 tracker causes g_critical in "gsettings list-recursively"
6889  660413 Make G_ASSERT_STATIC work with clang
6890  660498 Generated test code fails when the codegen changes
6891  660511 Use /proc/mounts for monitoring mounts, not /etc/mtab
6892  660536 Expose options for /etc/fstab entries
6893  660635 Deprecate g_thread_foreach
6894  660637 Pending dbus method calls not canceled on connection loss
6895  660739 kill off g_{mutex,cond}_{new,free}()
6896  660740 make GThread more standard
6897  660741 g_cond_timedwait is a disaster
6898  660743 macro wrappers for g_once_init_enter/leave
6899  660744 finish killing g_thread_init()
6900  660745 GPrivate leaks on Windows
6901  660791 [gio] Improve doc for g_file_make_directory_with_parents()
6902  660843 asyncqueue-test is broken
6903  660849 Remove cruft from g_strerror and g_strsignal
6904  660886 GDBusProxy: don't drop/complain about unknown props/signals
6905  660887 g_slice_set_config() is broken
6906  660994 Add g_main_context_ref_thread_default()
6907  661255 gio: enable test_peer regression test for OpenBSD
6908  661257 giomodules.c uses ":" instead of G_SEARCHPATH_SEPARATOR_S
6909  661318 tests use pthread without appropriate compiler/linker flags
6910  661421 Applications fail to initialize on GNU Hurd - commit
6911  661438 Implement G_GNUC_DEPRECATED/G_GNUC_DEPRECATED_FOR on Visual C++
6912  661711 Sorting keys for GDrive, GVolume and GMount instances
6913  661763 desktop-app-info: Add support for X-GNOME-Keywords
6914  661896 /gdbus/connection/life-cycle is racy
6915  661914 Gstreamer/Totem locks up
6916  662100 regression: g_dbus_connection_close() triggers exit-on-close logic
6917
6918 * Translations updates:
6919  Belarusian 
6920  Brazilian Portuguese
6921  British English 
6922  Bulgarian 
6923  Catalan 
6924  Catalan (Valencian)
6925  Czech 
6926  Danish 
6927  Esperanto
6928  French 
6929  Gujarati
6930  Hebrew 
6931  Hungarian 
6932  Italian 
6933  Japanese
6934  Lithuanian
6935  Norwegian bokmål
6936  Oriya
6937  Polish 
6938  Russian 
6939  Serbian
6940  Simplified Chinese
6941  Slovak 
6942  Slovenian
6943  Spanish 
6944  Tamil
6945  Vietnamese
6946
6947 Overview of changes from GLib 2.29.18 to 2.29.90
6948 ================================================
6949
6950 * API/ABI changes:
6951  - unix signal watches now match the API of all of the other sources
6952  - revert the addition of g_date_time_source_new () from last release
6953
6954 * networking and other fixes for Solaris
6955  - we no longer support symbolic port names (ie: from /etc/services)
6956  - check if -lsocket is needed
6957  - fix g_socket_details_from_fd()
6958  - avoid getmntinfo
6959  - fix some harmless warnings
6960
6961 * GDateTime improvements:
6962  - generally improved standards compliance (with C99)
6963  - support C99-specified format strings: %g, %G, %V, %c, %C, %w
6964  - consult the locale for the preferred 12-hour time format (%r)
6965  - drop support for non-standard %N and broken %W
6966  - better support for formatting non-POSIX (eg: Arabic) numerals
6967  - locale-related test case fixups, and fix some leaks
6968
6969 * GTlsInteraction: add interaction method invocation guarantees
6970
6971 * gdbus-codegen: post-process all interfaces when parsing >1 file
6972
6973 * make GMainLoop, GMainContext and GSource boxed types
6974
6975 * fix a race condition in the first use of g_get_monotonic_time()
6976
6977 * lots gtk-doc cleanups
6978
6979 * better intltool compatibility when generating pot file
6980
6981 * avoid GCC-specific compiler options when not using GCC
6982
6983 * Translation updates:
6984  Belarusian
6985  Brazilian Portuguese
6986  Canadian English
6987  Galician
6988  Indonesian
6989  Korean
6990  Lithuanian
6991  Norwegian bokmål
6992  Portuguese
6993  Spanish
6994  Swedish
6995
6996 Overview of changes from GLib 2.29.16 to 2.29.18
6997 ================================================
6998
6999 * GDateTime is now respecting LC_TIME when formatting
7000
7001 * GTimeZoneMonitor has been removed again
7002
7003 * A new API for wallclock functionality has been added:
7004   g_date_time_source_new(). This API is still experimental
7005   and may be changed or removed before 2.30.
7006
7007 * Bugs fixed:
7008  628904 Add credential support for FreeBSD and fix a socket issue
7009  650763 gdbus-codegen is broken with python 2.7
7010  655129 GDateTime could provide api for implementing wall clocks
7011  656341 gtlsconsoleinteraction.c uses getpass() which isn't avail...
7012  656387 GCancellable can be used concurrently
7013  656443 Make GTlsInteraction ask_password cancellable
7014  656675 void functions should not return in glib 2.29.16
7015  656772 g_variant_compare for uint64 incorrect
7016  656914 Load GIO_EXTRA_MODULES first, and ignore duplicates
7017  657083 The header langinfo.h is not available on all systems
7018  657084 gfileutils: fix docs/annotations for temp file methods
7019  657138 Some files missing in POTFILES.in
7020  657206 GInputStream leaked in g_file_icon_load_async()
7021  657243 g_cancellable_set_error_if_cancelled() documentation
7022  657274 Use detected PYTHON variable as shebang for gdbus-codegen
7023  657336 Speling fixes for glib found with codespell
7024  657452 plural forms needed
7025  657454 Translation comment needed
7026  657540 Print out file:// URL to coverage HTML report after building
7027  657593 g_test_trap_fork calls close(-1)
7028  646082 Addresses from GSocket should be normalized before returning
7029  657517 fix gio/tests/gdbus-peer on bsd
7030
7031 * Translation updates:
7032  Brazilian Portuguese
7033  Galician
7034  Norwegian bokmål
7035  Punjabi
7036  Russian
7037  Serbian
7038  Spanish
7039  Swedish
7040  Traditional Chinese
7041  Uighur
7042
7043
7044 Overview of changes from GLib 2.29.14 to 2.29.16
7045 ================================================
7046
7047 * GTlsDatabase: an abstract class that provides support
7048   or certificate and key lookup. An implementation will
7049   be provided in glib-networking
7050
7051 * GHmac: Support or HMAC digests
7052
7053 * Misc new API:
7054  - g_ptr_array_add_full: creates a GPtrArray with
7055    a preallocated size and a destroy function
7056  - g_desktop_app_info_get_show_in: checks if a GDesktopAppInfo
7057    should be shown in a given desktop environment
7058  - g_mkdtemp, g_mkdtemp_full, g_dir_make_tmp: create
7059    temporary directories
7060
7061 * Unify thread wakeup implementations of GMainContext
7062   and GCancellable, and use eventfd for it when available
7063
7064 * Show mounts in $XDG_USER_DIR in addition to /media and $HOME
7065
7066 * Bugs fixed:
7067  636572 GTlsCertificateDB
7068  644601 Some tests need a running dbus session
7069  652284 deal with small key lengths
7070  652827 glib-2.29.8 no longer builds with mingw.org's toolchain
7071  653063 PEM parser fails parsing private key when put first
7072  654078 Fail to static linking with Glib library
7073  654450 New functions: g_ptr_array_new_full()
7074  654793 Add G_VALUE_INIT
7075  655044 GDesktopAppInfo: Add g_desktop_app_info_get_show_in()
7076  655148 gdbusconnection is broken when compiling with mingw
7077  655241 glocalfile.c no longer compiles with MinGW GCC
7078  655598 g_cancellable_get_fd: silently return -1 for NULL cancellable
7079  655664 gdbus should not abort if no dbus session is available
7080  655769 Use ZLIB_CFLAGS when compiling gio
7081  656031 Improve GVariant annotations
7082  656048 glib-codegen requires Python >= 2.5
7083  656151 configure test logic inverted, doesn't match comments
7084  656152 GCC only syntax used, yet other compilers allowed by configure.
7085  656162 allow use of lcov 1.9 for coverage
7086  656282 GDBusProxy: uninitialized local variables can be freed
7087  656283 Failing tls connection cause assertion
7088  118563 Add g_mkdtemp in the spirit of g_mkstemp
7089  636405 Add g_return_if_fail() to g_settings_bind_with_mapping()
7090  656039 race condition between GDBusProxy signals and public API
7091  656492 g_io_channel_new_file failure (open(2) behavior wrt POSIX)
7092
7093 * Translation updates:
7094  Bulgarian
7095  Esperanto
7096  French
7097  Galician
7098  German
7099  Hebrew
7100  Indonesian
7101  Italian
7102  Norwegian bokmål
7103  Russian
7104  Spanish
7105  Swedish
7106
7107
7108 Overview of changes from GLib 2.29.12 to 2.29.14
7109 ================================================
7110
7111 * Unicode improvements
7112  - add g_unicode_script_{to,from}_iso15924
7113  - add G_UNICODE_SPACING_MARK define
7114  - more normalisation improvements
7115  - stop using deprecated g_unicode_canonical_decomposition()
7116
7117 * GParamSpec:
7118  - mark the 'name' field as 'const' and add a comment to the header to
7119    help avoid future problems caused by bad hacks
7120
7121 * Merge some (modified) patches from Debian:
7122  - 03_blacklist-directories.patch
7123    - add some blacklisted mount directories
7124  - 60_wait-longer-for-threads-to-die.patch
7125    - sleep longer in a test case, if needed to avoid failing
7126
7127 * Units policy change: prefer use of SI units
7128  - deprecate g_format_size_for_display, add g_format_size(_full)
7129
7130 * GSettings: don't call g_error() when the schema is missing
7131
7132 * GVariant support for arrays of object paths:
7133  - new g_variant_{new,get,dup}_objv API
7134  - support for g_variant_{new,get} '^ao' and '^a&o' similar to '^as'
7135
7136 * GDBus:
7137  - use new improved array-of-objects support and pass 'ao' as char**
7138    instead of GVariant*
7139  - improve handling of 'h' type (Unix file descriptor index)
7140
7141 * GIO:
7142  - fix compilation without USE_STATFS and USE_STATVFS
7143
7144 * Documentation fixes
7145
7146 * Bugs fixed:
7147  622921 Migrate from dbus-glib to glib's GDBus
7148  648271 Add g_unicode_script_to_iso15924()
7149  654948 Stop using deprecated g_unicode_canonical_decomposition()
7150  654988 g_atomic_int_add should document behaviour change
7151  655025 #define G_UNICODE_SPACING_MARK G_UNICODE_COMBINING_MARK
7152  655076 normalization misses some Full_Composition_Exclusion=True. 
7153
7154 * Translations updated:
7155  Spanish
7156
7157 Overview of changes from GLib 2.29.10 to 2.29.12
7158 ================================================
7159
7160 * Add new API to do Unicode (de-)composition in atomic steps,
7161   for use in Harfbuzz.
7162
7163 * Bugs fixed:
7164  615895 (indirectly) support non-NULL-terminated regexes in GRegex
7165  617949 glib trunk fails to compile on Solaris w/ Studio 12...
7166  620423 Document the possibility to unset attributes
7167  627974 Floating reference headaches
7168  644687 Not finding cross-links in current doc set
7169  649246 g_output_stream_splice() cannot be used on 32-bit machines...
7170  653841 a helper script to build glib from git master on win32
7171  653935 g_slist_free_full/g_list_free_full iterates twice in the list
7172  654017 tests: fix glib_translations_work() in gsettings unit test
7173  654085 Don't needlessly use "echo -e" when creating .def files
7174  654195 Add g_unichar_compose() and g_unichar_decompose()
7175  654232 GCancellable eventfd problems
7176  654394 suspicious use of floating references in GDBusInterfaceSkeleton
7177  654536 GSettings: lift key name length restriction to 64
7178  654627 GParamSpec: intern property names
7179  654651 Better g_unicode_canonical_decomposition()
7180  654917 Make g_cclosure_marshal_generic the default signal handler
7181
7182 * Translation updates:
7183  Belarusian
7184  Finnish
7185  Korean
7186  Latvian
7187  Lithuanian
7188  Norwegian bokmål
7189  Turkish
7190
7191
7192 Overview of changes from GLib 2.29.8 to 2.29.10
7193 ===============================================
7194
7195 * New features:
7196  - g_desktop_app_info_get_nodisplay: a function that is required
7197    to port gnome-menus to GDesktopAppInfo
7198  - g_hash_Table_iter_replace: new function to replace a value
7199    while iterating over a hash table
7200  - g_utf8_substring: convenience API to extract substrings from
7201    UTF-8 strings
7202  - g_action_group_add_entries: convenience API for creating lots
7203    of actions quickly
7204  - Use eventfd instead of pipes for waking up main contexts and
7205    for cancellation when available
7206  - GMatchInfo is now a refcounted boxed type
7207
7208 * API changes in GAction:
7209  - the 'set_state' entry in the GActionInterface vtable has been
7210    renamed to 'change_state
7211  - g_action_set_state has been renamed to g_action_change_state
7212  - the 'state' property has been changed to read-only
7213  - GSimpleAction can no longer be subclassed
7214
7215 * Bug fixes
7216  647796 g_variant_new_variant is not marked as constructor
7217  652072 gmain: make use of signalfd()
7218  652168 Crosscompiling Fails if build<=2.24 and host >2.24
7219  652750 make dist fails
7220  652758 GDataInputStream: Clarify g_data_input_stream_read_line docs...
7221  652822 Add a g_hash_table_iter_replace
7222  652897 tiny docs clarification for g_utf8_to_ucs4_fast
7223  653140 gmain: use Linux eventfd() for main context wake up
7224  653429 drop AM_MAINTAINER_MODE or enable it by default
7225  653484 GAsyncCallbacks should default to allow-none
7226         Add missing fundamental types to the generic marshaller
7227
7228 * Translation updates
7229  Belarusian
7230  Galician
7231  Russian
7232
7233 Overview of changes from GLib 2.29.6 to 2.29.8
7234 ==============================================
7235
7236 * Bug fixes
7237  646608 export_symbols variable for gio dynamic library is wrong
7238  646635 Fix introspection of GLib
7239  647930 Documentation: GDataInputStream _read_upto() version
7240  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
7241  651920 Improve qsort_r detection
7242  651959 gbitlock: "asm goto" is not available in gcc < 4.5
7243  651998 gdbus-codegen: Use relative Python imports
7244  652000 Fix for gatomic.c on Windows/MSVC
7245  652002 Proposal to clean up gvaluetransform.c for MSVC
7246  652025 g_dbus_connection_register_object: error is not set...
7247  652081 Typos in a GBinding warning message
7248  652197 Improper handling of double values in GDBusMessage
7249         Fix a deadlock in gobject finalization
7250
7251 * Translation updates:
7252  Czech
7253  Galician
7254  German
7255  Hebrew
7256  Norwegian bokmål
7257  Spanish
7258  Uighur
7259
7260
7261 Overview of changes from GLib 2.29.4 to 2.29.6
7262 ==============================================
7263
7264 * Atomic operations have been rewritten from scratch to make use
7265   of gcc builtins where possible. As a side-effect of this, calls
7266   to g_atomic_ API with explicit casts may now be problematic; if
7267   that happens to you, try first to remove the casts. Another
7268   side-effect of the rewrite is that g_atomic_int_exchange_and_add
7269   has been deprecated in favor of g_atomic_int_add.
7270
7271 * A full set of atomic operations on pointers has been added,
7272   including bit locks in pointer-size locations.
7273
7274 * Access to quarks is now lockless
7275
7276 * GObject data scalability has been greatly improved
7277
7278 * g_data_time_format now supports alternative digits and padding
7279
7280 * Introspection improvements:
7281  - Add a boxed type for GVariantBuilder
7282  - Annotation fixes in GDBus, GVariant, g_base64_
7283
7284 * Bugs fixed:
7285  502560 g_rand_double_range returns 'inf'
7286  612729 g_mkdir_with_parents can fail if the directory already exists
7287  617491 g_once() implementation is inefficient
7288  619418 Add a performance test for UTF-8 decoding functions
7289  619435 Make g_utf8_to_ucs4_fast() yet faster
7290  626549 G_STATIC_ASSERT_EXPR
7291  631231 bitlock: Fix detection and usage of futexes with Bionic
7292  632294 g_queue_remove() should return a boolean
7293  640518 GMainLoop has quadratic complexity when all pollfd's...
7294  642026 Race condition in g_static_private_free
7295  646635 Fix introspection of GLib
7296  648678 g_date_time_format(): support %O flags for localized numbers
7297  649480 Use MSG_CMSG_CLOEXEC in recvmsg in gio/gsocket.c
7298  649506 GTestFunc et al lacking Since tag
7299  649657 Don't return gboolean for functions that throw
7300  649775 glib-gio-gdbuscodegen-Makefile.patch
7301  649915 gsettings accepts unquoted strings longer than two characters
7302  649973 gthread: build unix tests only on unix
7303  649988 gdbus-codegen: Drop dependency on argparse
7304  650078 forkbomb building glib/tests/protocol
7305  650211 Optimization in key file parsing
7306  650236 Application over DBus implements action state incorrectly
7307  650345 g_key_file_has_key_full: New function to fix g_key_file_has_key...
7308  650458 reduce overhead in g_object_set/get_data
7309  650459 hash table consistency while calling destroy notify funcs
7310  650688 enforce rules about hash table modification
7311  650823 expand the set of atomic ops
7312  650874 codegen chokes on docs
7313  650882 use stdout instead of stderr for informational messages
7314  650884 fix compilation with gcc2
7315  650885 implement glib credentials on OpenBSD (hackish)
7316  650935 G_GNUC_MAY_ALIAS and atomic ops
7317  651009 minor documentation fix
7318  651034 Regarding g_cond_wait after g_thread_pool_push in gthreadedresolver
7319  651133 race condition in GDBusConnection's emit_signal_instance_in_idle_cb
7320  651141 hashtable infinite loop
7321  651219 fix path to true(1) on OpenBSD
7322  651223 Fix some compile warnings on OpenBSD
7323  651327 Minor fixes for the gsocket API
7324  651467 Add pointer sized bitlocks
7325  651650 gdbus: Avoid busy wait loop
7326  651725 gmain: Cleanups and a new test case
7327  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
7328
7329 * Updated translations:
7330  Catalan (Valencian)
7331  Esperanto
7332  Hebrew
7333  Hungarian
7334  Russian
7335  Spanish
7336
7337
7338 Overview of changes from GLib 2.29.2 to 2.29.4
7339 ==============================================
7340
7341 * GDBus:
7342  - Includes several new types to support modeling D-Bus
7343    objects and interfaces more fully, and also introduces
7344    an 'object manager' pattern:
7345    GDBusInterface, GDBusObject, GDBusObjectManager
7346    These interfaces have client-side implementations:
7347    GDBusProxy, GDBusObjectProxy, GDBusObjectManagerClient
7348    And server-side implementations:
7349    GDBusInterfaceSkeleton, GDBusObjectSkeleton, GDBusObjectManagerServer
7350  - The new gdbus-codegen utility uses these new classes
7351    to generate C code and documentation from D-Bus interface
7352    descriptions in XML
7353
7354 * GTest:
7355  - There is now a g_test_fail() function to mark
7356    tests as failed
7357
7358 * GDesktopAppInfo
7359  - Now has a binding-friendly filename property
7360  - Other new API to more fully expose desktop file contents:
7361    g_desktop_app_info_get_categories(),
7362    g_desktop_app_info_get_generic_name()
7363
7364 * GHashTable:
7365  - Several optimizations to reduce space consumption of
7366    large hash tables, in particular tables that are used
7367    to store sets.
7368
7369 * Unix-specific APIs:
7370   GLib now installs a separate header, glib-unix.h, that is
7371   meant to collect Unix-specific APIs. For now, it contains
7372   g_unix_open_pipe(), g_unix_set_fd_non_blocking() for dealing
7373   with pipes and fds, as well as APIs to create mainloop
7374   sources which can trigger callbacks on certain Unix
7375   signals (SIGTERM, SIGHUP, SIGINT).
7376
7377 * Bugs fixed:
7378  631379 GDBus nonce-tcp test failing
7379  632631 GLib-CRITICAL **: g_variant_new_string: assertion `g_utf8_validate (string, -1, NULL)' failed
7380  635694 gdbus aborting due to unauthorized socket in DBUS_SESSION_BUS_ADDRESS
7381  637561 Crash when using G_DBUS_SERVER_FLAGS_RUN_IN_THREAD
7382  642935 g_date_time_format() prints wrong value for %z and timezone -0800
7383  643134 g_dbus_message_copy
7384  644941 glib-unix: New Unix-specific API
7385  646013 g_hash_table_remove_all_nodes optimization
7386  646309 glib cannot be cross-compilled for mingw32
7387  646435 GTimeZone doesn't seem to be thread-safe
7388  646957 GIO chained calls don't work with a thread default context
7389  647594 README link to mailing list is broken
7390  647602 Cannot connect to remote message bus via TCP
7391  647746 The GSocketService documentation is incomplete.
7392  647826 API: gtester: Add g_test_fail()
7393  647903 GDesktopAppInfo: Add g_desktop_app_info_get_categories()
7394  648416 g_app_info_create_from_commandline ignores SUPPORTS_STARTUP_NOTIFICATION
7395  648423 Support G_DEBUG=trap-warnings
7396  648425 GDesktopAppInfo: Add "filename" property for bindings
7397  648966 Update g_unichar_iswide and g_unichar_iswide_cjk
7398
7399 * Updated translations
7400  Norwegian bokmål
7401  Spanish
7402  Turkish
7403  Uighur
7404
7405
7406 Overview of Changes from GLib 2.28.0 to 2.29.2
7407 ==============================================
7408
7409 * GApplication
7410  - The documentation has been enhanced and clarified
7411  - An opt-out for uniqueness has been added: G_APPLICATION_NON_UNIQUE
7412  - GApplication now syncs settings before g_application_run() returns
7413
7414 * GDBus
7415  - Interface lookups are now happening in constant time
7416  - Signature checking and handling of various unexpected
7417    situations has been improved
7418
7419 * GVariant
7420  - The format accepted by the GVariant parser has beend documented
7421  - GVariant accepts G_VARIANT_TYPE_VARDICT for a{sv}
7422
7423 * GDateTime:
7424  - The return value of g_datetime_compare() has been fixed to
7425    match strcmp() semantics
7426  - In order to handle problems with changing timezones, a GTimeZoneMonitor
7427    has been added to GIO, and g_time_zone_refresh_local() can be
7428    called to update the cached information about the local timezone
7429
7430 * GOption now uses /proc/self/cmdline to set the program name instead
7431   and only falls back to "<unknown>" if that is unavailable
7432
7433 * GSettings:
7434  - The schema compiler now warns about references to non-existing schemas
7435
7436 * Commandline utilities are now fully translated
7437
7438 * Signals can now indicate that collecting their arguments must
7439   always happen, even in the absence of connected signal handlers,
7440   using the G_SIGNAL_MUST_COLLECT flag.
7441
7442 * Bugs fixed:
7443  635099 Memory leak in gdbus introspection when parsing xml
7444  640489 $ and ^ do not match lines if G_REGEX_MULTILINE|G_R...
7445  642042 Overriding GDBus org.freedesktop.DBus.Properties im...
7446  642052 g_timeout_add(_seconds) cannot handle large intervals
7447  642490 notify_desktop_launch() "g_variant_new_bytestring:...
7448  613269 g_type_get_qdata() doesn't work as I expected on subtypes
7449  624943 G_VALUE_NOCOPY_CONTENTS is undocumented
7450  637738 object_interface_check_properties never actually executes
7451  638185 GIOCondition should be annotated as "flags"
7452  639478 GDBusServer's g_dbus_server_new_sync() function should just...
7453  641755 Add g_settings_get/set_uint() helpers
7454  641768 dconf gsettings backend silently drops writes if it can't...
7455  642797 g_app_info_get_default_for_type() broken for subtypes
7456  642825 Unnecessary assertion failure in g_option_context_parse()
7457  642944 NULL key lookup using g_hash_table_lookup_extended()
7458  643074 Incorrect documentation for g_socket_receive() and g_socket...
7459  643197 g_application_id_is_valid docs imply no valid ids
7460  643468 GApplication docs: Warn that handling "command-line" means...
7461  643478 GApplication::local_command_line vfunc documentation seems wrong
7462  643624 Can g_variant_unref() on an already free'd variant
7463  643649 g_application_run() should say that argc/argv can be NULL
7464  643780 shouldn't need to create an action group to use actions...
7465  643795 g_timeout_add_seconds fires with intervals 1 second longer...
7466  644309 Program name is not set when using GtkApplication
7467  644428 Crash in failure section of g_markup_collect_attributes()
7468  644465 undefined reference to `_usleep'
7469  644552 g_timeout_add_seconds(1, ...) may have a latency of up to 2...
7470  644607 Correct internal definition of C_()
7471  645789 annotations for g_file_*_contents
7472  646039 g_settings_list_children() returns child that cannot be opened
7473  646310 Accept range with only min or max
7474  646420 g_dbus_method_invocation_get_parameters() docs should say...
7475  646843 occasional abort on autologin
7476  646985 add G_APPLICATION_NON_UNIQUE flag
7477  647579 gsettings: Implement reset-recursively
7478  647600 gsettings description has typo
7479
7480 * Translation updates
7481  Afrikaans
7482  Bulgarian
7483  Bengali India
7484  British English
7485  Bulgarian
7486  Catalan
7487  Czech
7488  Danish
7489  French
7490  Galician
7491  German
7492  Greek
7493  Gujarati
7494  Hebrew
7495  Hungarian
7496  Italian
7497  Japanese
7498  Korean
7499  Lithuanian
7500  Polish
7501  Portuguese
7502  Romanian
7503  Serbian
7504  Simplified Chinese
7505  Spanish
7506  Swedish
7507  Traditional Chinese
7508  Uighur
7509  Vietnamese
7510
7511
7512 Overview of Changes from GLib 2.27.93 to 2.28.0
7513 ===============================================
7514
7515 * Bugs fixed:
7516 641363 GInitable documentation isn't clear about that finalize...
7517 641395 Add more data about the origin application to the "Lau...
7518 641411 gdesktopappinfo signals lost if it's the session bus...
7519 641477 glib-mkenums uses unportable #! line
7520 641572 Add @EXEEXT@ to pkgconfig binary name
7521 641688 glib installs GSettings.html and gsettings.html
7522
7523 * Translation updates:
7524  Galician
7525  Italian
7526  Korean
7527  Punjabi
7528
7529
7530 Overview of Changes from GLib 2.27.92 to 2.27.93
7531 ================================================
7532
7533 * Bugs fixed:
7534  637013 gio/gdbusmessage.c fails to compile on Solaris
7535  640192 Error creating a Gio.Settings object through py...
7536  640261 Minimum version for external pcre needs to be..
7537  640262 GActionGroup contains redundant TYPE macros
7538  640436 Make load_user_special_dirs() resistant to non...
7539  640695 g_key_file_load_from_file() mishandles a CR-LF...
7540  640724 can't compile gio due to format string issues
7541  640725 can't compile tests due to format string issue
7542  640807 improve GVariant behaviour with invalid pointers
7543  640823 wrong documentation for g_source_add_child_source
7544
7545 * Translation updates:
7546  Bulgarian
7547  Galician
7548  Hebrew
7549  Norwegian bokmål
7550  Spanish
7551  Traditional Chinese
7552
7553
7554 Overview of Changes from GLib 2.27.91 to 2.27.92
7555 ================================================
7556
7557 * Update to Unicode 6.0
7558
7559 * Update PCRE to 8.12
7560
7561 * Bugs fixed:
7562  637696 g_unix_connection_send_fd() doesn't work
7563  638872 null settings backend bug
7564  640042 GtkApplication's warning about not connecting...
7565
7566 * Translation updates:
7567  Arabic
7568  Basque
7569  Estonian
7570  Greek
7571
7572 Overview of Changes from GLib 2.27.90 to 2.27.91
7573 ================================================
7574
7575 * Bugs fixed:
7576  638838 gdesktopappinfo: Don't crash if we don't have a desktop filename
7577  638894 Splitting on \s* gives no result
7578  639064 Update gschema.dtd
7579  639084 Copy/paste error in GSettings::writable-changed signal
7580  639177 SIGSEGV for GApplications with G_APPLICATION_IS_SERVICE
7581
7582 * Translation updates:
7583  Estonian
7584  Galician
7585  Indonesian
7586
7587
7588 Overview of Changes from GLib 2.27.5 to 2.27.90
7589 ===============================================
7590
7591 * Test reports created by gtester-report can now
7592   include revision information
7593
7594 * The g_desktop_app_info_launch_* family of functions
7595   now emit a DBus signal when an application is launched.
7596   Additionally, there is a new variant
7597   g_desktop_app_info_launch_uris_as_manager(), which
7598   gives more control over the launched process.
7599
7600 * The memory and null GSettings backends are now available
7601   as public API
7602
7603 * g_get_locale_variants() is a new function that returns a
7604   list of variants of a locale identifier
7605
7606 * Bugs fixed:
7607  587898 I/O timeouts for GSocket
7608  606960 gio: Add extension point for informing parties...
7609  631980 Handle an optional <revision> node in the report...
7610  634569 Document that g_variant_builder_add_value consumes...
7611  635998 Make _g_compute_locale_variants public
7612  636806 Add g_{memory,null}_settings_backend_get_default
7613  637262 Need a binary DER version of ::accepted-cas
7614  637544 Skip fsync() on btrfs
7615  637720 void functions should not return a value.
7616  637738 object_interface_check_properties never actually...
7617  637759 GIOChannel: fix a crash in g_io_channel_read_chars()
7618  637852 Updates to glib.vsprops file for MSVC 2008 builds...
7619  637858 Updates to test/testglib.c...
7620  638349 parameter name of g_variant_new_* may conflict...
7621
7622 * Translation updates:
7623  Hebrew
7624  Norwegian bokmål
7625  Simplified Chinese
7626  Spanish
7627  Swedish
7628  Uyghur
7629  Vietnamese
7630
7631
7632 Overview of Changes from GLib 2.27.4 to 2.27.5
7633 ==============================================
7634
7635 * Network support:
7636  - Add g_tls_certificate_verify() to verify a certificate
7637  - Add GTlsConnection:use-system-certdb
7638  - Other TLS api additions
7639
7640 * GIO:
7641  - Add g_io_stream_splice_async()/_finish() to splice two iostreams
7642  - Add g_emblemed_icon_clear_emblems() and make GEmblemedIcon derivable
7643  - Remove GPeriodic; it did not receive the necessary review and
7644    integration work to declare it stable
7645
7646 * GSequence:
7647  - New methods g_sequence_lookup() and g_sequence_lookup_iter()
7648
7649 * Bugs fixed:
7650  617254 Missing g_sequence_lookup
7651  632544 g_dbus_connection_send_message can not send a locked message...
7652  633350 g_hostname_to_ascii() ignores non-ascii dots
7653  634583 Better error reporting for g_variant_parse()
7654  635007 gsetting enum rule don't work for out-of-srcdir builds
7655  635626 GDBus message idle can execute while flushes are pending
7656  636100 Can't read GSettings:backend property
7657  636305 Typo on g_queue_remove_all() function description
7658  636311 appinfo: tweak application positioning for content-types
7659  636351 g_simple_async_result_is_valid lacks a version tag
7660  636387 gdb autoload files shadow the "dir" builtin
7661  636673 g_simple_async_report_error_in_idle should allow object...
7662  637147 Add a "delay-apply" property to GSettings
7663  637171 emblemedicon: add g_emblemed_icon_clear_emblems()
7664  637237 gapplication: plug a memory leak
7665
7666 * Translation updates:
7667  Estonian
7668  Galician
7669  Hebrew
7670  Norwegian bokmål
7671  Simplified Chinese
7672  Spanish
7673  Traditional Chinese
7674  Vietnamese
7675
7676
7677 Overview of Changes from GLib 2.27.3 to 2.27.4
7678 ==============================================
7679
7680 * GIO
7681  - Mounts are treated as hidden if they have a path element
7682    that starts with a dot
7683  - GAppInfo gained API to differentiate between recommended
7684    and fallback mime handlers
7685  - g_cancellable_create_source: creates a GSource that triggers
7686    when the GCancellable is canceled
7687  - GPollableInput/OutputStream: Interfaces for pollable streams
7688  - TLS support has landed, with an extension point that is
7689    implemented in glib-networking
7690
7691 * GLib
7692  - Mainloop sources can now have 'child sources'
7693  - g_get_runtime_dir: New function to return the XDG_RUNTIME_DIR
7694
7695 * Bugs fixed:
7696  530786 GFileMonitor "changed" signal underdocumented
7697  588189 TLS support for GSocket*
7698  630357 g_object_new_valist uses uninitialized memory
7699  630559 typo in public string in gsocks: 'The SOCKSv5 require...
7700  632445 Documentation refers to removed GNOME 2.0 porting guide
7701  634239 Child GSources
7702  634241 Add pollable input/output streams
7703  634504 allow passing a NULL emblem to g_emblemed_icon_new()
7704  634613 unsufficient g_get_user_runtime_dir() documentation
7705  635640 schema should inherit gettext-domain from schemalist
7706  635768 Protect g_file_monitor_set_rate_limit() against negative...
7707  635882 Fix the wrong-category schema test
7708  635187 Wrong type of GVariant received in an action...
7709
7710 * Updated translations:
7711  Galician
7712  Italian
7713  Norwegian bokmål
7714  Uyghur
7715
7716
7717 Overview of Changes from GLib 2.27.2 to 2.27.3
7718 ==============================================
7719
7720 * The GTimeSpec type that was introduced in the 2.27.2 has been
7721   dropped again in favour of APIs that return microseconds as
7722   64-bit integer.
7723   Affected functions:
7724   g_source_get_time
7725   g_periodic_unblock
7726   g_get_monotonic_time
7727   g_get_real_time
7728   The similar GTimeVal struct is still around, but its use is
7729   discouraged.
7730
7731 * GTimer is now using monotonic time unconditionally
7732
7733 * There are some new functions to facilitate error reporting
7734   in async GIO APIs:
7735   g_simple_async_result_take_error
7736   g_simple_async_result_new_take_error
7737   g_simple_async_report_take_gerror_in_idle
7738
7739 * There is new convenience API to us GVariant dictionaries:
7740   g_variant_lookup
7741
7742 * It is now possible to delay sending match rules to the
7743   D-Bus daemon in GDBus:
7744   G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE
7745
7746 * Support has been added for XDG_RUNTIME_DIR:
7747   g_get_user_runtime_dir
7748
7749 * Various fixes for Win64/MSVC builds have been committed
7750
7751 * Bugs fixed:
7752  620263 Add g_clear_object, g_clear_pointer, g_clear_boxed
7753  633075 update Project Files and sources for MSVC 2008/C89
7754  633381 gsettings Makefile rules should handle empty list...
7755  633685 Use g_simple_async_result_{new_,}take_error
7756  633686 Add g_simple_async_report_take_gerror_in_idle
7757
7758 * Translation updates:
7759   Belarusian
7760   Galician
7761   Hebrew
7762   Punjabi
7763   Spanish
7764
7765
7766 Overview of Changes from GLib 2.27.1 to 2.27.2
7767 ==============================================
7768
7769 * GApplication
7770  - Export actions over DBus and support activating them from remote instances
7771  - Support environment passing
7772
7773 * GSettings
7774  - The gsettings utility has a list-recursively command
7775  - The gsettings utility has commandline completion for enum values
7776
7777 * GLib is now linked against librt and uses monotonic time for
7778   timeouts and GPeriod sources. GSource has a new g_source_get_time()
7779   which returns monotonic time, and g_source_get_current_time() has
7780   been deprecated
7781
7782 * Bugs fixed:
7783  158725 free linked list with data
7784  626320 GVariant: Avoid locking in g_variant_get_child_value() if possible
7785  629247 add gsimpleasyncresult methods to take over a GError
7786  629274 GNetworkService does not do fallback when there is no SRV record
7787  631264 gsettings-tool choice/range support
7788  631482 g_date_time_from_instant: 1000000000000000000
7789  632169 docs for manual use of gsettings-data-convert
7790  632571 Add equivalent to gconftool-2's -R option
7791  633115 GSettings m4 doesn't fail the build for broken schemas
7792  633206 Default g_application_local_command_line() doesn't set exit_status...
7793  633339 support more complex gapplication setups
7794  633356 Make timeout G_MAXINT mean "no timeout"
7795
7796 * Translation updates:
7797  Catalan (Valencian)
7798  Indonesian
7799  Japanese
7800
7801
7802 Overview of Changes from GLib 2.27.0 to 2.27.1
7803 ==============================================
7804
7805 * GDateTime now has full week number support.
7806   New API: g_date_time_get_week_numbering_year
7807
7808 * The GSettings schema compiler will now skip over
7809   broken .xml schema files instead of aborting altogether
7810
7811 * GSettings now works properly on bigendian systems
7812
7813 * GSettings has more complete support for ranges
7814   New API:
7815     g_settings_get_range
7816     g_settings_range_check
7817   The gsettings commandline tool supports ranges too.
7818
7819 * GApplication has been rewritten; see the API docs for details
7820   and examples. The action support is not complete yet.
7821
7822 * The GLib mainloop has gained 'dispatch to context' functionality,
7823   which can replace manually created idles in many cases.
7824   New API:
7825     g_main_context_invoke
7826     g_main_context_invoke_full
7827
7828 * The gio-desktop-app-info-lookup extension point has been
7829   removed from GIO. GIO now uses x-scheme-handler mimetypes when
7830   looking for default applications.
7831
7832 * On win32, make g_get_user_data_dir() return the CSIDL_LOCAL_APPDATA
7833   folder on Windows, and not CSIDL_PERSONAL. This matches what Qt does,
7834   and has been widely requested. Also make g_get_user_config_dir() return
7835   this and not the (roaming) CSIDL_APPDATA folder.
7836
7837 * A periodic event clock has been added in GIO: GPeriodic. Note that this
7838   API is still experimental and expected to undergo changes before it
7839   will be incorporated into a stable GLib release. Use at your own risk.
7840
7841 Bug fixes:
7842  613822 gobject signal connect/disconnect not thread safe
7843  618737 "dispatch to context" functionality
7844  620710 g_get_user_data_dir() uses CSIDL_PERSONAL and not CSIDL_APPDATA
7845  623400 acquire context before dispatching
7846  627126 gsettings schema files don't get installed on FreeBSD
7847  627171 g_socket_new_from_fd() doesn't set the right protocol
7848  628876 Wrong error description
7849  628937 gracefully handle broken schemas
7850  629274 GNetworkService doesn't fallback when there is no SRV record
7851  629289 g_error() used wrong, produces core dump
7852  629687 leaks class refcount in gsocketcontrolmessage
7853  629849 GLib-CRITICAL **: g_source_get_context: assertion `!SOURCE_...
7854  629945 GDBus deadlock in g_bus_get_sync()
7855  630000 g_date_time_difference
7856  630077 GDateTime week number support
7857  630185 Allow NULL strings in g_quark_try_string()
7858  630797 docs mention non-existent g_object_dispose()
7859  630968 gschema-compile problems on power g5
7860  631263 GSettings needs range/choice APIs
7861  631264 gsettings-tool choice/range support
7862  631379 GDBus nonce-tcp test failing
7863  631410 Port gapplookupgconf.c to using x-scheme-handler/
7864  632884 Possible deadlock in g_object_remove_toggle_ref()
7865
7866 Transation updates:
7867  Basque
7868  Brazilian Portuguese
7869  British English
7870  Bulgarian
7871  Czech
7872  Dutch
7873  Estonian
7874  French
7875  Galician
7876  German
7877  Greek
7878  Hebrew
7879  Hungarian
7880  Japanese
7881  Lithuanian
7882  Polish
7883  Portuguese
7884  Romanian
7885  Simplified Chinese
7886  Slovenian
7887  Spanish
7888
7889
7890 Overview of Changes from GLib 2.25.15 to GLib 2.27.0
7891 ====================================================
7892
7893 Build:
7894   - massive restructuring to reduce #include abuse
7895   - tweaks to silence some harmless compiler warnings
7896   - rename gschema-compile.c to glib-compile-schemas.c
7897   - Windows fixes
7898   - fix building with zlib < 1.2.4 on win32
7899
7900 GDateTime:
7901   - better msgctxt for translating month and weekday names
7902   - API is changed quite a lot, implementation is improved
7903   - GTimeZone is now exposed
7904
7905 GObject:
7906   - make ordering for overridden interface properties consistent
7907   - ->priv structures are limited to 64k but this was not documented,
7908     and exceeding this limit produced bad results.  Add docs and enforce
7909     the limit properly.
7910   - add g_object_class_install_properties() to install multiple
7911     properties in one go
7912   - improve debugging output for GValue containing G_TYPE_STRV
7913
7914 GIO:
7915   - fix priority sorting of GIO extensions
7916   - add GCredentials support on FreeBSD
7917   - fix support for IPv6 addresses in URI parsing functions
7918   - GSocketClient fixes for when g_socket_connect succeeds immediately
7919   - clarify string encoding for GFile constructors in docs
7920   - new functions g_data_input_stream_read_upto{,async,finish}
7921   - tweak confusing documentation for g_output_stream_write()
7922
7923 GDBus:
7924   - GDBusMessage can now be locked and copied (like in libdbus)
7925   - GDBusConnection filter function API has changed again
7926   - GDBusServer: ::new-connection now declares if the connection was claimed
7927   - add a partial workaround for GObject bug 627724.
7928   - very many memory leaks fixed
7929
7930 GVariant:
7931   - check for size == 0 in g_variant_get_bytestring to avoid a crash
7932     when attempting to get_bytestring() from an empty array
7933   - improve gobject-introspection annotations
7934
7935 GSettings:
7936   - add GSettings Windows registry backend
7937   - some internal tweaks to the backend API
7938   - remove g_settings_list_items
7939   - add g_settings_list_children and _list_keys to replace it
7940   - add schema compiler restrictions for dealing with lists
7941   - don't automatically emit value changed signals on writability
7942     changes
7943
7944 Other:
7945   - constify the 'parser' vtable param to g_markup_parse_context_push()
7946   - plug many memory leaks in test cases
7947
7948 Bugs closed:
7949   50076 Time API to go with date API
7950  584284 g_data_input_stream_read_until_async different from sync version
7951  624546 Modification of GDBusMessage in filter function
7952  626919 Let g_object_class_install_property() return the installed GParamSpec*
7953  628029 GDateTime missing get_week_of_year method
7954  628253 Interface properties not listed in a consistent order
7955  628331 Plug lots of mem leaks in gio test suite
7956  628345 Plug a mem leak
7957  628436 Plug a mem leak
7958  628505 Fix building with zlib < 1.2.4 on win32
7959  628839 [PATCH] datetime: Rename shadowing variables
7960  628904 [PATCH] Add credential support for FreeBSD and fix a socket issue
7961  628952 incorrect glib_major_version and other variables on cygwin.
7962  629192 g_strdup_value_contents(): dump GStrv more usefully
7963  629251 g_socket_client_async_connect_complete: assertion failed
7964  629259 Failed to connect to "::1"
7965  629328 g_markup_parse_context_push doesn't respect const structs
7966  629429 month "May" short and full form same with "GDateTime" msgctxt
7967  629689 GDBusConnection leaks its GCredentials
7968  629698 Segfault in g_variant_get_bytestring() 
7969
7970 Updated translations:
7971   Arabic
7972   Armenian
7973   Basque
7974   British English
7975   Czech
7976   Finnish
7977   Galician
7978   German
7979   Hungarian
7980   Indonesian
7981   Japanese
7982   Lithuanian
7983   Norwegian bokmål
7984   Polish
7985   Portuguese
7986   Punjabi
7987   Simplified Chinese
7988   Slovenian
7989   Spanish
7990   Swedish
7991   Swedish
7992   Traditional Chinese
7993
7994 Overview of Changes from GLib 2.25.14 to GLib 2.25.15
7995 =====================================================
7996
7997  * GIO
7998   - Memory leak fixes
7999   - The GZip(De}Compressor can now process header information
8000   - Support for network proxies has been added, with the GProxy
8001     interface and the gio-proxy-resolver extension point. GIO
8002     includes SOCKSv4 and SOCKSv5 implementations, and libproxy
8003     is also going to provide an implementation of this extension
8004     point.
8005   - There are GAction and GActionGroup interfaces now, which will
8006     be used in GApplication in the near future.
8007
8008  * GObject
8009   - There are now convenience macros for defining boxed and
8010     pointer types
8011
8012  * GDBus
8013   - Memory leak fixes
8014   - GDBusProxy for well-known names can now auto-restart
8015     the service if the name owner disapperas
8016   - Filter functions are now allowed to modify messages
8017
8018  * GLib
8019   - GDateTime is a replacement for GDate that supports time
8020     and timezone information.
8021
8022  * Bugs fixed:
8023   50076 Time API to go with date API
8024  449565 Add G_DEFINE_BOXED_TYPE()
8025  617691 Add GZIP header processing to GZlibCompressor/GZlibDecompressor
8026  622184 add g_memory_output_stream_steal_data
8027  624546 Modification of GDBusMessage in filter function
8028  627088 Build failure in gdbus-peer.c on FreeBSD
8029  627181 save a memdup
8030  627182 Plug a mem leak in the gdbus-connection test
8031  627187 Plug some gdbus mem leaks
8032  627188 gdbus-non-socket test occasionally fails
8033  627252 G_OPTION_FLAG_NO_ARG is only for callback options
8034  627392 gdbus commit 8a3a4596 breaks win32 compile
8035  627407 FTBFS on !linux UNIX platforms
8036  627604 String error: 'that' twice in a row
8037  627969 ABR in g_file_open_tmp
8038  628084 gdbus-peer fails with assertion
8039  628193 Miscellaneous string fixes
8040  628296 abort() in gsocketconnection.c
8041  628309 Plug a mem leak in GConverterOutputStream
8042  628317 GEmblemedIcon:equal implementation is buggy
8043  628323 Fix invalid reads
8044  628327 Plug a mem leak
8045  628328 Plug a mem leak
8046  628329 Don't leak the FD list
8047  628324 Invalid reads in gdbus-export test
8048
8049  * Updated translations:
8050   British English
8051   Danish
8052   Galician
8053   Hebrew
8054   Punjabi
8055   Serbian
8056   Spanish
8057   Traditional Chinese
8058
8059
8060 Overview of Changes from GLib 2.25.13 to GLib 2.25.14
8061 =====================================================
8062
8063 * GDBus
8064  - Make the closure variants of GDBus apis work
8065  - Make error unregistration work
8066  - Use async IO in the IO thread (626748)
8067
8068 * GIO
8069  - Make g_simple_async_result_is_valid work without source (626208)
8070  - GSocketClient: add a timeout property
8071  - Fix memory leaks in GSocketClient
8072  - Handle async vs. sync correctly in GSocketConnection stream (616458)
8073  - Declare stream base classes as abstract
8074  - Clarify semantics of g_output_stream_write() (627071)
8075
8076 * Other
8077  - Improve test coverage for GDBus, GRegex, GAsyncResult
8078  - Drop dead code in pcre, xdgmime
8079  - Fix a race condition in gtester (578295)
8080  - Avoid an extra allocation in GAsyncQueue (626704)
8081  - Add test case for non-socket GIOStream (626841)
8082  - More explicit GVariant docs (622770)
8083  - Imroved docs for GAsyncInitable and GSimpleAsyncResult (602417)
8084
8085 * Translation updates:
8086  - Galician
8087  - Norwegian bokmål
8088  - Punjabi
8089  - Simplified Chinese
8090  - Swedish
8091
8092
8093 Overview of Changes from GLib 2.25.12 to GLib 2.25.13
8094 =====================================================
8095
8096 +-------------------------------------------------------------------+
8097 |   WARNING: There have been no breaks in API or ABI.  Weird, eh?   |
8098 +-------------------------------------------------------------------+
8099
8100 The primary purpose of this release is to fix a serious problem with
8101 glib 2.25.12: glibconfig.h (as generated on a Fedora amd64 system) was
8102 being distributed in the tarball.  It was being used to build some parts
8103 of glib on other systems (eg: 32bit ones).  This was causing some very
8104 serious problems.
8105
8106 There have been many other improvements, however:
8107
8108  Build and testing:
8109   - vastly improved test coverage
8110   - old tests moved to the gtester framework
8111   - gtester Makefile modified so that the tests only run once
8112   - cleanup of how we handle includes while building glib
8113
8114  GVariant:
8115   - add a g_return_if_fail (utf8) to g_variant_new_string()
8116
8117  GDBus:
8118   - perform extra sanity checks when serialising messages
8119   - add API to query and set the byteorder of a GDBusMessage
8120   - improve debug output, add some extra options
8121   - if exiting due to the bus disconnecting us, print an error message
8122     explaining why
8123   - sort property names correctly
8124   - don't bother sending RemoveMatch when we will close the connection
8125     anyway
8126   - use effective uid/gid for credential passing
8127
8128  GSettings:
8129   - add G_SETTINGS_BIND_INVERT_BOOLEAN for inverting boolean bindings
8130     without mapping functions
8131   - mark all strings in the schema compiler for translation
8132
8133  Binding:
8134   - improve closure support for bindings
8135   - copy GSettings INVERT_BOOLEAN flag
8136
8137  Other:
8138   - fix another complicated GCancellable deadlock possibility
8139
8140 Bugs closed:
8141  599590 glib build doesn't look for correct pkg-config
8142  619026 avoid warning in gutils.h when using gcc with -Wconversion
8143  624739 Please fix POTFILES.in
8144  625472 Valgrind claims uninitialized bytes used
8145  625500 g_date_set_time_val documentation doesn't mention local time
8146  625628 GDBusProxy: wrong property name sorting
8147  625753 Incorrect flags used in g_dbus_connection_call_sync()
8148  625827 Expand documentation about error quark naming
8149  625988 builddir != srcdir issues
8150  626107 glibconfig.h is being disted
8151
8152 Updated translations:
8153  French
8154  Galician
8155  Hebrew
8156  Norwegian bokmål
8157  Spanish
8158
8159
8160 Overview of Changes from GLib 2.25.11 to GLib 2.25.12
8161 =====================================================
8162
8163 +-------------------------------------------------------------------+
8164 | WARNING: There have been many API changes in GDBus -- sending     |
8165 | messages, subscribing to signals, closing connections and         |
8166 | registering subtrees are affected.  The ABI for GSettingsBackend  |
8167 | has also been changed.  For both reasons, a new dconf release is  |
8168 | required (and will be along soon).                                |
8169 +-------------------------------------------------------------------+
8170
8171 Build:
8172   - cleanup automake setup
8173   - rename configure.in to configure.ac
8174   - various docs fixups
8175   - move glibconfig.h to glib/
8176   - disable dtrace support on Mac OS (which has incompatible 'dtrace')
8177
8178 GSettings:
8179   - add support for vendor override files (to change the default values
8180     in a schema)
8181   - change GSettingsBackend vtable
8182   - add g_settings_reset()
8183   - support binding to G_TYPE_STRV properties
8184
8185 GDBus:
8186   - many bug fixes, including a serialisation fix
8187   - stop handling incoming connections as soon as stop() is called
8188   - proper support for file descriptor passing
8189   - new flags parameter for sending messages
8190   - new flags parameter for subscribing to signals
8191   - always reset the message serial when sending a message unless
8192     G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL is given
8193   - constness fixes for introspection structures
8194   - clean ups to subtree registration API
8195
8196 Other:
8197   - fix divide by zero bug in g_malloc_n functions
8198   - GIO: don't blindly assume that SOCK_CLOEXEC is supported
8199   - make GObject property notify freezes threadsafe
8200   - GIO: clean up credentials passing
8201   - GApplication: make default-quit not apply if register=FALSE
8202   - GIO: add annotations for gobject-introspection
8203
8204 Bugs closed:
8205  166020 use GAtomic for refcounting
8206  617483 Credentials passing
8207  622005 [GApplication] no way to modify the "default-quit" property
8208  623293 vendor override files
8209  623810 Message serialization bug
8210  623815 Don't check sender for GDBusProxy objects where name is not set
8211  624473 GDBusSubtreeIntrospectFunc return type
8212  624483 GDBusSubtreeEnumerateFunc clarification
8213  624484 GDBusSubtreeDispatchFunc clarification
8214  624754 gdbusaddress.c missing sys/wait.h
8215  624968 div by zero in g_malloc_n family
8216  624991 GSettings mapping for G_TYPE_STRV 
8217  625383 Add missing GI annotations
8218
8219 Updated Translations:
8220  Armenian
8221  Galician
8222  German
8223  Hebrew
8224  Kazakh
8225  Romanian
8226  Simplified Chinese
8227  Spanish
8228
8229 Overview of Changes from GLib 2.25.10 to GLib 2.25.11
8230 =====================================================
8231
8232 +-------------------------------------------------------------------+
8233 | WARNING: There have been minor API changes in GDBus and GVariant. |
8234 | These API changes will not affect many users, but they do require |
8235 | a new version of GTK+ to be installed.                            |
8236 +-------------------------------------------------------------------+
8237
8238 Build:
8239   - add a --disable-Bsymbolic configure flag to disable linking with
8240     -Bsymbolic-functions
8241   - this release sees the complete removal of the old 'g*alias' hacks
8242   - honour the NOCONFIGURE environment variable from autogen.sh
8243   - use proper feature test macros for isnan
8244   - use pkg-config to check for zlib
8245   - add ACLOCAL_AMFLAGS to Makefile.am
8246
8247 GDBus:
8248   - hide Class and instance structures for all GDBus types except
8249     GDBusProxy.  This breaks API by preventing subclassing, but probably
8250     nobody was doing that.
8251   - add new GDBusConnection call to support flushing all pending
8252     outgoing messages
8253   - change the register_object API to add a reference to the
8254     GDBusInterfaceInfo object so the caller need not keep it alive
8255     themselves
8256   - don't rewrite the serial number when sending messages that already
8257     have a serial number
8258   - better error checking for DBUS_SESSION_BUS_ADDRESS environment
8259     variable
8260   - switch to g_parse_debug_string for G_DBUS_DEBUG and add a lot of new
8261     flags
8262   - add support for temporarily freezing a freshly created
8263     GDBusConnection.  Do this until after the ::new-connection signal
8264     has finished running on GDBus services.
8265   - never require non-closed connections (the user is incapable of doing
8266     this due to the obvious race)
8267   - remove weird/misleading redundant check on NameOwnerChanged signal
8268   - emit GDBusProxy::g-properties-changed on NameOwnerChanged
8269
8270 GVariant:
8271   - the 'g_variant_{new,get}_byte_array' APIs have been removed
8272   - g_variant_{new,get,dup}_bytestring has been added, with different
8273     arguments and different behaviour
8274   - g_variant_{new,get,dup}_bytestring_array has been added, doing
8275     essentially the same thing as the 'strv' functions, but with byte
8276     strings instead of utf8 strings
8277   - G_VARIANT_TYPE_BYTESTRING ('ay'), BYTESTRING_ARRAY ('aay') and
8278     STRING_ARRAY ('as') constants have been added
8279   - the undocumented behaviour that g_variant_get_strv() deserialised
8280     arrays of object paths or signature strings has been dropped
8281   - additional varargs support for converting bytestrings or bytestring
8282     arrays with ^ay ^aay ^&ay and ^a&ay
8283   - improved gobject-introspection annotation
8284   - fix a problem with GBuffer calling g_slice_free for the wrong type
8285   - fix leaks in the type inferencing code of the parser
8286
8287 GSettings:
8288   - improved documentation
8289   - updated schema XML DTD, now xincluded into the docs
8290   - added support for schemas that extend other schemas (using the
8291     'extends=' attribute).  Values of keys in the base schema can be
8292     overridden using <override>.
8293   - added theoretical support for lists (using the 'list-of=' attribute)
8294   - lots of new tests
8295   - add support for flags (implemented similarly to enums)
8296   - add support for generating .enums.xml files to gsettings.m4:
8297       gsettings_ENUM_NAMESPACE = org.example.myapp
8298       gsettings_ENUM_FILES = ../path/to/*.h
8299     will generate org.example.myapp.enums.xml with mappings for all
8300     enums and flags in the specified .h files.
8301   - warn with g_message() if the 'memory' backend is used by default
8302     (ie: because no other GSettings backends are installed)
8303   - fix get_property() for GSettings::schema
8304   - command line tool: fix a bug that prevented non-basic values from
8305     being set due to a premature free
8306   - command line tool: bash completion support
8307   - chain up in _finalize
8308   - add a new g_settings_get_mapped API to read settings that require
8309     post-processing
8310   - retry with the translated or schema default value if the
8311     GSettingsBindGetMapping function fails
8312   - schema compiler: never fail due to empty schema directories (but
8313     warn)
8314   - peek rather than ref/unref the GEnumClass in the mapping function
8315   - schema compiler: compile *.enums.xml before *.gschemas.xml to ensure
8316     that we have all the enums that the schemas may reference
8317   - schema compiler: improve accuracy of line numbers in error reports
8318   - fix crashes in the keyfile backend caused by invalid group names in
8319     the keyfile
8320
8321 Other:
8322   - always intern GBinding prop names
8323   - base64: remove asserts preventing conversion of empty strings
8324   - document NULL special-cases for GValueArray
8325   - GNode docs improvements
8326   - improve detection of 'system internal' mounts
8327   - fix leaks in the inotify GFileMonitor implementation
8328   - annotate all custom GIO GSources to improve debugging (e.g. using
8329     SystemTap)
8330
8331 Tests:
8332   - Turn on glibc malloc checking features for make check
8333   - improvements for GSettings tests, plus new tests
8334   - improved tests for GKeyfile
8335   - new tests for GDir, GSList, GSList, GAppLaunchContext,
8336     CharsetConverter, GIcon, ...
8337   - move some tests to GTester (tree tests, uri tests)
8338   - generally, really an awful lot of new tests
8339   - don't try to allocate 2gigs of memory anymore for the array test
8340
8341  552363 g_value_array_{insert,prepend,append}'s special cases for NULL
8342  561248 Improve return value description from g_node_prev/next_sibling()
8343  570036 Add ACLOCAL_AMFLAGS to Makefile.am
8344  576833 g_sprintf add a reference to g_strdup_printf
8345  576854 g_strconcat() documentation should provide a hint about bad l10n
8346  582227 reference: add other URI functions to 'URI Functions' section
8347  599223 should provide g_spawn_* variants that take a GAppLaunchContext
8348  610784 array test failing
8349  613057 Leak in inotify GFileMonitor implementation
8350  620536 Annotate all custom GIO GSource using g_source_set_name
8351  620913 More control with G_DBUS_DEBUG
8352  622124 implement flags
8353  622127 GSettings extended key validation
8354  622128 retry with default value for failed mapping
8355  622294 More annotations for GVariant
8356  622565 glib-compile-schemas fails when no schemas
8357  622600 Fix missing prototype warning
8358  622813 gsettings mapping & enum buglet
8359  623142 Ensure ::new-connection runs before processing D-Bus messages
8360  623143 Never require non-closed connections
8361  623319 use g_parse_debug_string for dbus debug flags
8362  623401 process enums first
8363  623402 schema compiler reports wrong line numbers
8364  623407 g_keyfile_settings_backend_new crashes with the key "/"
8365  623473 zlib should be checked with pkg-config
8366  623537 GDBusProxy has weird checking on NameOwnerChanged
8367  623538 GDBusProxy::g-properties-changed emission for corner cases
8368  623692 directory with file at multiple MLS levels may display empty
8369  623720 gschema.dtd does not contain enum definitions
8370  623770 quoting of expand_macro in gdesktopappinfo.c
8371  623772 gdesktopappinfo.c, function child_setup
8372  623780 g_unix_is_mount_path_system_internal
8373  623954 g_settings_finalize
8374  623955 Dubious return values
8375
8376 Updated translations:
8377  Galician
8378  Hebrew
8379  Norwegian bokmål
8380  Spanish
8381
8382 Overview of Changes from GLib 2.25.9 to GLib 2.25.10
8383 ====================================================
8384
8385 +----------------------------------------------------------------+
8386 | WARNING: There have been API changes in GDBus. Users of these  |
8387 | APIs will need to be adapted.  In particular, a new release of |
8388 | dconf is required to go along with this one.  There has also   |
8389 | been a change in the GSettings backend API used for keyfiles.  |
8390 +----------------------------------------------------------------+
8391
8392 * GDBus:
8393  - add direction parameter to filter functions (API change)
8394  - allow calling other interfaces with a GDBusProxy
8395  - padding added to class struct fields (ABI change)
8396  - fixes for closures-based functions
8397
8398 * GVariant:
8399  - new is_floating() call
8400  - add g_value_take_variant() call (required for marshallers)
8401
8402 * GSettings:
8403  - support for binding GParamSpecEnum properties
8404  - ifelse-style condition support for GLIB_GSETTINGS m4 macro
8405  - remove gsettings-schema-convert tool (now in GConf)
8406  - allow introspection of all installed schemas
8407  - allow introspection of the keys in a schema
8408  - rewrite keyfile backend (API change)
8409
8410 * GNIO:
8411  - don't implicitly close GSocket until it is destroyed
8412  - windows fixups
8413
8414 * Other:
8415  - allow GChecksum to take (NULL, 0) for data/length
8416  - GRelation and GCompletion are now deprecated
8417  - introduce G_PARAM_DEPRECATED and G_ENABLE_DIAGNOSTIC
8418  - add working directory to GApplication platform data
8419  - lots of documentation cleanups
8420  - PCRE updated to 8.02
8421
8422 * Build:
8423  - the IA__g_* style symbol aliasing has been disabled and replaced with
8424    the -Bsymbolic-functions linker flag on platforms that support it.
8425    Please be on the watch for portability issues and report them to us.
8426  - many test cases have been moved to the GTester framework
8427  - lcov support has been added for tests
8428  - many windows fixes
8429
8430 * Bugs fixed:
8431  501057  lcov coverage suite and GLib integration
8432  551271  deprecate GRelation
8433  601686  Implement diagnostic mode
8434  603309  GSocketOutputStream broken on Windows (?)
8435  616718  GLIB_GSETTINGS macro can't be used conditionally
8436  616855  GSocketConnection: don't close the socket if it's still reffed
8437  618866  g_ptr_array_remove_index_fast memory leak
8438  619878  keyfile backend calls keys_changed with invalid argument
8439  619879  keyfile backend doesn't make use of expected_type
8440  621092  Add with_closures() variants for bindings
8441  621172  Cross compiling fails
8442  621838  Actually add cwd to platform data
8443  621945  Filter outgoing messages in GDBusConnection
8444  621947  add g_value_take_variant
8445  622038  GSettings: "It is a programmer error" documentation is unclear
8446  622154  [patch] update documentation for g_application_new
8447  622281  binding: Add SYNC_CREATE to the flags
8448  622480  Improve documentation for g_strcmp0()
8449  622554  g_error called if schema not installed
8450  622601  Return interned strings from g_settings_list_keys
8451
8452 * Translation updates:
8453  - Galician
8454
8455 Overview of Changes from GLib 2.25.8 to GLib 2.25.9
8456 ===================================================
8457
8458 +----------------------------------------------------------------+
8459 | WARNING: There have been API changes in GDBus, GSettings and   |
8460 | GApplication. Users of these APIs will need to be adapted. In  |
8461 | particular, a new release of GTK+ is required to go along with |
8462 | this one.                                                      |
8463 +----------------------------------------------------------------+
8464
8465 * GDBus
8466  - Use Gio's default async implementation
8467  - Fix proxy construction for objects with no properties
8468  - Fix error handling in synchronous initialization
8469  - Do not dispatch calls to unregistered objects
8470  - Add _with_closures alternative functions
8471  - Allow constructing GDBusProxy with well-known names
8472  - Remove GType parameters from GDBusProxy constructors
8473  - Nuke g_bus_watch_proxy API
8474  - Add --xml to gdbus-tool to print raw introspected XML
8475
8476 * GSettings
8477  - schema file format change: store (default, options) in gvdb
8478  - Add g_settings_sync()
8479  - Add support for enums and ranges
8480  - 'context' support has been replaced by direct use of
8481    GSettingsBackend
8482
8483 * GApplication
8484  - Switch to using variants for timestamps
8485  - Use GInitable
8486
8487 * GObject
8488  - Introduce g_object_notify_by_pspec
8489  - Add GBinding
8490  - The GVariant gtype G_TYPE_VARIANT was changed from boxed
8491    to fundamental. We believe there were no existing users
8492    of the boxed type, so this should not cause any applications
8493    to break.
8494
8495 * Test framework
8496  - Add package and version to the test report XML
8497  - Use optparse to parse gtester-report commandline
8498  - Add subunit support to gtester-report
8499  - Prevent division by zero if no tests
8500
8501 * Bugs fixed:
8502  621782 Crash using gbinding
8503  619945 GConverterOutputStream triggers assertion and corrupts data
8504  621319 more leaked GVariants in GSettings
8505  621168 GKeyFile memory leak on Windows platform
8506  621002 Switch to using variants for timestamps, split out signals
8507  620953 tiny docs addition
8508  618904 Lies in gunixmounts documentation
8509  621702 Correctly initialize GError
8510  611778 minor cleanup of gtester-report
8511  621213 GDBusProxy and well-known names
8512  621034 Rewrite apps test to ensure children are killed
8513  620954 gapplication gvariant simplifications
8514  611869 add subunit out feature to gtester-report
8515  621119 GDBusProxy and objects with no properties
8516  620990 Use Gio's default async implementation again
8517  620952 g_application_register_with_data is an ugly API
8518  621252 GSettings leaks context
8519  618715 fork() in GSettings test cases is problematic 618715
8520  621905 Assume a ref when doing async work
8521  621266 GSettings "context" clarification
8522
8523 * Translation updates:
8524  Chinese
8525
8526
8527 Overview of Changes from GLib 2.25.7 to GLib 2.25.8
8528 ===================================================
8529
8530 * Initial support for dtrace and systemtap profiling:
8531  - mainloop sources can be named
8532  - probes for memory allocation with g_malloc and gslice
8533  - gquark name tracking
8534  - type creation
8535  - object life-cyle (creation, finalization, ref, unref)
8536  - signal creation and emission
8537
8538 * GVariant
8539  - has been fixed to work with the FreeBSD malloc
8540  - added introspection annotations
8541  - new function: g_variant_builder_add_parsed
8542
8543 * GSettings:
8544  - g_settings_set/get_strv functions have lost their length parameter
8545  - g_settings_set_strv accepts NULL
8546  - added introspection annotiations
8547
8548 * GPermission: an abstract interface for representing permissions,
8549   with a minimal implementation named GSimplePermission
8550
8551 * GApplication: a basic application support class, with a D-Bus based
8552   implementation
8553
8554 * Bugs fixed:
8555  619585 glib-compile-schemas asserts on FreeBSD
8556  620384 Annotate GVariant and GSettings _strv() functions
8557  606044 Add support for dtrace/systemtap static markers
8558  620350 add g_variant_builder_add_parsed() API
8559  620349 utf8ify GVariant printer
8560  620767 Typo in GSettings documentation: "INTLTOOL_NOMERGE_RULE"
8561  620312 Fix g_settings_[gs]et_strv() API
8562  620519 GPermission
8563  620582 GPermission needs a simple implementation
8564  620496 GSettings schema compiler should reject invalid paths
8565  620173 missing single header inclusion guards
8566  620265 g_assertion_message_error should take const GError *
8567
8568 * Translation updates:
8569  Esperanto
8570  Galician
8571  Hebrew
8572  Indonesian
8573  Norwegian bokmål
8574  Slovenian
8575  Spanish
8576
8577
8578 Overview of Changes from GLib 2.25.6 to GLib 2.25.7
8579 ===================================================
8580
8581 * NOTE: API/ABI breaks since 2.25.6 release:
8582   - g_dbus_connection_sync{,_sync} takes a new 'reply_type' argument
8583   - GSettingsBackendClass 'list' virtual function changed
8584
8585   GSettings backends and things using GDBus may need to be rebuilt.
8586
8587 * GDBus: many build-related fixes
8588
8589 * GDBus (service): return a DBus error when receiving a method call for
8590   an unknown interface.
8591
8592 * GSettings: fix 'make install' bug in gsettings.m4 for generated schema
8593   files
8594
8595 * GSettings: avoid non-portable use of LC_MESSAGES
8596
8597 * better approach to handling man pages
8598
8599
8600 * Bugs fixed:
8601  619527 please improve docs on g_file_make_symlink
8602  619391 send-with-reply should have expected result signature
8603  618616 Use stack-allocated GVariantBuilders
8604  617004 Build with "--disable-nls" fails under MinGW/Win32
8605  619142 Build fixes (GDBus)
8606
8607 * Updated translations:
8608  Estonian
8609  Galician
8610  Norwegian bokmål
8611
8612 Overview of Changes from GLib 2.25.5 to GLib 2.25.6
8613 ===================================================
8614
8615 * GDBus: introspection improvements
8616 * GDBus: build fixes
8617
8618 * GSettings: GSettingsBackend ABI changed               **** NOTE ****
8619 * GSettings: --uninstall option for schema compiler
8620 * GSettings: new m4 macro with more power
8621 * GSettings: thread support
8622
8623 * rework of file notification on Solaris
8624 * fixes for gold linker
8625
8626 * Bugs fixed:
8627  619038 increase gsettings.m4 power
8628  619031 method-calls-in-thread test failing
8629  618839 Typo at translation message
8630  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
8631  618730 gunixcredentialsmessage.c doesn't compile on GNU/kfreebsd
8632  616314 Make GSettings (partially) threadsafe
8633
8634 * Updated Translations:
8635  Indonesian
8636  Galician
8637  Spanish
8638
8639 Overview of Changes from GLib 2.25.4 to GLib 2.25.5
8640 ===================================================
8641
8642 * GDBus: Fix serialization of empty arrays
8643
8644 * GDBus: Plug various memory leaks
8645
8646 * GSettings: Fix problems with GSETTINGS_CHECK_RULE
8647
8648 * Bugs fixed:
8649  616731 GSETTINGS_CHECK_RULE doesn't work in non-srcdir builds
8650  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
8651  618615 mem leaks in parse_value_from_blob
8652  618622 Plug some mem leaks in gdbus
8653  618650 Plug a mem leak in gdbusauth
8654  618663 Plug mem leaks in gdbus tests & examples
8655
8656 * Updated translations:
8657  Spanish
8658
8659
8660 Overview of Changes from GLib 2.25.3 to GLib 2.25.4
8661 ===================================================
8662
8663 * GDBus D-Bus support has been merged. This provides an API
8664   to replace dbus-glib
8665
8666 * GVariant no requires strings to be UTF-8. You can use byte
8667   arrays for non-UTF-8 strings.
8668
8669 * GSettings allows to bind string properties to byte arrays
8670
8671 * The schema compiler supports range restrictions
8672
8673 * Bugs fixed:
8674  618051 socket-server|client.c fail to compile under AIX...
8675  616102 GSettings ignores <choice> and <range>
8676  616720 Chunked quark allocation
8677  616877 Several issues with g_socket_receive_message
8678  616892 gio: Add a boxed type for GFileAttributeMatcher
8679  616967 Add g_regex_get_compile_flags() and g_regex_get_match_flags()
8680  617767 g_settings_[gs]et_strv() 'length' argument has missing docs...
8681  617914 gtester-report: cope with binaries with no test cases
8682  617937 output_stream_close vs output_stream_close_async semantics
8683  615494 Connction timeouts produce partially invalid error messages
8684  617823 glib-compile-schemas problems with an out of source build
8685  617947 glib-mkenums: add @valuenum@ support
8686
8687 * Translation updates:
8688  Galicaian
8689  Norwegian bokmål
8690  Shavian
8691  Spanish
8692
8693
8694 Overview of Changes from GLib 2.25.2 to GLib 2.25.3
8695 ===================================================
8696
8697 * New macro: G_GNUC_DEPRECATED_FOR, a variant of G_GNUC_DEPRECATED
8698   that lets you add replacement information (requires gcc 4.5)
8699
8700 * Rename AM_GSETTINGS autoconf macro to GLIB_GSETTINGS
8701
8702 * Rename gschema-compile utility to glib-compile-schemas
8703
8704 * Add support for timeouts in GSocket
8705
8706 * Bugs fixed:
8707  589989 Compilation error on Solaris 9
8708  616648 Change AM_GSETTINGS macro to GLIB_GSETTINGS
8709  587898 I/O timeouts for GSocket
8710  614541 Add G_TYPE_ERROR boxed type for GError
8711
8712
8713 Overview of Changes from GLib 2.25.0 to GLib 2.25.2
8714 ===================================================
8715
8716 * Include a 'gsettings' utility, for commandline access to GSettings
8717
8718 * Install a AM_GSETTINGS autoconf macro similar to AM_GCONF
8719
8720 * GSettings can bind the writability of a key explicitly
8721
8722 * There is now a predefined boxed type for GError
8723
8724 * Bugs fixed:
8725  615379 g_new macros crash if sizeof(struct_type) == 0
8726  616312 Add m4 rule equivalent to GCONF_SCHEMAS_INSTALL
8727  616295 mapping bug for uint64
8728  616216 glib compile from remote directory fails
8729  615960 Fix size passed to connect() for abstract sockets
8730  616432 Crash in gschema-compile
8731  616331 gsettings-schema-convert uses imaginary types
8732  616309 gsettings-schema-convert should output gettext-domain
8733  616384 Add mention of GConfBridge in conversion docs
8734  616311 gschema-compile outputs in current directory
8735  616276 simplify gschema-compile test setup
8736  616156 keys with unnecessary empty options arrays
8737  616405 gsettings missing g_return_if_fail's
8738  616245 Use G_DEFINE_INTERFACE macro
8739  614541 Add G_TYPE_ERROR boxed type for GError
8740
8741 * Updated translations:
8742  Catalan (Valencian)
8743  Galician
8744  Kannada
8745  Spanish
8746
8747
8748 Overview of Changes from GLib 2.24.0 to GLib 2.25.0
8749 ===================================================
8750
8751 * The GSettings framework has been merged. This provides the API to
8752   replace GConf. DConf will provide a backend implementation for it.
8753   GConf will also provide a backend implementation to ease the
8754   transition. We provide utilities to assist with schema conversion
8755   and data migration, as well as a porting guide.
8756
8757 * Translation updates:
8758  Bengali
8759  Catalan
8760  Danish
8761  Gujarati
8762  Marathi
8763  Thai
8764  Traditional Chinese
8765
8766
8767 Overview of Changes from GLib 2.23.6 to GLib 2.24.0
8768 ===================================================
8769
8770 * Bug fixes:
8771  613601 buglet in dup_close_on_exec_fd
8772  584284 g_data_input_stream_read_until_async behaves confusingly
8773  613748 Write errors in middle of copy cause hang
8774  613923 splice_stream_with_progress: wrong error handling
8775  613667 Typo in GObject documentation
8776  613618 gvariant format string docs unclear
8777
8778 * Translation updates:
8779  Basque
8780  Ukrainian
8781  Vietnamese
8782
8783
8784 Overview of Changes from GLib 2.23.5 to GLib 2.23.6
8785 ===================================================
8786
8787 * Class private data:
8788   - support for private data associated with a GTypeClass
8789
8790 * GVariant merge is now complete:
8791   - loading functions and parser merged
8792
8793 * Windows improvements:
8794   - socket fixes
8795   - various build improvements
8796   - removal of GCC/C99isms in favour of portable code
8797   - drop unmaintained Visual Studio 8 support
8798
8799 * Minor API addition:
8800   - g_desktop_app_info_get_filename()
8801
8802 * Bugs fixed:
8803  521707 Class private data
8804  612502 build fails on glib/tests/gvariant.c
8805  612832 [GDesktopAppInfo] New function g_desktop_app_info_get_filename
8806  612702 [PATCH] Fix GSocket-related crash on Windows
8807  612736 Improve the documentation about single include
8808  610858 gvariant test fails sometimes
8809  612327 uninitialized variable
8810
8811 * New translations:
8812  Afrikaans
8813  LowGerman
8814
8815 * Updated translations:
8816  Czech
8817  Finnish
8818  Galician
8819  Greek
8820  Punjabi
8821  Romanian
8822  Serbian
8823
8824
8825 Overview of Changes from GLib 2.23.4 to GLib 2.23.5
8826 ===================================================
8827
8828 * New API addition: g_malloc_n() and friends used to implement an
8829   overflow-safe family of g_new() macros.
8830
8831 * GVariant:
8832  - GVariantBuilder and GVariantIter are now merged.
8833  - The variable arguments API is now merged.
8834  - The parser will be in a future release.
8835
8836 * GIO:
8837  - Remove GUtf8InputStream (which never appeared in a stable release)
8838    for now since it doesn't satisfy the needs of its main intended use
8839    case.  We hope to reimplement this feature in a better form in a
8840    future release.
8841
8842 * Bugs fixed:
8843  609531 missing licence headers
8844  612107 Missing G_FILE_ATTRIBUTE_TRASH_ORIG_PATH
8845  611897 g_io_modules_scan_all_in_directory leaks
8846  608196 Overflow-safe g_new family
8847  611696 gio uses GetAddrInfo which requires special handing on windows 2k
8848  605667 Don't use G_PARAM_SPEC_VALUE_TYPE when we know the pspec is valid
8849  610860 test_g_file_open_readwrite fails if $HOME is unwritable
8850  552912 glib-2.18 /live-g-file/test_copy_move failed when run as root
8851  609813 Renaming a file discards file notes
8852
8853 * Updated translations:
8854  Basque
8855  Brazilian Portuguese
8856  British English
8857  Bulgarian
8858  Catalan
8859  Danish
8860  Estonian
8861  French
8862  German
8863  Hungarian
8864  Italian
8865  Lithuanian
8866  Norwegian bokmål
8867  Portuguese
8868  Russian
8869  Slovenian
8870  Spanish
8871  Swedish
8872  Traditional Chinese
8873
8874
8875 Overview of Changes from GLib 2.23.3 to GLib 2.23.4
8876 ===================================================
8877
8878 * GVariant: The core of GVariant has been merged now, with some
8879  API still to follow.
8880
8881 * GIO:
8882  - There is a new interface GFileDescriptorBased for file descriptor
8883    based IO. GLocalFile{Input,Output}Stream implement it
8884  - Use splice(2) to transfer data between file descriptors without
8885    extraneous copies
8886  - Add a way to request move events from file monitors
8887
8888 * Bugs fixed:
8889  609143 *result_uncertain is never assigned in g_content_type_guess
8890  604086 Use splice(2) when doing local file copies
8891  547890 No move events for GFileMonitorEvent?
8892  568760 nautilus freezes due to a bug in garray.c:322
8893  609962 Add info about the use of G_DEFINE_INTERFACE
8894  609564 g_base64_encode_close docs should mention outbuf size...
8895  610484 g_variant_equal bug
8896  610131 libasyncns does not compile on Solaris 8
8897  609530 missing single header include guards
8898
8899 * Updated translations:
8900  Czech
8901  Estonian
8902  Galician
8903  German
8904  Korean
8905  Polish
8906  Slovenian
8907  Spanish
8908  Traditional Chinese
8909
8910
8911 Overview of Changes from GLib 2.23.2 to GLib 2.23.3
8912 ===================================================
8913
8914 * GLib now has a facility for locks that consume only one bit of
8915   storage inside an integer: g_bit_lock()
8916
8917 * GVariant: The serializer has been merged, with more API to follow
8918
8919 * Bugs fixed
8920  548967 1 bit mutex lock
8921  604967 2.22.3 libasyncns build fails on HP-UX 11.11
8922  608602 G_VALUE_COLLECT_INIT variables shadow those in G_VALUE_COLLECT
8923  608743 Crash in g_hostname_to_ascii visiting certain website in epiphany
8924  599197 array ref and unref functions crash on NULL array.
8925  608159 mem leak in g_io_modules_scan_all_in_directory
8926
8927 * Translation updates
8928  Brazilian Portuguese
8929  Czech
8930  French
8931  Norwegian bokmål
8932  Slovenian
8933  Spanish
8934  Thai
8935
8936
8937 Overview of Changes from GLib 2.23.1 to GLib 2.23.2
8938 ===================================================
8939
8940 * We are now using gcc builtins for atomic operations when available
8941
8942 * g_assert() grew the ability to store assertions in core dumps
8943
8944 * GIO supports lazy loading of GIO modules, and there is a new
8945   gio-querymodule utility that goes along with this.
8946   Packagers will need to adapt to this.
8947
8948 * Threading changes:
8949  - The requirements for g_thread_init() have been relaxed slightly,
8950    it can be called multiple times, and does not have to be the first
8951    call.
8952  - GObject now links to GThread and threads are enabled automatically
8953    when g_type_init() is called.
8954  - Thread-safety issues with boxed types in GObject have been fixed.
8955
8956 * GObject:
8957  - Another bunch of performance work has landed
8958
8959 * GVariant:
8960  - GVariantType has been merged, with the rest of the GVariant
8961    API to follow.
8962
8963 * Bugs fixed:
8964  568760 nautilus freezes due to a bug in garray.c:322
8965  602417 Document lifecycles of GSimpleAsyncResult and friends
8966  604824 crash in Epiphany: Selecting my Slashdot bo...
8967  448888 don't init g_slice for always-malloc
8968  531902 Use GCC atomic buildins for g_atomic*
8969  554887 boxed type registration is not thread safe
8970  586150 unresolved symbols when building glib 2.21.2 on OS X Tiger
8971  589176 row gvalue transform array exponentially
8972  594872 Support storing assertion messages into core dump
8973  602240 Upgrade libasyncns to 0.8
8974  603590 Speed up G_VALUE_COLLECT
8975  604457 gutf8inputstream.c: increasing unknown size pointer
8976  605686 GCharsetConverter doesn't flush
8977  605733 g_memory_output_stream_new violates GObject standards
8978  605883 g_object_new() processes varargs even when there are none
8979  605977 invalid utf-8 conversion in g_local_file_get_parse_name(...
8980  606775 Enable threads by default in gobject
8981
8982 * Translation updates:
8983  Asturian
8984  Basque
8985  Bengali
8986  Bulgarian
8987  Estonian
8988  Norwegian bokmål
8989  Spanish
8990  Thai
8991  Ukrainian
8992
8993
8994 Overview of Changes from GLib 2.23.0 to GLib 2.23.1
8995 ===================================================
8996
8997 * GObject performance work has landed:
8998  - Construction of simple objects is much faster
8999  - Interface lookup is lock-free and constant-time now
9000  - Reduced locking overhead when dealing with types
9001
9002 * GType now has a G_DEFINE_INTERFACE convenience macro
9003
9004 * GIO gained GUtf8InputStream, an input stream that
9005   performs utf-8 validation
9006
9007 * GLib now has byte-swap macros for gsize and gssize
9008
9009 * Bugs fixed:
9010 557151 Determining the newly_constructed boolean in gobject.c...
9011 557100 Performance improvements for GObjectClasses that don't...
9012 501166 Warning message says IA__g_type_init instead of g_type_init
9013 585375 Performance and Contention problems with g_type_class_ref...
9014 587892 Race in GType when instantiating the same class for the...
9015 603270 Input Stream validating utf8
9016 603476 gioenums.h:62: error: comma at end of enumerator list
9017 603540 g_time_val_from_iso8601 uses uninitialised variable
9018 603982 Stack overflow when reading file async with filter
9019 604645 G_DEFINE_INTERFACE_* documentation is not generated
9020 604875 Use of sa_len conflicts with system header
9021 320482 provide G_DEFINE_TYPE like macros for interfaces
9022
9023 * Updated translations:
9024  Estonian
9025  Hebrew
9026  Norwegian bokmål
9027  Vietnamese
9028  Welsh
9029
9030
9031 Overview of Changes from GLib 2.22.x to GLib 2.23.0
9032 ===================================================
9033
9034 * GIO:
9035  - GConverter: a generic interface for stateful conversions of data,
9036    suitable for charset conversion, compression, decompression, regexp
9037    replacement. Concrete implementations are GCharsetConverter,
9038    GZlibCompressor and GZlibDecompressor. GConverterInputStream,
9039    GConverterOutputStream are stream implementations that convert data
9040    while loading or saving it.
9041  - GMounts can now have a 'default location': a path that reflects
9042    the main entry point for the user (e.g. the home directory).
9043  - As a consequence of the compression support, GIO depends on zlib now.
9044
9045 * GObject:
9046  - G_IMPLEMENT_INTERFACE_DYNAMIC: a convenience macro for adding
9047    interfaces to dynamic types.
9048
9049 * GModule:
9050  - The -pthread flag has been added to all gmodule .pc files, because
9051    it is not generally permissible to load modules that are linked
9052    against libpthread if the program has not been compiled with threading
9053    support.
9054
9055 * Bugs fixed:
9056  601637 GUnixFDMessage should contain a GUnixFDList
9057  585566 GSocketListener API issues
9058  572252 Bug in g_file_test() function.
9059  600550 g_app_info_create_from_commandline doesn't treat arguments properly
9060  541236 not detecting exact content type
9061  350200 [PATCH] GTypeModule derived class unref does not unload plugin
9062  589631 Please enclose literal values with double quotes
9063  577711 cross compile check for g++ broken
9064  600620 Support X-GNOME-FullName in GAppInfo
9065  598899 GWin32DirectoryMonitor is broken
9066  593809 Nautilus does not restore the position of the icons on the desktop...
9067  563627 g_get_prgname() threadsafety
9068  600141 Add -pthread to gmodule pkg-config
9069  593856 file and directory monitors don't work when glib is compiled...
9070  324930 Nautilus should disallow copying of symlink to FAT drive early
9071  587300 Deadlock when calling g_cancellable_disconnect in a...
9072  595138 GFile not robust with invalid input
9073  591216 Warning building resolver.o
9074  590016 Does not compile under MinGW32 + Wine
9075  591214 Warnings building gcancellable.o
9076  561998 Have specific entry points (paths) for mounts...
9077  508157 Add G_IMPLEMENT_INTERFACE_DYNAMIC
9078  535159 g_file_has_parent
9079
9080 * Updated translations:
9081  Brazilian Portuguese
9082  Catalan
9083  Estonian
9084  Galician
9085  Norwegian bokmål
9086  Shavian
9087  Slovenian
9088  Spanish
9089  Swedish
9090
9091
9092 Overview of Changes from GLib 2.22.1 to GLib 2.22.2
9093 ===================================================
9094
9095 * GIO:
9096  - Support case-sensitive globs in the shared mime database,
9097    including support for the newer cache format that allows these.
9098    Case-sensitive globs have been introduced in shared-mime-info
9099    version 0.70
9100
9101 * GObject:
9102  - Speed up creation of simple objects
9103
9104 * Bugs fixed:
9105  597194 Typo in _G_TYPE_CVH macro
9106
9107 * Updated translations:
9108  Russian
9109
9110
9111 Overview of Changes from GLib 2.22.0 to GLib 2.22.1
9112 ===================================================
9113
9114 * Bugs fixed:
9115  596064 Test file marked for translation
9116  595972 possibly invalid search in mime_info_cache_dir_add_...
9117  596561 C99 style of declaration of variable in gmessages.c
9118  596314 g_utf16_to_utf8 returns an invalid UTF8 string
9119  596748 g_async_result_get_source_object returns a new ref
9120  593809 Nautilus does not restore the position of the icons...
9121  593775 uses inotify_init1 unconditionally
9122
9123 * Updated translations:
9124  Bengali
9125  Hebrew
9126
9127
9128 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
9129 ===================================================
9130
9131 * Add gdb python macros to make gobject debugging more pleasant
9132
9133 * Bugs fixed:
9134  579050 Allow making selected critical and warning messages non-fatal
9135  594759 g_socket_send_message fails due to invalid sendmsg params
9136  593941 GNetworkAddress skipping addresses when enumerating
9137  594597 Fix build with srcdir != builddir
9138  595619 Include gdb pretty printers
9139
9140 * Changes that might affect bindings:
9141  - The error parameter of g_simple_async_result_set_from_error has been
9142    made const.
9143
9144 * Updated translations:
9145  Assamese
9146  Bengali India
9147  British English
9148  Bulgarian
9149  Catalan
9150  Czech
9151  Danish
9152  Finnish
9153  Galician
9154  Greek
9155  Gujarati
9156  Hindi
9157  Japanese
9158  Kannada
9159  Malayalam
9160  Marathi
9161  Norwegian bokmål
9162  Oriya
9163  Polish
9164  Punjabi
9165  Romanian
9166  Serbian
9167  Simplified Chinese
9168  Slovenian
9169  Spanish
9170  Tamil
9171  Telugu
9172  Thai
9173  Traditional Chinese
9174  Ukrainian
9175  Vietnamese
9176
9177
9178 Overview of Changes from GLib 2.21.5 to GLib 2.21.6
9179 ===================================================
9180
9181 * Minor API additions:
9182   g_mkstemp_full is a variant of g_mkstemp that allows to specify flags
9183   and permissions
9184
9185 * Bugs fixed:
9186  593232 g_rand_new: read no more than requested from /dev/urandom
9187  591995 use saved errno
9188  589491 g_time_val_from_iso8601 doesn't handle some cases
9189  593406 Permissions set to 777 after copying via Nautilus
9190  594034 Add g_mkstemp_full()
9191
9192 * Updated translations:
9193  Assamese
9194  Basque
9195  Brazilian Portuguese
9196  Czech
9197  Estonian
9198  French
9199  German
9200  Hungarian
9201  Italian
9202  Kannada
9203  Malayalam
9204  Marathi
9205  Norwegian bokmål
9206  Oriya
9207  Portuguese
9208  Swedish
9209  Tamil
9210  Turkish
9211
9212
9213 Overview of Changes from GLib 2.21.4 to GLib 2.21.5
9214 ===================================================
9215
9216 * A performance problem with trashing of many files has been fixed
9217
9218 * GResolver now invalidates the libc resolv.conf cache as needed
9219
9220 * Minor api additions:
9221  - g_cancellable_make_pollfd returns a boolean now. And there is a
9222    new function g_cancellable_release_fd that can be used to released
9223    the resources used by a GCancellable.
9224
9225 * Bugs fixed:
9226  589988 Compilation error on Solaris 9 (missing stdint.h)
9227  588901 gtcpconnection.c won't compile
9228  584246 GResolver needs to call res_init() when network state changes
9229  591714 Figure out failure handling for g_cancellable_make_pollfd()
9230  591532 redundent '/' returned from g_file_resolve_relative_path
9231  591378 Use MSG_NOSIGNAL in GSocket if it's available
9232  589649 API documentation migration for Base64 Encoding
9233  591840 configure fails with autoconf 2.64
9234
9235 * Updated translations:
9236  Basque
9237  Brazilian Portuguese
9238  Bulgarian
9239  Danish
9240  Estonian
9241  Finnish
9242  Galician
9243  Gujarati
9244  Hndi
9245  Irish
9246  Japanese
9247  Korean
9248  Norwegian bokmål
9249  Polish
9250  Portuguese
9251  Punjabi
9252  Spanish
9253  Swedish
9254  Telugu
9255  Traditional Chinese
9256  Thai
9257
9258
9259 Overview of Changes from GLib 2.21.3 to GLib 2.21.4
9260 ===================================================
9261
9262 * GTree is now refcounted
9263
9264 * Bugs fixed:
9265  587938 Undocumented limitation for g_str_equal
9266  587773 refcounts for GTree
9267
9268 * Updated translations:
9269  French
9270  Hebrew
9271  Norwegian bokmål
9272  Spanish
9273  Swedish
9274  Traditional Chinese
9275  Ukrainian
9276
9277
9278 Overview of Changes from GLib 2.21.2 to GLib 2.21.3
9279 ===================================================
9280
9281 * GMappedFile is refcounted now
9282
9283 * Mainloop: It is now possible to set per-thread default contexts,
9284   with g_main_context_push_thread_default.
9285
9286 * glib-mkenums supports a @basename@ substitution, in addition
9287   to @filename@.
9288
9289 * GIO:
9290  - Vfs implementations can support storing of per-file metadata.
9291  - GCancellable can now be subclassed.
9292  - Unmount and eject methods now optionally allow interaction, via
9293    variants that take a GMountOperation object.
9294
9295 * Bugs fixed:
9296  556706 Inconsistent help arguments -h, -?
9297  579449 FileChoosers no longer work if an idle handler is active
9298  579933 mainloop FD_CLOEXEC has a race condition
9299  579984 alternate GMainContext support
9300  585937 gio/gsocket.c (glib 2.21.2) does not compile (Windows/mingw)
9301  586675 Runtime library location
9302  586797 Add GCancellables to GSocket ops
9303  586868 g_filename_complete_get_completions doesn't always return...
9304  587415 g_resolver_lookup_by_name_finish returns a freed list
9305  587434 regression tests fail, at least on x86_64
9306  586928 Avoid g++ warning in g_error()
9307
9308 * Updated translations:
9309  Estonian
9310  Hebrew
9311
9312
9313 Overview of Changes from GLib 2.21.1 to GLib 2.21.2
9314 ===================================================
9315
9316 * GIO:
9317   - g_socket_speaks_ipv4 is a new function to check if a socket can
9318     speak IPv4.
9319   - g_socket_listener_add_address gained a new effective_address out
9320     parameter.
9321   - GIO now returns special icons for XDG user directories, by the
9322     name folder-music, folder-documents, etc.
9323   - GIO gained support for starting/stopping of drives, which can be used
9324     in connection with external hard disk enclosures, disk arrays, iSCSI
9325     devices, etc. See g_file_start/stop_mountable.
9326
9327 * GLib:
9328  - g_reload_user_special_dirs_cache is a new function to force GLib to
9329    reload the XDG user directory mapping from disk.
9330
9331 * Bug fixes:
9332  584574 glib compile failure on Mac OS X with gunixresolver.c and...
9333  585566 GSocketListener API issues
9334  584255 Incorrect freeing of thread pool in GThreadedSocketService
9335  585088 g_string_chunk_insert_len stops at nul bytes
9336  585360 Monitor fontconfig configuration files using gio causes m...
9337  580103 Terminal starts on Display :0.0 when started on :0.1 in D...
9338  580301 network: a few issues on old darwin
9339  583398 SRV weight sorting is incorrect
9340  584176 build fixes on FreeBSD
9341  585189 g_cancellable_reset() must be called in same thread as g_...
9342  585280 compilation dies on gio/gsocket.c, needs sys/uio.h to con...
9343  585281 gio/gunixfdmessage.c needs sys/types.h for platforms that...
9344  585478 don't leak the inotify fd
9345  585575 g_socket_listener_add_inet_port() doesn't do the right thing
9346  585599 g_socket_listener_add_socket() consumes the socket
9347  585676 GEmblem doesn't reference its 'icon' if that is set as a ...
9348  585717 "bytes" nautilus translation to french is not shown in th...
9349  541276 XDG directories should have their own icons
9350  585726 Grammatical error in GList documentation
9351  585520 Wrong warning option in documentation
9352  585673 GNOME Goal: Remove deprecated glib symbols
9353  585591 Starting/stopping drives
9354
9355 * Updated translations:
9356  Bengali India
9357  Norwegian bokmål
9358
9359
9360 Overview of Changes from GLib 2.21.0 to GLib 2.21.1
9361 ===================================================
9362
9363 * GIO:
9364  - Support for network IO has been added, including a low-level
9365    socket API and a high-level API for network connections and
9366    services.
9367  - Support for read-write access with GIOStream and its subclasses.
9368  - GMount gained a pre-unmount signal.
9369
9370 * Bug fixes:
9371  576104Implement GMount::pre-unmount
9372  578769 implement GWinHttpFileInputStream::close_fn
9373  582856 gsocket.c doesn't compile on Solaris
9374  569375 g[u]intptr undocumented
9375  573246 [FIX] g_desktop_app_info_dup() can access NULL pointer
9376  575013 g_cancellable_push_current() does not allow NULL
9377  577884 live-g-file.c:461: error: format ‘%d’ expects type ...
9378  578499 g_output_stream_splice and stream closing with gnio strea...
9379  579558 Application employing gvfs crashes with only libgvfscommo...
9380  583001 SIGPIPE (grr!)
9381  583061 Please add convenience function to connect to machines by...
9382  583198 typo in error message
9383  583206 use g_set_error_literal where appropriate
9384  583229 void function g_async_initable_init_async returns value
9385  583324 locking problem in g_main_context_iterate()
9386  583408 void function g_socket_control_message_serialize returns ...
9387  578786 wrong and confusing error message
9388  583205 g_inet_address_to_bytes has no length outparam
9389  583196 mem leak in keyfile test
9390  583663 GSocketType enum ends with a comma
9391  569024 Make g_error_new_valist public
9392  569376 missing G_G[U]INTPTR_FORMAT
9393  580347 off-by-1 bug in GWinHttpFile
9394
9395 * Updated translations:
9396  Oriya
9397  Spanish
9398  Valencian-Catalan
9399
9400
9401 Overview of Changes from GLib 2.20.x to GLib 2.21.0
9402 ===================================================
9403
9404 * GIO:
9405  - New helper functions g_cancellable_connect/disconnect to avoid
9406    race conditions when connecting to the "cancelled" signal on
9407    GCancellable.
9408  - New types and methods for dealing with IPv4 and IPv6 addresses (and
9409    UNIX domain socket addresses under UNIX). This does not include code
9410    for actual socket I/O.
9411  - GResolver provides asynchronous and cancellable APIs for resolving
9412    hostnames, reverse lookup of IP addresses and resolving SRV records.
9413
9414 * Glib now provides hash and comparison functions for int64 and double
9415   types, suitable for use with GHashTable.
9416
9417 * GArray, GPtrArray and GByteArray can be ref counted now, and have
9418   boxed types.
9419
9420 * Bugs fixed:
9421  572844 Helper for GCancellable::cancelled connect/disconnect
9422  578363 goption docs should be improved
9423  548466 async/cancellable DNS resolver
9424  579830 param spec strings should use P_()
9425  579862 requesting xattr::foo ends up calling getxattr(..., user...
9426  580453 Hash and equal functions for gint64 and gdouble
9427  580450 Reference counting and boxed types for arrays
9428  580194 gresolver doesn't build on Solaris
9429  580301 network: a few issues on old darwin
9430  580299 network: include sys/types.h before sys/socket.h to insur...
9431  572508 gmarkup speedup
9432  580546 g_strtoull() referenced in documentation...
9433  580656 g_key_file_set_string_list erroneously asserts list != NULL
9434  579272 leaks in g_simple_async_result_set_op_res_gpointer
9435
9436
9437 * Updated translations:
9438  Catalan (ca)
9439  Pashto (ps)
9440  Spanish (es)
9441
9442
9443 Overview of Changes from GLib 2.20.0 to GLib 2.20.1
9444 ===================================================
9445
9446 * Bug fixes:
9447  575555 Use fsync() when replacing files to avoid data loss on
9448  575708 runaway inotify madness
9449  575270 GVolumeMonitor::mount-pre-unmount not being emitted
9450  577128 glib make check Failed to execute child process...
9451  573673 Always show "backup" directories
9452  578369 g_time_val_from_iso8601() parses timezones incorrectly
9453  578002 Fix a small typo in GFile docs
9454  578017 G_DEFINE_TYPE_EXTENDED docs
9455
9456 * Updated translations:
9457  Arabic
9458  Assamese
9459  Basque
9460  Bularian
9461  Brazilian Portuguese
9462  British English
9463  Catalan
9464  Danish
9465  French
9466  Galician
9467  German
9468  Greek
9469  Hungarian
9470  Italian
9471  Japanese
9472  Kannada
9473  Lithuanian
9474  Malayalam
9475  Norwegian bokmål
9476  Oriya
9477  Polish
9478  Punjabi
9479  Russian
9480  Simplified Chinese
9481  Slovenian
9482  Spanish
9483  Swedish
9484  Tamil
9485
9486
9487 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
9488 ===================================================
9489
9490 * Base64 support: Avoid integer overflows. CVE-2008-4316
9491
9492 * Bugs fixed:
9493  574019 GChecksum: document and guarantee hex characters in lower case
9494  573454 Unable copy/move files to directories symlinked to gvfs share
9495  561172 gnome-open fails on local URIs with anchors
9496  573970 crash in gunixvolumemonitor:update_mounts when unmounting
9497  573843 g_get_current_dir returns non-absolute path
9498
9499 * Updated translations:
9500  Assamese (as)
9501  Bengali (bn_IN)
9502  Czech (cs)
9503  Hindi (hi)
9504  Italian (it)
9505  Japanese (ja)
9506  Lithuanian (lt)
9507  Malayalam (ml)
9508  Marathi (mr)
9509  Oriya (or)
9510  Polish (pl)
9511  Romanian (ro)
9512  Telugu (te)
9513
9514
9515 Overview of Changes from GLib 2.19.8 to GLib 2.19.9
9516 ===================================================
9517
9518 * GMarkup:
9519  - Considerable speedup
9520
9521 * GIO
9522  - Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing
9523    the destination of a copying operation as if it did not exit before.
9524  - Be more careful when classifying files as desktop files
9525  - Support desktop file key X-GIO-NoFuse which disables the use
9526    of fuse pathnames for %u and %U arguments
9527
9528 * Bugs fixed:
9529  572672 glib/gthread.c: argument is different type
9530  572464 Doc for g_file_get_contents
9531  572151 “it's” and “its” confused in docs and comments
9532  570501 g_win32_get_system_data_dirs uses invalid conversion...
9533  167569 g_string_append_printf crashes on win32 when used...
9534  572508 gmarkup speedup
9535  560564 Replacing a symlink with its linked file truncates... 
9536  549298 impossible to copy files with p (pipe) flag
9537  543183 Clarify docs for g_file_has_prefix
9538  540461 g_memory_output_stream_get_data_size() doesn't behave...
9539  573462 GEmblemedIcon leak
9540  573421 Clarify message format in GMountOperation
9541  573658 Deadlock in giomodule.c
9542  556706 Inconsistent help arguments -h, -?
9543  573527 Wrong shell to run config.status in Makefile.in.in
9544  573128 A couple of typos in GObject documentation
9545
9546 * Updated translations:
9547  Catalan (ca)
9548  British English (en_GB)
9549  Spanish (es)
9550  Basque (eu)
9551  Finnish (fi)
9552  French (fr)
9553  Gujarati (gu)
9554  Hebrew (he)
9555  Hungarian (hu)
9556  Korean (ko)
9557  Maithili (mai)
9558  Norwegian bokmål (nb)
9559  Dutch (nl)
9560  Portugese (pt)
9561  Swedish (sv)
9562  Thai (th)
9563  Traditional Chinese (zh_HK)
9564  Traditional Chinese (zh_TW)
9565
9566
9567 Overview of Changes from GLib 2.19.7 to GLib 2.19.8
9568 ===================================================
9569
9570 * GIO: Fix missing exports of new API
9571
9572 * Fix strict aliasing warnings and violations to make Glib work
9573   with gcc 4.4
9574
9575
9576 Overview of Changes from GLib 2.19.6 to GLib 2.19.7
9577 ===================================================
9578
9579 * GIO
9580  - GFile gained an attribute for the actual file size in bytes
9581  - GMountOperation gained an "aborted' signal that allows to abort
9582    a mount operation from the backend side
9583
9584 * Bugs fixed:
9585  523742 Use noinst for non-installable libraries
9586  566747 URIs opened with firefox %u load as local files
9587  541225 Can't compile gio on AIX duplicate case value in gioerror.c
9588  571598 GAsyncResult with NULL gobject
9589  505042 add file attribute for actually used file size in bytes
9590
9591 * Updates translations:
9592  Basque (eu)
9593  Gujarati (gu)
9594  Italian (it)
9595  Japanese (ja)
9596  Norwegian bokmål (nb)
9597  Dutch (nl)
9598  Portugese (pt)
9599  Thai (th)
9600  Vietnamese (vi)
9601
9602
9603 Overview of Changes from GLib 2.19.5 to GLib 2.19.6
9604 ===================================================
9605
9606 * New format macro to print goffset data: G_OFFSET_FORMAT
9607
9608 * GIO: 
9609  - Add a GFilter{Input,Output}Stream::close-base-stream properties which
9610    determine whether the base stream will be closed when the filter stream
9611    is finalized.
9612  - g_data_input_stream_read_line and ..._read_until have asynchronous
9613    variants now.
9614
9615 * Bugs fixed:
9616  568294 A wrong reference in the description of g_bookmark_file_...
9617  563141 RFE: define G_OFFSET_FORMAT
9618  569105 g_time_val_to_iso8601() assumes time_t==long
9619  568394 dropping the last reference to a stream filter closes...
9620  568741 g_buffered_input_stream_fill_async doesn't work
9621  568723 g_buffered_input_stream_fill_async doesn't take count == -1
9622  568575 _async functions for GDataInputStream
9623
9624 * Updated translations:
9625  Bulgarian (bg)
9626  Finnish (fi)
9627  Hungarian (hu)
9628  Oriya (or)
9629  Swedish (sv)
9630  Traditional Chinese (zh_HK)
9631  Traditional Chinese (zy_TW)
9632
9633
9634 Overview of Changes from GLib 2.19.4 to GLib 2.19.5
9635 ===================================================
9636
9637 * Update included PCRE to 7.8
9638
9639 * g_base64_decode_inplace: New function to do base64 decoding in place
9640
9641 * Bugs fixed:
9642  567138 get_package_directory_from_module() does not free ...
9643  566569 gregex docs clarification
9644  566573 g_match_info_fetch_pos docs
9645  564728 Add function to decode base64 encoded data in place
9646  567838 G_STRUCT_OFFSETOF fails to compile under icc 9.1
9647  567977 textdomain() macro should not return NULL ...
9648  512779 --disable-regex breaks compilation
9649  566770 error code 0 for Too many open files is useless
9650  565484 g_content_type_guess passes non-UTF8 text to XDG ...
9651
9652 * Updated translations:
9653  Catalan (ca)
9654  Spanish (es)
9655  Italian (it)
9656  Swedish (sv)
9657
9658  
9659 Overview of Changes from GLib 2.19.3 to GLib 2.19.4
9660 ===================================================
9661
9662 * GIO:
9663   - Use O_NOATIME when sniffing mimetypes
9664   - Add a convenience method to check if a GSimpleAsyncResult
9665     is valid
9666
9667 * Bugs fixed:
9668  560676 function access for g_threads_supported
9669  565905 There is no g_context_group_set_translation_domain
9670  564210 SUN Studio 12 has supported visibility attribute
9671  565136 GObject's "notify" signal parameters are wrong in gtk-doc
9672  565831 error in interface creation sample
9673  566348 g_file_open_tmp uses the wrong g_mkstemp on win32
9674  566064 Add NOATIME flag to query_info_flags
9675  566170 g_async_result_verify_source_object
9676
9677 * Updated translations:
9678  Spanish (es)
9679  Norwegian bokmål (nb)
9680  Brazilian Portugese (pt_BR)
9681  Simplified Chinese (zh_CN)
9682
9683
9684 Overview of Changes from GLib 2.19.1 to GLib 2.19.3
9685 ===================================================
9686
9687 * Bugs fixed:
9688  508021 Add support for the CRIS and CRISv32 architectures
9689  526320 should not list mounts that the user doesn't have permission to use
9690  558458 Cannot build gio tests on Solaris using SUN cc
9691  555465 GUnix{Input,Output}Stream lacks fd/close_fd_at_close property
9692  558298 Hide ecryptfs mounts
9693  515777 incorrect date&time on copy
9694  562452 Ensure we return G_IO_ERROR_CANCELLED if cancelling
9695         g_simple_async_result_run_in_thread
9696  473150 g_type_module_use inconsistently increases the use
9697         counter in case of error
9698  563150 G_GU?INT*_MODIFIER/FORMAT docs
9699  563156 Document printing and scanning gunichar values
9700
9701 * Updated translations:
9702  Hebrew (he)
9703  Italian (it)
9704  
9705
9706 Overview of Changes from GLib 2.19.0 to GLib 2.19.1
9707 ===================================================
9708
9709 * GIO: 
9710   - g_icon_to_string, g_icon_new_for_string: GIcon serialization support
9711   - G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
9712   - g_app_info_get_commandline: new function to get the full commandline
9713   - g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New functions 
9714     to 'shadow' mounts (i.e. hide them from the UI when they already
9715     have a different representation, like a bookmark) 
9716
9717 * Bugs fixed:
9718  556186 gpoll.h breaks gmain.h inclusion
9719  557087 mem leak in g_content_types_get_registered
9720  556921 gpoll.h breaks hal compilation
9721  557210 g_compute_checksum_for_* asserts with less than 2 bytes
9722  558381 Add support for compile time assertions
9723  558185 'parent' variable in g_local_file_get_child_for_display_name()
9724         hits g_object_unref(NULL) assertion
9725  558513 g_warn_if_fail FIXME in gtestutils
9726  558672 NULL key lookup using g_hash_table_lookup_extended() 
9727  555740 gicon serialization
9728  557182 preview functionality
9729  528320 Incorrect icons displayed for files with custom mimetype icons
9730  556910 Memory leak: sub
9731  557592 Missing include in gwinhttpfile.c
9732  556415 Crash on Windows 2000 in g_winhttp_vfs_init()
9733  555935 Clarify the mechanism of overwriting properties
9734  552776 ac_cv_func_posix_getgrgid_r not mentioned
9735  559448 GObject Reference Manual (typo)
9736  561212 GFileReadMoreCallback API doc refers to non-existant function
9737  560569 gkeyfile doesn't use the set list_separator in some cases
9738  560568 gkeyfile docs buglet
9739  559413 g_option_group_set_error_hook docs buglet
9740  562378 callback return value not respected for callback option
9741         with no arg
9742  559110 Do not include libintl.h after glibintl.h
9743  557603 carbon check output misplaced
9744  562544 g_key_file_get_string and g_key_file_get_value
9745         documentation does not explain the difference
9746  547264 Missing "no flags" flag
9747  562638 GDebugKey key member should be const
9748  562639 g_parse_debug_flags() parsing "help"
9749  562549 g_byte_array_free should tell how free data
9750  559452 GObject Reference Manual (typo)
9751  559462 GObject Reference Manual (typo)
9752  559517 GObject Reference Manual (typo)
9753  562538 GObject interface tutorial shouldn't finalise with
9754         "Please forget everything"
9755  561352 Leak of icon description
9756  561375 Leaks mountpoint description
9757  561807 inotify_sub.c: dup_dirname() fails to remove trailing '/'
9758  562393 g_buffered_input_stream_read_byte broken if data available
9759  541715 win32 : patch for warnings and signature problems in recent code
9760  547481 g_data_input_stream_read_line behaves not as stated in the docs
9761  548163 Nautilus displays wrong error message for too long file names
9762  559633 gtk_image_new_from_gicon does not always work for .desktop files
9763  555486 – No way to recover command line from GAppInfo
9764
9765 * Translation updates:
9766  Spanish (es)
9767  Ukrainian (uk)
9768
9769
9770 Overview of Changes from GLib 2.18.1 to GLib 2.19.0
9771 ===================================================
9772
9773 * Rewrite GHashTable to use open addressing with quadratic probing instead 
9774   of chaining. This has the potential to reduce memory fragmentation 
9775   significantly, while being slightly faster due to better locality and 
9776   no need to call alloc/free functions for nodes. Benchmarks suggest it 
9777   also uses less memory overall.
9778
9779 * Make g_poll available as public api
9780
9781 * New macros g_assert_error and g_assert_no_error to assert 
9782   that a GError is set or unset
9783
9784 * g_cancellable_make_pollfd: New method to make a GPollFD for a cancellable
9785
9786 * g_app_info_can_delete, g_app_info_delete, g_app_info_reset_type_associations:
9787   New functions to clean up app infos and content types
9788
9789 * When launching applications, always pass fuse file:// uris when possible,
9790   and let gio convert such uris back to gio uris.
9791
9792 * Bugs fixed:
9793  505361 gunixinputstream.c assumes poll() available
9794  509446 portable blocking gio cancellation
9795  553820 gpoll.c: undeclared identifier
9796  553724 python interpretter path not patched in correctly
9797  553857 gbacktrace.h requires signal.h
9798  553447 g_assert_no_error()
9799  554092 glib doesn't return G_FILE_ERROR_NOENT et al on OS X
9800  528670 Always pass file:/// uri's in GAppLaunchContext
9801  555224 Improve g_format_size_for_display doc
9802  555309 giochannel breaks on error
9803  554790 g_convert() misbehaves with winiconv versions
9804  555314 mem leak in gmarkup
9805  555313 GFileAttribute boxed type get_type function should...
9806  552861 glib-2.0.m4 calls system(3) without storing its result
9807  554557 Patch to fix gcc warnings about missing format specifiers
9808  552107 Small libtool fixes
9809  551355 Make glib build with libtool 2.2
9810  555311 format not a string literal and no format arguments
9811  556101 static mutex yields warnings with g++
9812  556186 gpoll.h breaks gmain.h inclusion
9813  526456 Open addressing in GHashTable
9814  553426 cancellable clarifications
9815  545350 GAppInfo deletion
9816  545351 Reset associations for content type
9817  552168 volume's mount not mounted after g_volume_mount_finish
9818  554970 segfault when update-desktop-database is not available...
9819  554745 GFileAttributeInfoList should be boxed
9820  555121 Improved build-time handling of gio module-dir
9821  555711 Wrong fallback order of mimetype icons
9822  555331 Deprecate adoption of mounts
9823  556335 make check fails in abicheck.sh
9824  556334 Warning when building without selinux support
9825  556422 g_file_enumerator_next_file: unclear...
9826
9827 * Updated translations:
9828  Arabic (ar)
9829  Danish (da)
9830  Polish (pl)
9831  Brazilian Portugese (pt_BR)
9832  Romanian (ro)
9833  Russian (ru)
9834
9835
9836 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
9837 ===================================================
9838
9839 * Bugs fixed:
9840  550433 g_test_init doesn't recognize --help
9841  523463 Core dump in gmain.c:2482:IA__g_main_context_check
9842  551228 G_STRFUNC on recent Sun compiler should be expanded...
9843  551410 gtestutils.c: using printf without prototype
9844  551731 g_date_set_time[_t] docs should mention what timezone
9845  548321 <string.h> is not included in gi18n-lib.h
9846  551149 xdgmime mem leak
9847  550647 synchronous pipe I/O when reading mount reply
9848  551887 Docs for g_desktop_app_info_new_from_filename aren't...
9849  551681 g_content_type_guess() too naive with filenames
9850  552352 g_app_info_launch doesn't work if "Path" key...
9851  551408 gmodule.def generated to builddir...
9852  552359 g_file_info_get_icon should return GThemedIcon, and...
9853
9854 * Updated translations:
9855  Arabic (ar)
9856  Bengali India (bn_IN)
9857  British English (en_GB)
9858  Hindi (hi)
9859  Croatian (hr)
9860  Korean (ko)
9861  Oriya (or)
9862  Turkish (tr)
9863  Telugu (te)
9864
9865
9866 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
9867 ===================================================
9868
9869 * Win32:
9870   - rework the g_poll() implementation to match poll() semantics more closely
9871
9872 * Bugs fixed:
9873  324234 Using g_io_add_watch_full() to wait for connect() to return...
9874  548278 Async GETs connections are always terminated unexpectedly...
9875  500246 Bug fixes for giowin32
9876  523939 Example program for GValue
9877  550096 GBookmarkFile parser is not forward compatible
9878  550040 Move GString, rand and printf tests to the unit test framework
9879  550104 trivial documentation fix for g_get_home_dir
9880  548988 g_file_replace fails on Windows when the target file exists
9881  550059 Wrong docs for g_emblemed_icon_add_emblem
9882  548800 Missing a g_object_get_type function
9883  550056 Missing documentation for g_emblemed_icon_get_emblems
9884
9885 * Updated translations:
9886  Bulgarian (bg)
9887  Czech (cs)
9888  German (de)
9889  Estonian (et)
9890  Basque (eu)
9891  French (fr)
9892  Hebrew (he)
9893  Hungarian (hu)
9894  Italian (it)
9895  Japanese (ja)
9896  Lithuanian (lt)
9897  Maithili (mai)
9898  Dutch (nl)
9899  Swedish (sv)
9900  Thai (th)
9901  Ukrainian (uk)
9902  Vietnamese (vi)
9903
9904
9905 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
9906 ===================================================
9907
9908 * More fixes for 64-bit Windows
9909
9910 * GIO
9911  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
9912
9913 * Bugs fixed:
9914  546329 API docs for g_utf8_normalize() are incorrect
9915  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
9916  547200 g_utf8_find_next_char() issues
9917  547637 unconditional #include of sys/statfs.h in configure
9918  547337 G_DISABLE_DEPRECATED breaks tests build
9919  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
9920  502498 Test framework assertion failures should follow gcc
9921  546371 Improve docs re g_file_monitor
9922  546483 GThemedIcon:use-default-fallbacks is not readable without...
9923  546132 GFileIcon is bindings-unfriendly
9924  542156 zfs mount in home directory shown on nautilus desktop 
9925  535124 umask 002 not being applied for new directories...
9926  547080 g_file_copy leaks expected errors
9927  546582 Callbacks from GFileMonitor present a GFile...
9928  547262 Missing link in the docs
9929
9930 * Updated translations:
9931  Arabic (ar)
9932  Catalan (ca)
9933  Spanish (es)
9934  Basque (eu)
9935  Finnish (fi)
9936  Galician (gl)
9937  Hebrew (he)
9938  Marathi (mr)
9939  Norwegian bokmål (nb)
9940  Portugese (pt)
9941  Brazilian Portugese (pt_BR)
9942  Swedish (sv)
9943  Thai (th)
9944
9945
9946 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
9947 ===================================================
9948
9949 * Fix problems on 64-bit Windows
9950
9951 * g_markup_context_get_user_data: New function to access
9952   the user_data outside of callbacks
9953
9954 * GIO
9955  - g_mount_guess_content_type_sync: synchronous version of
9956    g_mount_guess_content_type
9957  - GEmblem: A GIcon implementation that adds emblem-related
9958    metadata to icons
9959  - GEmblemedIcon: A GIcon implementation that can add emblems
9960    to icons
9961
9962 * Bugs fixed:
9963  544088 option_test_LDADD is left in tests/Makefile.am
9964  544465 gmarkup makes it hard to use pre-rolled parsers
9965  545485 Implicit declaration of utime()
9966  545798 "Since: 2.18" mark is missing in g_set_error_literal...
9967  544140 fam-helper 64-bit issue
9968  529694 SELinux context setting support
9969  545157 wrong/no list of "open with" applications for .cc...
9970  545203 gfile.c: argument is different type
9971  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
9972  544177 Fix trivial cut and paste error in documentation
9973  545395 Language tweak for g_value_set_string* docs
9974  541036 Gnumeric crashes when trying to open Desktop...
9975  546079 leak in xdgmime
9976  545395 Language tweak for g_value_set_string* docs
9977  546017 Don't copy attributes when copying a symlink
9978
9979 * Updated translations:
9980  Arabic (ar)
9981  Estonian (et)
9982  Galician (gl)
9983  Italian (it)
9984  Japanese (ja)
9985  Korean (ko)
9986  Norwegian bokmål (nb)
9987  Pashto (ps)
9988  Portugese (pt)
9989
9990
9991 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
9992 ===================================================
9993
9994 * GIO:
9995  - New API to handle content types: g_mount_guess_content_type,
9996    g_content_type_guess_for_tree.
9997  - Export the eject-button signal on the volume monitor class
9998  - New API to enable out-of-process volume monitors: 
9999    g_volume_get_activation_root
10000
10001 * GObject:
10002  - New API to handle signals without slots in the class structure:
10003    g_signal_new_class_handler, g_signal_override_class_handler   
10004
10005 * Internationalization:
10006  - Add an NC_ macro that is a no-op equivalent of C_
10007
10008 * GMarkup:
10009  - Add two new functions g_markup_parse_context_push,
10010    g_markup_parse_context_pop to support "subparsers"
10011
10012 * Bugs fixed:
10013  541208 Functions to easily install and use signals without...
10014  541507 Ambiguous description of assigned characters in the...
10015  543040 async reading on dummy file will crash on GIO_USE_VFS=local
10016  543560 enable gio-FEN back-end warnings on Solaris will crash...
10017  528317 GRegex does not allow recursion limit
10018  337518 GMarkup: Subparser support
10019  541794 drive-eject-button signal
10020  541793 activation root for volumes
10021  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
10022  428048 2 of 51 tests fail on Solaris
10023  542332 small fix for error message in GMarkup
10024  482413 get_contents_stdio -- overflow and memory corruption
10025  406120 g_ascii_strtod
10026  334234 "printf" format error
10027  536996 Missing noop i18n macro equivalent to C_
10028  540616 mem leak in filechooser button
10029  539229 gobject-query calls itself query
10030  521589 [RFC] gobject documentation should mention Vala
10031  543168 Description of G_SLICE=debug-blocks discourages its use
10032  543220 Case collision on gio-extension-points.html
10033  530759 update the gobject tutorial to the XXI century
10034  535223 gbookmark file inefficiency ...
10035  543504 crash in Epiphany Web Browser: Opening local file
10036
10037 * Updated translation:
10038  German (de)
10039  Estonian (et)
10040  Pashto (ps)
10041  Albanian (sq)
10042  Thai (th)
10043  Traditional Chinese (zh_HK)
10044  Traditional Chinese (zh_TW)
10045
10046
10047 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
10048 ===================================================
10049
10050 * PCRE
10051  - fix for CVE-2008-2371 
10052
10053 * Bugs fixed:
10054  538119 glib's mainloop leaks a pipe to sub-processes
10055  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
10056  539067 The document g_io_channel_win32_new_fd() says...
10057  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
10058  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
10059  539074 Cannot get exit status with g_spawn_command_line_sync
10060  316221 G_LOCK warns about breaking strict-aliasing rules
10061  539770 migrate gstrfunc unit tests to gtest
10062  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
10063  538044 unconditional use of LC_MESSAGES
10064  540545 Monotonic time and timer offset
10065  535947 want g_set_error_literal
10066  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
10067  536252 GFileEnumerator should allow access to the containing GFile
10068  538362 Get Win32 icons back in the file chooser
10069  540802 g_list_prepend doesn't concat lists
10070  540423 unrecoverable error after g_seekable_truncate
10071  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
10072  539090 g_content_type_from_mime_type() should unalias
10073  540331 g_file_append_to () documentation: can return NULL
10074  534639 add g_desktop_app_info_new_from_keyfile
10075  536733 gio build failure on Irix
10076  536160 Add g_file_monitor()
10077  538127 FileChooser broken on win32
10078  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
10079  538564 gio should have gio-types.h
10080  540047 glib-genmarshal.c: '#include <io.h>' is too before
10081
10082 Updated translations:
10083  Korean (ko)
10084  Occitan (oc)
10085
10086
10087 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
10088 ===================================================
10089
10090 * New function: g_utime(), a gstdio wrapper for utime()
10091
10092 * New functions: g_dgettext() and g_dngettext(), wrappers
10093   for corresponding gettext functions with added functionaliy
10094
10095 * Support the latest version of the shared-mime spec, including
10096   icons for mime types 
10097
10098 * New function: g_themed_icon_prepend_name()
10099
10100 * Bugs fixed: 
10101  535418 Please document which glib version defines goffset
10102  528715 Misprint in the description of the interface g_type_class_add_private
10103  528714 Misprint in the description of the interface g_param_spec_flags
10104  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
10105  530527 Misprint in the description of the interface 
10106         g_cclosure_marshal_VOID__FLAGS
10107  530526 Misprint in the description of the fields 'class_init' and 
10108         'class_finalize' of the structure GTypeInfo
10109  528719 Improvement to the documentation of the "g_object_connect" interface
10110  528172 gtk_signal_handlers_unblock_* functions return value
10111         amount of matched signals, not amount of actually unblocked
10112  528717 Misprint in the description of the parameter 'type_id' for 
10113         the interface g_type_register_fundamental
10114  528716 Misprint in the description of the parameter 'iface_data' for 
10115         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
10116  537555 GObject instantiation not thread safe
10117  537546 'desktop' shortcut in file chooser looks like a generic folder
10118  537392 Additional colon in xattr name
10119  536641 Filesystem querying in gio does not list AFS and autofs file systems
10120  528600 g_dummy_file_get_parent("scheme://example.com/")
10121  503071 Application direction changes to right to left even if theres no 
10122         translation
10123  502511 g_assert_cmphex prints invalid message
10124  338162 Use po/LINGUAS
10125  314453 Nautilus crashes in Solaris when browsing the attached file
10126  529321 make check fails in glib/pcre
10127  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
10128         fallback to $HOME/Desktop if xdg-user-dirs is not in use
10129  498732 g_key_file_to_data cannot fail
10130  511367 add g_file_make_directory_with_parents
10131  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
10132         gcc 4.0 or newer
10133  536158 also bump GHashTable version when a node is removed via
10134         g_hash_table_iter_remove()/g_hash_table_iter_steal()
10135  531403 g_utf8_collate broken on Mac
10136  535628 test/patterntest.c still includes gpattern.h directly
10137  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
10138
10139 * Translation updates:
10140  Arabic (ar)
10141  German (de)
10142  Italian (it)
10143  Norwegian bokmål (nb)
10144  Thai (th)
10145
10146
10147 Overview of Changes from GLib 2.16.x to GLib 2.17.0
10148 ===================================================
10149
10150 * Update to Unicode 5.1
10151
10152 * Update included libcharset to the one shipped with libiconv 0.12
10153
10154 * Update included PCRE to 7.7
10155
10156 * Enforce that only toplevel headers are directly included.
10157   This is turned on by default for GObject and GIO. To turn
10158   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
10159
10160 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
10161
10162 * On Solaris, use FEN for file monitoring in GIO
10163
10164 * Use the GIO_EXTRA_MODULES environment variable to find
10165   additional GIO modules 
10166
10167 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
10168   function attribute
10169
10170 * g_checksum_reset: New function to reset the state of a GChecksum 
10171
10172 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
10173   rate at which events are reported
10174
10175 * g_file_query_file_type: New utility function to query the type of
10176   a file
10177
10178 * g_memory_output_stream_get_data_size: New function to obtain the
10179   size of the written data.
10180
10181 * Bugs fixed:
10182  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
10183  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
10184  518160 replace two g_strdup_printf calls in GBookmarkFile
10185  523877 gbookmarkfile: avoid using g_string_append_printf() and
10186         other optimizations 
10187  525192 100% CPU if run main loop with no IO sources
10188  315437 extern inline -> static inline
10189  524314 g_convert() on Win32 implicitly converts full width
10190         alphanumerics into half width
10191  525732 Error in documentation for g_list_first
10192  525674 A typo in gmarkup.c
10193  448943 g_timeout_add_seconds() problems
10194  525972 UCS-4 not in the new win_iconv implementation
10195  526619 make test-report crash
10196  491554 Update to Unicode 5.1.0
10197  519137 g_slice_dup macro needs cast for 64-bit platform
10198  528752 Win32 build and SSL not working
10199  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
10200  528667 Typos in testing module documentation
10201  459905 Bug in wcwidth data
10202  534085 g_unichar_iswide_cjk() has a totally wrong table
10203  501651 Update glib/libcharset
10204  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
10205  534319 GLib's .pc files could use Libs.private
10206  534137 Typo in g_spawn_async_with_pipes doc
10207  517419 gio win32 directory monitor
10208  526796 Wrong order of arguments in g_file_copy's fallback
10209  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
10210  532965 Should not return filesystem::free for certain file systems
10211  525553 fix typo and nitpicking in GArray documentation
10212  526572 Missing * in declaration of parent_class in Object
10213         Destruction section of GObject Reference Manual
10214  528648 Extra >s in Object Construction section
10215  535021 g_param_spec_internal documentation should
10216         describe purpose of nick and blurb
10217  521513 Firefox crash when using file picker
10218  528433 gdesktopappinfo snafu ...
10219  533369 API g_file_info_get_attribute_string () unables to get "...
10220  521045 glib f_fstypename miscellany
10221  521672 compile error
10222  521946 control rate limit on GUnixMountMonitor
10223  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
10224  523015 Implement sliding window based upload operation
10225  523019 Use new GCC 4 feature
10226  523338 list nfs4 as a nfs mount type
10227  524350 Make glib build without NLS again
10228  524579 g_file_copy reports wrong total on progress callback for ...
10229  524742 A typo in gtestutils.c.
10230  524950 Minor documentation typos.
10231  525866 the user directory should not be considered as a mount to...
10232  526320 should not list mounts that the user doesn't have permiss...
10233  527132 nautilus crash when making ftp connection
10234  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
10235  534759 Build failure in gio
10236  534764 Typo in error produced by g_file_make_directory
10237  521851 Redudant tests in gunixmounts.c
10238  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
10239  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
10240  534177 Invalid description of the interface g_cclosure_marshal_S...
10241  520715 Add GFile method g_file_query_file_type
10242  523039 nautilus can't access to trash/computer/network if gvfs i...
10243  
10244 * Updated translations:
10245  Arabic (ar)
10246  Bulgarian (bg)
10247  Catalan (ca) 
10248  Czech (cs)
10249  Greek (el)
10250  Candian English (en_CA)
10251  British English (en_GB)
10252  Spanish (es)
10253  Estonian (et)
10254  Basque (eu)
10255  Galician (gl)
10256  Hebrew (he)
10257  Hungarian (hu)
10258  Japanese (ja)
10259  Lithuanian (lt)
10260  Norwegian bokmål (nb)
10261  Dutch (nl)
10262  Occitan (oc)
10263  Portugese (pt)
10264  Russian (ru)
10265  Slovak (sk)
10266  Albanian (sq)
10267  Swedish (sv)
10268  Turkish (tr)
10269  Vietnamese (vi)
10270
10271
10272 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
10273 ===================================================
10274
10275 * Fix a crash in g_themed_icon_new
10276
10277 * Update the included PCRE to 7.6
10278
10279
10280 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
10281 ===================================================
10282
10283 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
10284
10285 * GIO:
10286  - Add missing GMountMountFlags argument to g_unix_volume_mount
10287  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
10288    reference
10289  - Add properties to GThemedIcon for bindings sake
10290
10291 * Bugs fixed:
10292  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
10293  510855 g_checksum_update(): Take -1 for length.
10294  517676 g_themed_icon_new*() do more than call g_object_new().
10295  518816 should handle rmdir returning EEXIST correctly
10296  519352 g_[s]list_delete_link() docs
10297  519489 Fixes for sparse warnings in gio
10298  520169 add monitor argument to vfunc for GVolumeMonitor
10299  520700 Add type check in g_file_query_exists
10300  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
10301  518720 No MIME type for empty files
10302  521013 in documentation, goffset doesn't say "Since 2.x"
10303  521028 Missleading error messages from g_io_channel_set_encoding()
10304  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
10305
10306 * Updated translations:
10307  Assamese (as)
10308  Bengali India (bn_IN)
10309  Czech (cs)
10310  German (de)
10311  Spanish (es)
10312  Estonian (et)
10313  Finnish (fi)
10314  French (fr)
10315  Gujarati (gu)
10316  Italian (it)
10317  Lithuanian (lt)
10318  Malayalam (ml)
10319  Marathi (mr)
10320  Norwegian bokmål (nb)
10321  Romanian (ro)
10322  Russian (ru)
10323  Slovak (sk)
10324  Ukrainian (uk)
10325
10326  
10327 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
10328 ===================================================
10329
10330 * GIO:
10331  - New file attributes: trash::item-count, filesystem::use-preview
10332  - Rename g_file_contains_file to g_file_has_prefix
10333  - g_file_query_filesystem_info grew async variants
10334  - g_themed_icon_append_name: new convenience function
10335  - g_content_type_get_icon is implemented now
10336  - Only show mounts in /media and ~
10337  - g_file_contains_file has been renamed to g_file_has_prefix
10338
10339 * Win32:
10340  - g_win32_get_package_installation_directory_of_module: new function
10341    which supersedes g_win32_get_package_installation_directory
10342  - Use alertable wait functions so that I/O completion routines or 
10343    user-mode Asynchronous Procedure Calls can be run
10344  - Fix race conditions in g_spawn implementation on win32
10345
10346 * Other:
10347  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
10348
10349 * Updated translations:
10350  Arabic (ar)
10351  Belarusian Latin (be@latin)
10352  Catalan (ca) 
10353  British English (en_GB)
10354  Finnish (fi)
10355  Galician (gl)
10356  Hebrew (he)
10357  Italian (it)
10358  Kannada (kn)
10359  Norwegian bokmål (nb)
10360  Dutch (nl)
10361  Brazilian Portugese (pt_BR)
10362  Vietnamese (vi)
10363
10364
10365 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
10366 ===================================================
10367
10368 * Update the included PCRE to 7.6
10369
10370 * GIO:
10371  - g_volume_should_automount: new function to determine if a volume
10372    should be mounted automatically
10373  - g_file_query_default_handler: new convenience function to get
10374    the default handler for a file
10375  - g_app_info_launch_default_for_uri new convenience function to
10376    launch the default handler for a URI
10377  - Use mimeapps.list and defaults.list as discussed on xdg list
10378    recently
10379  - g_app_info_get_default_for_uri_scheme has a real implementation
10380    now (gvfs provides a GConf-based implementation)
10381  - There is the beginning of a test suite
10382  - standard::description:  new file attribute
10383  - GMountMountFlags flags argument added to mount calls
10384
10385 * GObject:
10386  - class initialization is now threadsafe
10387
10388 * Updated translations:
10389   Arabic (ar)
10390   Catalan (ca)
10391   Spanish (es)
10392   Basque (eu)
10393   Italian (it)
10394   Japanese (ja)
10395   Kannada (kn)
10396   Korean (ko)
10397   Macedonian (mk)
10398   Occitan (oc)
10399   Portugese (pt)
10400   Brazilian Portugese (pt_BR)
10401   Swedish (sv)
10402   Thai (th)
10403
10404
10405 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
10406 ===================================================
10407
10408 * G_GNUC_PRETTY_FUNCTION has been deprecated
10409
10410 * GIO:
10411  - g_file_copy has an async variant now
10412  - Drives and volumes now have API to get identifiers
10413    like Hal UDIs or UUIDs.
10414  - There is now a registration API to let modules register
10415    extensions they provide, such as volume monitor implementations
10416
10417 * Bugs fixed:
10418   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
10419   316260 [patch] Doc patches for gnode (2.8.1)
10420   385132 solaris gettext support fix
10421   484261 ./configure check for system PCRE unicode support fails w...
10422   510292 GOption main help not shown
10423   511580 Implement g_file_copy_async
10424   511654 Compile errors due to C99 constructs
10425   487909 g_utf8_strreverse and combining marks
10426   512381 unused variable 'is_main_group' 
10427
10428 * Updated translations:
10429   Arabic (ar)
10430   Belarusian (be)
10431   Czech (cz)
10432   Spanish (es)
10433   French (fr)
10434   Galician (gl)
10435   Portugese (pt)
10436   Russian (ru)
10437   Swedish (sv)
10438   Thai (th)
10439
10440
10441 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
10442 ===================================================
10443
10444 * GChecksum:
10445  - g_checksum_update can accept nul-terminated strings
10446  - The MD5 implementation works correctly on buffers 
10447    that are longer than 64 bytes
10448
10449 * GIO:
10450  - Don't include a copy of the inotify headers, rely on system headers
10451  - g_file_find_enclosing_mount has an async variant now
10452  - Reduntant seek API on file streams has been removed
10453
10454 * Bugs fixed:
10455   508602 gmemory{in|out}putstream.c: unknown pointer size
10456   508771 There is no g_file_test/exists() for GFile
10457   508773 g_uri_escape_string() documentation unclear.
10458   509465 AM_PATH_GLIB_2_0 doesn't support gio
10459   509626 async functions: Document allowed NULL callback?
10460   509990 GSeekable documentation unclear
10461   510448 No inotify support on ARM or SH5
10462   510855 g_checksum_update(): Take -1 for length. 
10463
10464 * Updated translations:
10465   Basque (eu)
10466   Marathi (mr)
10467   Swedish (sv)
10468   Ukrainian (uk)
10469
10470
10471 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
10472 ===================================================
10473
10474 * GIO:
10475  - Mount operation API change: unhandled methods get reported via 
10476    the reply, rather than by the signal emission return value
10477  - File monitor API change: Add a GError argument to g_file_monitor_file
10478  - g_unix_mount_guess_should_display(): new function
10479
10480 * Bugs fixed:
10481   508224 [PATCH] FAM backend crashes due to double free
10482   508074 GAsyncResult documentation suggests g_freeing it.
10483   508108 GFile documentation slightly unclear.
10484   508309 rpc_pipefs mount points should be hidden
10485   508378 GFileInfo documentation implies that it changes attribute...
10486   508719 g_file_get_relative_path fails if parent is root
10487   508773 g_uri_escape_string() documentation unclear.
10488
10489 * Updated translations:
10490   Arabic (ar)
10491   Spanish (es)
10492   Hebrew (he)
10493   Italian (it)
10494   Korean (ko)
10495   Turkish (tr)
10496
10497
10498 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
10499 ===================================================
10500
10501  * Portability fixes:
10502  - Assertion functions are marked as noreturn again
10503  - Handling of inline functions has been fixed to work with gcc 4.3
10504  - C99 comments have been removed from headers
10505  - The nonportable sed -i option is no longer used
10506
10507  * GIO:
10508   - Clarified the semantics of g_app_info_get_all()
10509   - API for memory input and output streams has been changed a bit
10510   - GDirectoryMonitor has been removed; GFileMonitor can monitor
10511     files and directories now
10512
10513  * Bugs fixed:
10514    504829 Invalid environment passed to g_spawn_async in g_desktop_...
10515    505258 crash in Users and Groups: Adding a user
10516    505815 g_content_types_get_registered should not g_free keys
10517    491218 g_timer_new() doesn't initialize timer->end
10518    315437 extern inline -> static inline
10519    476856 Inconsistency between standard and implementation of the ...
10520    480122 g_module_open fails to open modules with ".la" extension
10521    495589 gspawn.c failing to set FD_CLOEXEC
10522    500273 doesn't build with --disable-visibility
10523    504142 Do not show empty groups in --help output
10524    504879 giofam incorrectly linked
10525    505042 add file attribute for actually used file size in bytes
10526    505058 xattr namespace docs
10527    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
10528    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
10529    505887 older darwin lacks lchown
10530    506374 gmemoryinputstream api
10531    506461 Conversion of g_assert_not_reached() and friends into fun...
10532    503051 Small bug in glib interface
10533    506395 Updates to GIO documentation
10534    507628 Missing .pc entry for gio linking against glib
10535    505195 [patch] typo in g_try_new0 docs 
10536    507822 g{file,directory}monitor changes signal problem
10537    506377 gmemoryoutputstream write implementation
10538    507835 bug in gunixinputstream 
10539
10540  * Updated translations:
10541    Arabic (ar)
10542    Belarusian Latin (be@latin)
10543    Spanish (es)
10544    Basque (eu)
10545    Irish (ga)
10546    Hebrew (he)
10547    Occitan (oc)
10548    Vietnamese (vi)
10549
10550
10551 Overview of Changes from GLib 2.14.x to GLib 2.15.0
10552 ===================================================
10553
10554 Major new features:
10555
10556  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
10557    in GLib has support for local filesystems. The new, separate gvfs 
10558    module contains various backend implementations (cifs, ftp, sftp,
10559    http, ...)
10560
10561  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
10562    and SHA-256
10563  
10564  * GTest: a test framework 
10565  
10566 Smaller additions:
10567
10568  * GHash:
10569  - GHash has iterators, as an alternative to g_hash_table_foreach
10570
10571  * GMarkup: 
10572  - g_markup_parse_context_get_element_stack: New function to
10573    get the stack of open elements
10574  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
10575    reporting
10576  - g_markup_collect_attributes: Convenience function for handling
10577    attributes
10578
10579 * GKeyFile: 
10580  - Functions that take a GError now return a boolean to indicate 
10581    success, instead of void
10582  - Various performance improvements
10583
10584 * GAsyncQueue:
10585  - g_async_queue_new_full: new function that allows to specify
10586    a free function for leftover elements
10587  
10588 * GError:
10589  - g_prefix_error and g_propagate_prefixed_error: New functions
10590    to ease error propagation
10591
10592 * Internationalization:
10593  - C_: A new 2-argument variant of the Q_() macro 
10594  - Use native character set conversion API on Windows
10595
10596 * GLib builds with automake 1.10
10597
10598 * Bugs fixed:
10599  455725 specific combination of g_utf8_strlen and g_pattern_match...
10600  467537 g_convert_with_iconv() not resetting iconv() state correc...
10601  497033 Commandline option parser should warn about missing optio...
10602  504527 gchecksum: Conditional jump or move depends on uninitiali...
10603  445362 Non-numeric local labels in gatomic.c are causing linker ...
10604  482313 gregex: no way to tell why compilation failed
10605  317775 main loops continues to run after g_main_loop_quit() has ...
10606  418778 Insufficient pkg-config version requirement
10607  436293 g_option_context_new() doc should mention that the string...
10608  466557 glib-mkenums shifts ARGV[0] to undefined
10609  468882 GKeyFile doesn't accept "True" as a true boolean value
10610  469551 application --help messages are garbaged on none UTF-8 lo...
10611  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
10612  490061 outptrs uninitialized after g_parse_long_long
10613  490637 gobject documentation patch
10614  495294 glib-genmarshal prints warnings but returns 0
10615  496046 option to prefix location of errors for GMarkup
10616  498113 tests/regex-test fails on 64bit environment
10617  500506 Fails to build on OSX 10.4
10618  500638 gkeyfile speedup ...
10619  500875 Make check fails as there is no "test" target for "build"...
10620  502511 g_assert_cmphex prints invalid message
10621  502927 g_array_index triggers cast aligment warning
10622  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
10623  503222 Need context to translate
10624  503420 gkeyfile leaks a hash table
10625  503470 Fix build when builddir != srcdir
10626  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
10627  71704  file include order
10628  491957 Misprint in the specification of the interface "g_main_co...
10629  491959 Misprint in description of the structure "GThreadPool"
10630  491965 Mistype in the specification of the function "g_hook_list...
10631  491966 Misprint in the specification of the interface "g_main_co...
10632  491968 The documentation does not mention the restriction for th...
10633  491970 The documentation for the interface "g_date_clamp" is inc...
10634  491974 The documentation of the interface "g_main_context_iterat...
10635  491975 The documentation for the interfaces "g_io_channel_read_u...
10636  491979 Misprint in the description of the interfaces g_key_file_...
10637  491982 Misprint in the description of the interface "g_key_file_...
10638  501107 EXTRA_DIST automake warnings
10639  501997 g_utf8_normalize() returns NULL on invalid string
10640  502590 C_/g_dpgettext efficiency
10641  464259 g_set_application_name() docs should say "Since 2.2"
10642  496518 gbase64.c API doc clarification
10643  498728 g_key_file_get_*_list should set length to 0 when returni...
10644  500361 Improve docs for g_array_free() and g_ptr_array_free()
10645  501853 g_checksum_get_digest docs
10646  503862 Allow NULL strings in g_parse_debug_string()
10647  142676 Q_
10648  367550 Add g_async_queue_new_full() with GDestroyNotify function
10649  375651 Minor enhancements to GKeyFile API
10650  443648 MD5 digest support
10651  449937 Upgrade auto* sources to be clean under automake1.9
10652  452887 gmarkup context "get element" function is useless when ca...
10653  491549 [PATCH] Eliminate libiconv dependency on Windows
10654  500507 GHashTableIter API 
10655
10656 * Translation updates
10657  Belarusian Latin (be@latin)
10658  Czech (cs)
10659  German (de)
10660  Spanish (es)
10661  Esperanto (et)
10662  French (fr)
10663  Korean (ko)
10664  Marathi (mr)
10665  Norwegian bokmål (nb)
10666  Brazilian Portugese (pt_BR)
10667  Slovenian (sl)
10668  Swedish (sv)
10669
10670
10671 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
10672 ===================================================
10673
10674 * Update PCRE to 7.4
10675
10676 * Bugs fixed:
10677  487491 Fix some warnings from sparse
10678  488068 Small (one-time) memory leak in glib_gettext initialization
10679  493688 TYPE macro "_get_type ()" is documented wrong
10680
10681 * Updated translations:
10682  Arabic (ar)
10683  Belarusian Latin (be@latin)
10684  Estonian (et)
10685  Irish (ga)
10686  Slovenian (sl)
10687
10688  
10689 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
10690 ===================================================
10691
10692 * Bugs fixed:
10693  476849 Invocation of the interface "g_hook_free" fails in certai...
10694  359165 marshallers can throw warnings with -Wunused
10695  477957 more discussion on g_value_set_object vs. g_value_take_ob...
10696  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
10697  483337 inline is disabled for MSVC when compiling C code
10698  478349 Broken link to gettext website
10699  469231 g_spawn optimization for setting all open fds to CLOEXEC 
10700
10701 * Updated translations:
10702 Arabic (ar)
10703 Galician (gl)
10704 Hebrew (he)
10705 Korean (ko)
10706
10707
10708 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
10709 ===================================================
10710
10711 * Bugs fixed:
10712  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
10713  444765 Fix FIXME in gregex.c when new pcre is out
10714  464145 g_markup_escape_text Produces Invalid XML
10715  465625 g_type_default_interface_ref() does not ensure working g_...
10716  466768 Clearify that comments can be put anywhere in a Key-file.
10717  474229 The GError documentation should give convention for the G...
10718  474899 G_BREAKPOINT() docs inaccurate
10719  475854 Overuse of -lpcre when using system pcre
10720  473879 Incorrect includes in gregex.c
10721  468694 Typoes in documentation
10722  469051 g_snprintf () talks about characters where it probably me...
10723  457601 Missing arch specific atomic implementation
10724  475923 Missing pcre flags when static-linking against glib
10725  475619 glibthread-2.0.la does not list -lpthread
10726
10727 * Updated translations:
10728  Bulgarian (bg)
10729  Catalan (ca)
10730  Danish (da)
10731  German (de)
10732  Canadian English (en_CA)
10733  British English (en_GB)
10734  Spanish (es)
10735  Estonian (et)
10736  Finnish (fi)
10737  French (fr)
10738  Gujarati (gu)
10739  Hungarian (hu)
10740  Italian (it)
10741  Georgian (ka)
10742  Kannada (kn)
10743  Lithuanian (lt)
10744  Makedonian (mk)
10745  Norwegian (nb)
10746  Dutch (nl)
10747  Polish (pl)
10748  Portugese (pt)
10749  Brazilian Portugese (pt_BR)
10750  Romanian (ro)
10751  Russian (ru)
10752  Albanian (sq)
10753  Serbian (sr, sr@Latn)
10754  Swedish (sv)
10755  Tamil (ta)
10756  Thai (th)
10757  Ukrainian (uk)
10758  Vietnamese (vi)
10759
10760
10761 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
10762 ===================================================
10763
10764 * Last-minute API additions:
10765  - Make g_unichar_combining_class public
10766  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
10767
10768 * Update PCRE to 7.2
10769
10770 * Bugs fixed:
10771  453998 Make _g_unichar_combining_class() public
10772  462549 gregex.c: variable is declared at middle of block
10773  417068 g_file_test doc inconsistency
10774
10775 * Updated translations:
10776  Assamese (as)
10777  Basque (eu)
10778  Kannada (kn)
10779  Malayalam (ml)
10780  Dutch (nl)
10781  Polish (pl)
10782  Brazilian Portugese (pt_BR)
10783  Turkish (tr)
10784
10785
10786 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
10787 ===================================================
10788
10789 * The memory corruption warning from the slice allocator that
10790   occurred when threads were initialized after the slice allocator
10791   has been removed, as the slice allocator now works fine
10792   in this scenario.
10793
10794 * New functions g_once_init_enter() and g_once_init_leave() make
10795   it easier to write threadsafe one-time initialization functions 
10796  
10797 * Bugs fixed:
10798  454473 Simple XML Subset Parser terminates on invalid XML
10799  445813 g_module_open error, add file name
10800  453796 errno gets clobbered by g_filename_display_name
10801  341988 don't use "-c" with msgfmt in Makefile.in.in
10802  447048 Please produce slightly more output during long tests
10803  454785 GModule documentation lists same block of code twice.
10804  454786 GModule documentation lists same paragraph twice.
10805  383155 small docs quirks in gobject/closure API documentation
10806  65041  _get_type() functions aren't thread safe
10807
10808 * Updated translations
10809  Assamese (as)
10810  Spanish (es)
10811  Gujarati (gu)
10812  Japanese (ja)
10813  Korean (ko)
10814  Macedonian (mk)
10815
10816
10817 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
10818 ===================================================
10819
10820 * Reintroduce a GType typedef whose removal in 2.13.5
10821   caused trouble for C++ bindings
10822
10823 * Bugs fixed:
10824  450216 docs not explicit enough about g_free()
10825  451459 g_type_register_static_simple calls g_type_register_static
10826
10827 * Updated translations
10828  Norwegian bokmål (nb)
10829  Sinhala (si)
10830
10831
10832 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
10833 ===================================================
10834
10835 * xdg-user-dirs support: 
10836  - the Desktop directory is guaranteed to be defined
10837  - user-dirs.dirs is no longer reloaded on changes
10838
10839 * Slice allocator: 
10840  - new api to duplicate slices
10841
10842 * Regular expression support:
10843  - GRegex is a boxed type now
10844
10845 * Bugs fixed:
10846  44793 make check failing in trunk
10847  354522 Small problem with PLT hiding 6 symbols
10848  363986 glib 2.12.4 does not compile with SGI IDO cc
10849  443869 g_type_class_add_private doesn't warn when adding 0-sized...
10850  446859 Legitimately return 0 for g_quark_from_string(NULL)
10851  447534 Small typo in g_timeout_add_seconds() doc
10852  447583 GStaticRWLock
10853  447935 g_get_current_dir SIGSEGV on long path
10854  448260 CLAMP has surprising result if low > high
10855  57693  g_string_vprintf()
10856  442029 add g_slice_dup()
10857  445065 Add GRegex boxed type
10858  448819 Add full version of g_timeout_add_seconds()
10859
10860 * Updated translations: 
10861  Swedish (sv)
10862  Oriya (or)
10863  Hebrew (he)
10864  Spanish (es)
10865  Estonian (et)
10866
10867  
10868 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
10869 ===================================================
10870
10871 * Bugs fixed:
10872  444121 g_get_user_special_dir deadlocks
10873  444161 invalid UTF8 in key name shows up as valgrind error in g_...
10874  444130 g_option_context_get_help() is broken when there's a desc...
10875
10876
10877 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
10878 ===================================================
10879
10880 * GKeyFile:
10881  - Added defines for easier handling of desktop files
10882
10883 * Unicode support:
10884  - Update g_unichar_iswide_cjk for Unicode 5.0
10885
10886 * Regular expression support:
10887  - GRegex structs can now be ref-counted
10888  - Some new functions for dealing with incremental 
10889    replacement have been added
10890  - The GRegexEvalCallback signature has been changed
10891
10892 * g_get_user_special_dir() has been added to support
10893   xdg-user-dirs
10894
10895 * Bugs fixed:
10896  419376 Functions using named subpatterns behave inconsistently w...
10897  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
10898  423708 typo in the README.win32 file see patch below
10899  339225 Add new defines for easier handling of .desktop files 
10900  442265 API additions/changes for GRegex
10901  432651 Add a glib-ish xdg_user_dir_lookup
10902
10903 * Updated translations:
10904  Estonian (et)
10905  Norwegian bokmål (nb)
10906
10907
10908 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
10909 ===================================================
10910
10911 * Unicode support:
10912  - Add g_unichar_ismark()
10913
10914 * GOption:
10915  - Allow to use callbacks for remaining args
10916
10917 * Updated translations:
10918   Belarusian Latin (be@latin)
10919   British English (en_GB)
10920   Galician (gl)
10921   Norwegian bokmål (nb)
10922   Oriya (or)
10923   Spanish (es)
10924   Thai (th)
10925
10926
10927 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
10928 ===================================================
10929
10930 * GRegex:
10931  - Portability fixes
10932  - Split into immutable GRegex and GMatchInfo
10933  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
10934    to obtain information about the compiled regex
10935
10936 * GKeyFile:
10937  - Fix roundtrip problems
10938  - Add g_key_file_load_from_dirs()
10939
10940 * Unicode support:
10941  - Fix corner cases in case conversion routines
10942
10943 * GOption:
10944   - Add a function to get the formatted help string
10945
10946 * GHash:
10947  - Add new functions g_hash_table_get_keys() and
10948    g_hash_table_get_values() to retrieve the keys and
10949    values in list form
10950
10951 * Updated transations:
10952   Simplified Chinese (zh_CN)
10953   Arabic (ar)
10954
10955
10956 Overview of Changes from GLib 2.12 to GLib 2.13.0
10957 =================================================
10958
10959 * Add GSequence, a list that is implemented using
10960   a balanced binary tree.
10961
10962 * Add GRegex, an implementation of Perl regular expressions,
10963   based on PCRE.
10964  
10965 * Use Posix monotonic clocks instead of gettimeofday()
10966   for GTimer when available.
10967
10968 * Support static initialization of GQeues with G_QUEUE_INIT,
10969   g_queue_init() and g_queue_clear().
10970
10971 * Add g_string_chunk_clear() for clearing a 
10972   GStringChunk.
10973
10974 * Add g_unichar_get_script() to obtain Unicode
10975   script information.
10976
10977 * Add g_unichar_iszerowidth() to obtain information
10978   about zero-width characters.
10979
10980 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
10981   type attribute.
10982
10983 * G_GNUC_INTERNAL has a working definition for the
10984   Sun Studio compiler. This requires the macro to
10985   be positioned before the function declaration.
10986
10987 * The slice allocator can produce detailed debugging
10988   information with G_SLICE=debug-blocks.
10989
10990 * Modules support G_DEBUG flags resident-modules and
10991   bind-now-modules.
10992
10993 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
10994   to define types in modules.
10995
10996 * Bug fixes: too many to list them in detail here.
10997
10998 * New and updated translations (be,bg,bn,ca,cs,de,
10999   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
11000   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
11001   zh_HK,zh_TW)
11002
11003
11004 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
11005 ===================================================
11006
11007 * Unicode updates:
11008  - Normalization is following Unicode TR #29
11009  - g_unichar_isxdigit() only accept characters
11010    for which g_unichar_xdigit_value() returns a value
11011  - g_unichar_toupper and g_unichar_tolower leave
11012    unconvertable characters in place instead of
11013    replacing them by NUL
11014
11015 * Bugs fixed
11016  348491 g_utf8_strup() and g_utf8_strdown() returns 
11017         string with NUL bytes
11018  349825 GKeyFile always inserts a newline before a group
11019  347842 g_unichar_isxdigit() is too general about what 
11020         it considers a digit
11021  348694 g_utf8_normalize() hasn't been updated to PR #29
11022  348785 Hint about G_DEBUG in Message Logging docs
11023  349792 Wrong english string (UI)
11024  349952 gparamspecs.c uses gcc feature
11025
11026 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
11027   nl,pl,tr,uk,zh_HK,zh_TW)
11028
11029
11030 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
11031 ===================================================
11032
11033 * Update to final Unicode Character Database 5.0.0
11034
11035 * Bugs fixed:
11036  346660 issues with base64 api documentation / g_base64_decode_cl...
11037  348136 Coverity reports allocation of wrong size CID #2839
11038  336281 Update to UCD 5.0
11039  346197 g_date_strftime %F option doesnt work for win32
11040  348011 Small optimization to real_toupper()
11041  246494 prototype mismatch in glib/gconvert.c
11042
11043 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
11044   fr,he,it,ja,mk,or,pt)
11045
11046
11047 Overview of Changes from GLib 2.11.4 to GLib 2.12
11048 =================================================
11049
11050 * Bugs fixed:
11051  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
11052
11053 * Updated translations (cy,nb,nl)
11054
11055
11056 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
11057 ===================================================
11058
11059 * GBookmarkFile:
11060  - g_bookmark_file_remove_item returns a boolean
11061  
11062 * g_mkstemp accepts the XXXXXX in the middle of
11063   the template
11064  
11065 * Bugs fixed:
11066  344868 g_key_file_to_data should separate groups 
11067
11068 * Updated translations (de,es,fr,gu,hi,ko,th)
11069
11070
11071 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
11072 ===================================================
11073
11074 * GBookmarkFile:
11075   - g_bookmark_file_move_item: Return TRUE in case of
11076     an empty target
11077
11078 * Bugs fixed: 
11079  343919 gunicollate.c: strxfrm bug on VC8
11080
11081 * Updated translations (fi)
11082
11083 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
11084 ===================================================
11085
11086 * Add g_ascii_stroll to parse signed 64bit integers
11087
11088 * GMarkup: add a flag to treat CDATA as text
11089
11090 * GHashTable: add functions to remove all entries
11091
11092 * GMainLoop: add functions to find the currently
11093   running source, and determine if it is destroyed
11094
11095 * Bug fixes:
11096  342563  g_atomic_thread_init() needs to be called before 
11097          other _g_*_thread_init() functions
11098  343548  Potential use after free in callers of g_string_free() 
11099  168538  Wish: Clearing contents of GHashTables
11100  321886  GTK+ cannot be reliably used in multi-threaded 
11101          applications
11102  341826  goption.c: 'strtoll' is C99's function
11103  343899  g_ascii_formatd dosn't work as expected for all 
11104          format strings
11105  317793  Make GEnumValue strings const
11106  337129  Compile warnings in G_IMPLEMENT_INTERFACE
11107  303622  What is G_TYPE_CHAR?
11108
11109 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
11110  
11111
11112 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
11113 ===================================================
11114
11115 * GOption  
11116   - Support 64-bit integers 
11117   - Allow optional text before and after the options
11118     in help output
11119
11120 * Bug fixes:
11121  340538 gbase64-test writes OOB 
11122  340816 GKeyFile set_string_list invalid memory reads 
11123  339105 g_key_file_parse_value_as_double
11124  340434 convert-test.c fails (function test_one_half)
11125  311043 Memory leaks (and potential infinite loops) 
11126         when using G_ERRORCHECK_MUTEXES
11127  335198 Error checking mutexes are fubar  
11128  341237 Add a G_OPTION_ARG_INT64
11129  341192 g_io_channel_set_flags not implemented on win32
11130  336120 Allow adding description before/after GOption 
11131         --help output body
11132  341191 misplaced check in g_relation_delete
11133  340530 mismatched calloc / g_free in win32 threads
11134
11135 * Updated translation (es)
11136
11137 Overview of Changes from GLib 2.10.x to GLib 2.11.0
11138 ===================================================
11139
11140 * GBookmarkFile: a parser for files containing bookmarks
11141   stored using the Desktop Bookmark specification.
11142
11143 * Base64 encoding support
11144         
11145 * Unicode 5.0 support
11146
11147 * GOption supports floating point numbers 
11148
11149 * GKeyFile supports floating point numbers
11150
11151 * Bug fixes:
11152  155884 gatomic.c should be based on new SDK
11153  157877 update-desktop-database doesn't handle duplicate entries
11154  164719 keyfile parser doesn't support floats
11155  327662 Import BookmarkFile from libegg
11156  329548 Add G_OPTION_ARG_DOUBLE
11157  329789 option-test.c type confusion
11158  332841 Segmentation Fault when %llu is passed to vasnprintf and 
11159         HAVE_SNPRINTF is not defined
11160  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
11161         _WIN32_WINDOWS 0x0401'
11162  333916 g_timer_elapsed docs should mention that microseconds 
11163         may be NULL
11164  334440 dlerror() portability issue causes crash on (old) a.out 
11165         NetBSD platform
11166  334646 goption + error out params
11167  334799 g_remove() must check return value of remove()
11168  334943 make check FAIL: threadpool-test
11169  335215 Some breakages with GThreadPool
11170  336085 g_option_context_new parameter lacks better explanation
11171  336677 Documentation for g_object_ref_sink() is incorrect
11172  337027 gbookmarkfile.c: sys/time.h include error
11173  337553 Wrong escaping of URIs
11174  338572 Dereferencing NULL value in g_key_file_get_group_comment
11175  338845 g_completion_complete_utf8 crashes when NULL is passed to it
11176  339337 g_bookmark_file_set_description
11177  339338 gbookmarkfile.c, function expand_exec_line
11178  339340 gbookmarkfile.c, function bookmark_app_info_dump
11179
11180 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
11181                        or,pt_BR,ro,tr,vi,zh_CN)
11182
11183
11184 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
11185 ===================================================
11186
11187 * Bugs fixed:
11188  314794 Broken pthread detection on Darwin [Gregor Riepl]
11189  322476 Missing check for .dylib [Vladimir Panov]
11190  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
11191         M. Merino Vidal]
11192  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
11193
11194 * Win32 changes:
11195  - Fix g_listenv() implementation.
11196  - Allow up to 100 GPrivate structs
11197
11198 * Translation updates (fr,hu,lt,pl,sv)
11199
11200
11201 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
11202 ==================================================
11203
11204 * Bugs fixed:
11205  328997 64bit pointer trunction in glib slab-allocator
11206         [Pascal Hofstee]
11207  331110 g_cond_broadcast(inform_cond) without holding 
11208         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
11209  332093 Fix some leaks in the tests [Kjartan Maraas]
11210  332435 g_utf8_strlen returns wrong value if a maximum 
11211         number of bytes to check is specified 
11212         [Matthias Clasen]
11213  331367 gslice requires more POSIX-like semantics for 
11214         GPrivate destructors [Tor Lillqvist]
11215
11216 * Documentation improvements [Matthias, Kang Jeong-Hee,
11217   Tor Lillqvist, Stefan Kost]
11218
11219 * Translation updates (el,eu,ka,uk)
11220
11221 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
11222 =================================================
11223
11224 * Bugs fixed: 
11225  329124 distclean removes README [Kjartan Maraas, Tim Janik]
11226  317679 GRelation field type not documented [Behdad Esfahbod]
11227  329123 Typo in GTime docs [Kjartan Maraas]
11228
11229 * Documentation improvements [Sven Herzberg, David
11230   Schleef, Kjartan Maraas, Behdad Esfahbod]
11231
11232 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
11233
11234 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
11235 =================================================
11236
11237 * Memory management: 
11238   Runtime debugging support: The slice allocator
11239   can be turned off by setting G_SLICE=always-malloc
11240   in the environment. Zeroing of freed memory can
11241   now be turned on at runtime by setting
11242   G_DEBUG=gc-friendly in the environment. [Tim Janik]
11243
11244 * Bugs fixed:
11245  328253 HP-UX/IA-64 uses ".so" as default shared library 
11246         extension [Albert Chin]
11247  143380 unicode-encoding test fails converting to UTF-16 
11248         with libiconv [Marc Moorcroft]
11249  328254 Build breakage (GSlice) [Jens Ganseuer]
11250  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
11251
11252 * Translation updates (da,et,zh_CN)
11253
11254 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
11255 =================================================
11256
11257 * Type system:
11258   Fix a problem with g_object_compat_control() which 
11259   can lead to segfaults in GTK+ applications on 64bit 
11260   platforms. 
11261
11262 * Thread suppport: 
11263   Unused threads now fall back to the global pool after 
11264   500 milliseconds, where they wait for another 
11265   max-idle-time milliseconds. [Sebastian Wilhelmi]
11266
11267 * Fix a memory allocation problem in GKeyFile. [Morten 
11268   Welinder]
11269
11270
11271 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
11272 =================================================
11273
11274 * GTree:
11275  - Replace the simple recursive implementation by
11276    a nonrecursive, threaded one  [Maurizio Monge]
11277
11278 * Change g_filename_display_name and
11279   g_filename_display_basename to use the Unicode
11280   replacement character U+FFFD instead of a question
11281   mark, and don't append "(invalid encoding)"  [Matthias]
11282
11283 * Documentation improvements [Sven Herzberg, Federico
11284   Mena Quintero, Stefan Kost]
11285
11286 * Bugs fixed:
11287  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
11288         [Bogdan Nicula]
11289  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
11290  169285 "threaded" tree implementation for GTree 
11291         [Maurizio Monge]
11292  326747 g_filename_display_basename adds (invalid encoding) 
11293         [Alberto Ruiz]
11294
11295 Other contributors: Christian Kellner, Murray Cumming
11296
11297 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
11298
11299
11300 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
11301 =================================================
11302
11303 * Memory management:
11304  - Add tests for cache colorization [Tim Janik]
11305  - Minimize space consumption if small amounts of differently
11306    sized slices are allocated, at a small performance cost.  [Tim]
11307
11308 * Thread support:
11309  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
11310    Sebastian Wilhelmi]
11311  - Add g_thread_pool_set_sort_function() to allow sorting the 
11312    tasks of a threadpool.  [Martyn Russell]
11313  - Add g_thread_pool_set_idle_time() to allow unused threads
11314    to exit after a certain time.  [Martyn]
11315
11316 * Type system:
11317  - introduce a new type GInitiallyUnowned, which has an initial
11318    floating reference. [Tim]
11319  - Add support for GType parameters. [Matthias]
11320
11321 * Main loop:
11322  - Add g_main_context_is_owner() to determine if the current
11323    thread is the owner of the context.  [Michael Meeks]
11324
11325 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
11326   wrapper functions instead of macros.  [Manish Singh]
11327
11328 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
11329   Stefan Kasal, Dan Williams]
11330
11331 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
11332
11333 * Bugs fixed:
11334  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
11335         tries to modify [J. Ali Harlow]
11336  324332 g_option_context_parse() returns false without setting error 
11337         [Tim-Philipp Müller]
11338  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
11339  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
11340  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
11341         gpointer [Andrew Paprocki]
11342  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
11343         Stanislav Brabec]
11344  325273 Error in documentation for glib_check_version () [Declan Naughton]
11345  325310 g_spawn_sync hangs when catching both stdout and 
11346         stderr [Tor Lillqvist]
11347  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
11348  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
11349  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
11350  325438 a typo (compatability) [Stefan Kasal]
11351  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
11352
11353
11354 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
11355 =================================================
11356
11357 * Memory management
11358  - The slice allocator is implemented [Tim Janik]
11359  - g_slice_free_chain() has been renamed to 
11360    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
11361  - Mem chunks are deprecated [Matthias Clasen]
11362
11363 * Data structures
11364  - Hash tables are refcounted, and have a boxed type [Tim]
11365
11366 * Thread support
11367  - Support for Solaris threads has been removed 
11368    [Sebastian Wilhelmi, Andrew Paprocki]
11369  - g_async_queue_sort(), g_async_queue_push_sorted() have 
11370    been added to allow GAsyncQueue to be used as a priority 
11371    queue, together with the corresponding _unlocked 
11372    variants  [Martyn Russell]
11373
11374 * GObject:
11375  - The concept of a floating initial reference has been
11376    moved from GtkObject to GObject [Tim]
11377
11378 * Win32 changes:
11379  - Make g_rename() replace existing files [Tor Lillqvist]
11380
11381 * Misc new API:
11382  - G_GUINT64_CONSTANT macro to define guint64 
11383    constants [Andrew Paprocki]
11384  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
11385    compiler to emit a warning if the value returned
11386    by a function is ignored. [Arjan van de Ven, Alex Larsson]
11387  - GList and GSList now have sort functions which take an
11388    extra user data argument [Martyn Russell]
11389  - g_param_spec_ref_sink() has been added for consistency [Tim]
11390
11391 * $LOGNAME is respected when determining user data. [Laszlo Peter]
11392
11393 * Other changes and bug fixes [Tim, Matthias, Behdad, 
11394   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
11395   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
11396   Andreas Schwab, Kalle Vahlman]
11397
11398 * Documentation
11399  - Deprecation warnings carry version information [Matthias]
11400  - The slice allocator has been documented [Matthias, Tim]
11401  - Other improvements [Morten Welinder]
11402
11403 Overview of Changes from GLib 2.8.x to GLib 2.9.0
11404 =================================================
11405 * Unicode support:
11406  - The Unicode tables have been updated to Unicode 4.1, 
11407    adding several new values to the GUnicodeBreakType 
11408    enumeration. This breaks Pango <= 1.10 
11409    [Behdad Esfahbod]
11410  - The various Unicode character predicate functions 
11411    (g_unichar_isalpha, g_unichar_isdigit,...) have
11412    been optimized
11413    [Behdad]
11414  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
11415    These functions handle negative offsets now, and
11416    going backwards in g_utf8_offset_to_pointer uses
11417    "stutter stepping".
11418    [Larry Ewing, Matthias Clasen]
11419
11420 * Memory management:
11421  - Mem chunks are no longer used internally in GLib and
11422    GObject. GMemChunk will be deprecated in GLib 2.10
11423  - All APIs based on GAllocator (g_list_push/pop_allocator,
11424    and similar push/pop_allocator functions for other
11425    data structures) have been deprecated, since they
11426    never worked as intended.
11427  - The g_slice_* functions have been added as a 
11428    new API for fast allocation of small memory blocks. 
11429    The implementation in GLib 2.9.0 is just a simple 
11430    wrapper around malloc. GLib 2.10 will have an
11431    efficient and scalable implementation. 
11432    [Tim Janik, Matthias]
11433
11434 * Pattern matching:
11435  - g_pattern_match has been optimized to avoid
11436    unnecessary recursion.
11437    [Tim, Matthias]
11438
11439 * g_intern_string, g_intern_static_string: 
11440  - New functions to intern strings. These are now used 
11441    by GObject to avoid duplicating static strings 
11442    [Matthias]
11443
11444 * g_thread_foreach: 
11445  - New function to iterate over all GThreads 
11446    [Tim, Matthias]
11447
11448 * g_date_set_time_t, g_date_set_time_val:
11449  - New functions to set a GDate from a time_t or
11450    GTimeVal value. g_date_set_time has been deprecated 
11451    in favor of these.
11452    [Roger Leigh]
11453
11454 * g_snprintf and g_vsnprintf:
11455  - These functions are no longer declared in gprintf.h, 
11456    since they are in glib.h
11457    [Matthias]
11458
11459 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
11460 =================================================
11461 * Optimize single-character insertions in GString [Ross Burton]
11462 * Fix build problems on OS X
11463 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
11464 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
11465 * Documentation improvements [Tristan van Berkom, Behnam
11466   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
11467 * New and updated translations (ca,cy,ko,ro,uk)
11468
11469 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
11470 =================================================
11471 * Make g_value_transform() handle enum values
11472   correctly on ppc64.  [Michael Lorenz]
11473   (Third-party code accessing enumeration values 
11474   in GValues should also be changed to access 
11475   v_long, not v_int, in order to work on bigendian 
11476   64bit machines.)
11477 * Make g_flags_get_first_value() handle a value
11478   of 0 meaningfully. [Tim-Philipp Müller] 
11479
11480 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
11481 =================================================
11482 * Make atomic operations on s390 work [Matthias]
11483 * Fix C++ guards in gstdio.h [Tor Lillqvist]
11484
11485 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
11486 =================================================
11487 * Add native implementations of atomic operations 
11488   on s390 [Matthias]
11489 * Make atomic reference counting of closures
11490   work on s390 [Matthias]
11491 * Avoid an infinite loop in g_convert_with_iconv().
11492   [Sebastian Bacher]
11493 * Documentation improvements [Ross Burton]
11494
11495 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
11496 =================================================
11497 * Thread-related changes
11498  - Fix build issues on HP-UX [Paul Cornett]
11499  - Threadsafe access to flags stored in datasets [Tim Janik]
11500  - Fix several issues with atomic refcounting for 
11501    closures, objects and paramspecs [Tim]
11502  - Improve tests for atomic refcounting changes [Tim]
11503 * Fix handling of stateful encodings in g_convert_* [Matthias]
11504 * Fix translation of GOption help output [Dan Winship]
11505 * Catch format errors in translations. This may cause 
11506   "make check" to fail when using older versions
11507   of gettext [Matthias]
11508 * Win32 bug fixes [Tor Lillqvist]
11509 * Documentation improvements [Ross Burton, Jochen Baier, 
11510   Matthias, Tim]
11511 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
11512
11513 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
11514 =================================================
11515 * Fix g_atomic_pointer_compare_and_exchange 
11516   on Sparc64 [Gert Doering]
11517 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
11518 * Win32 bug fixes [Tor Lillquist]
11519 * Other bug fixes [Benoit Dejean, Manish Singh]
11520 * Documentation improvements [Bryan Silverthorn,
11521   Callum McKenzie] 
11522 * New and updated translations (de,lt,sq,zh_CN)
11523
11524 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
11525 =================================================
11526 * GOption
11527  - Allow callbacks with optional arguments [Pawel Sliwowski]
11528  - Allow to turn off the automatic long option name
11529    disambiguation  [Adam McLaurin]
11530  - Only allow printable ASCII as short option names [Matthias]
11531 * Win32
11532  - Build fixes [Tor Lillqvist]
11533  - Rewrite iochannel socket implementation [Tor]
11534 * GObject
11535  - Threadsafety improvements; in particular, refcounting
11536    of objects is done atomically now. [Wim Taymans, Tim Janik]
11537 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
11538 * Documentation improvements [Richard Laager, Matthias]
11539 * New and improved translations (bf,cs,hu,nb,nl,no)
11540
11541 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
11542 =================================================
11543 * Win32 build fixes [Hans Breuer]
11544 * Bug fixes [Mikael Magnusson]
11545 * Documentation improvements [Matthias Clasen]
11546 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
11547
11548 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
11549 =================================================
11550 * GOption 
11551  - Allow callback arguments without parameters [Dan Winship]
11552 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
11553 * Misc new functions:
11554  - g_get_host_name [Tor Lillqvist]
11555  - g_mkdir_with_parents [Tor]
11556  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
11557    Matthias Clasen]
11558 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
11559   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
11560 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
11561 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
11562   sk,th,zh_TW)
11563
11564 Overview of Changes from GLib 2.6.x to GLib 2.7.0
11565 =================================================
11566 * GKeyFile
11567  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
11568  - Accept \r\n as line end [Bastian Nocera]
11569  - Don't interpret leading zeros as octal numbers. [Matthias]
11570  - Make key and group removal work [David Hoover, Matthias Hasselmann]
11571 * GOption
11572  - Improve formatting of --help output [Matthias, Noah Levitt]
11573  - Accept -? [Matthias]
11574  - Warn about duplicate main groups [Jeff Franks]
11575  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
11576  - Report missing arguments as errors [Björn Lindqvist]
11577  - Add a boxed type for GDate [Tim-Philipp Müller]
11578 * GTree
11579  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
11580 * Stdio wrappers
11581  - Work regardless of large file support [Manish Singh]
11582  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
11583 * GObject
11584  - Implement "toggle references" to help language bindings [Owen Taylor]
11585  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
11586  - Make pspec lookup a bit faster [Morten Welinder]
11587 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
11588 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
11589   Sven Neumann, Manish, Alexis S. L. Carvalho]
11590 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
11591 * Add g_utf8_collate_key_for_filename() to sort filenames taking
11592   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
11593 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
11594   NULL-terminated argument lists. [Marc Meissner]
11595 * Win32 changes
11596  - Improved debugability [Ulf Lamping, Hans Breuer]
11597  - Make filename handling more robust [Tor, Billy Skaggs]
11598  - Improve g_get_system_data_dirs() [Tor]
11599  - Use more precise timers [Tor]
11600  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
11601 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
11602   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
11603   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
11604   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
11605   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
11606   Christian Biere, Noah, Benoît Carpentier]
11607 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
11608   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
11609   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
11610 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
11611   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
11612
11613 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
11614 =================================================
11615 * GOption
11616  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
11617  - Improve handling of -- [Matthias Clasen]
11618  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
11619 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
11620 * Add gmodule-export-2.0.pc [Matthias]
11621 * Win32 changes
11622  - Improve hangling of UNC paths [Tor Lillqvist]
11623  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
11624    take and return UTF-8 now [Tor] 
11625  - Make g_file_test() work more reliably, and use PATHEXT
11626    when check for executables [Tor]
11627  - Build and cross-compilation fixes [J. Ali Harlow]
11628 * Other bug fixes [Jens Hatlak, Morten Welinder, 
11629   Tor, Kalpesh Shah, Adrian Bunk]
11630 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
11631   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
11632   Vincent Untz, Bastien Nocera]
11633 * New and updated translations (cy,de,nl,ru,sq,sv)
11634
11635 Overview of Changes from GLib 2.4.x to GLib 2.6.0
11636 =================================================
11637
11638 * Major new APIs
11639   - GOption, a commandline option parser
11640   - GKeyFile, a parser/editor for the .ini like files 
11641   - Functions to support the XDG basedir specification
11642   - Wrappers for common POSIX pathname functions to handle filename
11643     encodings consistently. On Windows, these use UTF-8.
11644
11645 * Miscellaneous new functions
11646   - g_filename_display_name() converts filenames in displayable UTF-8 strings
11647   - g_uri_list_extract_uris() splits uri lists
11648   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
11649   - g_log_set_default_handler() installs an alternate default log handler
11650   - g_get_language_names() obtains a list of applicable locale names
11651   - g_strv_length() calculates the length of NULL-terminated string arrays
11652   - g_win32_get_windows_version() determines the Windows version 
11653   - G_GNUC_INTERNAL marks functions as non-exported
11654   - glib_check_version() checks the GLib version at runtime
11655   - g_debug() completes the family of logging functions
11656
11657 * Performance improvements
11658   - Optimize g_utf8_validate()
11659   - Optimize g_markup_parse_context_parse()
11660   - Reduce signal connection complexity from O(n) to O(1) 
11661   - Get rid of many PLT entries for internally used exported symbols
11662   - Reduce code size by removing literal strings from g_return_if_fail()
11663
11664 * Other changes
11665   - On Windows, GLib functions that take file name arguments now require
11666     those to be in UTF-8. Functions that return file names return UTF-8.
11667   - Use higher precision for mathematical constants
11668   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
11669   - Support ll as printf format modifier for long long on all platforms
11670   - Clean up the ABI and enforce the list of exported symbols
11671   - Add a .pc file for using gmodule in libraries
11672   - Require ngettext
11673
11674 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
11675 =================================================
11676 * GOption: Don't list help options if group-specific
11677   options have been requested [Glynn Foster]
11678 * Make g_get_language_names() track locale changes [Christian Persch]
11679 * Win32 bug fixes [Tor Lillqvist]
11680 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
11681 * New and updated translations (da,es,ja,lt,zh_CN)
11682 Bugs fixed: 159530,100697,160271,160645,157255
11683
11684 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
11685 =================================================
11686 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
11687 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
11688   Morten Welinder]
11689 * Reduce signal connection complexity from O(n) to O(1) 
11690   [Sven Neumann]
11691 * Add a .pc file for using gmodule in libraries [Owen]
11692 * Add G_GNUC_MALLOC to mark functions returning newly 
11693   allocated memory  [Matthias]
11694 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
11695   Bruce Hochstetler]
11696 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
11697   Frederic Crozat, Tor]
11698 * Documentation improvements [Matthias, Tor, Owen]
11699 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
11700
11701 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
11702 =================================================
11703 * GOption
11704   - Add G_OPTION_FLAG_REVERSE to allow options 
11705     which unset a  boolean variable [Tor Lillqvist]
11706 * GChildWatch
11707   - Use sigaction instead of signal [Jonas Jonnson, 
11708   Archana Shah]
11709   - Make the very first SIGCHLD work [Gustavo Carneiro]
11710 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
11711   Manish Singh, J. Ali Harlow]
11712 * Documentation improvements [Matthias Clasen, Tor]
11713 * Updated translations (da,ja,tr,zh_CN)
11714
11715 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
11716 =================================================
11717 * GKeyFile
11718   - Cleanups, add more error checking [Ray Strode]
11719   - Fall back to the untranslated string when getting 
11720     locale strings [Mark McLoughlin]
11721 * GOption
11722   - Document GOption [Matthias Clasen]
11723   - Better support for rest arguments [Owen Taylor, Matthias]
11724   - Handle conflicts between groups [Matthias]
11725 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
11726 * Add g_filename_display_name() to convert filenames
11727   in displayable UTF-8 strings  [Alex Larsson, Matthias]
11728 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
11729 * Bug fixes [Christophe Fergeau, Morten Welinder, 
11730   Owen, Kjartan Maraas, Mark]
11731 * Documentation improvements [Matthias, Tor]
11732
11733 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
11734 =================================================
11735 Add GKeyFile, a parser/editor for the .ini like files used in various
11736    freedesktop.org specifications. [Ray Strode]
11737 Make the handling of filename encodings consistent across all
11738    GLib functions, introduce wrappers for common POSIX 
11739    functions which accept the same filename encoding. [Tor Lillqvist, 
11740    Owen Taylor]
11741 GOption
11742  - Rename g_context_option_error_quark() to a more language-binding
11743    friendly name [Murray Cumming]
11744  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
11745 * Strip the internal aliasing prefix IA__ from function names in 
11746   assertions [Matthias Clasen]
11747 * Add a function to split uri lists. [Matthias]
11748 * Win32 bug fixes 
11749  - Don't open console windows [Tor]
11750 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
11751  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
11752   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
11753   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
11754 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
11755  Adam Hooper, Gustavo Carneiro]
11756 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
11757
11758 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
11759 =================================================
11760 * GOption
11761  - set the program name from argv[0] [Masatake YAMATO] 
11762  - make contexts work without a main group [Anders Carlsson]
11763 * Performance 
11764  - Get rid of many PLT entries for internally used exported symbols,
11765    and clean up the ABI at the same time and make make check check the
11766    list of exported symbols.  [Matthias Clasen]
11767 * Add API to get ISO 8601 week numbers [Niklas Lundell]
11768 * Add API to install an alternate default log handler [Darin Adler]
11769 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
11770 * Reduce code size bloat by removing literal strings from
11771  the g_return_if_fail() macros [Owen Taylor]
11772 * Add g_strv_length [Tim-Philipp Müller]
11773 * Win32 changes
11774  - Add API to determine the Windows version [Tor Lillqvist]
11775 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
11776   Manish Singh]
11777 * Documentation improvements [Morten Welinder, Matthias]
11778 * New and updated translations (es,nn,ro)
11779
11780 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
11781 =================================================
11782 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
11783 * Add GOption, a commandline option parser [Anders Carlsson]
11784 * Add glib_check_version [Michael Natterer]
11785 * Add XDG basedir API [Ray Strode]
11786 * Require ngettext [Danilo Segan]
11787 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
11788   Jon-Kare Hellan, Jody Goldberg]
11789 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
11790 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
11791 * New and updated translations (bs,eu,fi,gu,ne,pa)
11792
11793 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
11794 =================================================
11795
11796 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
11797   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
11798   Ögren, Tommi Komulainen]
11799 * Documentation improvements [Soeren Sandmann, 
11800   Christophe Fergeau, Danek Duvall]
11801 * New and updated translations (eu,hi)
11802   
11803 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
11804 =================================================
11805
11806 * New functions g_debug [Sven Herzberg]
11807 * Use higher precision for mathematical constants [Morten 
11808  Welinder]
11809 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
11810  [Federico Mena Quintero]
11811 * Win32
11812  - Handle empty digit string in printf() functions 
11813    correctly [Tor Lillqvist]
11814  - Support ll as format modifier for long long [Tor]
11815  - Be more careful about HOME [Tor, Ivan Wong]
11816  - Bug fixes [John Ehresman]
11817 * Miscellaneous bug and portability fixes [Danilo Segan, 
11818  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
11819  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
11820  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
11821 * Documentation updates [Matthias Clasen, Crispin Flowerday,
11822  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
11823 * New and updated translations (ja,ne,no,wa)
11824  
11825 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
11826 =================================================
11827
11828 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
11829 * Miscellaneous bug and portability fixes [Owen Taylor,
11830   Matthias Clasen, Jonas Jonsson, Christian Krause,
11831   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
11832   Piotr Klaban]
11833 * Documentation updates [Matthias]
11834 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
11835   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
11836
11837 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
11838 =================================================
11839
11840 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
11841 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
11842 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
11843   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
11844   Sebastian Wilhelmi]
11845 * Documentation updates [Owen]
11846 * Updated translations (hr,ro)
11847
11848 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
11849 =================================================
11850
11851 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
11852 * GMain threading fixes and improvements [Sebastian]
11853 * Win32 [Tor Lillqvist]
11854  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
11855  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
11856 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
11857 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
11858
11859 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
11860 =================================================
11861
11862 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
11863 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
11864 * Add atomic operations and use it for the async queue and
11865   gonce implementation. [Sebastian Wilhelmi]
11866 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
11867 * Add g_main_depth() for finding the recursion depth of the main
11868   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
11869 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
11870 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
11871 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
11872 * Updated translations (cy,et,ga,sq)
11873
11874 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
11875 =================================================
11876
11877 * Add a native AIX gmodule implementation. [Laurent Vivier]
11878 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
11879 * Extend GQueue API to match the GList API. [Soeren Sandmann]
11880 * Add g_hash_table_find().  [Tim Janik]
11881 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
11882 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
11883 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
11884 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
11885   Matthias]
11886 * Add g_strsplit_set(). [Soeren]
11887 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
11888   Soeren, Matthias]
11889 * Win32 build fixes. [Tor Lillqvist]
11890 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
11891   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
11892   Matthias]
11893 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
11894
11895 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
11896 =================================================
11897
11898 * Add G_MAXSIZE. [Manish Singh]
11899 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
11900   implementing the init-by-array functionality of the 
11901   original mersenne twister. Add g_rand_copy(). Improve seeding. 
11902   [George Lebl]
11903 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
11904 * Add g_ptr_array_foreach(). [Matthias Clasen]
11905 * Add g_timer_continue(). [Tim-Philipp Müller]
11906 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
11907 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
11908   g_file_test() there too [Hans Breuer] 
11909 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
11910 * Add G_DEFINE_TYPE() plus variants to ease the constuction
11911   of GObject boilerplate code.  [Tim Janik]
11912 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
11913 * Documentation improvements [Matthias, Manish]
11914 * Win32 build fixes [Hans]
11915 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
11916   Zack Rusin]
11917 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
11918
11919 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
11920 =================================================
11921
11922 * Add glib/gi18n.h and glib/gi18n-lib.h for common
11923   gettext support, including a Q_() macro for translation
11924   with context [Matthias Clasen]
11925 * Add a more flexible G_FILENAME_ENCODING variable
11926   as a replacement for G_BROKEN_FILENAMES [Matthias]
11927 * Fix the return value g_main_context_iterate() for
11928   newly ready sources [Padraig O'Briain]
11929 * Handle Hangul composition for normalization [Noah Levitt]
11930 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
11931 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
11932 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
11933 * Documentation improvements [Matthias]
11934 * GObject [Tim Janik]
11935  - Support '-' in g_signal_connect()/disconnect() names
11936    like 'swapped-signal'.
11937  - Add g_type_class_peek_static() and use to optimize
11938    g_object_new() for static types [Tim]
11939  - Allow setting construct-only properties from within
11940    init() implementations
11941  - Enforce readability/writeability in g_object_set/get()
11942 * Fix bug with g_ascii_strtod and multi-byte separator.
11943   [Behdad Esfahbod, Roozbeh Pournader]  
11944 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
11945   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
11946   Morten Welinder]
11947 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
11948
11949 Overview of Changes from GLib 2.2.x to GLib-2.3.0
11950 =================================================
11951
11952 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
11953 * Update Unicode data to Unicode 4.0 [Noah Levitt]
11954 * Support XML-safe formatted output with 
11955   g_markup_[v]printf_escaped [Owen Taylor]
11956 * Add g_file_read_link to read symbolic links [Matthias]
11957 * Add g_unichar_get_mirror_char to obtain the 
11958   mirrored variant of a character [Noah]
11959 * Support for one-time initialization functions. 
11960   [Sebastian Wilhelmi]
11961 * Miscellaneous API additions: g_vasprintf
11962   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
11963 * Docs improvements [Matthias]
11964 * Add support instance-private data on classed types
11965   [Mark McLoughlin, Tim Janik, Owen]
11966 * Optimize signal emissions [Soeren Sandmann, Tim]
11967 * Support a "default vtable" per interface [Tim]
11968 * Add support for properties on interfaces [Owen, Tim]
11969 * Miscellaneous API additions: g_value_take_string(),
11970   g_value_take_param(), g_value_take_object(), 
11971   g_value_take_boxed(). [Matthias]
11972 * Win32 build fixes [Tor Lillqvist]
11973
11974 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
11975 =================================================
11976
11977 * Fix a problem with g_thread_init() on 64-bit problems
11978   [Alceste Scalas, Sebastian Wilhelmi]
11979 * Add assembly implementations of byteswap macros
11980   for ia64 and x86_64. [Manish Singh]
11981 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
11982 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
11983
11984 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
11985 =================================================
11986
11987 * Win32 bug fixes [Tor Lillqvist]
11988 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
11989   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
11990 * Ensure we have a GUINT64_FORMAT by pulling in Trio
11991   if necessary [Manish Singh]
11992 * Further Trio build fixes [Matthias Clasen, Owen]
11993 * Hack around gcc, libtool issues with -pthread [Owen]
11994 * Docs improvements [Matthias]
11995 * Bug and portability fixes 
11996 * Updated and new translations (bg,de,fi,fr,sq,fr)
11997
11998 Other contributors: Kai Poitschke, Morten Welinder
11999
12000 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
12001 =================================================
12002
12003 * autoconf changes to make it possible to cross compile
12004   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
12005   Johannes Stezenbach]
12006 * Use libintl when it has bind_textdomain_codeset() and
12007   GLib doesn't. [Owen]
12008 * Improve generation of pseudo-random integers [Morten Welinder, 
12009   Sebastian Wilhelmi]
12010 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
12011 * Cleanup include order [Sven Neumann]
12012 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
12013 * Doc fixes and additions [Matthias]
12014
12015 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
12016   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
12017
12018 Overview of Changes from GLib 2.0.x to GLib-2.1.x
12019 =================================================
12020
12021 * Add copy of the Trio library to build and use for printf() when 
12022   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
12023 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
12024 * Add g_markup_parse_context_get_element() [Matthias]
12025 * Add g_utf8_strreverse [Matthias]
12026 * Add g_ascii_strtoull() [Tim Janik]
12027 * Support scanning of 64-bit values with GScanner [Tim]
12028 * Add g_set/get_application_name() [Havoc Pennington]
12029 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
12030   Use for g_return_if_fail(). [Matthias Clasen]
12031 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
12032 * Improve the seeding algorithm of GRandom to avoid problems
12033   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
12034   environment variable. [Sebastian Wilhelmi]
12035 * Improve thread configure checks, use -pthread where applicable
12036   [Sebastian]
12037 * Improve handlng of thread priorities [Sebastian]
12038 * Fix up parameter names that might shadow functions from
12039   system headers [Soeren Sandmann]
12040 * Clean up usage of deprecated functions [Manish Singh]
12041 * Docs fixes and improvements. In particular, include "Since" information.
12042   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
12043   Owen Taylor, Morten Welinder]. 
12044
12045 Overview of Changes in GLib 2.0.7
12046 =================================
12047
12048 * Fix C++ warnings in gtype.h [Dom Lachowicz]
12049 * Fix g_type_fundamental_next() [Tim Janik]
12050 * Fix various missing includes of config.h [Morten Welinder]
12051 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
12052 * Various 64-bit fixes [Manish Singh]
12053 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
12054 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
12055 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
12056      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
12057      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
12058 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
12059
12060 Overview of Changes in GLib 2.0.6
12061 =================================
12062
12063 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
12064 * Clean up debug spew from GObject [Anders Carlsson]
12065 * Compiler warning fixes [David L. Cooper II]
12066 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
12067 * Fixes for --disable-debug [Sebastian Wilhelmi]
12068 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
12069   Rajkumar Sivasamy, Laurent Vivier]
12070 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
12071   Sebastian Rittau, Linus Welleij]
12072 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
12073 * Updated translations (bg,ko,vi)
12074
12075 Overview of Changes in GLib 2.0.5
12076 =================================
12077
12078 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
12079 * Clean up debug spew from GObject [Anders Carlsson]
12080 * Compiler warning fixes [David L. Cooper II]
12081 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
12082 * Fixes for --disable-debug [Sebastian Wilhelmi]
12083 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
12084   Rajkumar Sivasamy, Laurent Vivier]
12085 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
12086   Sebastian Rittau, Linus Welleij]
12087 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
12088 * Updated translations (bg,ko,vi)
12089
12090 Overview of Changes in GLib 2.0.4
12091 =================================
12092
12093 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
12094 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
12095 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
12096 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
12097
12098 Overview of Changes in GLib 2.0.3
12099 =================================
12100
12101 * Handle sorting 0-length arrays (Ron Arts)
12102 * Threading fixes (Sebastian Wilhelmi)
12103 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
12104   Sebastian, Qingjiang Yuan)
12105 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
12106 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
12107 * Win32 fixes (Tor Lillqvist)
12108 * Try to fix g_get_charset() related segfaults. (Owen)
12109 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
12110   Andrew P. Lentvorski, Jr.)
12111 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
12112 * g_markup fixes. (Matthias Clasen.)
12113 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
12114   Wayne Schuller)
12115
12116 Overview of Changes in GLib 2.0.1
12117 =================================
12118
12119 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
12120 * Performance improvements for GObject parameter lookup, 
12121   g_filename_to/from_utf8() [Alex Larsson]
12122 * Actually check interface prerequisites [Matthias Clasen,
12123   Miroslaw Dobrzanski-Neumann]
12124 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
12125 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
12126 * Fixes for g_log() and threading.
12127   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
12128 * Make g_print(), g_printerr(), g_warning(), etc, convert from
12129   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
12130 * Fixes for GIOChannel on windows. [Tor Lillqvist]
12131 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
12132 * Fix file descriptor leak in g_file_get_contents() [Matthias]
12133 * Workaround iconv() problems on older Solaris [Lauri Alanko]
12134 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
12135 * Minor bug fixes.
12136
12137 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
12138   Akira Tagoh, Morten Welinder
12139
12140
12141 Overview of Changes in GLib 2.0.0
12142 =================================
12143
12144 * Thread portability fixes [Sebastian Wilhelmi]
12145 * Documentation updates [Owen Taylor]
12146 * Make g_strerror(), g_strsignal() properly return UTF-8,
12147   call bind_text_domain_codeset() so that error strings
12148   are in UTF-8 as well. [Owen, Tor Lillqvist]
12149
12150 Overview of Changes in GLib 2.0.0 rc1:
12151 ======================================
12152
12153 * Win32 fixes [Tor Lillqvist]
12154 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
12155 * Fix up g_date_strftime [Daniel Elstner]
12156 * Add some structure padding [Tim Janik]
12157 * Make g_get_homedir() prefer the users home directory to $HOME
12158
12159 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
12160
12161 Overview of Changes in GLib 1.3.15:
12162 ===================================
12163
12164 * Speed up marshalers by using private access to GValue 
12165   [Anders Carlsson, Tim Janik]
12166 * Reduce GValue to 2 elements [Tim]
12167 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
12168 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
12169 * Add padding to various structures [Owen Taylor, Tim]
12170 * Win32 fixes [Tor Lillqvist]
12171
12172 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
12173   Daniel Elstner
12174
12175 Overview of Changes in GLib 1.3.14:
12176 ===================================
12177
12178 * Register value transformations for gint64, guint64 [Andy Wingo]
12179 * Build with large-file support [Sven Neumann, Owen Taylor]
12180 * Fix handling of hostnames in URI's [Darin Adler]
12181 * Main loop bug fixes [Havoc Pennington, Owen]
12182 * Doc fixes and improvements [Manish Singh, Tim Janik]
12183 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
12184 * Win32 fixes [Hans Breuer, Tor Lillqvist]
12185 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
12186 * Miscellaneous bug fixes
12187
12188 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
12189   Morten Welinder.
12190
12191 Overview of Changes in GLib 1.3.13:
12192 ===================================
12193
12194 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
12195 * Miscellaneous win32 fixes [Tor, Hans Breuer]
12196 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
12197 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
12198 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
12199 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
12200   Laszlo Peter, Havoc Pennington, Tim Janik]
12201
12202 Overview of Changes in GLib 1.3.12:
12203 ===================================
12204
12205 * Implement closure chaining, fixing up API (Tim Janik)
12206 * Closure chaining test case (James Henstridge)
12207 * Make GType long not int where both are equal width (Tim)
12208 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
12209 * Fixes for NetBSD. (Dan Winship)
12210 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
12211 * Save space for GBSearchArray (Tim Janik)
12212 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
12213
12214 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
12215   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
12216   Sebastian Wilhelmi.
12217
12218
12219 Overview of Changes in GLib 1.3.11:
12220 ===================================
12221
12222 * Win32 fixes [Hans Breuer, Tor Lillqvist]
12223 * Documentation improvements [Matthias Clasen]
12224 * Portable directory handling API [Hans]
12225 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
12226 * Fix excess relocations in Unicode tables [Andrew Taylor]
12227 * Fix gpattern for UTF-8 [Matthias Clasen]
12228 * Support overriding class closures [Tim Janik]
12229 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
12230 * Hide pointers to type information inside GType to reduce locking
12231   [Alex Larsson, Tim]
12232 * Adds check for direct inclusion of gobject/*.h [Owen]
12233 * GObject API cleanups [Tim]
12234
12235 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
12236   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
12237
12238
12239 Overview of Changes in GLib 1.3.10:
12240 ===================================
12241
12242 * Many Win32 fixes and improvements [Tor Lillqvist]
12243 * Documentation improvements [Matthias Clasen]
12244 * g_string_printfa() renamed to g_string_append_printf()
12245 * Use libcharset from libiconv to implement charset detection
12246   more portably. [Owen Taylor, Hidetoshi Tajima]
12247 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
12248 * Make support for 64 bit integers a requirement [Joshua]
12249 * GPattern improvements [Tim Janik, Matthias]
12250 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
12251 * Many bug fixes and minor tweaks.
12252
12253 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
12254   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
12255   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
12256   Jacob Berkman
12257
12258
12259 Overview of Changes in GLib 1.3.9:
12260 ==================================
12261
12262 * Fixes for comparison of threads [Sebastian Wilhelmi]
12263 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
12264 * Win32 fixes [Tor Lillqvist, Hans Breuer]
12265 * Add a len argument to g_ascii_strup/strdown
12266 * Bug, portability fixes, cleanups.
12267
12268 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
12269
12270
12271 Overview of Changes in GLib 1.3.8:
12272 ==================================
12273
12274 * Documentation updates [Owen]
12275 * Made GType interfaces overridable in derived types
12276 * Many win32 fixes [Tor Lillqvist]
12277 * Miscellaneous cleanups and fixes
12278
12279 Other contributors:
12280   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
12281
12282
12283 Overview of Changes in GLib 1.3.7:
12284 ==================================
12285
12286 * Integrate GClosure support into the main loop [Owen Taylor]
12287 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
12288 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
12289 * Minor hash table optimizations
12290 * Main loop and threading improvements [Sebastian Wilhelmi]
12291 * Added g_ascii_* functions to be used for locale insensitive UTF-8
12292   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
12293 * Add functions for Unicode case-conversion, normalization, and 
12294   collation [Owen]* GString improvements [Owen]
12295 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
12296 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
12297 * Make code 64bit clean [Mark Murnane]
12298 * More G_CONST_RETURN fixes
12299 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
12300 * Miscellaneous bug and API fixes
12301
12302 Other contributors:
12303   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
12304   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
12305   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
12306   Peter Williams
12307
12308
12309 Overview of Changes in GLib 1.3.6:
12310 ==================================
12311
12312 * Threads have a "return value" from g_thread_join
12313 * Removed ability to adjust thread stack size
12314 * Prefix warnings with progname/PID by default, change toggle for this to 
12315   be an env variable G_MESSAGES_PREFIXED not a compile-time option
12316 * GMarkup speedups
12317 * GDate const, convenience fixups
12318 * Include test cases that headers are compilable by C++ compiler
12319 * Add ability to spawn processes with argv[0] != executable path.
12320 * g_strstr_len, g_strrstr, g_strrstr_len
12321 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
12322 * Misc bug fixes
12323
12324
12325 Overview of Changes in GLib 1.3.5:
12326 ==================================
12327
12328 * Added an installed glib-mkenums Perl program for parsing enumeration
12329   declarations from header files.
12330 * Mark some additional deprecated functions.
12331 * Bug and Portability fixes
12332
12333
12334 Overview of Changes in GLib 1.3.4:
12335 ==================================
12336
12337 * Efficiency improvements for GThreadPool
12338 * A few bug fixes
12339 * Build fixes
12340 * Documentation improvements
12341
12342
12343 Overview of Changes in GLib 1.3.3:
12344 ==================================
12345
12346 GLib:
12347
12348 * More user_data support in various functions.
12349 * Main loop API revamps to support per-thread main loops.
12350 * Unicode handling improvements.
12351 * Implemented debugging traps.
12352 * G_CONST_RETURN specification all over the place.
12353 * Various new small utility functions.
12354 * Random number generator precision improvements.
12355 * New configure option --disable-mem-pools.
12356 * Many Win32 improvements.
12357 * Added g_try_malloc() friends varinats.
12358 * Many documentation improvements.
12359 * Many threading improvements, support for dynamic allocation
12360   of static mutexes.
12361 * GHookLIst API cleanups.
12362 * Improved format support of GDate parser.
12363 * String function speed improvements with new g_stpcpy().
12364 * Hashtable API additions.
12365 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
12366 * Optimizations, cleanups, bug fixes.
12367
12368 GObject:
12369
12370 * Added many convenience functions.
12371 * GClosure and GParamSpec use float/sink ref-counting scheme now.
12372 * Reworked property change notification.
12373 * Binary searchable array cleanups, so it's widely usable now.
12374 * Added static content keeping for some GValue types.
12375 * Support for statically scoped signal parameters.
12376 * Extinguished property trailer args in set/get interface.
12377 * Added support for abstract types.
12378 * G_CONST_RETURN specification all over the place.
12379 * Split parameter exchange functionality into value transforms
12380   and parameter conversions.
12381 * Added signal emission hooks and signal accumulators.
12382 * Added interface prerequisites to support is_a (interface, object)
12383   relations.
12384 * Implemented GValueArray.
12385 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
12386   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
12387   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
12388 * Varrags value collection improvements.
12389 * Implemented debugging traps.
12390 * Made things thread-safe.
12391 * Many documentation improvements.
12392 * Many cleanups, optimizations and bug fixes.
12393
12394
12395 Overview of Changes in GLib 1.3.2:
12396 ==================================
12397
12398 GLib:
12399
12400 * Win32 build improvements  [Tor]
12401 * Improvements to error reporting  
12402   (g_critical(), g_return_if_reached()) [Darin]
12403 * Add g_strlcpy/g_strlcat  [David Wheeler]
12404 * New IO channel implementation for Win32  [Tor] 
12405 * Make g_array_free, g_string_free return pointer to memory requested
12406   not to be freed.  [Darin]
12407 * Added GError based error reporting for thread functions.  [Sebastian]
12408 * Moved reference docs into GLib distribution. [Owen]
12409 * Added g_convert() for doing convenient character set conversions based
12410   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
12411 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
12412   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
12413 * Portability fixes for threading.  [Sebastian]
12414 * Added convenient functions for launching new processes (g_spawn_*),
12415   and shell quoting/unquoting functions.  [Havoc]
12416 * Split glib.h into many headers.  [Sebastian]
12417 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
12418 * Fixed confusions between comparison functions that return <0, 0, >0
12419   and equaility functions that return FALSE,TRUE.  [Sebastian]
12420 * Added safe/portable temporary file manipulation functions.  [Tor]
12421 * autoconf improvements.  [Raja]
12422 * Many documentation improvements.
12423 * Bug fixes.
12424
12425 GObject:
12426
12427 * Added boxed and pointer types.  [Tim/Jonathan]
12428 * Added callback abstraction (GClosure)  [Tim]
12429 * Added signal system (GSignal)  [Tim]
12430 * Make GTypePlugin an interface  [Tim]
12431 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
12432 * Bug fixes.
12433
12434
12435 What's new in GLib 1.3.1:
12436 =========================
12437
12438 * New GObject library added including object system based on
12439   the GTK+ object system. 
12440 * Functions for getting the properties of Unicode characters, 
12441   computing the canonical decomposition and ordering combining
12442   characters aand manipulating UTF-8 string manipulation based
12443   on libunicode.
12444 * GString now properly handles embedded nuls.
12445 * Multiple fixes from the 1.2.x branch.
12446 * Upgrade to libtool 1.3.3
12447 * Full thread support (thread creation and destruction).
12448 * BeOS port, BeOS dynamic modules.
12449 * Many improvements to the Windows ports.
12450 * Improvements to the OS/2 port, OS/2 module support.
12451 * Double ended queue implementation.
12452 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
12453 * New configure option --enable-msg-prefix to prefix messages, warnings
12454   et ceteri with the program name and the process id.
12455 * New thread-safe random number generator Mersenne Twister.
12456 * g_strcompress() added, g_strescape() had a slight API change, and
12457   more tightly defined semantics.
12458 * the g_string(x) macro has been removed, #x may be used instead.
12459                                 
12460