Updated Galician translations
[platform/upstream/glib.git] / NEWS
1 Overview of changes from GLib 2.35.8 to 2.35.9
2 ==============================================
3
4 This release drops the old codepage ABI from gutils.c. This is a
5 source-compatible change and only breaks ABI with respect to truly
6 ancient binaries (and those binaries are already broken for other
7 reasons).
8
9 * Bugs fixed:
10  682896 glib doesn't build on mingw32
11  693204 split up g_get_{hostname,username,realname,home_dir} etc.
12  694181 Handle GNetworkAddress better in g_network_monitor_base_...
13  694253 occasional /gdbus/unref-pending test failure
14  694350 Add type names to gsignal warnings
15  694757 Use separate GLIB_WARN_CFLAGS that can be overridden ext...
16
17 * Translation updates:
18  Brazilian Portuguese
19  Punjabi
20  Simplified Chinese
21  Slovak
22  Traditional Chinese
23  Uyghur
24  Vietnamese
25
26
27 Overview of changes from GLib 2.35.7 to 2.35.8
28 ==============================================
29
30 This release contains one major change that may cause problems: type
31 modules are now never unloaded.  This is implemented by (effectively)
32 leaking the last reference on dynamic types.  Some testcases that check
33 for unloading of types have been observed to be broken by this change,
34 but we know of no actual cases of "real code" breaking.  Please report
35 any problems.
36
37 Other changes:
38  * A couple of build fixes for Solaris
39  * Fix signal emission for GDBusObjectManagerClient
40  * annotations fixes
41  * new API: g_dbus_address_escape_value()
42  * GSocketClient: add proxy-resolver property
43  * GSimpleProxyResolver: new simple GProxyResolver class
44  * documentation fixes
45  * gnetworkaddress: preserve IPv6 scope ID in IP literals
46
47 Bugs fixed:
48  691105 Allow GSocketClient to override GProxyResolver for per client proxy settings.
49  692827 configure test fails for arpa_nameser.h
50  692829 new Btrfs support causes build failure on Solaris
51  693285 GDBusObjectManagerClient: won't emit object-added|removed if name-owner arrives later
52  693502 Cross-compiling documentation: typo (np -> no)
53  693673 add g_dbus_address_escape_value()
54  693694 gio: Fix annotations on g_[async_]initable_new() and friends 
55
56 Translations:
57  Dutch
58  Galician
59  Polish
60  Serbian
61
62 Overview of changes from GLib 2.35.6 to 2.35.7
63 ==============================================
64
65 This is a quick follow-up release with a few bug fixes.
66
67 * Fix the build on systems with strict linkers by adding -pthread back
68   to the LDFLAGS for a testcase.
69
70 * Re-enable native atomic operations on some buggy versions of clang
71   that ship as part of the MacOS X SDK.
72
73 * Make G_IO_FLAG_IS_WRITEABLE an enum again (the #define broke bindings)
74
75 * a small docs fix
76
77 * Bugs fixed:
78  657045
79  636683
80  682818
81  693105
82
83 * Translations:
84  Italian
85
86 Overview of changes from GLib 2.35.4 to 2.35.6
87 ==============================================
88
89 * GUnixFdSource is a new way to add file descriptors
90   to the mainloop
91
92 * g_source_set_ready_time lets you mark a source to become
93   ready at a specified monotonic time
94
95 * The internal visibility handling of GLib has been reworked
96
97 * GFileMonitor will now automatically use fam instead of inotify
98   if $HOME is on NFS
99
100 * The file monitor implementation can now be overridden with
101   the GIO_USE_FILE_MONITOR environment variable
102
103 * Bugs fixed:
104  570572 2 make check errors on
105  592211 No monitoring over NFS mounts
106  625552 wrong behaviour of GVolume GVolumeMonitor related func...
107  657729 modernise GMainLoop
108  658020 GSource for a single GPollFD
109  678223 g_mutex_free
110  682560 leak fixes
111  682819 EINTR-harden all the things
112  684404 When using g_network_address_address_enumerator_next()...
113  686853 new GSource fd API
114  688169 G_DISABLE_DEPRECATED doesn't cover deprecated/gthread....
115  688681 build: Make .symbols file canonical on all platforms
116  690118 Crash when closing last tab of a window using Ctrl-w
117  691624 glib/gtester.c: missing include
118  691812 gioinputstream - give task as callback_data not task_data
119  691866 fails out of source build directory - gnetwork.h not f...
120  692029 Add new API checking utility
121  692034 Install an invalidation notifier for GClosure in g_sou...
122  692058 Broken makefile for gio tests
123  692079 build failure in gmarkup.c when using gcc 4.8 and buil...
124  692201 inotify: fix a memleak
125  692202 gfile: don't report completion twice on g_file_load_co...
126  692229 Incorrect string formatters in a translation string
127  692332 GNetworkMonitorNetlink: make the netlink socket cloexec
128  692360 possibly non-threadsafe code in g_content_type_guess()?
129  692404 tester: Use FD_CLOEXEC when creating pipes
130  692408 nautilus SIGSEGV in g_file_info_get_size()
131  692544 [PATCH] gfile: Ensure we create internal pipe with FD_C...
132  692583 atomic get doesn't accept a const argument on architect...
133  692618 Use g_timeout_add_seconds
134  692815 Using g_hash_table_insert() when using a hash table as ...
135  692865 Invalid docbook generated by gdbus-codegen
136  692928 Document G_MENU_{ATTRIBUTE,LINK}_*
137
138 * Translation updates:
139  Hebrew
140  Kannada
141  Lithuanian
142  Norwegian bokmål
143  Polish
144  Serbian
145  Slovenian
146  Spanish
147  Uyghur
148
149
150 Overview of changes from GLib 2.35.3 to 2.35.4
151 ==============================================
152
153 * New features:
154  - New API: g_get_num_processors
155  - New API: g_application_command_line_get_stdin
156  - New GFileMonitor flag: G_FILE_MONITOR_WATCH_HARD_LINKS
157  - Parse more timezone offset formats
158  - Better timezone support on Windows
159  - Make GParamSpec constructors introspectable
160
161 * Removed or deprecated features:
162  - Disallow adding interfaces after class_init
163
164 * Bug fixes:
165  532815 gio + inotify support for hardlinks
166  614930 add g_get_num_processors (), return the max concurrent...
167  626497 Btrfs clone/reflink ioctl support in g_local_file_copy
168  633117 glib fails stests if /etc/localtime is not properly set
169  661767 merge/improve various bits of run-in-thread functionality
170  668210 Add g_application_command_line_get_stdin()
171  675856 Use GDbus via gobject-introspection instead dbus-python
172  684103 make glib work with python3
173  684723 run-assert-msg-test.sh fails
174  686058 OpenBSD: disable ipv6_v4mapped test
175  686128 GTimeZone should be able to parse POSIX format for...
176  687223 cleverer GThreadPool management
177  687659 drop support for adding interfaces after class_init
178  687920 GCredentials should have an accessor for the process ID
179  688681 build: Make .symbols file canonical on all platforms
180  688829 Variable overflow in utils.c test on 32-bit machine
181  689324 Variable scoping in gunixmounts.c
182  689810 Include guard optimization
183  690043 Broken link for gsettings tutorial: gnome-utils in...
184  690084 gmarkup: Make GMarkupParseContext a boxed type
185  690388 Check if CMSG_FIRSTHDR() returns NULL when there is...
186  690538 gschema DTD is invalid
187  690543 Add test coverage for testing in-tree DBus services...
188  690670 local_command_line not introspectable/annotated
189  690902 G_END_DECLS needs to be at the end of gutils.h
190  690970 Unhelpful deprecation message for g_value_array_get_nth
191  691001 building docs is broken on master branch
192  691011 Automake-1.13 errors on obsolete AM_PROG_CC_STDC
193  691077 gio-querymodules crashes with SIGSEGV
194  691110 g_cond_wait() docs incomplete
195  691489 Crash in Oscars 2013 page
196  691558 Only check for .hidden files if standard::is-hidden...
197  691608 Support compilation with clang 3.2
198
199 * Translation updates:
200  Assamese
201  Bulgarian
202  Estonian
203  Galician
204  Greek
205  Hebrew
206  Norwegian bokmål
207  Polish
208  Slovak
209  Slovenian
210  Spanish
211  Tamil
212
213
214 Overview of changes from GLib 2.35.2 to 2.35.3
215 ==============================================
216
217 * This release contains an incompatible change to the g_get_home_dir()
218  function. Previously, this function would effectively ignore the HOME
219  environment variable and always return the value from /etc/password.
220  As of this version, the HOME variable is used if it is set and the
221  value from /etc/passwd is only used as a fallback.
222
223 * We now install a public "gnetworking.h" header that can be used to
224  include the relevant OS-dependent networking headers. This does not
225  really abstract away unix-vs-windows however; error codes, in
226  particular, are incompatible.
227
228 * Bugs fixed in this release:
229  142568 Allow $HOME to override passwd entry if the user really wants
230  587806 The file selector should honor .hidden files
231  602715 [GChecksum] Please add support for SHA512
232  623187 provide some support for arbitrary setsockopt()s?
233  629301 .goutputstream files left behind when cancelling I/O
234  652650 Optimize GDBusMessage serialization
235  664627 /gapplication/basic test intermittently fails: cmdline re-or...
236  675516 Win32: Don't start a DBus server when built as static library
237  679683 replace g_test_trap_fork()
238  684145 Current Git sources fails to cross-compile for Windows in Li...
239  686895 file-info: catch thumbnail files in large directory as well
240  687092 IPv6 <-> IPv4 mismatch when subscribing to multicast (send)
241  688180 GObject: Minor error in description of floating reference
242  688319 gthread: add missing AVAILABLE_IN_2_32 annotations
243  688377 configure: add missing square bracket in AS_IF for memmove
244  688419 gtask: source_object arguments and return values not annota...
245  688497 AppInfo: Add sufficient api to port gnome-session from Egg...
246  688681 build: Make .symbols file canonical on all platforms
247  688704 Add boxed GType for GThread
248  688886 Improve the i18n documentation
249  688931 GMemoryOutputStream: Add new _resizable() constructor usab...
250  689037 need helper for creating a GFile from a remote commandline...
251  689377 Fix a compiler warning in GDBus
252  689538 Source object tag set too late in gsocketlistener
253  689800 Treat lost+found directory as a hidden file
254  689847 Add fast repeated typename -> GType resolver
255  689982 Make GChecksum more fully introspectable
256  690069 g_unix_open_pipe: Add missing F_SETFD
257  690083 gfileenumerator: Add a g_file_enumerator_get_child method
258  690163 Add a pre-configured gio/gnetworking.h for Visual C++ builds
259  690346 Remove an unneeded escaping in NAMESER_COMPAT_INCLUDE
260  690348 Fix g_type_add_class_private() name in g_warning
261
262 * Translation updates:
263  Assamese
264  Galician
265  Hebrew
266  Hindi
267  Kannada
268  Odia
269  Polish
270  Spanish
271
272
273 Overview of changes from GLib 2.35.1 to 2.35.2
274 ==============================================
275
276 Note that the incompatible change to the ->constructed() vfunc that was
277 made in the last unstable release (2.35.1) has been reverted due to
278 causing regressions in applications.
279
280 A new incompatible change has been introduced in this version: it is no
281 longer permitted to add interfaces to a class after the first
282 instantiation (or more strictly: after g_type_class_ref()).  Bug #687659
283 is tracking this.
284
285 Two private symbols (g_menu_{attribute,link}_hash_iter_get_type) which
286 were accidentally exported have also been properly hidden.  This may
287 cause some tools to issue warnings about ABI mismatch.
288
289 The remaining changes should be relatively harmless: 
290
291  * GIO now has kqueue support for GFileMonitor (BSDs, Mac OS)
292
293  * New g_variant_new_from_bytes() API
294
295  * UNIX signal sources now allow watching SIGUSR1 and SIGUSR2
296
297  * Many pedantic cleanups to adhere to a higher level of -W use
298
299  * GTask changes to avoid a deadlock
300
301  * many cleanups/fixes for Windows
302
303  * Boxing for GPollFD, GIOChannel, GBytes, GByteArray
304
305  * Fix URL-encoding of trashed files
306
307  * Many other docs and annotations fixes
308
309 Translations:
310
311  Galician
312  Gujarati
313  Lithuanian
314  Serbian
315  Slovak
316  Slovenian
317
318 Bugs closed:
319
320  649302 Add support for GNU/FreeBSD
321  668842 [GSocket] Add caching for the sender address in g_socket_receive_from()
322  672924 Add annotations for g_filename_from_uri()
323  673229 glib: Use Returns:, not @returns
324  677062 (partial) GVariant: Make g_variant_new_from_bytes() public, add more GBytes API
325  686185 g_date_time_format Transcoding Fails on OSX      
326  686191 g_mutex_get_impl() should use g_atomic_pointer_get()
327  686797 Box GPollFD to make it introspectable
328  686810 [regression] Infinite wait in g_task_run_in_thread_sync()
329  686822 possible dlopen()/dlclose() issue with automatic g_type_init()
330  686839 mkinstalldirs: Move to glib-mkinstalldirs
331  686895 file-info: catch thumbnail files in large directory as well
332  686898 g_unix_signal_source_new: Allow SIGUSR1 and SIGUSR2
333  686920 gdbus: Allow GDBusObjectManagerClient to work on peer connections
334  686921 Remove some of the repetition from gio/tests/Makefile.am
335  687075 g_spawn_sync diagnostic incorrectly complains about SIGCHLD
336  687089 g_dbus_connection_export_menu_model(): fix a crash
337  687098 Repeated g_timeout_add* use can lead to guint overflow
338  687385 Add some stricter CFLAGS, fix up the code
339  687441 ABI break in master: g_menu_attribute_hash_iter_get_type, g_menu_link_hash_iter_get_type removed
340  687516 typo in string: KB should be kB
341  687540 In Trash folder, Nautilus misinterprets "\n" in filename as a line break
342  687541 GSignalQuery param_types field needs array annotation
343  687600 gfileutils.c performs invalid cast of (varargs) open to non-vararg type
344  687698 plural forms needed
345  687700 ending spaces
346  687742 Add support for internal linkage to glib-compile-resources
347  687801 tests/buffered-input-stream: Fix size of parameter passed
348  688109 win32 warning/error fixes
349  688255 'make check' regressed in 138f4c1 because GMarkup error messages changed
350  688338 [PATCH] gobject/gtype.c: Fix spelling of »exceed«
351  688370 GDBusError documentation improvement for client-side
352  688378 g_socket_join_multicast_group not working
353  688518 gio-kqueue: use O_EVTONLY on MacOS
354
355
356
357 Overview of changes from GLib 2.34.0 to 2.35.1
358 ==============================================
359
360 These two changes in particular may be slightly incompatible.  Please
361 give feedback if they cause trouble:
362
363   * Signal handlers connected with g_signal_connect_object() are now
364     automatically disconnected on target object destruction
365
366   * The ->constructed vfunc is now called after all properties are set
367
368 The remaining changes should not cause problems.
369
370   * g_type_init() is no longer necessary and has been deprecated
371
372   * GTask (the new GAsyncResult implementation) has landed 
373
374   * GLib version macros updated
375
376   * Update to Unicode 6.2
377
378   * Thread safety fixes for GFileMonitor in non-default main contexts
379
380   * GTimeZone support for old-format zoneinfo database (as on Mac OS)
381
382   * g_settings_bind() now works with non-canonical property names
383
384   * Fix crashes related to NULL connection passed to
385     GBusNameVanishedCallback and document this situation
386
387 * Bugs fixed:
388  118536 Make g_signal_connect_object'ed handlers disconnect when the data object is destroyed
389  661767 merge/improve various bits of run-in-thread functionality
390  682950 GFileMonitor crashing on high event count when running in different thread
391  683642 Missing g_content_type_get_symbolic_icon
392  684882 Gsettings should spaw a warning when binding against a low_underscored_property
393  684909 codegen: Explicitly close output
394  684912 Update to Unicode 6.2
395  685037 g_strcmp0: Returns shall include values less and greater than zero
396  685069 Leak in glib-compile-resources
397  685208 missing g_return_if_fail
398  685608 [Patch] Port gio tests from pygobject to pygi
399  685697 Documentation typo in g_dbus_interface_skeleton_has_connection()
400  685733 Call ->constructed() after all properties are set
401  685787 gtestdbus: correct documentation typos
402  685995 Crash in g_menu_exporter_name_vanished
403  686091 Invalid reads in g_bytes_unref_to_data
404  686119 dtrace, gobject_probes.d, the last three probes - semicolon missing
405  686161 Deprecate g_type_init()
406  686231 GBusNameVanishedCallback: document NULL connection
407  686458 slightly increase poll duration in test_timed_wait 
408
409 * Translations updated
410   Catalan (Valencian)
411   Czech
412   Danish
413   Italian
414   Lithuanian
415   Norwegian bokmål
416   Slovenian
417
418 Overview of changes from GLib 2.33.14 to 2.34.0
419 ===============================================
420
421 * Bug fixes:
422  654239 g_type_init()'s docs have no statement about how to...
423  674620 Update GSettings migration guide for intltool updates
424  676034 Fix doc annotation for g_ptr_array_ref()
425  684278 Fix GIO build on Windows
426
427 * Translation updates:
428  Brazilian Portuguese
429  British English
430  Bulgarian
431  Catalan
432  Galician
433  German
434  Hebrew
435  Hindi
436  Hungarian
437  Kannada
438  Latvian
439  Marathi
440  Spanish
441  Telugu
442
443
444 Overview of changes from GLib 2.33.12 to 2.33.14
445 ================================================
446
447  * CVE-2012-3524: don't run dbus-launch from setuid binaries
448
449  * g_content_type_get_generic_icon_name():
450      new API for getting the icon name for a mime type
451
452  * Introspection fixes:
453   - GDBusConnection nullability fixes
454   - give a box type to GTimeZone
455
456  * Drop GVFS_INOTIFY_DIAG
457
458  * Add a new "Writing GLib Applications" section to the reference
459    documentation with general info on security, threads, etc.
460
461  * gwin32mount.c: Fix syntax error
462
463  * gresource tests: srcdir != builddir fixes
464
465  * tests/gvariant: Fix test on big endian architectures
466
467  * Fix regression in g_shell_parse_argv()
468
469 Bugs fixed:
470  562907 g_shell_parse_argv() mishandles # (hash)
471  683167 g_time_zone_new not introspectable
472  683384 /gvariant/checksum-basic failure on big endian machines
473  683641 Typo in gwin32mount.c
474  683744 have a way to get the generic icon name for a mime type
475
476 Translation updates:
477  Assamese
478  Belarusian
479  British English
480  Czech
481  Danish
482  French
483  Galician
484  German
485  Greek
486  Hebrew
487  Indonesian
488  Indonesian
489  Korean
490  Lithuanian
491  Marathi
492  Marathi
493  Polish
494  Portuguese
495  Punjabi
496  Russian
497  Serbian
498  Slovenian
499  Traditional Chinese
500
501 Overview of changes from GLib 2.33.10 to 2.33.12
502 ================================================
503
504 * Add a G_DEFINE_QUARK macro
505
506 * Add symbolic icon support to drive, volume, and mount, file
507   and content types
508
509 * Add API to allow thread-safe access to the same qdata item
510
511 * Bugs fixed:
512  562907 g_shell_parse_argv() mishandles # (hash)
513  627240 add G_DEFINE_QUARK
514  672329 memory leaks in gutils.c and glib tests
515  673012 Stable byte-level specification for normal form
516  674805 gdbusproxy async test is broken
517  679835 gvariant format string parsing (and assertions)...
518  682075 gdbus: Fix double free and use after free of ob...
519  682101 Provide a way to get a symbolic icon for a device
520  682222 test_method_calls_on_proxy: assertion failed (e...
521  682284 mount-op: use gint64 instead of guint64 for tim...
522  682386 "make check" fails due to sys/resource.h not be...
523  682560 leak fixes
524  682586 gsettings-tool: make list-recursively really re...
525  682819 EINTR-harden all the things
526  682833 Handle EINTR for open()
527  682849 drop the global lock for g_object_weak_ref
528  682965 gdbus-tool: Check return value of strrchr()
529  683088 gdbus-codegen: fix error when wrong interface n...
530         Fix the build with gtk-doc-stub
531         Don't crash if set_app_info is called before ad...
532
533 * Translation updates
534  Assamese
535  Galician
536  Greek
537  Indonesian
538  Japanese
539  Latvian
540  Lithuanian
541  Norwegian bokmål
542  Polish
543  Portuguese
544  Punjabi
545  Russian
546  Spanish
547  Traditional Chinese
548  Vietnamese
549
550
551 Overview of changes from GLib 2.33.8 to 2.33.10
552 ===============================================
553
554 * New GTest API for testcases where log output is expected:
555   g_test_expect_message()
556
557 * GMenuItem now has 'get' accessors and a construct-from-GMenuModel API
558
559 * GVariant now has a function to check a format-string for type
560   compatibility
561
562 * win32: We now use overlapped IO to support multiple asynchronous
563   operations (ie: reading and writing) at the same time.
564
565 * GMappedFile: Add g_mapped_file_get_bytes()
566
567 * The problems with g_file_make_directory_with_parents() should be
568   resolved.
569
570 * The long-standing issues with placeholder generation of manpages are
571   now resolved.
572
573 * gtlscertificate: Add GBytes based certificate and private-key props
574
575 * build: Switch back to using AS_IF for conditionals
576
577 * test coverage improvements, documentation improvements, leak fixes
578
579 * Bugs fixed
580  326931 Better docs for G_GNUC_*
581  550433 g_test_init doesn't recognize --help
582  600751 GCompletion should better document if and how items memory is managed
583  628193 Miscellaneous string fixes
584  637460 man glib-genmarshal is hard to use
585  674483 broken configure results when cross-compiling with gcc >= 4.5
586  677065 GMappedFile: Add g_mapped_file_get_bytes()
587  679288 win32: use overlapped events for streams
588  679556 it's hard to use gtest when g_warning() is expected
589  680823 g_file_make_directory_with_parents: Fix error propagation
590  681319 gtlscertificate: Add certificate-bytes and private-key-bytes props
591  681336 man pages not built if --enable-gtk-doc not specified
592  681413 build: Switch back to using AS_IF for conditionals
593  681501 gmem: array only partially filled with memcpy
594  681854 Documentation fix for Howto compile a program with glib
595  682025 Documentation correction
596  682067 Fix problems with CLEANFILES and automake-1.11.1 
597
598 * Translations updated:
599  Lithuanian
600  Spanish
601  Galician
602  Telugu
603  Serbian
604  Assamese
605  Marathi
606  Indonesian
607  Traditional Chinese
608
609 Overview of changes from GLib 2.33.6 to 2.33.8
610 ==============================================
611
612 * GIO now has a g_file_delete_async function
613
614 * The defaults for GThreadPools max_unused_threads
615   and max_idle_time values have been changed to
616   2 and 15*1000, respectively.
617
618 * Bugs fixed:
619  661767 merge/improve various bits of run-in-thread functionality
620  680074 undefined symbol "get_C_locale"
621  680121 g_cancellable_source_new: don't use a file descriptor
622  680148 gthread: check for definition of PR_SET_NAME
623  680310 Sorting of access points by strengh not working
624  680704 g_utf8_strup() crash
625  68076a0 GFile: Add g_file_delete_async()
626  680787 Add .dir-locals.el to tell Emacs users not to use tabs...
627  680823 g_file_make_directory_with_parents: Fix error propagation
628  680994 STATIC_ASSERT in GDBusError docs don't have much utility
629  681116 gtlscertificate: Add g_tls_certificate_equal() function
630  681118 gtlsdatabase: Don't complain if no callbacks for async...
631  669331 try to get gio tests working a little better on win32
632  674314 Make gtk-doc not a hard dependency of GLib
633  674800 gclosure: generic marshaller leaks return value
634  675524 gsocket: FIONREAD undeclared (needs sys/filio.h)
635  679509 use after free in g_dbus_action_group_describe_all_done()
636  679996 gobject docs minor cleanup
637  680459 Extra newline char in local implementation of g_applic...
638  680505 object_path memory leak in gdbusobjectproxy.c
639  680831 Deprecate and remove g_slice_[sg]et_config.*
640  680912 gchecksum: Add g_compute_checksum_for_bytes()
641  681151 checksum: Use functions instead of macros when buildin...
642  681158 gtlscertificate: Don't confuse certificate and public ...
643
644 * Translation updates:
645  Galician
646  German
647  Gujarati
648  Hebrew
649  Norwegian bokmål
650  Serbian
651  Slovenian
652
653
654 Overview of changes from GLib 2.33.4 to 2.33.6
655 ==============================================
656
657 * GAsyncInitable: partially revert the init_finish changes,
658   some applications were found to rely on behaviour that
659   was broken by these changes
660
661 * Bugs fixed:
662  679617 win32: fix g_get_environ()
663  679968 Add some annotations to GBytes, GVariantType...
664  680111 GIOScheduler assumes GCancellable "cancelled...
665
666 * Translation updates:
667  Spanish
668
669 Overview of changes from GLib 2.33.3 to 2.33.4
670 ==============================================
671
672 * GMainContext: the source list has been reorganzied to
673   avoid O(n) behaviour
674
675 * GRegex: Update included PCRE to 8.31 and expose new
676   functionality in 8.x versions of PCRE
677
678 * GMountOperation gained a ::show-unmount-progress signal
679   which provides information about slow unmount operations
680
681 * Bugs fixed:
682  616892 gio: Add a boxed type for GFileAttributeMatcher
683  619329 g_source_attach() O(n) in number of sources
684  639771 g_dir_read_name() can also return NULL on error
685  661767 merge/improve various bits of run-in-thread fun...
686  667375 GAsyncInitable subclassing (and async subclassi...
687  671545 Constify collect and lcopy strings in GTypeValu...
688  674452 SEGFAULT in gio contenttype test
689  674898 Deal with GLIB_VERSION_MIN_REQUIRED/MAX_ALLOWED...
690  675504 Fix up GObject interface documentation
691  677064 GString: Tweak documentation, add g_string_free...
692  677578 error in PCRE error code conversion
693  677579 update GRegexError for newer PCRE error codes
694  678066 gdbus codegen does not work with python3
695  678273 unicode othercasing is wrong in gregex
696  678576 GIOScheduler performance enhancements
697  678758 GTlsInteraction unlocks an unlocked mutex
698  678808 GTestDBus issues
699  678881 Test failures in /socket/timed_wait in some cas...
700  678941 /contenttype/guess test case failure
701  678944 gio returns the wrong default applications for ...
702  678949 wrong definition of ulong_bool for 64 bit big e...
703  678959 /mainloop/timeouts race condition: assertion fa...
704  679193 update included pcre to 8.31
705  679258 The 'Since' tag for G_SOURCE_CONTINUE and G_SOU...
706  679473 Don't generate invalid property names
707  679691 Add g_spawn_check_exit_status()
708  679671 GDBusNodeInfo: the XML string must contain exac...
709  676111 mount-operation: add show-unmount-progress signal
710  679691 win32: fix build g_spawn_check_exit_status() wi...
711  679813 Documentation bug on http://developer.gnome.org...
712
713 * Translation updates:
714  Assamese
715  Belarusian
716  Bulgarian
717  Galician
718  Greek
719  Norwegian bokmål
720  Polish
721  Spanish
722  Traditional Chinese
723  Vietnamese
724
725
726 Overview of changes from GLib 2.33.2 to 2.33.3
727 ==============================================
728
729 This release contains mostly bugfixes, cleanups and performance
730 improvements (including many fixes contributed by Colin on the advice of
731 Coverity).  There are a few notable externally-visible changes:
732
733 * Thumbnails are now in XDG_CACHE_HOME
734
735 * new GDBus API: per-thread g_dbus_connection_get_last_serial()
736
737 * GUnixOutputStream now has a can_poll() implementation
738
739 * New deep copy APIs for G(S)List: g_(s)list_copy_deep
740
741 * Bugs fixed:
742  518309 Incorrect data*dir path in glib-gettextize output
743  566994 Safer passing of -framework flag
744  672889 GLib.utf8_validate does segfault
745  673253 Not strict enough autconf test for libelf
746  675024 adds g_list_copy_deep() and g_slist_copy_deep
747  675168 prepare for thumbnails to move to XDG_CACHE_HOME
748  675966 gresolver: More robust parsing of DNS responses
749  676594 [Patch] fix g_reload_user_special_dirs_cache
750  676825 Implement g_dbus_connection_get_last_serial ()
751  677235 Clarify the comment at the top of gmarshal.list
752  677527 OS X: gthread/spawn-async selftest failure
753  677718 GDBusProxy: treat org.freedesktop.systemd1.Masked error as non-fatal
754  677770 GUnixOutputStream does not implement can_poll
755  677782 Install bash completion files in /usr/share
756  677817 g_key_file_to_data adds extra blank lines in some cases
757  677952 Missing annotation for GDBusConnection signal "closed"
758  678052 g_wakeup_acknowledge is called too often.
759  678273 unicode othercasing is wrong in gregex
760  678333 gdbus-codegen code causes warnings under -Wfloat-equal
761
762 * Translations updated:
763  Arabic
764  Assamese
765  Galecian
766  Greek
767  Spanish
768  Telugu
769
770 Overview of changes from GLib 2.33.1 to 2.33.2
771 ==============================================
772
773 * GLIB_VERSION_MIN_REQUIRED now defaults to the current stable version
774
775 * GIO input and output stream classes have grown GBytes-based methods
776
777 * GApplication now has hooks to register D-Bus objects before the bus
778   name is taken
779
780 * Bugs fixed:
781  605976 add g_type_ensure(), to ensure that a type has...
782  660851 Breakage of code due to changes in the GThread...
783  666386 Empathy doesn't open Redirect URI with particu...
784  671139 need (transfer async) for io stream buffers
785  672329 memory leaks in gutils.c and glib tests
786  672548 g_utf8_validate: @str shouldn't end up annotat...
787  674111 Provide an accessor for MimeType desktop entry...
788  674483 broken configure results when cross-compiling ...
789  674634 Add g_clear_pointer()
790  674777 What's the (transfer) of g_variant_lookup()?
791  675309 gkeyfile: Fix annotations for g_key_file_load_...
792  675446 gfile: Plug memory leak in g_file_make_directo...
793  675509 add extra dbus hooks
794  675832 Incomplete gsettings bash auto-completion
795  676208 The tmpl parameter to g_file_new_tmp can be NULL
796  676265 GNetworkMonitor leaks a lot of memory
797  676277 Document that g_app_info_create_from_commandli...
798  676397 g_environ_* should work with NULL envp
799  676398 g_spawn_* should take PATH from the passed env...
800  676478 Broken gzip decoding
801  676594 [Patch] fix g_reload_user_special_dirs_cache
802  676816 Add more GLIB_AVAILABLE_IN_*
803  676937 Document notify signal deduplication with free...
804
805 * Translation updates:
806  Czech
807  French
808  German
809  Greek
810  Japanese
811  Russian
812  Slovenian
813  Spanish
814
815
816 Overview of changes from GLib 2.32.1 to 2.33.1
817 ==============================================
818
819 * GApplication
820  - can now have a NULL application ID
821  - add accessors for determining dbus connection and object path
822
823 * g_clear_object: fix warnings when using it on C++ (due to lack of
824   ability to implicitly cast void*)
825 * add g_clear_pointer as a generic form of g_clear_object
826
827 * GDBus:
828  - add our own implementation of the message bus for use on Windows only
829  - fix up a few bugs that use of this bus uncovered in GDBus
830  - escape nonce files in dbus addressess (think 'c:\')
831  - support initial underscores in dbus codegen namespace (for private)
832  - add GTestDBus for bringing up a session bus for testing purposes
833  - gdbus-codegen: Avoid warnings in generated code
834  - GDBusAuthObserver: Add a way to control what authentication mechanisms to use
835  - 
836
837 * Fix misdetection of GNUstep as Cocoa (for the MacOS GSettings backend)
838
839 * make sure configure fails if AC_CHECK_ALIGNOF cannot detect the alignment
840
841 * GAppInfo
842  - overwrite the DISPLAY only if it is set in the launch context
843  - add accessor for StartupWMClass
844
845 * glib/tests/date: force US locale running the GDateTime tests
846
847 * Resources:
848  - fix broken use of GVDB on big endian machines
849  - set a 'display name' so that pretty file names appear in Gtk CSS
850    warning messages
851
852 * GMainContext:
853  - block child sources when blocking the parent
854  - introduce more testcases for child sources
855
856 * GResolver: add support for MX, TXT, NS and SOA records
857
858 * GSocketControlMessage: Don't warn about unknown messages
859
860 * GIO:
861  - implement GSeekable for the data and buffered stream classes
862  - implement GPollable for many more classes as well
863  - fix GConverterInputStream infinite loop when fill_buffer returns an error
864  - fileinfo: document the correct type for trash::orig-path
865
866 * test coverage improvements and general fixes
867
868 * new 2.34 stuff: version macros, docs index section, etc.
869
870 * Build:
871  - add --disable-modular-tests build option
872  - don't require host binaries if tests are not enabled for cross-builds
873
874 * Translations updated
875  Brazilian Portuguese
876  Bulgarian
877  Czech
878  French
879  Galician
880  German
881  Hebrew
882  Hindi
883  Italian
884  Norwegian bokmål
885  Polish
886  Russian
887  Russian
888  Serbian
889  Simplified Chinese
890  Slovenian
891  Spanish
892  Telugu
893
894 Overview of changes from GLib 2.32.0 to 2.32.1
895 ==============================================
896
897 * Bugs fixed:
898  670254 glib-2.30.2: Fails /GDateTime/new_from_unix test
899  672541 glib-compile-resources prepends --sourcedir to absolute paths
900  673139 URL to mailing lists in README incorrect
901  673174 g_input_stream_read[_finish]: document returning 0 on EOF
902  673191 glib/gchecksum.c warning: dereferencing type-punned pointer...
903  673216 [W32] gtestutils does not use path separators consistently
904  673439 Properly deprecate g_value_{set,get}_char
905  673612 Fails to decode dictionaries wrapped in two layers of array
906  673803 gclosure: Support return values of GVariants
907  669285 glib/tests/markup-parse fails under non-english locale
908  673911 gio-2.0.pc lists full path to executables, breaking cross com..
909  673762 gnextstepsettingsbackend.c:343: error: parse error before 'in'
910
911 * Updated translations:
912  Belarusian
913  British English
914  Bulgarian
915  Catalan
916  Czech
917  French
918  German
919  Hebrew
920  Hindi
921  Hungarian
922  Italian
923  Japanese
924  Kannada
925  Latvian
926  Lithuanian
927  Marathi
928  Norwegian bokmål
929  Odia
930  Polish
931  Serbian
932  Slovenian
933  Spanish
934  Swedish
935  Telugu
936
937
938 Overview of changes from GLib 2.31.22 to 2.32.0
939 ===============================================
940
941 * Bugs fixed:
942  671988 Quickly registering / unregistering objects on bus...
943  672095 glib needs stable sort function
944  672406 glib/tests/include.c fails to build on FreeBSD
945
946 * Updated translations:
947  Telugu
948
949
950 Overview of changes from GLib 2.31.20 to 2.31.22
951 ================================================
952
953 * Bugs fixed:
954  531901 Use __builtin_bswap* for GUINT*_SWAP_LE_BE if building...
955  653167 Out of tree build is broken on windows
956  668973 Test /gvariant/parser fails on Solaris 10
957  669797 gvfs now lists its fuse mounts
958  670846 deadlock: GStreamer-WARNING **: wrong STREAM_LOCK count 0
959  671664 gio-querymodules: unlink instead of writing empty cache
960  671676 Glib can't be cross-compiled any more after merge of...
961  671918 gnome-shell is inaccessible unless started while an AT...
962  671942 GSocketMsgFlags: annotate as a flags
963  671997 Unix signal handling assumes that volatile 1-byte writes...
964  672013 GSimpleAsyncResult: support reliable cancellation
965  672026 default log output should include pid and/or prgname
966  672095 glib needs stable sort function
967  672201 G_SPAWN_SEARCH_PATH should continue on ENODEV and ETIMEDOUT
968  672239 request NO_REPLY from g_dbus_connection_call() with no as...
969  672249 gdbusproxy leaks asyncresult in an error case instead of...
970
971 * Translation updates:
972  Assamese
973  British English
974  Catalan
975  Catalan (Valencian)
976  Danish
977  Esperanto
978  Finnish
979  French
980  German
981  Hungarian
982  Korean
983  Lithuanian
984  Norwegian bokmål
985  Polish
986  Portuguese
987  Russian
988  Traditional Chinese
989
990
991 Overview of changes from GLib 2.31.18 to 2.31.20
992 ================================================
993
994 * Update to Unicode 6.1
995
996 * Update PCRE to 8.30
997
998 * Deprecations are now versioned, and new API is
999   marked with the version it was introduced.
1000   Use these with GLIB_VERSION_{MIN,MAX}_REQUIRED
1001
1002 * The performance of signal emissions has been
1003   improved for simple cases
1004
1005 * Bugs fixed:
1006  529806 Cannot build in 64-bit Mac OS X due to libiconv
1007  580873 Documentation of register type functions incomplete
1008  592666 Document how to unset an attribute
1009  597785 g_type_class_add_private code snippet is a bad example
1010  621368 glib-2.24.1: FAIL: run-assert-msg-test.sh when updating...
1011  622149 --disable-regex breaks glib2 build
1012  639873 GBinding: Crash when binding two properties on the same...
1013  640202 For GLIB v. 2.23.6 and above: impossibility to build mu...
1014  668295 Need a way to classify GVolume instances
1015  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
1016  670542 Add version information for deprecations
1017  670557 gvaluetransform: Fix an infinite loop with GFlagsValue...
1018  670721 global variable for signal ID should be hidden
1019  670751 IceWM build fails due to the G_DEPRECATED_FOR macro
1020  670909 g_dbus_connection_call leaks when it receives an error...
1021  670922 Include path to gdbus-codegen in the pkgconfig file
1022  670969 GSequence lookup may fail if there was no sort prior to...
1023  671025 Constants and identifiers starting with a number are no...
1024  671270 make distclean failures
1025  671281 glib-compile-resources.xml is missing from the dist tar...
1026
1027 * Translation updates:
1028  Basque
1029  Belarusian
1030  Brazilian Portuguese
1031  Bulgarian
1032  Galician
1033  Hebrew
1034  Lithuanian
1035  Persian
1036  Punjabi
1037  Serbian
1038  Simplified Chinese
1039  Slovenian
1040  Telugu
1041  Traditional Chinese
1042  Uyghur
1043  Vietnamese
1044
1045
1046 Overview of changes from GLib 2.31.16 to 2.31.18
1047 ================================================
1048
1049 * GDBusProxy has now a flag, G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,
1050   which can be set to make GDBus automatically reload
1051   changed properties even if the propertychanged signal
1052   does not contain the new values.
1053
1054 * GApplication puts non-unique applications on the bus
1055
1056 * GApplication now has g_application_quit()
1057
1058 * g_async_queue_timed_pop has been deprecated in favor of
1059   the new g_async_queue_timeout_pop, which uses relative
1060   delays in microseconds instead of a GTimeVal.
1061
1062 * a huge number of API documentation fixes
1063
1064 * Bugs fixed:
1065  647986 put non-unique apps on D-Bus
1066  658484 vpn connection vs NetworkSecretDialog
1067  664237 GDateTime falls back to UTC if TZ is set
1068  669329 gthread-win32: update for g_get_monotonic_time() changes
1069  669330 glocalfile: fix error code when opening a directory on win32
1070  669372 glib/tests memory leaks.
1071  669412 mem leak in g_environ_unsetenv
1072  669538 Fix compilation of glib-compile-resources.c on Windows
1073  669544 gdbus-codegen example introspection XML is not complete
1074  669595 glib-mkenums: fix handling of forward enum declarations
1075  669670 gasyncqueue: don't use deprecated g_cond_timed_wait()
1076  669671 gobject: use #pragmas to avoid deprecated function warnings
1077  669689 Retrieve cwd and environ in local GApplicationCommandLine
1078  669810 socket/win32: flush pending read before signaling HUP
1079  669865 g_regex_fetch()
1080  670085 memory leak in g_output_stream_write_async
1081  670138 gbytes.h is missing the G_BEGIN/END_DECL guards
1082  670485 Simplify session API (shared bug with gtk+)
1083
1084 * Updated translations:
1085  Belarusian
1086  Danish
1087  Galician
1088  Serbian
1089  Telugu
1090  Hebrew
1091
1092
1093 Overview of changes from GLib 2.31.14 to 2.31.16
1094 ================================================
1095
1096 * GResource:
1097  - The resource compiler can now convert pngs into
1098    pixel data that can be used without parsing at runtime
1099    (requires gdk-pixbuf-pixdata to be present)
1100
1101 * Bugs fixed:
1102  669123 resource compiler: failing to-pixdata should...
1103  669173 resource: fix xml preprocess entity handling
1104  669224 Cross-compilation broken by data-to-c
1105  669253 gsettings set buggy on array values
1106  669334 fix memory leak in bookmark file parser
1107
1108 * Translation updates:
1109  Norwegian bokmål
1110  Spanish
1111
1112
1113 Overview of changes from GLib 2.31.12 to 2.31.14
1114 ================================================
1115
1116 * GResource:
1117  - GLib now includes a commandline utility, gresource,
1118    to explore resources in ELF files
1119  - The resource compiler can now optionally strip
1120    ignorable whitespace from XML resources
1121  - The resource compiler can now generate build dependencies
1122  - The resource compiler will now autoselect output formats
1123
1124 * GApplication:
1125  - The menu markup parser API has been dropped, the
1126    menu XML support lives in GTK+ now
1127
1128 * GValueArray has been deprecated
1129
1130 * Bugs fixed:
1131  626258 N-ary Trees - 'nodes' can be inserted before and after...
1132  634232 Core Dump / Aborted using g_key_file_to_data
1133  639099 schema compiler chokes on valid schema
1134  667228 Deprecate GValueArray
1135  667243 Add an element clear function to GArray
1136  667929 glib-compile-resources: xml resources doesn't need to...
1137  668250 g_date_time_format() produces a non-UTF8 string
1138  668468 'IP_ADD_SOURCE_MEMBERSHIP' undeclared
1139  668532 resources: add dependency generator to the resource compiler
1140  668539 resources: compiler should autoselect output format...
1141  668561 gresource-tool not internationalized
1142  668572 glib_cv_g_atomic_lock_free config.cache setting not honored...
1143  668650 GRealArray->clear_func should be initialized
1144  668756 GKeyFile: allow loading from empty strings
1145  668857 fix couple of typos in comments
1146  669024 goption: implement platform_get_argv0() for OpenBSD
1147
1148 * Updated translations:
1149  Galician
1150  Norwegian bokmål
1151  Spanish
1152  Traditional Chinese
1153
1154 Overview of changes from GLib 2.31.10 to 2.31.12
1155 ================================================
1156
1157 * GApplication:
1158  - Drop support for exporting menus - this functionality
1159    will be provided in GtkApplication
1160  - Add a way to create actions that change settings
1161
1162 * Bugs fixed:
1163  629503 Add async versions of g_unix_connection_{receive,send}_credentials
1164  656301 glib-compile-schemas should not create an empty file
1165  668071 mingw-gcc build fails on gio/gsocket.[c|h]
1166  668118 the big appmenu switcheroo
1167  668158 base64 encode and line termination
1168  668163 GDBusConnection: note that exit-on-close is sometimes TRUE
1169  668269 gsignal: add g_signal_handlers_disconnect_by_data
1170  668279 create GAction from GSettings
1171
1172 * Translation updates:
1173  Norwegian bokmål
1174
1175
1176 Overview of changes from GLib 2.31.8 to 2.31.10
1177 ===============================================
1178
1179 * GResource:
1180  - A new facility to allow linking data files into binaries
1181    and make them available as resources
1182  - Resources are compiled using glib-compile-resources
1183  - GIO supports resource:/// uris to access resources
1184
1185 * Bugs fixed:
1186  619126 Missing dependency libs
1187  658315 g_key_file_get_keys() should set length to 0...
1188  660371 is it ever valid to have 0 as a GError domain?
1189  666700 Add some missing (allow-none) annotations
1190  667375 GAsyncInitable subclassing (and async subclassing...
1191  667447 Missing many introspection annotations
1192  667790 Protect call to pthread_condattr_setclock with define
1193  667938 wrong gtypes generated for empty flags enums
1194
1195 * Translation updates:
1196  Hebrew
1197  Spanish
1198
1199
1200 Overview of changes from GLib 2.31.6 to 2.31.8
1201 ==============================================
1202
1203 * GObject:
1204  - The type checks for overriding properties have been loosened.
1205    In particular, it is now possible to add the CONSTRUCT flag
1206    to an overridden property
1207  - GWeakRef is a new API for weak references; unlike g_object_weak_ref
1208    and g_object_add_weak_pointer, it is thread-safe.
1209
1210 * GHashTable has grown new convenience api for use as a set:
1211   g_hash_table_add, g_hash_table_contains
1212
1213 * GSocketConnection has gained API for managing connection status
1214
1215 * GSettings: a native OS X backend has been added, under the
1216   name 'nexstep'
1217
1218 * Bugs fixed
1219  455640 Something fishy with GRegex and unicode
1220  548954 weak references are not threadsafe
1221  625751 Add G_FILE_ATTRIBUTE_FILESYSTEM_USED
1222  658871 gbacktrace: g_get_prgname () isn't called for a NULL argu...
1223  664069 gvariant: Never break out of g_variant_iter_loop
1224  664830 g_strescape doesn't natively handle \v (vertical tab)
1225  665211 GDBusConnection singleton access can race with disposal
1226  665805 Add GSocketClient::action, for tracking socket client status
1227  666116 some tests provoke undefined behaviour, which is undesira...
1228  666422 Unreachable code in gio gnetworkmonitornetlink.c
1229  666551 Crash in g_thread_xp_SleepConditionVariableSRW
1230  666595 menu parser disallows id='' on submenu and section
1231  666615 loosen property override flag restrictions
1232  666616 gobject: fix property override type checks
1233  666803 g_utf8_validate() fails to validate strings with known size
1234  666804 g_ateaxit deprecation warning in devhelp points in wrong ...
1235  666951 g_mkdtemp: Since version incorrect in docs
1236  666978 Fails to compile glib applications with ISO C90 compiler
1237  667098 ginetaddressmask leaks its address property
1238  667225 GSocket: add missing type checks to public methods
1239  667226 GSocket: fix an error return value
1240  667279 Sometimes crashes when launching commandline-crea...
1241  667285 Wrong keyname listed in documentation for g_deskt...
1242  667331 Use g_queue_free_full() convenience function
1243  667420 GHashTable GDB pretty printing is broken
1244
1245 * Updated translations
1246  Belarusian
1247  Bulgarian
1248  Hebrew
1249  Norwegian bokmål
1250  Norwegian Nynorsk
1251  Spanish
1252  Vietnamese
1253
1254
1255 Overview of changes from GLib 2.31.4 to 2.31.6
1256 ==============================================
1257
1258 * GApplication no longer has APIs for setting menus.  Those have been
1259   moved to GtkApplication.
1260
1261 * the GActionGroup import/export functionality has been decoupled from
1262   GApplication by the introduction of a new interface for the purpose of
1263   handling platform data: GRemoteActionGroup.  This allows Gtk to
1264   properly deal with platform data (and gdk threads) on window actions.
1265
1266 * lots of documentation improvements
1267
1268 * bug fixes and a huge number of memory leak fixes
1269
1270 * the test suite now passes on ARM and some of the GDBus testcase hangs
1271   we've been seeing have been resolved (although others could remain)
1272
1273 * g_bytes_get_data() API changed: now includes 'size' out parameter
1274
1275 * new g_queue_free_full() API similar to g_[s]list_free_full()
1276
1277 * desktop files: use standard "Keywords" now, not "X-GNOME-Keywords"
1278
1279 * gsettings commandline tool now has --schemadir option for schemas not
1280   installed in the usual place (ie: as part of plugins)
1281
1282 * Bugs fixed:
1283  643736 GApplication doesn't emit dbus signals on action updates
1284  657433 g_queue_free_full() missing
1285  664699 glib: documentation fixes
1286  665737 acquire/release gdk threads lock on incoming dbus
1287  665879 GBytes: add a size argument to g_bytes_get_data
1288  666113 various leaks in GLib, GIO are visible in the regression tests
1289  666115 various tests leak memory, obscuring real leaks in the library
1290  666145 Doc could be more explicite that g_thread_init calls can be droped
1291  666173 Configure warning - linux/netlink.h usability... no
1292  666296 Race condition in g_thread_xp_get_srwlock
1293  666415 Settings tools should allow specifying a schema directory 
1294
1295 * Translations updated:
1296  French
1297  Spanish
1298
1299 Overview of changes from GLib 2.31.2 to 2.31.4
1300 ==============================================
1301
1302 * EXPERIMENTAL: Menu support has been added to GApplication.  Menus
1303   are exported on the bus, alongside the actions that are already there.
1304   There have also been many related improvements to action group
1305   functionality.
1306
1307   These new APIs are subject to changes in the coming releases.  In
1308   particular, it seems somewhat likely that the APIs for registering
1309   menubars may change in order to accommodate windows with different
1310   types of menubars.
1311
1312 * GDBusConnection previously directly dispatched destroy notifies when
1313   unregistering objects if the current main context was the same context
1314   the object was exported on.  It now unconditionally dispatches these
1315   through an idle on the context.
1316
1317 * Clean up Requires in pc files. Linking against GIO no
1318   longer drags in gmodule. This may require dependency
1319   fixes here and there.
1320
1321 * Introduce GBytes, a data type for immutable, fixed-size
1322   byte sequences. This makes the pre-existing GBuffer
1323   API available outside GLib
1324
1325 * GDBusInterfaceSkeleton can now be exported on multiple
1326   connections
1327
1328 * Bugs fixed:
1329  600161 Do not use static GTypeInfo and GInterfaceInfo
1330  640077 GFileMonitor: Always send CHANGES_DONE_HINT after a move...
1331  641720 Misleading definition for local_command_line() in GApplic...
1332  648516 Little comment error and 2 useless lines of code
1333  651997 Dummy backend for gapplication
1334  652560 Test for g_ascii_strtod is failing
1335  662208 failure to initialize a GInitable should be considered...
1336  662718 GDBusInterfaceSkeleton should be able to export on multi...
1337  663291 GBytes: Immutable, refcounted sequence of bytes
1338  664406 Need context for a proper translation
1339  664455 Build fixes for GLib GIT master (2.31.x)
1340  664558 GDBusWorker.frozen has a value > 1 in a gboolean
1341  664559 sys/wait.h not available on windows
1342  664617 gdbus segfault error 4 in libgio-2.0.so.0.3102.0
1343  664635 GMemory{Out,In}putStream _async functions break sub-class...
1344  664809 Add command line option to gtester to allow skipping tests
1345  665067 cryptic assertion failure if nonsensical flag combinations...
1346  665184 Check ref. count before reffing/unreffing
1347  665298 Add 'Requires.private: libpcre' to glib-2.0.pc
1348  665391 update documentation around mainloops
1349  665607 ./configure is there for fiddling with cross-compile enviro...
1350  665634 g_dbus_node_info_new_for_xml() errors on unknown attributes...
1351  665685 Add a #define for the max length of a Unicode decomposition
1352  665733 GDBusConnection holds lock while calling destroynotify
1353
1354 * Translation updates:
1355  Norwegian bokmål
1356  Spanish
1357
1358
1359 Overview of changes from GLib 2.31.0 to 2.31.2
1360 ==============================================
1361
1362 * Monotonic time is now properly supported on Windows
1363
1364 * glib-mkenums: fix @ENUMPREFIX@ with /*< underscore_name=... >*/
1365
1366 * EXPERIMENTAL: introduce new GSettingsSchema and GSettingsSchemaSource
1367   APIs for the convenience of plugin system authors and those who wish
1368   to introspect the contents of schemas.  This API may change.
1369
1370 * Improve the performance of GObject property notifies.
1371
1372 * GDBus:
1373  - fix a race when unowning a name immediately after owning it
1374  - thread safety improvements on GDBusConnection
1375  - fixes for exit-on-close functionality
1376
1377 * Deprecations:
1378  - add G_SIGNAL_DEPRECATED
1379  - don't use G_DISABLE_DEPRECATED masking for functions anymore
1380
1381 * docs
1382  - tmpl/ is finally dead for glib
1383
1384 * GIO:
1385  - GInetAddressMask: new type for internet address range matching
1386  - various GIO file and stream fixes
1387  - improvements to attribute and fileinfo handling
1388
1389 Overview of changes from GLib 2.29/2.30 to 2.31.0
1390 =================================================
1391
1392 This release contains a huge number of changes (500 commits worth).  The
1393 list below attempts to summarise, but not every change is listed.
1394
1395 * Major changes to threading and synchronisation
1396  - threading is now always enabled in GLib
1397  - support for custom thread implementations (including our own internal
1398    support for errorcheck mutexes) has been removed
1399  - a whole lot of dead code (to deal with the non-threaded case) has
1400    been ripped out.  This includes the racy path of GMainContext that
1401    caused deadlocks with respect to child process exits in
1402    single-threaded programs (such as gtester).
1403  - libgthread is now an empty shell and g_thread_init() is no longer
1404    required (and has been deprecated)
1405  - GMutex and GCond can now be statically allocated without explicit
1406    initialisation.  Dynamic allocation for these types is deprecated.
1407  - new types GRecMutex and GRWLock can also be statically allocated
1408    without explicit initialisation.
1409  - GPrivate can now be statically allocated and has an improved API.
1410    Dynamic allocation of GPrivate is deprecated.
1411  - GStaticMutex, GStaticRecMutex, GStaticRwLock, GStaticPrivate are
1412    deprecated.
1413  - GCond now uses monotonic time internally and a new API takes
1414    monotonic time for timed waits, deprecating the wallclock API
1415  - removal of the insane macro indirection used in the previous
1416    implementation of threading and synchronisation APIs
1417  - use SRWLock and CONDITION_VARIABLE APIs when available on Windows
1418    (Vista and later) and emulate them on XP
1419  - leaks of G(Static)Private-allocated data on some cases of thread exit
1420    have been fixed
1421  - simplified new thread creation API with the old API deprecated.  The
1422    concept of joinability has disappeared (all threads are joinable) as
1423    have priority levels, 'bound'ness (ie: kernel vs. userspace threads)
1424    and ability to manipulate the stack size.
1425  - GThread is now a refcounted type
1426  - other implementation details changed
1427
1428 * Move headers for some deprecated functionality to a separate
1429   deprecated/ directory.
1430
1431 * New support for attribute-based deprecations to issue compiler
1432   warnings instead of breaking the build and/or giving warnings about
1433   implicit declarations (and possibly miscompiling).
1434
1435 * GCache has been deprecated (after its last use was removed from our
1436   platform over a year ago).
1437
1438 * It is no longer possible to include individual headers (like
1439   "ghash.h") -- you must #include <glib.h>.
1440
1441 * The misguided experiment of allowing the program to stumble along with
1442   missing GSettings schemas is now over -- the abort is back.
1443
1444 * Clarify that fork() is not valid while using GMainContext.  This is
1445   because the internal resources of the GMainContext end up being shared
1446   by both processes.  We had an assert here but it was breaking existing
1447   (valid) use cases as well, so it has been removed for now.
1448
1449 * GApplication
1450   - add ::shutdown signal as logical dual to ::startup
1451   - don't use a GMainLoop: iterate the GMainContext directly (improves
1452     quit logic)
1453
1454 * Several portability fixes for Windows, OpenBSD, Solaris
1455
1456 * Add new GValue API to specifically deal in signed chars (in case the
1457   platform defines 'char' as unsigned)
1458
1459 * some new API to mitigate the problems associated with calling setenv()
1460   in a multi-threaded program
1461
1462 * Use CLOCK_MONOTONIC unconditionally if the libc has support at compile
1463   time (ie: stop checking for kernel support at runtime).
1464
1465 * pkg-config files:
1466   - drop -uninstalled variants
1467   - remove gobject dependency on gthread
1468
1469 * New macro G_ATOMIC_LOCK_FREE is defined if the atomic operations are
1470   implemented without use of a mutex.  Cleaned up atomic-related
1471   compilation issues with mingw compilers on win32 systems.
1472
1473 * SOCKS proxy and resolver improvements
1474
1475 * Fix the spelling of G_IO_FLAG_IS_WRITABLE (was WRITEABLE) and
1476   introduce a macro for backwards compatibility.
1477
1478 * GDBus:
1479   - many code generation updates and improvements
1480   - some race condition fixes, including testcase hangs
1481
1482 * GVariant:
1483   - new g_variant_new_from_fixed_array() API
1484   - substantial docs improvements/clarifications
1485
1486 * GKeyFile is now refcounted and boxed
1487
1488 * mount monitoring is now based on /proc/mounts (where available)
1489   instead of mtab
1490
1491 * new macros G_SOURCE_CONTINUE and G_SOURCE_REMOVE for returning from
1492   GSourceFunc (so you don't have to remember what TRUE and FALSE mean)
1493
1494 * use xlocale functions where available to avoid too much heavy lifting
1495   in functions like g_ascii_strtod()
1496
1497 * GMappedFile can now be created from an fd
1498
1499 * error message strings grammar/i18n fixes
1500
1501 * many docs updates
1502
1503 * Partial list of bugs closed:
1504  70598  Unify GStaticMutex and GMutex.
1505  320888 optimization for g_main_context_wakeup
1506  398418 GChildWatch race condition?
1507  527214 g_timer_elapsed() returns random values
1508  580505 add a way to set/get name for a thread
1509  583511 race condition means g_main_loop_quit() does not work
1510  590808 GKeyFile should have a refcount and a boxed type in GObject
1511  592715 Document that g_str_hash() and g_int_hash() are not NULL safe
1512  631413 Add macros for GSourceFunc return values
1513  632049 not immediately clear what g_variant_get_fixed_array expects
1514  640212 "Error stating file" is not a friendly message
1515  640293 Use xlocale functions to implement g_ascii_strtod()
1516  640975 Check that error exists before trying to set it
1517  643934 GApplication lacking a logical dual for the ::startup signal
1518  651268 assertion failed in GDBus worker thread
1519  653987 g_key_file_get_integer cannot interpret trailing spaces
1520  654412 Documentation for g_variant_get_child_value unclear
1521  654563 info capplet: Failed to calculate disk space
1522  655366 missing GSettings schemas lead to obscure crashes
1523  656621 g_spawn_*() calls executables in current directory
1524  656679 [gi] Add two annotations to gio
1525  657992 Add glib__private__() API to share between glib,gio
1526  658188 _set_as_last_used_for_type generates a broken mimeapps.list
1527  658206 gsocks5proxy.c has invalid gettext use
1528  658207 glib-compile-schemas says "can not"
1529  658558 simpleaction: Fix documentation of :enabled
1530  658683 clean up charset/language threading issues
1531  658692 add introspection annotations to g_time_val_from_iso8601()
1532  658715 Duplicite strings
1533  658769 Invalid reuse of GError in GThreadedResolver
1534  658806 sign error in string hash implementation
1535  658976 gdbus-codegen's C namespace option needs to support Ugly_Case
1536  659070 gdbus-codegen generated code segfaults when property changes
1537  659082 gdbus-codegen: Single letter namespaces get dropped from names
1538  659212 GMappedFile should fail on non-regular files
1539  659324 _SPLICE_CLOSE_TARGET doesn't mark the output stream as closed
1540  659423 Use adaptive mutexes when available
1541  659427 Move deprecated code to a separate directory
1542  659646 gdbus-codegen produce code that warnings at build
1543  659690 Possible build warning in code generated by gdbus-codegen
1544  659699 property name collision when generating code for "Connection"
1545  659754 Add API to GMappedFile that allows to pass FD
1546  659838 incorrect types in introspection for g_object_bind_property
1547  659866 pthread_rwlock_t requires defined __USE_UNIX98
1548  659870 gvalue: Fix signedness of g_value_get_char()
1549  659889 glib-2.29.92/gio-2.0.pc.in has a wrong line.
1550  659916 GObject size of 64K is not actively enforced
1551  659920 Missing setter for read/write property 'closed' of GIOStream
1552  659923 Add g_variant_new_fixed_array() function
1553  660013 Remove old g_atomic configure cruft
1554  660096 glib/rwlock tests failure (tests asserted)
1555  660130 Possible loss of user data when updating mimeapps.list
1556  660147 tracker causes g_critical in "gsettings list-recursively"
1557  660413 Make G_ASSERT_STATIC work with clang
1558  660498 Generated test code fails when the codegen changes
1559  660511 Use /proc/mounts for monitoring mounts, not /etc/mtab
1560  660536 Expose options for /etc/fstab entries
1561  660635 Deprecate g_thread_foreach
1562  660637 Pending dbus method calls not canceled on connection loss
1563  660739 kill off g_{mutex,cond}_{new,free}()
1564  660740 make GThread more standard
1565  660741 g_cond_timedwait is a disaster
1566  660743 macro wrappers for g_once_init_enter/leave
1567  660744 finish killing g_thread_init()
1568  660745 GPrivate leaks on Windows
1569  660791 [gio] Improve doc for g_file_make_directory_with_parents()
1570  660843 asyncqueue-test is broken
1571  660849 Remove cruft from g_strerror and g_strsignal
1572  660886 GDBusProxy: don't drop/complain about unknown props/signals
1573  660887 g_slice_set_config() is broken
1574  660994 Add g_main_context_ref_thread_default()
1575  661255 gio: enable test_peer regression test for OpenBSD
1576  661257 giomodules.c uses ":" instead of G_SEARCHPATH_SEPARATOR_S
1577  661318 tests use pthread without appropriate compiler/linker flags
1578  661421 Applications fail to initialize on GNU Hurd - commit
1579  661438 Implement G_GNUC_DEPRECATED/G_GNUC_DEPRECATED_FOR on Visual C++
1580  661711 Sorting keys for GDrive, GVolume and GMount instances
1581  661763 desktop-app-info: Add support for X-GNOME-Keywords
1582  661896 /gdbus/connection/life-cycle is racy
1583  661914 Gstreamer/Totem locks up
1584  662100 regression: g_dbus_connection_close() triggers exit-on-close logic
1585
1586 * Translations updates:
1587  Belarusian 
1588  Brazilian Portuguese
1589  British English 
1590  Bulgarian 
1591  Catalan 
1592  Catalan (Valencian)
1593  Czech 
1594  Danish 
1595  Esperanto
1596  French 
1597  Gujarati
1598  Hebrew 
1599  Hungarian 
1600  Italian 
1601  Japanese
1602  Lithuanian
1603  Norwegian bokmål
1604  Oriya
1605  Polish 
1606  Russian 
1607  Serbian
1608  Simplified Chinese
1609  Slovak 
1610  Slovenian
1611  Spanish 
1612  Tamil
1613  Vietnamese
1614
1615 Overview of changes from GLib 2.29.18 to 2.29.90
1616 ================================================
1617
1618 * API/ABI changes:
1619  - unix signal watches now match the API of all of the other sources
1620  - revert the addition of g_date_time_source_new () from last release
1621
1622 * networking and other fixes for Solaris
1623  - we no longer support symbolic port names (ie: from /etc/services)
1624  - check if -lsocket is needed
1625  - fix g_socket_details_from_fd()
1626  - avoid getmntinfo
1627  - fix some harmless warnings
1628
1629 * GDateTime improvements:
1630  - generally improved standards compliance (with C99)
1631  - support C99-specified format strings: %g, %G, %V, %c, %C, %w
1632  - consult the locale for the preferred 12-hour time format (%r)
1633  - drop support for non-standard %N and broken %W
1634  - better support for formatting non-POSIX (eg: Arabic) numerals
1635  - locale-related test case fixups, and fix some leaks
1636
1637 * GTlsInteraction: add interaction method invocation guarantees
1638
1639 * gdbus-codegen: post-process all interfaces when parsing >1 file
1640
1641 * make GMainLoop, GMainContext and GSource boxed types
1642
1643 * fix a race condition in the first use of g_get_monotonic_time()
1644
1645 * lots gtk-doc cleanups
1646
1647 * better intltool compatibility when generating pot file
1648
1649 * avoid GCC-specific compiler options when not using GCC
1650
1651 * Translation updates:
1652  Belarusian
1653  Brazilian Portuguese
1654  Canadian English
1655  Galician
1656  Indonesian
1657  Korean
1658  Lithuanian
1659  Norwegian bokmål
1660  Portuguese
1661  Spanish
1662  Swedish
1663
1664 Overview of changes from GLib 2.29.16 to 2.29.18
1665 ================================================
1666
1667 * GDateTime is now respecting LC_TIME when formatting
1668
1669 * GTimeZoneMonitor has been removed again
1670
1671 * A new API for wallclock functionality has been added:
1672   g_date_time_source_new(). This API is still experimental
1673   and may be changed or removed before 2.30.
1674
1675 * Bugs fixed:
1676  628904 Add credential support for FreeBSD and fix a socket issue
1677  650763 gdbus-codegen is broken with python 2.7
1678  655129 GDateTime could provide api for implementing wall clocks
1679  656341 gtlsconsoleinteraction.c uses getpass() which isn't avail...
1680  656387 GCancellable can be used concurrently
1681  656443 Make GTlsInteraction ask_password cancellable
1682  656675 void functions should not return in glib 2.29.16
1683  656772 g_variant_compare for uint64 incorrect
1684  656914 Load GIO_EXTRA_MODULES first, and ignore duplicates
1685  657083 The header langinfo.h is not available on all systems
1686  657084 gfileutils: fix docs/annotations for temp file methods
1687  657138 Some files missing in POTFILES.in
1688  657206 GInputStream leaked in g_file_icon_load_async()
1689  657243 g_cancellable_set_error_if_cancelled() documentation
1690  657274 Use detected PYTHON variable as shebang for gdbus-codegen
1691  657336 Speling fixes for glib found with codespell
1692  657452 plural forms needed
1693  657454 Translation comment needed
1694  657540 Print out file:// URL to coverage HTML report after building
1695  657593 g_test_trap_fork calls close(-1)
1696  646082 Addresses from GSocket should be normalized before returning
1697  657517 fix gio/tests/gdbus-peer on bsd
1698
1699 * Translation updates:
1700  Brazilian Portuguese
1701  Galician
1702  Norwegian bokmål
1703  Punjabi
1704  Russian
1705  Serbian
1706  Spanish
1707  Swedish
1708  Traditional Chinese
1709  Uighur
1710
1711
1712 Overview of changes from GLib 2.29.14 to 2.29.16
1713 ================================================
1714
1715 * GTlsDatabase: an abstract class that provides support
1716   or certificate and key lookup. An implementation will
1717   be provided in glib-networking
1718
1719 * GHmac: Support or HMAC digests
1720
1721 * Misc new API:
1722  - g_ptr_array_add_full: creates a GPtrArray with
1723    a preallocated size and a destroy function
1724  - g_desktop_app_info_get_show_in: checks if a GDesktopAppInfo
1725    should be shown in a given desktop environment
1726  - g_mkdtemp, g_mkdtemp_full, g_dir_make_tmp: create
1727    temporary directories
1728
1729 * Unify thread wakeup implementations of GMainContext
1730   and GCancellable, and use eventfd for it when available
1731
1732 * Show mounts in $XDG_USER_DIR in addition to /media and $HOME
1733
1734 * Bugs fixed:
1735  636572 GTlsCertificateDB
1736  644601 Some tests need a running dbus session
1737  652284 deal with small key lengths
1738  652827 glib-2.29.8 no longer builds with mingw.org's toolchain
1739  653063 PEM parser fails parsing private key when put first
1740  654078 Fail to static linking with Glib library
1741  654450 New functions: g_ptr_array_new_full()
1742  654793 Add G_VALUE_INIT
1743  655044 GDesktopAppInfo: Add g_desktop_app_info_get_show_in()
1744  655148 gdbusconnection is broken when compiling with mingw
1745  655241 glocalfile.c no longer compiles with MinGW GCC
1746  655598 g_cancellable_get_fd: silently return -1 for NULL cancellable
1747  655664 gdbus should not abort if no dbus session is available
1748  655769 Use ZLIB_CFLAGS when compiling gio
1749  656031 Improve GVariant annotations
1750  656048 glib-codegen requires Python >= 2.5
1751  656151 configure test logic inverted, doesn't match comments
1752  656152 GCC only syntax used, yet other compilers allowed by configure.
1753  656162 allow use of lcov 1.9 for coverage
1754  656282 GDBusProxy: uninitialized local variables can be freed
1755  656283 Failing tls connection cause assertion
1756  118563 Add g_mkdtemp in the spirit of g_mkstemp
1757  636405 Add g_return_if_fail() to g_settings_bind_with_mapping()
1758  656039 race condition between GDBusProxy signals and public API
1759  656492 g_io_channel_new_file failure (open(2) behavior wrt POSIX)
1760
1761 * Translation updates:
1762  Bulgarian
1763  Esperanto
1764  French
1765  Galician
1766  German
1767  Hebrew
1768  Indonesian
1769  Italian
1770  Norwegian bokmål
1771  Russian
1772  Spanish
1773  Swedish
1774
1775
1776 Overview of changes from GLib 2.29.12 to 2.29.14
1777 ================================================
1778
1779 * Unicode improvements
1780  - add g_unicode_script_{to,from}_iso15924
1781  - add G_UNICODE_SPACING_MARK define
1782  - more normalisation improvements
1783  - stop using deprecated g_unicode_canonical_decomposition()
1784
1785 * GParamSpec:
1786  - mark the 'name' field as 'const' and add a comment to the header to
1787    help avoid future problems caused by bad hacks
1788
1789 * Merge some (modified) patches from Debian:
1790  - 03_blacklist-directories.patch
1791    - add some blacklisted mount directories
1792  - 60_wait-longer-for-threads-to-die.patch
1793    - sleep longer in a test case, if needed to avoid failing
1794
1795 * Units policy change: prefer use of SI units
1796  - deprecate g_format_size_for_display, add g_format_size(_full)
1797
1798 * GSettings: don't call g_error() when the schema is missing
1799
1800 * GVariant support for arrays of object paths:
1801  - new g_variant_{new,get,dup}_objv API
1802  - support for g_variant_{new,get} '^ao' and '^a&o' similar to '^as'
1803
1804 * GDBus:
1805  - use new improved array-of-objects support and pass 'ao' as char**
1806    instead of GVariant*
1807  - improve handling of 'h' type (Unix file descriptor index)
1808
1809 * GIO:
1810  - fix compilation without USE_STATFS and USE_STATVFS
1811
1812 * Documentation fixes
1813
1814 * Bugs fixed:
1815  622921 Migrate from dbus-glib to glib's GDBus
1816  648271 Add g_unicode_script_to_iso15924()
1817  654948 Stop using deprecated g_unicode_canonical_decomposition()
1818  654988 g_atomic_int_add should document behaviour change
1819  655025 #define G_UNICODE_SPACING_MARK G_UNICODE_COMBINING_MARK
1820  655076 normalization misses some Full_Composition_Exclusion=True. 
1821
1822 * Translations updated:
1823  Spanish
1824
1825 Overview of changes from GLib 2.29.10 to 2.29.12
1826 ================================================
1827
1828 * Add new API to do Unicode (de-)composition in atomic steps,
1829   for use in Harfbuzz.
1830
1831 * Bugs fixed:
1832  615895 (indirectly) support non-NULL-terminated regexes in GRegex
1833  617949 glib trunk fails to compile on Solaris w/ Studio 12...
1834  620423 Document the possibility to unset attributes
1835  627974 Floating reference headaches
1836  644687 Not finding cross-links in current doc set
1837  649246 g_output_stream_splice() cannot be used on 32-bit machines...
1838  653841 a helper script to build glib from git master on win32
1839  653935 g_slist_free_full/g_list_free_full iterates twice in the list
1840  654017 tests: fix glib_translations_work() in gsettings unit test
1841  654085 Don't needlessly use "echo -e" when creating .def files
1842  654195 Add g_unichar_compose() and g_unichar_decompose()
1843  654232 GCancellable eventfd problems
1844  654394 suspicious use of floating references in GDBusInterfaceSkeleton
1845  654536 GSettings: lift key name length restriction to 64
1846  654627 GParamSpec: intern property names
1847  654651 Better g_unicode_canonical_decomposition()
1848  654917 Make g_cclosure_marshal_generic the default signal handler
1849
1850 * Translation updates:
1851  Belarusian
1852  Finnish
1853  Korean
1854  Latvian
1855  Lithuanian
1856  Norwegian bokmål
1857  Turkish
1858
1859
1860 Overview of changes from GLib 2.29.8 to 2.29.10
1861 ===============================================
1862
1863 * New features:
1864  - g_desktop_app_info_get_nodisplay: a function that is required
1865    to port gnome-menus to GDesktopAppInfo
1866  - g_hash_Table_iter_replace: new function to replace a value
1867    while iterating over a hash table
1868  - g_utf8_substring: convenience API to extract substrings from
1869    UTF-8 strings
1870  - g_action_group_add_entries: convenience API for creating lots
1871    of actions quickly
1872  - Use eventfd instead of pipes for waking up main contexts and
1873    for cancellation when available
1874  - GMatchInfo is now a refcounted boxed type
1875
1876 * API changes in GAction:
1877  - the 'set_state' entry in the GActionInterface vtable has been
1878    renamed to 'change_state
1879  - g_action_set_state has been renamed to g_action_change_state
1880  - the 'state' property has been changed to read-only
1881  - GSimpleAction can no longer be subclassed
1882
1883 * Bug fixes
1884  647796 g_variant_new_variant is not marked as constructor
1885  652072 gmain: make use of signalfd()
1886  652168 Crosscompiling Fails if build<=2.24 and host >2.24
1887  652750 make dist fails
1888  652758 GDataInputStream: Clarify g_data_input_stream_read_line docs...
1889  652822 Add a g_hash_table_iter_replace
1890  652897 tiny docs clarification for g_utf8_to_ucs4_fast
1891  653140 gmain: use Linux eventfd() for main context wake up
1892  653429 drop AM_MAINTAINER_MODE or enable it by default
1893  653484 GAsyncCallbacks should default to allow-none
1894         Add missing fundamental types to the generic marshaller
1895
1896 * Translation updates
1897  Belarusian
1898  Galician
1899  Russian
1900
1901 Overview of changes from GLib 2.29.6 to 2.29.8
1902 ==============================================
1903
1904 * Bug fixes
1905  646608 export_symbols variable for gio dynamic library is wrong
1906  646635 Fix introspection of GLib
1907  647930 Documentation: GDataInputStream _read_upto() version
1908  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
1909  651920 Improve qsort_r detection
1910  651959 gbitlock: "asm goto" is not available in gcc < 4.5
1911  651998 gdbus-codegen: Use relative Python imports
1912  652000 Fix for gatomic.c on Windows/MSVC
1913  652002 Proposal to clean up gvaluetransform.c for MSVC
1914  652025 g_dbus_connection_register_object: error is not set...
1915  652081 Typos in a GBinding warning message
1916  652197 Improper handling of double values in GDBusMessage
1917         Fix a deadlock in gobject finalization
1918
1919 * Translation updates:
1920  Czech
1921  Galician
1922  German
1923  Hebrew
1924  Norwegian bokmål
1925  Spanish
1926  Uighur
1927
1928
1929 Overview of changes from GLib 2.29.4 to 2.29.6
1930 ==============================================
1931
1932 * Atomic operations have been rewritten from scratch to make use
1933   of gcc builtins where possible. As a side-effect of this, calls
1934   to g_atomic_ API with explicit casts may now be problematic; if
1935   that happens to you, try first to remove the casts. Another
1936   side-effect of the rewrite is that g_atomic_int_exchange_and_add
1937   has been deprecated in favor of g_atomic_int_add.
1938
1939 * A full set of atomic operations on pointers has been added,
1940   including bit locks in pointer-size locations.
1941
1942 * Access to quarks is now lockless
1943
1944 * GObject data scalability has been greatly improved
1945
1946 * g_data_time_format now supports alternative digits and padding
1947
1948 * Introspection improvements:
1949  - Add a boxed type for GVariantBuilder
1950  - Annotation fixes in GDBus, GVariant, g_base64_
1951
1952 * Bugs fixed:
1953  502560 g_rand_double_range returns 'inf'
1954  612729 g_mkdir_with_parents can fail if the directory already exists
1955  617491 g_once() implementation is inefficient
1956  619418 Add a performance test for UTF-8 decoding functions
1957  619435 Make g_utf8_to_ucs4_fast() yet faster
1958  626549 G_STATIC_ASSERT_EXPR
1959  631231 bitlock: Fix detection and usage of futexes with Bionic
1960  632294 g_queue_remove() should return a boolean
1961  640518 GMainLoop has quadratic complexity when all pollfd's...
1962  642026 Race condition in g_static_private_free
1963  646635 Fix introspection of GLib
1964  648678 g_date_time_format(): support %O flags for localized numbers
1965  649480 Use MSG_CMSG_CLOEXEC in recvmsg in gio/gsocket.c
1966  649506 GTestFunc et al lacking Since tag
1967  649657 Don't return gboolean for functions that throw
1968  649775 glib-gio-gdbuscodegen-Makefile.patch
1969  649915 gsettings accepts unquoted strings longer than two characters
1970  649973 gthread: build unix tests only on unix
1971  649988 gdbus-codegen: Drop dependency on argparse
1972  650078 forkbomb building glib/tests/protocol
1973  650211 Optimization in key file parsing
1974  650236 Application over DBus implements action state incorrectly
1975  650345 g_key_file_has_key_full: New function to fix g_key_file_has_key...
1976  650458 reduce overhead in g_object_set/get_data
1977  650459 hash table consistency while calling destroy notify funcs
1978  650688 enforce rules about hash table modification
1979  650823 expand the set of atomic ops
1980  650874 codegen chokes on docs
1981  650882 use stdout instead of stderr for informational messages
1982  650884 fix compilation with gcc2
1983  650885 implement glib credentials on OpenBSD (hackish)
1984  650935 G_GNUC_MAY_ALIAS and atomic ops
1985  651009 minor documentation fix
1986  651034 Regarding g_cond_wait after g_thread_pool_push in gthreadedresolver
1987  651133 race condition in GDBusConnection's emit_signal_instance_in_idle_cb
1988  651141 hashtable infinite loop
1989  651219 fix path to true(1) on OpenBSD
1990  651223 Fix some compile warnings on OpenBSD
1991  651327 Minor fixes for the gsocket API
1992  651467 Add pointer sized bitlocks
1993  651650 gdbus: Avoid busy wait loop
1994  651725 gmain: Cleanups and a new test case
1995  651745 Switch to _ prefixing rather than G_GNUC_INTERNAL
1996
1997 * Updated translations:
1998  Catalan (Valencian)
1999  Esperanto
2000  Hebrew
2001  Hungarian
2002  Russian
2003  Spanish
2004
2005
2006 Overview of changes from GLib 2.29.2 to 2.29.4
2007 ==============================================
2008
2009 * GDBus:
2010  - Includes several new types to support modeling D-Bus
2011    objects and interfaces more fully, and also introduces
2012    an 'object manager' pattern:
2013    GDBusInterface, GDBusObject, GDBusObjectManager
2014    These interfaces have client-side implementations:
2015    GDBusProxy, GDBusObjectProxy, GDBusObjectManagerClient
2016    And server-side implementations:
2017    GDBusInterfaceSkeleton, GDBusObjectSkeleton, GDBusObjectManagerServer
2018  - The new gdbus-codegen utility uses these new classes
2019    to generate C code and documentation from D-Bus interface
2020    descriptions in XML
2021
2022 * GTest:
2023  - There is now a g_test_fail() function to mark
2024    tests as failed
2025
2026 * GDesktopAppInfo
2027  - Now has a binding-friendly filename property
2028  - Other new API to more fully expose desktop file contents:
2029    g_desktop_app_info_get_categories(),
2030    g_desktop_app_info_get_generic_name()
2031
2032 * GHashTable:
2033  - Several optimizations to reduce space consumption of
2034    large hash tables, in particular tables that are used
2035    to store sets.
2036
2037 * Unix-specific APIs:
2038   GLib now installs a separate header, glib-unix.h, that is
2039   meant to collect Unix-specific APIs. For now, it contains
2040   g_unix_open_pipe(), g_unix_set_fd_non_blocking() for dealing
2041   with pipes and fds, as well as APIs to create mainloop
2042   sources which can trigger callbacks on certain Unix
2043   signals (SIGTERM, SIGHUP, SIGINT).
2044
2045 * Bugs fixed:
2046  631379 GDBus nonce-tcp test failing
2047  632631 GLib-CRITICAL **: g_variant_new_string: assertion `g_utf8_validate (string, -1, NULL)' failed
2048  635694 gdbus aborting due to unauthorized socket in DBUS_SESSION_BUS_ADDRESS
2049  637561 Crash when using G_DBUS_SERVER_FLAGS_RUN_IN_THREAD
2050  642935 g_date_time_format() prints wrong value for %z and timezone -0800
2051  643134 g_dbus_message_copy
2052  644941 glib-unix: New Unix-specific API
2053  646013 g_hash_table_remove_all_nodes optimization
2054  646309 glib cannot be cross-compilled for mingw32
2055  646435 GTimeZone doesn't seem to be thread-safe
2056  646957 GIO chained calls don't work with a thread default context
2057  647594 README link to mailing list is broken
2058  647602 Cannot connect to remote message bus via TCP
2059  647746 The GSocketService documentation is incomplete.
2060  647826 API: gtester: Add g_test_fail()
2061  647903 GDesktopAppInfo: Add g_desktop_app_info_get_categories()
2062  648416 g_app_info_create_from_commandline ignores SUPPORTS_STARTUP_NOTIFICATION
2063  648423 Support G_DEBUG=trap-warnings
2064  648425 GDesktopAppInfo: Add "filename" property for bindings
2065  648966 Update g_unichar_iswide and g_unichar_iswide_cjk
2066
2067 * Updated translations
2068  Norwegian bokmål
2069  Spanish
2070  Turkish
2071  Uighur
2072
2073
2074 Overview of Changes from GLib 2.28.0 to 2.29.2
2075 ==============================================
2076
2077 * GApplication
2078  - The documentation has been enhanced and clarified
2079  - An opt-out for uniqueness has been added: G_APPLICATION_NON_UNIQUE
2080  - GApplication now syncs settings before g_application_run() returns
2081
2082 * GDBus
2083  - Interface lookups are now happening in constant time
2084  - Signature checking and handling of various unexpected
2085    situations has been improved
2086
2087 * GVariant
2088  - The format accepted by the GVariant parser has beend documented
2089  - GVariant accepts G_VARIANT_TYPE_VARDICT for a{sv}
2090
2091 * GDateTime:
2092  - The return value of g_datetime_compare() has been fixed to
2093    match strcmp() semantics
2094  - In order to handle problems with changing timezones, a GTimeZoneMonitor
2095    has been added to GIO, and g_time_zone_refresh_local() can be
2096    called to update the cached information about the local timezone
2097
2098 * GOption now uses /proc/self/cmdline to set the program name instead
2099   and only falls back to "<unknown>" if that is unavailable
2100
2101 * GSettings:
2102  - The schema compiler now warns about references to non-existing schemas
2103
2104 * Commandline utilities are now fully translated
2105
2106 * Signals can now indicate that collecting their arguments must
2107   always happen, even in the absence of connected signal handlers,
2108   using the G_SIGNAL_MUST_COLLECT flag.
2109
2110 * Bugs fixed:
2111  635099 Memory leak in gdbus introspection when parsing xml
2112  640489 $ and ^ do not match lines if G_REGEX_MULTILINE|G_R...
2113  642042 Overriding GDBus org.freedesktop.DBus.Properties im...
2114  642052 g_timeout_add(_seconds) cannot handle large intervals
2115  642490 notify_desktop_launch() "g_variant_new_bytestring:...
2116  613269 g_type_get_qdata() doesn't work as I expected on subtypes
2117  624943 G_VALUE_NOCOPY_CONTENTS is undocumented
2118  637738 object_interface_check_properties never actually executes
2119  638185 GIOCondition should be annotated as "flags"
2120  639478 GDBusServer's g_dbus_server_new_sync() function should just...
2121  641755 Add g_settings_get/set_uint() helpers
2122  641768 dconf gsettings backend silently drops writes if it can't...
2123  642797 g_app_info_get_default_for_type() broken for subtypes
2124  642825 Unnecessary assertion failure in g_option_context_parse()
2125  642944 NULL key lookup using g_hash_table_lookup_extended()
2126  643074 Incorrect documentation for g_socket_receive() and g_socket...
2127  643197 g_application_id_is_valid docs imply no valid ids
2128  643468 GApplication docs: Warn that handling "command-line" means...
2129  643478 GApplication::local_command_line vfunc documentation seems wrong
2130  643624 Can g_variant_unref() on an already free'd variant
2131  643649 g_application_run() should say that argc/argv can be NULL
2132  643780 shouldn't need to create an action group to use actions...
2133  643795 g_timeout_add_seconds fires with intervals 1 second longer...
2134  644309 Program name is not set when using GtkApplication
2135  644428 Crash in failure section of g_markup_collect_attributes()
2136  644465 undefined reference to `_usleep'
2137  644552 g_timeout_add_seconds(1, ...) may have a latency of up to 2...
2138  644607 Correct internal definition of C_()
2139  645789 annotations for g_file_*_contents
2140  646039 g_settings_list_children() returns child that cannot be opened
2141  646310 Accept range with only min or max
2142  646420 g_dbus_method_invocation_get_parameters() docs should say...
2143  646843 occasional abort on autologin
2144  646985 add G_APPLICATION_NON_UNIQUE flag
2145  647579 gsettings: Implement reset-recursively
2146  647600 gsettings description has typo
2147
2148 * Translation updates
2149  Afrikaans
2150  Bulgarian
2151  Bengali India
2152  British English
2153  Bulgarian
2154  Catalan
2155  Czech
2156  Danish
2157  French
2158  Galician
2159  German
2160  Greek
2161  Gujarati
2162  Hebrew
2163  Hungarian
2164  Italian
2165  Japanese
2166  Korean
2167  Lithuanian
2168  Polish
2169  Portuguese
2170  Romanian
2171  Serbian
2172  Simplified Chinese
2173  Spanish
2174  Swedish
2175  Traditional Chinese
2176  Uighur
2177  Vietnamese
2178
2179
2180 Overview of Changes from GLib 2.27.93 to 2.28.0
2181 ===============================================
2182
2183 * Bugs fixed:
2184 641363 GInitable documentation isn't clear about that finalize...
2185 641395 Add more data about the origin application to the "Lau...
2186 641411 gdesktopappinfo signals lost if it's the session bus...
2187 641477 glib-mkenums uses unportable #! line
2188 641572 Add @EXEEXT@ to pkgconfig binary name
2189 641688 glib installs GSettings.html and gsettings.html
2190
2191 * Translation updates:
2192  Galician
2193  Italian
2194  Korean
2195  Punjabi
2196
2197
2198 Overview of Changes from GLib 2.27.92 to 2.27.93
2199 ================================================
2200
2201 * Bugs fixed:
2202  637013 gio/gdbusmessage.c fails to compile on Solaris
2203  640192 Error creating a Gio.Settings object through py...
2204  640261 Minimum version for external pcre needs to be..
2205  640262 GActionGroup contains redundant TYPE macros
2206  640436 Make load_user_special_dirs() resistant to non...
2207  640695 g_key_file_load_from_file() mishandles a CR-LF...
2208  640724 can't compile gio due to format string issues
2209  640725 can't compile tests due to format string issue
2210  640807 improve GVariant behaviour with invalid pointers
2211  640823 wrong documentation for g_source_add_child_source
2212
2213 * Translation updates:
2214  Bulgarian
2215  Galician
2216  Hebrew
2217  Norwegian bokmål
2218  Spanish
2219  Traditional Chinese
2220
2221
2222 Overview of Changes from GLib 2.27.91 to 2.27.92
2223 ================================================
2224
2225 * Update to Unicode 6.0
2226
2227 * Update PCRE to 8.12
2228
2229 * Bugs fixed:
2230  637696 g_unix_connection_send_fd() doesn't work
2231  638872 null settings backend bug
2232  640042 GtkApplication's warning about not connecting...
2233
2234 * Translation updates:
2235  Arabic
2236  Basque
2237  Estonian
2238  Greek
2239
2240 Overview of Changes from GLib 2.27.90 to 2.27.91
2241 ================================================
2242
2243 * Bugs fixed:
2244  638838 gdesktopappinfo: Don't crash if we don't have a desktop filename
2245  638894 Splitting on \s* gives no result
2246  639064 Update gschema.dtd
2247  639084 Copy/paste error in GSettings::writable-changed signal
2248  639177 SIGSEGV for GApplications with G_APPLICATION_IS_SERVICE
2249
2250 * Translation updates:
2251  Estonian
2252  Galician
2253  Indonesian
2254
2255
2256 Overview of Changes from GLib 2.27.5 to 2.27.90
2257 ===============================================
2258
2259 * Test reports created by gtester-report can now
2260   include revision information
2261
2262 * The g_desktop_app_info_launch_* family of functions
2263   now emit a DBus signal when an application is launched.
2264   Additionally, there is a new variant
2265   g_desktop_app_info_launch_uris_as_manager(), which
2266   gives more control over the launched process.
2267
2268 * The memory and null GSettings backends are now available
2269   as public API
2270
2271 * g_get_locale_variants() is a new function that returns a
2272   list of variants of a locale identifier
2273
2274 * Bugs fixed:
2275  587898 I/O timeouts for GSocket
2276  606960 gio: Add extension point for informing parties...
2277  631980 Handle an optional <revision> node in the report...
2278  634569 Document that g_variant_builder_add_value consumes...
2279  635998 Make _g_compute_locale_variants public
2280  636806 Add g_{memory,null}_settings_backend_get_default
2281  637262 Need a binary DER version of ::accepted-cas
2282  637544 Skip fsync() on btrfs
2283  637720 void functions should not return a value.
2284  637738 object_interface_check_properties never actually...
2285  637759 GIOChannel: fix a crash in g_io_channel_read_chars()
2286  637852 Updates to glib.vsprops file for MSVC 2008 builds...
2287  637858 Updates to test/testglib.c...
2288  638349 parameter name of g_variant_new_* may conflict...
2289
2290 * Translation updates:
2291  Hebrew
2292  Norwegian bokmål
2293  Simplified Chinese
2294  Spanish
2295  Swedish
2296  Uyghur
2297  Vietnamese
2298
2299
2300 Overview of Changes from GLib 2.27.4 to 2.27.5
2301 ==============================================
2302
2303 * Network support:
2304  - Add g_tls_certificate_verify() to verify a certificate
2305  - Add GTlsConnection:use-system-certdb
2306  - Other TLS api additions
2307
2308 * GIO:
2309  - Add g_io_stream_splice_async()/_finish() to splice two iostreams
2310  - Add g_emblemed_icon_clear_emblems() and make GEmblemedIcon derivable
2311  - Remove GPeriodic; it did not receive the necessary review and
2312    integration work to declare it stable
2313
2314 * GSequence:
2315  - New methods g_sequence_lookup() and g_sequence_lookup_iter()
2316
2317 * Bugs fixed:
2318  617254 Missing g_sequence_lookup
2319  632544 g_dbus_connection_send_message can not send a locked message...
2320  633350 g_hostname_to_ascii() ignores non-ascii dots
2321  634583 Better error reporting for g_variant_parse()
2322  635007 gsetting enum rule don't work for out-of-srcdir builds
2323  635626 GDBus message idle can execute while flushes are pending
2324  636100 Can't read GSettings:backend property
2325  636305 Typo on g_queue_remove_all() function description
2326  636311 appinfo: tweak application positioning for content-types
2327  636351 g_simple_async_result_is_valid lacks a version tag
2328  636387 gdb autoload files shadow the "dir" builtin
2329  636673 g_simple_async_report_error_in_idle should allow object...
2330  637147 Add a "delay-apply" property to GSettings
2331  637171 emblemedicon: add g_emblemed_icon_clear_emblems()
2332  637237 gapplication: plug a memory leak
2333
2334 * Translation updates:
2335  Estonian
2336  Galician
2337  Hebrew
2338  Norwegian bokmål
2339  Simplified Chinese
2340  Spanish
2341  Traditional Chinese
2342  Vietnamese
2343
2344
2345 Overview of Changes from GLib 2.27.3 to 2.27.4
2346 ==============================================
2347
2348 * GIO
2349  - Mounts are treated as hidden if they have a path element
2350    that starts with a dot
2351  - GAppInfo gained API to differentiate between recommended
2352    and fallback mime handlers
2353  - g_cancellable_create_source: creates a GSource that triggers
2354    when the GCancellable is canceled
2355  - GPollableInput/OutputStream: Interfaces for pollable streams
2356  - TLS support has landed, with an extension point that is
2357    implemented in glib-networking
2358
2359 * GLib
2360  - Mainloop sources can now have 'child sources'
2361  - g_get_runtime_dir: New function to return the XDG_RUNTIME_DIR
2362
2363 * Bugs fixed:
2364  530786 GFileMonitor "changed" signal underdocumented
2365  588189 TLS support for GSocket*
2366  630357 g_object_new_valist uses uninitialized memory
2367  630559 typo in public string in gsocks: 'The SOCKSv5 require...
2368  632445 Documentation refers to removed GNOME 2.0 porting guide
2369  634239 Child GSources
2370  634241 Add pollable input/output streams
2371  634504 allow passing a NULL emblem to g_emblemed_icon_new()
2372  634613 unsufficient g_get_user_runtime_dir() documentation
2373  635640 schema should inherit gettext-domain from schemalist
2374  635768 Protect g_file_monitor_set_rate_limit() against negative...
2375  635882 Fix the wrong-category schema test
2376  635187 Wrong type of GVariant received in an action...
2377
2378 * Updated translations:
2379  Galician
2380  Italian
2381  Norwegian bokmål
2382  Uyghur
2383
2384
2385 Overview of Changes from GLib 2.27.2 to 2.27.3
2386 ==============================================
2387
2388 * The GTimeSpec type that was introduced in the 2.27.2 has been
2389   dropped again in favour of APIs that return microseconds as
2390   64-bit integer.
2391   Affected functions:
2392   g_source_get_time
2393   g_periodic_unblock
2394   g_get_monotonic_time
2395   g_get_real_time
2396   The similar GTimeVal struct is still around, but its use is
2397   discouraged.
2398
2399 * GTimer is now using monotonic time unconditionally
2400
2401 * There are some new functions to facilitate error reporting
2402   in async GIO APIs:
2403   g_simple_async_result_take_error
2404   g_simple_async_result_new_take_error
2405   g_simple_async_report_take_gerror_in_idle
2406
2407 * There is new convenience API to us GVariant dictionaries:
2408   g_variant_lookup
2409
2410 * It is now possible to delay sending match rules to the
2411   D-Bus daemon in GDBus:
2412   G_DBUS_SIGNAL_FLAGS_NO_MATCH_RULE
2413
2414 * Support has been added for XDG_RUNTIME_DIR:
2415   g_get_user_runtime_dir
2416
2417 * Various fixes for Win64/MSVC builds have been committed
2418
2419 * Bugs fixed:
2420  620263 Add g_clear_object, g_clear_pointer, g_clear_boxed
2421  633075 update Project Files and sources for MSVC 2008/C89
2422  633381 gsettings Makefile rules should handle empty list...
2423  633685 Use g_simple_async_result_{new_,}take_error
2424  633686 Add g_simple_async_report_take_gerror_in_idle
2425
2426 * Translation updates:
2427   Belarusian
2428   Galician
2429   Hebrew
2430   Punjabi
2431   Spanish
2432
2433
2434 Overview of Changes from GLib 2.27.1 to 2.27.2
2435 ==============================================
2436
2437 * GApplication
2438  - Export actions over DBus and support activating them from remote instances
2439  - Support environment passing
2440
2441 * GSettings
2442  - The gsettings utility has a list-recursively command
2443  - The gsettings utility has commandline completion for enum values
2444
2445 * GLib is now linked against librt and uses monotonic time for
2446   timeouts and GPeriod sources. GSource has a new g_source_get_time()
2447   which returns monotonic time, and g_source_get_current_time() has
2448   been deprecated
2449
2450 * Bugs fixed:
2451  158725 free linked list with data
2452  626320 GVariant: Avoid locking in g_variant_get_child_value() if possible
2453  629247 add gsimpleasyncresult methods to take over a GError
2454  629274 GNetworkService does not do fallback when there is no SRV record
2455  631264 gsettings-tool choice/range support
2456  631482 g_date_time_from_instant: 1000000000000000000
2457  632169 docs for manual use of gsettings-data-convert
2458  632571 Add equivalent to gconftool-2's -R option
2459  633115 GSettings m4 doesn't fail the build for broken schemas
2460  633206 Default g_application_local_command_line() doesn't set exit_status...
2461  633339 support more complex gapplication setups
2462  633356 Make timeout G_MAXINT mean "no timeout"
2463
2464 * Translation updates:
2465  Catalan (Valencian)
2466  Indonesian
2467  Japanese
2468
2469
2470 Overview of Changes from GLib 2.27.0 to 2.27.1
2471 ==============================================
2472
2473 * GDateTime now has full week number support.
2474   New API: g_date_time_get_week_numbering_year
2475
2476 * The GSettings schema compiler will now skip over
2477   broken .xml schema files instead of aborting altogether
2478
2479 * GSettings now works properly on bigendian systems
2480
2481 * GSettings has more complete support for ranges
2482   New API:
2483     g_settings_get_range
2484     g_settings_range_check
2485   The gsettings commandline tool supports ranges too.
2486
2487 * GApplication has been rewritten; see the API docs for details
2488   and examples. The action support is not complete yet.
2489
2490 * The GLib mainloop has gained 'dispatch to context' functionality,
2491   which can replace manually created idles in many cases.
2492   New API:
2493     g_main_context_invoke
2494     g_main_context_invoke_full
2495
2496 * The gio-desktop-app-info-lookup extension point has been
2497   removed from GIO. GIO now uses x-scheme-handler mimetypes when
2498   looking for default applications.
2499
2500 * On win32, make g_get_user_data_dir() return the CSIDL_LOCAL_APPDATA
2501   folder on Windows, and not CSIDL_PERSONAL. This matches what Qt does,
2502   and has been widely requested. Also make g_get_user_config_dir() return
2503   this and not the (roaming) CSIDL_APPDATA folder.
2504
2505 * A periodic event clock has been added in GIO: GPeriodic. Note that this
2506   API is still experimental and expected to undergo changes before it
2507   will be incorporated into a stable GLib release. Use at your own risk.
2508
2509 Bug fixes:
2510  613822 gobject signal connect/disconnect not thread safe
2511  618737 "dispatch to context" functionality
2512  620710 g_get_user_data_dir() uses CSIDL_PERSONAL and not CSIDL_APPDATA
2513  623400 acquire context before dispatching
2514  627126 gsettings schema files don't get installed on FreeBSD
2515  627171 g_socket_new_from_fd() doesn't set the right protocol
2516  628876 Wrong error description
2517  628937 gracefully handle broken schemas
2518  629274 GNetworkService doesn't fallback when there is no SRV record
2519  629289 g_error() used wrong, produces core dump
2520  629687 leaks class refcount in gsocketcontrolmessage
2521  629849 GLib-CRITICAL **: g_source_get_context: assertion `!SOURCE_...
2522  629945 GDBus deadlock in g_bus_get_sync()
2523  630000 g_date_time_difference
2524  630077 GDateTime week number support
2525  630185 Allow NULL strings in g_quark_try_string()
2526  630797 docs mention non-existent g_object_dispose()
2527  630968 gschema-compile problems on power g5
2528  631263 GSettings needs range/choice APIs
2529  631264 gsettings-tool choice/range support
2530  631379 GDBus nonce-tcp test failing
2531  631410 Port gapplookupgconf.c to using x-scheme-handler/
2532  632884 Possible deadlock in g_object_remove_toggle_ref()
2533
2534 Transation updates:
2535  Basque
2536  Brazilian Portuguese
2537  British English
2538  Bulgarian
2539  Czech
2540  Dutch
2541  Estonian
2542  French
2543  Galician
2544  German
2545  Greek
2546  Hebrew
2547  Hungarian
2548  Japanese
2549  Lithuanian
2550  Polish
2551  Portuguese
2552  Romanian
2553  Simplified Chinese
2554  Slovenian
2555  Spanish
2556
2557
2558 Overview of Changes from GLib 2.25.15 to GLib 2.27.0
2559 ====================================================
2560
2561 Build:
2562   - massive restructuring to reduce #include abuse
2563   - tweaks to silence some harmless compiler warnings
2564   - rename gschema-compile.c to glib-compile-schemas.c
2565   - Windows fixes
2566   - fix building with zlib < 1.2.4 on win32
2567
2568 GDateTime:
2569   - better msgctxt for translating month and weekday names
2570   - API is changed quite a lot, implementation is improved
2571   - GTimeZone is now exposed
2572
2573 GObject:
2574   - make ordering for overridden interface properties consistent
2575   - ->priv structures are limited to 64k but this was not documented,
2576     and exceeding this limit produced bad results.  Add docs and enforce
2577     the limit properly.
2578   - add g_object_class_install_properties() to install multiple
2579     properties in one go
2580   - improve debugging output for GValue containing G_TYPE_STRV
2581
2582 GIO:
2583   - fix priority sorting of GIO extensions
2584   - add GCredentials support on FreeBSD
2585   - fix support for IPv6 addresses in URI parsing functions
2586   - GSocketClient fixes for when g_socket_connect succeeds immediately
2587   - clarify string encoding for GFile constructors in docs
2588   - new functions g_data_input_stream_read_upto{,async,finish}
2589   - tweak confusing documentation for g_output_stream_write()
2590
2591 GDBus:
2592   - GDBusMessage can now be locked and copied (like in libdbus)
2593   - GDBusConnection filter function API has changed again
2594   - GDBusServer: ::new-connection now declares if the connection was claimed
2595   - add a partial workaround for GObject bug 627724.
2596   - very many memory leaks fixed
2597
2598 GVariant:
2599   - check for size == 0 in g_variant_get_bytestring to avoid a crash
2600     when attempting to get_bytestring() from an empty array
2601   - improve gobject-introspection annotations
2602
2603 GSettings:
2604   - add GSettings Windows registry backend
2605   - some internal tweaks to the backend API
2606   - remove g_settings_list_items
2607   - add g_settings_list_children and _list_keys to replace it
2608   - add schema compiler restrictions for dealing with lists
2609   - don't automatically emit value changed signals on writability
2610     changes
2611
2612 Other:
2613   - constify the 'parser' vtable param to g_markup_parse_context_push()
2614   - plug many memory leaks in test cases
2615
2616 Bugs closed:
2617   50076 Time API to go with date API
2618  584284 g_data_input_stream_read_until_async different from sync version
2619  624546 Modification of GDBusMessage in filter function
2620  626919 Let g_object_class_install_property() return the installed GParamSpec*
2621  628029 GDateTime missing get_week_of_year method
2622  628253 Interface properties not listed in a consistent order
2623  628331 Plug lots of mem leaks in gio test suite
2624  628345 Plug a mem leak
2625  628436 Plug a mem leak
2626  628505 Fix building with zlib < 1.2.4 on win32
2627  628839 [PATCH] datetime: Rename shadowing variables
2628  628904 [PATCH] Add credential support for FreeBSD and fix a socket issue
2629  628952 incorrect glib_major_version and other variables on cygwin.
2630  629192 g_strdup_value_contents(): dump GStrv more usefully
2631  629251 g_socket_client_async_connect_complete: assertion failed
2632  629259 Failed to connect to "::1"
2633  629328 g_markup_parse_context_push doesn't respect const structs
2634  629429 month "May" short and full form same with "GDateTime" msgctxt
2635  629689 GDBusConnection leaks its GCredentials
2636  629698 Segfault in g_variant_get_bytestring() 
2637
2638 Updated translations:
2639   Arabic
2640   Armenian
2641   Basque
2642   British English
2643   Czech
2644   Finnish
2645   Galician
2646   German
2647   Hungarian
2648   Indonesian
2649   Japanese
2650   Lithuanian
2651   Norwegian bokmål
2652   Polish
2653   Portuguese
2654   Punjabi
2655   Simplified Chinese
2656   Slovenian
2657   Spanish
2658   Swedish
2659   Swedish
2660   Traditional Chinese
2661
2662 Overview of Changes from GLib 2.25.14 to GLib 2.25.15
2663 =====================================================
2664
2665  * GIO
2666   - Memory leak fixes
2667   - The GZip(De}Compressor can now process header information
2668   - Support for network proxies has been added, with the GProxy
2669     interface and the gio-proxy-resolver extension point. GIO
2670     includes SOCKSv4 and SOCKSv5 implementations, and libproxy
2671     is also going to provide an implementation of this extension
2672     point.
2673   - There are GAction and GActionGroup interfaces now, which will
2674     be used in GApplication in the near future.
2675
2676  * GObject
2677   - There are now convenience macros for defining boxed and
2678     pointer types
2679
2680  * GDBus
2681   - Memory leak fixes
2682   - GDBusProxy for well-known names can now auto-restart
2683     the service if the name owner disapperas
2684   - Filter functions are now allowed to modify messages
2685
2686  * GLib
2687   - GDateTime is a replacement for GDate that supports time
2688     and timezone information.
2689
2690  * Bugs fixed:
2691   50076 Time API to go with date API
2692  449565 Add G_DEFINE_BOXED_TYPE()
2693  617691 Add GZIP header processing to GZlibCompressor/GZlibDecompressor
2694  622184 add g_memory_output_stream_steal_data
2695  624546 Modification of GDBusMessage in filter function
2696  627088 Build failure in gdbus-peer.c on FreeBSD
2697  627181 save a memdup
2698  627182 Plug a mem leak in the gdbus-connection test
2699  627187 Plug some gdbus mem leaks
2700  627188 gdbus-non-socket test occasionally fails
2701  627252 G_OPTION_FLAG_NO_ARG is only for callback options
2702  627392 gdbus commit 8a3a4596 breaks win32 compile
2703  627407 FTBFS on !linux UNIX platforms
2704  627604 String error: 'that' twice in a row
2705  627969 ABR in g_file_open_tmp
2706  628084 gdbus-peer fails with assertion
2707  628193 Miscellaneous string fixes
2708  628296 abort() in gsocketconnection.c
2709  628309 Plug a mem leak in GConverterOutputStream
2710  628317 GEmblemedIcon:equal implementation is buggy
2711  628323 Fix invalid reads
2712  628327 Plug a mem leak
2713  628328 Plug a mem leak
2714  628329 Don't leak the FD list
2715  628324 Invalid reads in gdbus-export test
2716
2717  * Updated translations:
2718   British English
2719   Danish
2720   Galician
2721   Hebrew
2722   Punjabi
2723   Serbian
2724   Spanish
2725   Traditional Chinese
2726
2727
2728 Overview of Changes from GLib 2.25.13 to GLib 2.25.14
2729 =====================================================
2730
2731 * GDBus
2732  - Make the closure variants of GDBus apis work
2733  - Make error unregistration work
2734  - Use async IO in the IO thread (626748)
2735
2736 * GIO
2737  - Make g_simple_async_result_is_valid work without source (626208)
2738  - GSocketClient: add a timeout property
2739  - Fix memory leaks in GSocketClient
2740  - Handle async vs. sync correctly in GSocketConnection stream (616458)
2741  - Declare stream base classes as abstract
2742  - Clarify semantics of g_output_stream_write() (627071)
2743
2744 * Other
2745  - Improve test coverage for GDBus, GRegex, GAsyncResult
2746  - Drop dead code in pcre, xdgmime
2747  - Fix a race condition in gtester (578295)
2748  - Avoid an extra allocation in GAsyncQueue (626704)
2749  - Add test case for non-socket GIOStream (626841)
2750  - More explicit GVariant docs (622770)
2751  - Imroved docs for GAsyncInitable and GSimpleAsyncResult (602417)
2752
2753 * Translation updates:
2754  - Galician
2755  - Norwegian bokmål
2756  - Punjabi
2757  - Simplified Chinese
2758  - Swedish
2759
2760
2761 Overview of Changes from GLib 2.25.12 to GLib 2.25.13
2762 =====================================================
2763
2764 +-------------------------------------------------------------------+
2765 |   WARNING: There have been no breaks in API or ABI.  Weird, eh?   |
2766 +-------------------------------------------------------------------+
2767
2768 The primary purpose of this release is to fix a serious problem with
2769 glib 2.25.12: glibconfig.h (as generated on a Fedora amd64 system) was
2770 being distributed in the tarball.  It was being used to build some parts
2771 of glib on other systems (eg: 32bit ones).  This was causing some very
2772 serious problems.
2773
2774 There have been many other improvements, however:
2775
2776  Build and testing:
2777   - vastly improved test coverage
2778   - old tests moved to the gtester framework
2779   - gtester Makefile modified so that the tests only run once
2780   - cleanup of how we handle includes while building glib
2781
2782  GVariant:
2783   - add a g_return_if_fail (utf8) to g_variant_new_string()
2784
2785  GDBus:
2786   - perform extra sanity checks when serialising messages
2787   - add API to query and set the byteorder of a GDBusMessage
2788   - improve debug output, add some extra options
2789   - if exiting due to the bus disconnecting us, print an error message
2790     explaining why
2791   - sort property names correctly
2792   - don't bother sending RemoveMatch when we will close the connection
2793     anyway
2794   - use effective uid/gid for credential passing
2795
2796  GSettings:
2797   - add G_SETTINGS_BIND_INVERT_BOOLEAN for inverting boolean bindings
2798     without mapping functions
2799   - mark all strings in the schema compiler for translation
2800
2801  Binding:
2802   - improve closure support for bindings
2803   - copy GSettings INVERT_BOOLEAN flag
2804
2805  Other:
2806   - fix another complicated GCancellable deadlock possibility
2807
2808 Bugs closed:
2809  599590 glib build doesn't look for correct pkg-config
2810  619026 avoid warning in gutils.h when using gcc with -Wconversion
2811  624739 Please fix POTFILES.in
2812  625472 Valgrind claims uninitialized bytes used
2813  625500 g_date_set_time_val documentation doesn't mention local time
2814  625628 GDBusProxy: wrong property name sorting
2815  625753 Incorrect flags used in g_dbus_connection_call_sync()
2816  625827 Expand documentation about error quark naming
2817  625988 builddir != srcdir issues
2818  626107 glibconfig.h is being disted
2819
2820 Updated translations:
2821  French
2822  Galician
2823  Hebrew
2824  Norwegian bokmål
2825  Spanish
2826
2827
2828 Overview of Changes from GLib 2.25.11 to GLib 2.25.12
2829 =====================================================
2830
2831 +-------------------------------------------------------------------+
2832 | WARNING: There have been many API changes in GDBus -- sending     |
2833 | messages, subscribing to signals, closing connections and         |
2834 | registering subtrees are affected.  The ABI for GSettingsBackend  |
2835 | has also been changed.  For both reasons, a new dconf release is  |
2836 | required (and will be along soon).                                |
2837 +-------------------------------------------------------------------+
2838
2839 Build:
2840   - cleanup automake setup
2841   - rename configure.in to configure.ac
2842   - various docs fixups
2843   - move glibconfig.h to glib/
2844   - disable dtrace support on Mac OS (which has incompatible 'dtrace')
2845
2846 GSettings:
2847   - add support for vendor override files (to change the default values
2848     in a schema)
2849   - change GSettingsBackend vtable
2850   - add g_settings_reset()
2851   - support binding to G_TYPE_STRV properties
2852
2853 GDBus:
2854   - many bug fixes, including a serialisation fix
2855   - stop handling incoming connections as soon as stop() is called
2856   - proper support for file descriptor passing
2857   - new flags parameter for sending messages
2858   - new flags parameter for subscribing to signals
2859   - always reset the message serial when sending a message unless
2860     G_DBUS_SEND_MESSAGE_FLAGS_PRESERVE_SERIAL is given
2861   - constness fixes for introspection structures
2862   - clean ups to subtree registration API
2863
2864 Other:
2865   - fix divide by zero bug in g_malloc_n functions
2866   - GIO: don't blindly assume that SOCK_CLOEXEC is supported
2867   - make GObject property notify freezes threadsafe
2868   - GIO: clean up credentials passing
2869   - GApplication: make default-quit not apply if register=FALSE
2870   - GIO: add annotations for gobject-introspection
2871
2872 Bugs closed:
2873  166020 use GAtomic for refcounting
2874  617483 Credentials passing
2875  622005 [GApplication] no way to modify the "default-quit" property
2876  623293 vendor override files
2877  623810 Message serialization bug
2878  623815 Don't check sender for GDBusProxy objects where name is not set
2879  624473 GDBusSubtreeIntrospectFunc return type
2880  624483 GDBusSubtreeEnumerateFunc clarification
2881  624484 GDBusSubtreeDispatchFunc clarification
2882  624754 gdbusaddress.c missing sys/wait.h
2883  624968 div by zero in g_malloc_n family
2884  624991 GSettings mapping for G_TYPE_STRV 
2885  625383 Add missing GI annotations
2886
2887 Updated Translations:
2888  Armenian
2889  Galician
2890  German
2891  Hebrew
2892  Kazakh
2893  Romanian
2894  Simplified Chinese
2895  Spanish
2896
2897 Overview of Changes from GLib 2.25.10 to GLib 2.25.11
2898 =====================================================
2899
2900 +-------------------------------------------------------------------+
2901 | WARNING: There have been minor API changes in GDBus and GVariant. |
2902 | These API changes will not affect many users, but they do require |
2903 | a new version of GTK+ to be installed.                            |
2904 +-------------------------------------------------------------------+
2905
2906 Build:
2907   - add a --disable-Bsymbolic configure flag to disable linking with
2908     -Bsymbolic-functions
2909   - this release sees the complete removal of the old 'g*alias' hacks
2910   - honour the NOCONFIGURE environment variable from autogen.sh
2911   - use proper feature test macros for isnan
2912   - use pkg-config to check for zlib
2913   - add ACLOCAL_AMFLAGS to Makefile.am
2914
2915 GDBus:
2916   - hide Class and instance structures for all GDBus types except
2917     GDBusProxy.  This breaks API by preventing subclassing, but probably
2918     nobody was doing that.
2919   - add new GDBusConnection call to support flushing all pending
2920     outgoing messages
2921   - change the register_object API to add a reference to the
2922     GDBusInterfaceInfo object so the caller need not keep it alive
2923     themselves
2924   - don't rewrite the serial number when sending messages that already
2925     have a serial number
2926   - better error checking for DBUS_SESSION_BUS_ADDRESS environment
2927     variable
2928   - switch to g_parse_debug_string for G_DBUS_DEBUG and add a lot of new
2929     flags
2930   - add support for temporarily freezing a freshly created
2931     GDBusConnection.  Do this until after the ::new-connection signal
2932     has finished running on GDBus services.
2933   - never require non-closed connections (the user is incapable of doing
2934     this due to the obvious race)
2935   - remove weird/misleading redundant check on NameOwnerChanged signal
2936   - emit GDBusProxy::g-properties-changed on NameOwnerChanged
2937
2938 GVariant:
2939   - the 'g_variant_{new,get}_byte_array' APIs have been removed
2940   - g_variant_{new,get,dup}_bytestring has been added, with different
2941     arguments and different behaviour
2942   - g_variant_{new,get,dup}_bytestring_array has been added, doing
2943     essentially the same thing as the 'strv' functions, but with byte
2944     strings instead of utf8 strings
2945   - G_VARIANT_TYPE_BYTESTRING ('ay'), BYTESTRING_ARRAY ('aay') and
2946     STRING_ARRAY ('as') constants have been added
2947   - the undocumented behaviour that g_variant_get_strv() deserialised
2948     arrays of object paths or signature strings has been dropped
2949   - additional varargs support for converting bytestrings or bytestring
2950     arrays with ^ay ^aay ^&ay and ^a&ay
2951   - improved gobject-introspection annotation
2952   - fix a problem with GBuffer calling g_slice_free for the wrong type
2953   - fix leaks in the type inferencing code of the parser
2954
2955 GSettings:
2956   - improved documentation
2957   - updated schema XML DTD, now xincluded into the docs
2958   - added support for schemas that extend other schemas (using the
2959     'extends=' attribute).  Values of keys in the base schema can be
2960     overridden using <override>.
2961   - added theoretical support for lists (using the 'list-of=' attribute)
2962   - lots of new tests
2963   - add support for flags (implemented similarly to enums)
2964   - add support for generating .enums.xml files to gsettings.m4:
2965       gsettings_ENUM_NAMESPACE = org.example.myapp
2966       gsettings_ENUM_FILES = ../path/to/*.h
2967     will generate org.example.myapp.enums.xml with mappings for all
2968     enums and flags in the specified .h files.
2969   - warn with g_message() if the 'memory' backend is used by default
2970     (ie: because no other GSettings backends are installed)
2971   - fix get_property() for GSettings::schema
2972   - command line tool: fix a bug that prevented non-basic values from
2973     being set due to a premature free
2974   - command line tool: bash completion support
2975   - chain up in _finalize
2976   - add a new g_settings_get_mapped API to read settings that require
2977     post-processing
2978   - retry with the translated or schema default value if the
2979     GSettingsBindGetMapping function fails
2980   - schema compiler: never fail due to empty schema directories (but
2981     warn)
2982   - peek rather than ref/unref the GEnumClass in the mapping function
2983   - schema compiler: compile *.enums.xml before *.gschemas.xml to ensure
2984     that we have all the enums that the schemas may reference
2985   - schema compiler: improve accuracy of line numbers in error reports
2986   - fix crashes in the keyfile backend caused by invalid group names in
2987     the keyfile
2988
2989 Other:
2990   - always intern GBinding prop names
2991   - base64: remove asserts preventing conversion of empty strings
2992   - document NULL special-cases for GValueArray
2993   - GNode docs improvements
2994   - improve detection of 'system internal' mounts
2995   - fix leaks in the inotify GFileMonitor implementation
2996   - annotate all custom GIO GSources to improve debugging (e.g. using
2997     SystemTap)
2998
2999 Tests:
3000   - Turn on glibc malloc checking features for make check
3001   - improvements for GSettings tests, plus new tests
3002   - improved tests for GKeyfile
3003   - new tests for GDir, GSList, GSList, GAppLaunchContext,
3004     CharsetConverter, GIcon, ...
3005   - move some tests to GTester (tree tests, uri tests)
3006   - generally, really an awful lot of new tests
3007   - don't try to allocate 2gigs of memory anymore for the array test
3008
3009  552363 g_value_array_{insert,prepend,append}'s special cases for NULL
3010  561248 Improve return value description from g_node_prev/next_sibling()
3011  570036 Add ACLOCAL_AMFLAGS to Makefile.am
3012  576833 g_sprintf add a reference to g_strdup_printf
3013  576854 g_strconcat() documentation should provide a hint about bad l10n
3014  582227 reference: add other URI functions to 'URI Functions' section
3015  599223 should provide g_spawn_* variants that take a GAppLaunchContext
3016  610784 array test failing
3017  613057 Leak in inotify GFileMonitor implementation
3018  620536 Annotate all custom GIO GSource using g_source_set_name
3019  620913 More control with G_DBUS_DEBUG
3020  622124 implement flags
3021  622127 GSettings extended key validation
3022  622128 retry with default value for failed mapping
3023  622294 More annotations for GVariant
3024  622565 glib-compile-schemas fails when no schemas
3025  622600 Fix missing prototype warning
3026  622813 gsettings mapping & enum buglet
3027  623142 Ensure ::new-connection runs before processing D-Bus messages
3028  623143 Never require non-closed connections
3029  623319 use g_parse_debug_string for dbus debug flags
3030  623401 process enums first
3031  623402 schema compiler reports wrong line numbers
3032  623407 g_keyfile_settings_backend_new crashes with the key "/"
3033  623473 zlib should be checked with pkg-config
3034  623537 GDBusProxy has weird checking on NameOwnerChanged
3035  623538 GDBusProxy::g-properties-changed emission for corner cases
3036  623692 directory with file at multiple MLS levels may display empty
3037  623720 gschema.dtd does not contain enum definitions
3038  623770 quoting of expand_macro in gdesktopappinfo.c
3039  623772 gdesktopappinfo.c, function child_setup
3040  623780 g_unix_is_mount_path_system_internal
3041  623954 g_settings_finalize
3042  623955 Dubious return values
3043
3044 Updated translations:
3045  Galician
3046  Hebrew
3047  Norwegian bokmål
3048  Spanish
3049
3050 Overview of Changes from GLib 2.25.9 to GLib 2.25.10
3051 ====================================================
3052
3053 +----------------------------------------------------------------+
3054 | WARNING: There have been API changes in GDBus. Users of these  |
3055 | APIs will need to be adapted.  In particular, a new release of |
3056 | dconf is required to go along with this one.  There has also   |
3057 | been a change in the GSettings backend API used for keyfiles.  |
3058 +----------------------------------------------------------------+
3059
3060 * GDBus:
3061  - add direction parameter to filter functions (API change)
3062  - allow calling other interfaces with a GDBusProxy
3063  - padding added to class struct fields (ABI change)
3064  - fixes for closures-based functions
3065
3066 * GVariant:
3067  - new is_floating() call
3068  - add g_value_take_variant() call (required for marshallers)
3069
3070 * GSettings:
3071  - support for binding GParamSpecEnum properties
3072  - ifelse-style condition support for GLIB_GSETTINGS m4 macro
3073  - remove gsettings-schema-convert tool (now in GConf)
3074  - allow introspection of all installed schemas
3075  - allow introspection of the keys in a schema
3076  - rewrite keyfile backend (API change)
3077
3078 * GNIO:
3079  - don't implicitly close GSocket until it is destroyed
3080  - windows fixups
3081
3082 * Other:
3083  - allow GChecksum to take (NULL, 0) for data/length
3084  - GRelation and GCompletion are now deprecated
3085  - introduce G_PARAM_DEPRECATED and G_ENABLE_DIAGNOSTIC
3086  - add working directory to GApplication platform data
3087  - lots of documentation cleanups
3088  - PCRE updated to 8.02
3089
3090 * Build:
3091  - the IA__g_* style symbol aliasing has been disabled and replaced with
3092    the -Bsymbolic-functions linker flag on platforms that support it.
3093    Please be on the watch for portability issues and report them to us.
3094  - many test cases have been moved to the GTester framework
3095  - lcov support has been added for tests
3096  - many windows fixes
3097
3098 * Bugs fixed:
3099  501057  lcov coverage suite and GLib integration
3100  551271  deprecate GRelation
3101  601686  Implement diagnostic mode
3102  603309  GSocketOutputStream broken on Windows (?)
3103  616718  GLIB_GSETTINGS macro can't be used conditionally
3104  616855  GSocketConnection: don't close the socket if it's still reffed
3105  618866  g_ptr_array_remove_index_fast memory leak
3106  619878  keyfile backend calls keys_changed with invalid argument
3107  619879  keyfile backend doesn't make use of expected_type
3108  621092  Add with_closures() variants for bindings
3109  621172  Cross compiling fails
3110  621838  Actually add cwd to platform data
3111  621945  Filter outgoing messages in GDBusConnection
3112  621947  add g_value_take_variant
3113  622038  GSettings: "It is a programmer error" documentation is unclear
3114  622154  [patch] update documentation for g_application_new
3115  622281  binding: Add SYNC_CREATE to the flags
3116  622480  Improve documentation for g_strcmp0()
3117  622554  g_error called if schema not installed
3118  622601  Return interned strings from g_settings_list_keys
3119
3120 * Translation updates:
3121  - Galician
3122
3123 Overview of Changes from GLib 2.25.8 to GLib 2.25.9
3124 ===================================================
3125
3126 +----------------------------------------------------------------+
3127 | WARNING: There have been API changes in GDBus, GSettings and   |
3128 | GApplication. Users of these APIs will need to be adapted. In  |
3129 | particular, a new release of GTK+ is required to go along with |
3130 | this one.                                                      |
3131 +----------------------------------------------------------------+
3132
3133 * GDBus
3134  - Use Gio's default async implementation
3135  - Fix proxy construction for objects with no properties
3136  - Fix error handling in synchronous initialization
3137  - Do not dispatch calls to unregistered objects
3138  - Add _with_closures alternative functions
3139  - Allow constructing GDBusProxy with well-known names
3140  - Remove GType parameters from GDBusProxy constructors
3141  - Nuke g_bus_watch_proxy API
3142  - Add --xml to gdbus-tool to print raw introspected XML
3143
3144 * GSettings
3145  - schema file format change: store (default, options) in gvdb
3146  - Add g_settings_sync()
3147  - Add support for enums and ranges
3148  - 'context' support has been replaced by direct use of
3149    GSettingsBackend
3150
3151 * GApplication
3152  - Switch to using variants for timestamps
3153  - Use GInitable
3154
3155 * GObject
3156  - Introduce g_object_notify_by_pspec
3157  - Add GBinding
3158  - The GVariant gtype G_TYPE_VARIANT was changed from boxed
3159    to fundamental. We believe there were no existing users
3160    of the boxed type, so this should not cause any applications
3161    to break.
3162
3163 * Test framework
3164  - Add package and version to the test report XML
3165  - Use optparse to parse gtester-report commandline
3166  - Add subunit support to gtester-report
3167  - Prevent division by zero if no tests
3168
3169 * Bugs fixed:
3170  621782 Crash using gbinding
3171  619945 GConverterOutputStream triggers assertion and corrupts data
3172  621319 more leaked GVariants in GSettings
3173  621168 GKeyFile memory leak on Windows platform
3174  621002 Switch to using variants for timestamps, split out signals
3175  620953 tiny docs addition
3176  618904 Lies in gunixmounts documentation
3177  621702 Correctly initialize GError
3178  611778 minor cleanup of gtester-report
3179  621213 GDBusProxy and well-known names
3180  621034 Rewrite apps test to ensure children are killed
3181  620954 gapplication gvariant simplifications
3182  611869 add subunit out feature to gtester-report
3183  621119 GDBusProxy and objects with no properties
3184  620990 Use Gio's default async implementation again
3185  620952 g_application_register_with_data is an ugly API
3186  621252 GSettings leaks context
3187  618715 fork() in GSettings test cases is problematic 618715
3188  621905 Assume a ref when doing async work
3189  621266 GSettings "context" clarification
3190
3191 * Translation updates:
3192  Chinese
3193
3194
3195 Overview of Changes from GLib 2.25.7 to GLib 2.25.8
3196 ===================================================
3197
3198 * Initial support for dtrace and systemtap profiling:
3199  - mainloop sources can be named
3200  - probes for memory allocation with g_malloc and gslice
3201  - gquark name tracking
3202  - type creation
3203  - object life-cyle (creation, finalization, ref, unref)
3204  - signal creation and emission
3205
3206 * GVariant
3207  - has been fixed to work with the FreeBSD malloc
3208  - added introspection annotations
3209  - new function: g_variant_builder_add_parsed
3210
3211 * GSettings:
3212  - g_settings_set/get_strv functions have lost their length parameter
3213  - g_settings_set_strv accepts NULL
3214  - added introspection annotiations
3215
3216 * GPermission: an abstract interface for representing permissions,
3217   with a minimal implementation named GSimplePermission
3218
3219 * GApplication: a basic application support class, with a D-Bus based
3220   implementation
3221
3222 * Bugs fixed:
3223  619585 glib-compile-schemas asserts on FreeBSD
3224  620384 Annotate GVariant and GSettings _strv() functions
3225  606044 Add support for dtrace/systemtap static markers
3226  620350 add g_variant_builder_add_parsed() API
3227  620349 utf8ify GVariant printer
3228  620767 Typo in GSettings documentation: "INTLTOOL_NOMERGE_RULE"
3229  620312 Fix g_settings_[gs]et_strv() API
3230  620519 GPermission
3231  620582 GPermission needs a simple implementation
3232  620496 GSettings schema compiler should reject invalid paths
3233  620173 missing single header inclusion guards
3234  620265 g_assertion_message_error should take const GError *
3235
3236 * Translation updates:
3237  Esperanto
3238  Galician
3239  Hebrew
3240  Indonesian
3241  Norwegian bokmål
3242  Slovenian
3243  Spanish
3244
3245
3246 Overview of Changes from GLib 2.25.6 to GLib 2.25.7
3247 ===================================================
3248
3249 * NOTE: API/ABI breaks since 2.25.6 release:
3250   - g_dbus_connection_sync{,_sync} takes a new 'reply_type' argument
3251   - GSettingsBackendClass 'list' virtual function changed
3252
3253   GSettings backends and things using GDBus may need to be rebuilt.
3254
3255 * GDBus: many build-related fixes
3256
3257 * GDBus (service): return a DBus error when receiving a method call for
3258   an unknown interface.
3259
3260 * GSettings: fix 'make install' bug in gsettings.m4 for generated schema
3261   files
3262
3263 * GSettings: avoid non-portable use of LC_MESSAGES
3264
3265 * better approach to handling man pages
3266
3267
3268 * Bugs fixed:
3269  619527 please improve docs on g_file_make_symlink
3270  619391 send-with-reply should have expected result signature
3271  618616 Use stack-allocated GVariantBuilders
3272  617004 Build with "--disable-nls" fails under MinGW/Win32
3273  619142 Build fixes (GDBus)
3274
3275 * Updated translations:
3276  Estonian
3277  Galician
3278  Norwegian bokmål
3279
3280 Overview of Changes from GLib 2.25.5 to GLib 2.25.6
3281 ===================================================
3282
3283 * GDBus: introspection improvements
3284 * GDBus: build fixes
3285
3286 * GSettings: GSettingsBackend ABI changed               **** NOTE ****
3287 * GSettings: --uninstall option for schema compiler
3288 * GSettings: new m4 macro with more power
3289 * GSettings: thread support
3290
3291 * rework of file notification on Solaris
3292 * fixes for gold linker
3293
3294 * Bugs fixed:
3295  619038 increase gsettings.m4 power
3296  619031 method-calls-in-thread test failing
3297  618839 Typo at translation message
3298  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
3299  618730 gunixcredentialsmessage.c doesn't compile on GNU/kfreebsd
3300  616314 Make GSettings (partially) threadsafe
3301
3302 * Updated Translations:
3303  Indonesian
3304  Galician
3305  Spanish
3306
3307 Overview of Changes from GLib 2.25.4 to GLib 2.25.5
3308 ===================================================
3309
3310 * GDBus: Fix serialization of empty arrays
3311
3312 * GDBus: Plug various memory leaks
3313
3314 * GSettings: Fix problems with GSETTINGS_CHECK_RULE
3315
3316 * Bugs fixed:
3317  616731 GSETTINGS_CHECK_RULE doesn't work in non-srcdir builds
3318  616864 GSETTINGS_CHECK_RULE doesn't work with multiple files
3319  618615 mem leaks in parse_value_from_blob
3320  618622 Plug some mem leaks in gdbus
3321  618650 Plug a mem leak in gdbusauth
3322  618663 Plug mem leaks in gdbus tests & examples
3323
3324 * Updated translations:
3325  Spanish
3326
3327
3328 Overview of Changes from GLib 2.25.3 to GLib 2.25.4
3329 ===================================================
3330
3331 * GDBus D-Bus support has been merged. This provides an API
3332   to replace dbus-glib
3333
3334 * GVariant no requires strings to be UTF-8. You can use byte
3335   arrays for non-UTF-8 strings.
3336
3337 * GSettings allows to bind string properties to byte arrays
3338
3339 * The schema compiler supports range restrictions
3340
3341 * Bugs fixed:
3342  618051 socket-server|client.c fail to compile under AIX...
3343  616102 GSettings ignores <choice> and <range>
3344  616720 Chunked quark allocation
3345  616877 Several issues with g_socket_receive_message
3346  616892 gio: Add a boxed type for GFileAttributeMatcher
3347  616967 Add g_regex_get_compile_flags() and g_regex_get_match_flags()
3348  617767 g_settings_[gs]et_strv() 'length' argument has missing docs...
3349  617914 gtester-report: cope with binaries with no test cases
3350  617937 output_stream_close vs output_stream_close_async semantics
3351  615494 Connction timeouts produce partially invalid error messages
3352  617823 glib-compile-schemas problems with an out of source build
3353  617947 glib-mkenums: add @valuenum@ support
3354
3355 * Translation updates:
3356  Galicaian
3357  Norwegian bokmål
3358  Shavian
3359  Spanish
3360
3361
3362 Overview of Changes from GLib 2.25.2 to GLib 2.25.3
3363 ===================================================
3364
3365 * New macro: G_GNUC_DEPRECATED_FOR, a variant of G_GNUC_DEPRECATED
3366   that lets you add replacement information (requires gcc 4.5)
3367
3368 * Rename AM_GSETTINGS autoconf macro to GLIB_GSETTINGS
3369
3370 * Rename gschema-compile utility to glib-compile-schemas
3371
3372 * Add support for timeouts in GSocket
3373
3374 * Bugs fixed:
3375  589989 Compilation error on Solaris 9
3376  616648 Change AM_GSETTINGS macro to GLIB_GSETTINGS
3377  587898 I/O timeouts for GSocket
3378  614541 Add G_TYPE_ERROR boxed type for GError
3379
3380
3381 Overview of Changes from GLib 2.25.0 to GLib 2.25.2
3382 ===================================================
3383
3384 * Include a 'gsettings' utility, for commandline access to GSettings
3385
3386 * Install a AM_GSETTINGS autoconf macro similar to AM_GCONF
3387
3388 * GSettings can bind the writability of a key explicitly
3389
3390 * There is now a predefined boxed type for GError
3391
3392 * Bugs fixed:
3393  615379 g_new macros crash if sizeof(struct_type) == 0
3394  616312 Add m4 rule equivalent to GCONF_SCHEMAS_INSTALL
3395  616295 mapping bug for uint64
3396  616216 glib compile from remote directory fails
3397  615960 Fix size passed to connect() for abstract sockets
3398  616432 Crash in gschema-compile
3399  616331 gsettings-schema-convert uses imaginary types
3400  616309 gsettings-schema-convert should output gettext-domain
3401  616384 Add mention of GConfBridge in conversion docs
3402  616311 gschema-compile outputs in current directory
3403  616276 simplify gschema-compile test setup
3404  616156 keys with unnecessary empty options arrays
3405  616405 gsettings missing g_return_if_fail's
3406  616245 Use G_DEFINE_INTERFACE macro
3407  614541 Add G_TYPE_ERROR boxed type for GError
3408
3409 * Updated translations:
3410  Catalan (Valencian)
3411  Galician
3412  Kannada
3413  Spanish
3414
3415
3416 Overview of Changes from GLib 2.24.0 to GLib 2.25.0
3417 ===================================================
3418
3419 * The GSettings framework has been merged. This provides the API to
3420   replace GConf. DConf will provide a backend implementation for it.
3421   GConf will also provide a backend implementation to ease the
3422   transition. We provide utilities to assist with schema conversion
3423   and data migration, as well as a porting guide.
3424
3425 * Translation updates:
3426  Bengali
3427  Catalan
3428  Danish
3429  Gujarati
3430  Marathi
3431  Thai
3432  Traditional Chinese
3433
3434
3435 Overview of Changes from GLib 2.23.6 to GLib 2.24.0
3436 ===================================================
3437
3438 * Bug fixes:
3439  613601 buglet in dup_close_on_exec_fd
3440  584284 g_data_input_stream_read_until_async behaves confusingly
3441  613748 Write errors in middle of copy cause hang
3442  613923 splice_stream_with_progress: wrong error handling
3443  613667 Typo in GObject documentation
3444  613618 gvariant format string docs unclear
3445
3446 * Translation updates:
3447  Basque
3448  Ukrainian
3449  Vietnamese
3450
3451
3452 Overview of Changes from GLib 2.23.5 to GLib 2.23.6
3453 ===================================================
3454
3455 * Class private data:
3456   - support for private data associated with a GTypeClass
3457
3458 * GVariant merge is now complete:
3459   - loading functions and parser merged
3460
3461 * Windows improvements:
3462   - socket fixes
3463   - various build improvements
3464   - removal of GCC/C99isms in favour of portable code
3465   - drop unmaintained Visual Studio 8 support
3466
3467 * Minor API addition:
3468   - g_desktop_app_info_get_filename()
3469
3470 * Bugs fixed:
3471  521707 Class private data
3472  612502 build fails on glib/tests/gvariant.c
3473  612832 [GDesktopAppInfo] New function g_desktop_app_info_get_filename
3474  612702 [PATCH] Fix GSocket-related crash on Windows
3475  612736 Improve the documentation about single include
3476  610858 gvariant test fails sometimes
3477  612327 uninitialized variable
3478
3479 * New translations:
3480  Afrikaans
3481  LowGerman
3482
3483 * Updated translations:
3484  Czech
3485  Finnish
3486  Galician
3487  Greek
3488  Punjabi
3489  Romanian
3490  Serbian
3491
3492
3493 Overview of Changes from GLib 2.23.4 to GLib 2.23.5
3494 ===================================================
3495
3496 * New API addition: g_malloc_n() and friends used to implement an
3497   overflow-safe family of g_new() macros.
3498
3499 * GVariant:
3500  - GVariantBuilder and GVariantIter are now merged.
3501  - The variable arguments API is now merged.
3502  - The parser will be in a future release.
3503
3504 * GIO:
3505  - Remove GUtf8InputStream (which never appeared in a stable release)
3506    for now since it doesn't satisfy the needs of its main intended use
3507    case.  We hope to reimplement this feature in a better form in a
3508    future release.
3509
3510 * Bugs fixed:
3511  609531 missing licence headers
3512  612107 Missing G_FILE_ATTRIBUTE_TRASH_ORIG_PATH
3513  611897 g_io_modules_scan_all_in_directory leaks
3514  608196 Overflow-safe g_new family
3515  611696 gio uses GetAddrInfo which requires special handing on windows 2k
3516  605667 Don't use G_PARAM_SPEC_VALUE_TYPE when we know the pspec is valid
3517  610860 test_g_file_open_readwrite fails if $HOME is unwritable
3518  552912 glib-2.18 /live-g-file/test_copy_move failed when run as root
3519  609813 Renaming a file discards file notes
3520
3521 * Updated translations:
3522  Basque
3523  Brazilian Portuguese
3524  British English
3525  Bulgarian
3526  Catalan
3527  Danish
3528  Estonian
3529  French
3530  German
3531  Hungarian
3532  Italian
3533  Lithuanian
3534  Norwegian bokmål
3535  Portuguese
3536  Russian
3537  Slovenian
3538  Spanish
3539  Swedish
3540  Traditional Chinese
3541
3542
3543 Overview of Changes from GLib 2.23.3 to GLib 2.23.4
3544 ===================================================
3545
3546 * GVariant: The core of GVariant has been merged now, with some
3547  API still to follow.
3548
3549 * GIO:
3550  - There is a new interface GFileDescriptorBased for file descriptor
3551    based IO. GLocalFile{Input,Output}Stream implement it
3552  - Use splice(2) to transfer data between file descriptors without
3553    extraneous copies
3554  - Add a way to request move events from file monitors
3555
3556 * Bugs fixed:
3557  609143 *result_uncertain is never assigned in g_content_type_guess
3558  604086 Use splice(2) when doing local file copies
3559  547890 No move events for GFileMonitorEvent?
3560  568760 nautilus freezes due to a bug in garray.c:322
3561  609962 Add info about the use of G_DEFINE_INTERFACE
3562  609564 g_base64_encode_close docs should mention outbuf size...
3563  610484 g_variant_equal bug
3564  610131 libasyncns does not compile on Solaris 8
3565  609530 missing single header include guards
3566
3567 * Updated translations:
3568  Czech
3569  Estonian
3570  Galician
3571  German
3572  Korean
3573  Polish
3574  Slovenian
3575  Spanish
3576  Traditional Chinese
3577
3578
3579 Overview of Changes from GLib 2.23.2 to GLib 2.23.3
3580 ===================================================
3581
3582 * GLib now has a facility for locks that consume only one bit of
3583   storage inside an integer: g_bit_lock()
3584
3585 * GVariant: The serializer has been merged, with more API to follow
3586
3587 * Bugs fixed
3588  548967 1 bit mutex lock
3589  604967 2.22.3 libasyncns build fails on HP-UX 11.11
3590  608602 G_VALUE_COLLECT_INIT variables shadow those in G_VALUE_COLLECT
3591  608743 Crash in g_hostname_to_ascii visiting certain website in epiphany
3592  599197 array ref and unref functions crash on NULL array.
3593  608159 mem leak in g_io_modules_scan_all_in_directory
3594
3595 * Translation updates
3596  Brazilian Portuguese
3597  Czech
3598  French
3599  Norwegian bokmål
3600  Slovenian
3601  Spanish
3602  Thai
3603
3604
3605 Overview of Changes from GLib 2.23.1 to GLib 2.23.2
3606 ===================================================
3607
3608 * We are now using gcc builtins for atomic operations when available
3609
3610 * g_assert() grew the ability to store assertions in core dumps
3611
3612 * GIO supports lazy loading of GIO modules, and there is a new
3613   gio-querymodule utility that goes along with this.
3614   Packagers will need to adapt to this.
3615
3616 * Threading changes:
3617  - The requirements for g_thread_init() have been relaxed slightly,
3618    it can be called multiple times, and does not have to be the first
3619    call.
3620  - GObject now links to GThread and threads are enabled automatically
3621    when g_type_init() is called.
3622  - Thread-safety issues with boxed types in GObject have been fixed.
3623
3624 * GObject:
3625  - Another bunch of performance work has landed
3626
3627 * GVariant:
3628  - GVariantType has been merged, with the rest of the GVariant
3629    API to follow.
3630
3631 * Bugs fixed:
3632  568760 nautilus freezes due to a bug in garray.c:322
3633  602417 Document lifecycles of GSimpleAsyncResult and friends
3634  604824 crash in Epiphany: Selecting my Slashdot bo...
3635  448888 don't init g_slice for always-malloc
3636  531902 Use GCC atomic buildins for g_atomic*
3637  554887 boxed type registration is not thread safe
3638  586150 unresolved symbols when building glib 2.21.2 on OS X Tiger
3639  589176 row gvalue transform array exponentially
3640  594872 Support storing assertion messages into core dump
3641  602240 Upgrade libasyncns to 0.8
3642  603590 Speed up G_VALUE_COLLECT
3643  604457 gutf8inputstream.c: increasing unknown size pointer
3644  605686 GCharsetConverter doesn't flush
3645  605733 g_memory_output_stream_new violates GObject standards
3646  605883 g_object_new() processes varargs even when there are none
3647  605977 invalid utf-8 conversion in g_local_file_get_parse_name(...
3648  606775 Enable threads by default in gobject
3649
3650 * Translation updates:
3651  Asturian
3652  Basque
3653  Bengali
3654  Bulgarian
3655  Estonian
3656  Norwegian bokmål
3657  Spanish
3658  Thai
3659  Ukrainian
3660
3661
3662 Overview of Changes from GLib 2.23.0 to GLib 2.23.1
3663 ===================================================
3664
3665 * GObject performance work has landed:
3666  - Construction of simple objects is much faster
3667  - Interface lookup is lock-free and constant-time now
3668  - Reduced locking overhead when dealing with types
3669
3670 * GType now has a G_DEFINE_INTERFACE convenience macro
3671
3672 * GIO gained GUtf8InputStream, an input stream that
3673   performs utf-8 validation
3674
3675 * GLib now has byte-swap macros for gsize and gssize
3676
3677 * Bugs fixed:
3678 557151 Determining the newly_constructed boolean in gobject.c...
3679 557100 Performance improvements for GObjectClasses that don't...
3680 501166 Warning message says IA__g_type_init instead of g_type_init
3681 585375 Performance and Contention problems with g_type_class_ref...
3682 587892 Race in GType when instantiating the same class for the...
3683 603270 Input Stream validating utf8
3684 603476 gioenums.h:62: error: comma at end of enumerator list
3685 603540 g_time_val_from_iso8601 uses uninitialised variable
3686 603982 Stack overflow when reading file async with filter
3687 604645 G_DEFINE_INTERFACE_* documentation is not generated
3688 604875 Use of sa_len conflicts with system header
3689 320482 provide G_DEFINE_TYPE like macros for interfaces
3690
3691 * Updated translations:
3692  Estonian
3693  Hebrew
3694  Norwegian bokmål
3695  Vietnamese
3696  Welsh
3697
3698
3699 Overview of Changes from GLib 2.22.x to GLib 2.23.0
3700 ===================================================
3701
3702 * GIO:
3703  - GConverter: a generic interface for stateful conversions of data,
3704    suitable for charset conversion, compression, decompression, regexp
3705    replacement. Concrete implementations are GCharsetConverter,
3706    GZlibCompressor and GZlibDecompressor. GConverterInputStream,
3707    GConverterOutputStream are stream implementations that convert data
3708    while loading or saving it.
3709  - GMounts can now have a 'default location': a path that reflects
3710    the main entry point for the user (e.g. the home directory).
3711  - As a consequence of the compression support, GIO depends on zlib now.
3712
3713 * GObject:
3714  - G_IMPLEMENT_INTERFACE_DYNAMIC: a convenience macro for adding
3715    interfaces to dynamic types.
3716
3717 * GModule:
3718  - The -pthread flag has been added to all gmodule .pc files, because
3719    it is not generally permissible to load modules that are linked
3720    against libpthread if the program has not been compiled with threading
3721    support.
3722
3723 * Bugs fixed:
3724  601637 GUnixFDMessage should contain a GUnixFDList
3725  585566 GSocketListener API issues
3726  572252 Bug in g_file_test() function.
3727  600550 g_app_info_create_from_commandline doesn't treat arguments properly
3728  541236 not detecting exact content type
3729  350200 [PATCH] GTypeModule derived class unref does not unload plugin
3730  589631 Please enclose literal values with double quotes
3731  577711 cross compile check for g++ broken
3732  600620 Support X-GNOME-FullName in GAppInfo
3733  598899 GWin32DirectoryMonitor is broken
3734  593809 Nautilus does not restore the position of the icons on the desktop...
3735  563627 g_get_prgname() threadsafety
3736  600141 Add -pthread to gmodule pkg-config
3737  593856 file and directory monitors don't work when glib is compiled...
3738  324930 Nautilus should disallow copying of symlink to FAT drive early
3739  587300 Deadlock when calling g_cancellable_disconnect in a...
3740  595138 GFile not robust with invalid input
3741  591216 Warning building resolver.o
3742  590016 Does not compile under MinGW32 + Wine
3743  591214 Warnings building gcancellable.o
3744  561998 Have specific entry points (paths) for mounts...
3745  508157 Add G_IMPLEMENT_INTERFACE_DYNAMIC
3746  535159 g_file_has_parent
3747
3748 * Updated translations:
3749  Brazilian Portuguese
3750  Catalan
3751  Estonian
3752  Galician
3753  Norwegian bokmål
3754  Shavian
3755  Slovenian
3756  Spanish
3757  Swedish
3758
3759
3760 Overview of Changes from GLib 2.22.1 to GLib 2.22.2
3761 ===================================================
3762
3763 * GIO:
3764  - Support case-sensitive globs in the shared mime database,
3765    including support for the newer cache format that allows these.
3766    Case-sensitive globs have been introduced in shared-mime-info
3767    version 0.70
3768
3769 * GObject:
3770  - Speed up creation of simple objects
3771
3772 * Bugs fixed:
3773  597194 Typo in _G_TYPE_CVH macro
3774
3775 * Updated translations:
3776  Russian
3777
3778
3779 Overview of Changes from GLib 2.22.0 to GLib 2.22.1
3780 ===================================================
3781
3782 * Bugs fixed:
3783  596064 Test file marked for translation
3784  595972 possibly invalid search in mime_info_cache_dir_add_...
3785  596561 C99 style of declaration of variable in gmessages.c
3786  596314 g_utf16_to_utf8 returns an invalid UTF8 string
3787  596748 g_async_result_get_source_object returns a new ref
3788  593809 Nautilus does not restore the position of the icons...
3789  593775 uses inotify_init1 unconditionally
3790
3791 * Updated translations:
3792  Bengali
3793  Hebrew
3794
3795
3796 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
3797 ===================================================
3798
3799 * Add gdb python macros to make gobject debugging more pleasant
3800
3801 * Bugs fixed:
3802  579050 Allow making selected critical and warning messages non-fatal
3803  594759 g_socket_send_message fails due to invalid sendmsg params
3804  593941 GNetworkAddress skipping addresses when enumerating
3805  594597 Fix build with srcdir != builddir
3806  595619 Include gdb pretty printers
3807
3808 * Changes that might affect bindings:
3809  - The error parameter of g_simple_async_result_set_from_error has been
3810    made const.
3811
3812 * Updated translations:
3813  Assamese
3814  Bengali India
3815  British English
3816  Bulgarian
3817  Catalan
3818  Czech
3819  Danish
3820  Finnish
3821  Galician
3822  Greek
3823  Gujarati
3824  Hindi
3825  Japanese
3826  Kannada
3827  Malayalam
3828  Marathi
3829  Norwegian bokmål
3830  Oriya
3831  Polish
3832  Punjabi
3833  Romanian
3834  Serbian
3835  Simplified Chinese
3836  Slovenian
3837  Spanish
3838  Tamil
3839  Telugu
3840  Thai
3841  Traditional Chinese
3842  Ukrainian
3843  Vietnamese
3844
3845
3846 Overview of Changes from GLib 2.21.5 to GLib 2.21.6
3847 ===================================================
3848
3849 * Minor API additions:
3850   g_mkstemp_full is a variant of g_mkstemp that allows to specify flags
3851   and permissions
3852
3853 * Bugs fixed:
3854  593232 g_rand_new: read no more than requested from /dev/urandom
3855  591995 use saved errno
3856  589491 g_time_val_from_iso8601 doesn't handle some cases
3857  593406 Permissions set to 777 after copying via Nautilus
3858  594034 Add g_mkstemp_full()
3859
3860 * Updated translations:
3861  Assamese
3862  Basque
3863  Brazilian Portuguese
3864  Czech
3865  Estonian
3866  French
3867  German
3868  Hungarian
3869  Italian
3870  Kannada
3871  Malayalam
3872  Marathi
3873  Norwegian bokmål
3874  Oriya
3875  Portuguese
3876  Swedish
3877  Tamil
3878  Turkish
3879
3880
3881 Overview of Changes from GLib 2.21.4 to GLib 2.21.5
3882 ===================================================
3883
3884 * A performance problem with trashing of many files has been fixed
3885
3886 * GResolver now invalidates the libc resolv.conf cache as needed
3887
3888 * Minor api additions:
3889  - g_cancellable_make_pollfd returns a boolean now. And there is a
3890    new function g_cancellable_release_fd that can be used to released
3891    the resources used by a GCancellable.
3892
3893 * Bugs fixed:
3894  589988 Compilation error on Solaris 9 (missing stdint.h)
3895  588901 gtcpconnection.c won't compile
3896  584246 GResolver needs to call res_init() when network state changes
3897  591714 Figure out failure handling for g_cancellable_make_pollfd()
3898  591532 redundent '/' returned from g_file_resolve_relative_path
3899  591378 Use MSG_NOSIGNAL in GSocket if it's available
3900  589649 API documentation migration for Base64 Encoding
3901  591840 configure fails with autoconf 2.64
3902
3903 * Updated translations:
3904  Basque
3905  Brazilian Portuguese
3906  Bulgarian
3907  Danish
3908  Estonian
3909  Finnish
3910  Galician
3911  Gujarati
3912  Hndi
3913  Irish
3914  Japanese
3915  Korean
3916  Norwegian bokmål
3917  Polish
3918  Portuguese
3919  Punjabi
3920  Spanish
3921  Swedish
3922  Telugu
3923  Traditional Chinese
3924  Thai
3925
3926
3927 Overview of Changes from GLib 2.21.3 to GLib 2.21.4
3928 ===================================================
3929
3930 * GTree is now refcounted
3931
3932 * Bugs fixed:
3933  587938 Undocumented limitation for g_str_equal
3934  587773 refcounts for GTree
3935
3936 * Updated translations:
3937  French
3938  Hebrew
3939  Norwegian bokmål
3940  Spanish
3941  Swedish
3942  Traditional Chinese
3943  Ukrainian
3944
3945
3946 Overview of Changes from GLib 2.21.2 to GLib 2.21.3
3947 ===================================================
3948
3949 * GMappedFile is refcounted now
3950
3951 * Mainloop: It is now possible to set per-thread default contexts,
3952   with g_main_context_push_thread_default.
3953
3954 * glib-mkenums supports a @basename@ substitution, in addition
3955   to @filename@.
3956
3957 * GIO:
3958  - Vfs implementations can support storing of per-file metadata.
3959  - GCancellable can now be subclassed.
3960  - Unmount and eject methods now optionally allow interaction, via
3961    variants that take a GMountOperation object.
3962
3963 * Bugs fixed:
3964  556706 Inconsistent help arguments -h, -?
3965  579449 FileChoosers no longer work if an idle handler is active
3966  579933 mainloop FD_CLOEXEC has a race condition
3967  579984 alternate GMainContext support
3968  585937 gio/gsocket.c (glib 2.21.2) does not compile (Windows/mingw)
3969  586675 Runtime library location
3970  586797 Add GCancellables to GSocket ops
3971  586868 g_filename_complete_get_completions doesn't always return...
3972  587415 g_resolver_lookup_by_name_finish returns a freed list
3973  587434 regression tests fail, at least on x86_64
3974  586928 Avoid g++ warning in g_error()
3975
3976 * Updated translations:
3977  Estonian
3978  Hebrew
3979
3980
3981 Overview of Changes from GLib 2.21.1 to GLib 2.21.2
3982 ===================================================
3983
3984 * GIO:
3985   - g_socket_speaks_ipv4 is a new function to check if a socket can
3986     speak IPv4.
3987   - g_socket_listener_add_address gained a new effective_address out
3988     parameter.
3989   - GIO now returns special icons for XDG user directories, by the
3990     name folder-music, folder-documents, etc.
3991   - GIO gained support for starting/stopping of drives, which can be used
3992     in connection with external hard disk enclosures, disk arrays, iSCSI
3993     devices, etc. See g_file_start/stop_mountable.
3994
3995 * GLib:
3996  - g_reload_user_special_dirs_cache is a new function to force GLib to
3997    reload the XDG user directory mapping from disk.
3998
3999 * Bug fixes:
4000  584574 glib compile failure on Mac OS X with gunixresolver.c and...
4001  585566 GSocketListener API issues
4002  584255 Incorrect freeing of thread pool in GThreadedSocketService
4003  585088 g_string_chunk_insert_len stops at nul bytes
4004  585360 Monitor fontconfig configuration files using gio causes m...
4005  580103 Terminal starts on Display :0.0 when started on :0.1 in D...
4006  580301 network: a few issues on old darwin
4007  583398 SRV weight sorting is incorrect
4008  584176 build fixes on FreeBSD
4009  585189 g_cancellable_reset() must be called in same thread as g_...
4010  585280 compilation dies on gio/gsocket.c, needs sys/uio.h to con...
4011  585281 gio/gunixfdmessage.c needs sys/types.h for platforms that...
4012  585478 don't leak the inotify fd
4013  585575 g_socket_listener_add_inet_port() doesn't do the right thing
4014  585599 g_socket_listener_add_socket() consumes the socket
4015  585676 GEmblem doesn't reference its 'icon' if that is set as a ...
4016  585717 "bytes" nautilus translation to french is not shown in th...
4017  541276 XDG directories should have their own icons
4018  585726 Grammatical error in GList documentation
4019  585520 Wrong warning option in documentation
4020  585673 GNOME Goal: Remove deprecated glib symbols
4021  585591 Starting/stopping drives
4022
4023 * Updated translations:
4024  Bengali India
4025  Norwegian bokmål
4026
4027
4028 Overview of Changes from GLib 2.21.0 to GLib 2.21.1
4029 ===================================================
4030
4031 * GIO:
4032  - Support for network IO has been added, including a low-level
4033    socket API and a high-level API for network connections and
4034    services.
4035  - Support for read-write access with GIOStream and its subclasses.
4036  - GMount gained a pre-unmount signal.
4037
4038 * Bug fixes:
4039  576104Implement GMount::pre-unmount
4040  578769 implement GWinHttpFileInputStream::close_fn
4041  582856 gsocket.c doesn't compile on Solaris
4042  569375 g[u]intptr undocumented
4043  573246 [FIX] g_desktop_app_info_dup() can access NULL pointer
4044  575013 g_cancellable_push_current() does not allow NULL
4045  577884 live-g-file.c:461: error: format ‘%d’ expects type ...
4046  578499 g_output_stream_splice and stream closing with gnio strea...
4047  579558 Application employing gvfs crashes with only libgvfscommo...
4048  583001 SIGPIPE (grr!)
4049  583061 Please add convenience function to connect to machines by...
4050  583198 typo in error message
4051  583206 use g_set_error_literal where appropriate
4052  583229 void function g_async_initable_init_async returns value
4053  583324 locking problem in g_main_context_iterate()
4054  583408 void function g_socket_control_message_serialize returns ...
4055  578786 wrong and confusing error message
4056  583205 g_inet_address_to_bytes has no length outparam
4057  583196 mem leak in keyfile test
4058  583663 GSocketType enum ends with a comma
4059  569024 Make g_error_new_valist public
4060  569376 missing G_G[U]INTPTR_FORMAT
4061  580347 off-by-1 bug in GWinHttpFile
4062
4063 * Updated translations:
4064  Oriya
4065  Spanish
4066  Valencian-Catalan
4067
4068
4069 Overview of Changes from GLib 2.20.x to GLib 2.21.0
4070 ===================================================
4071
4072 * GIO:
4073  - New helper functions g_cancellable_connect/disconnect to avoid
4074    race conditions when connecting to the "cancelled" signal on
4075    GCancellable.
4076  - New types and methods for dealing with IPv4 and IPv6 addresses (and
4077    UNIX domain socket addresses under UNIX). This does not include code
4078    for actual socket I/O.
4079  - GResolver provides asynchronous and cancellable APIs for resolving
4080    hostnames, reverse lookup of IP addresses and resolving SRV records.
4081
4082 * Glib now provides hash and comparison functions for int64 and double
4083   types, suitable for use with GHashTable.
4084
4085 * GArray, GPtrArray and GByteArray can be ref counted now, and have
4086   boxed types.
4087
4088 * Bugs fixed:
4089  572844 Helper for GCancellable::cancelled connect/disconnect
4090  578363 goption docs should be improved
4091  548466 async/cancellable DNS resolver
4092  579830 param spec strings should use P_()
4093  579862 requesting xattr::foo ends up calling getxattr(..., user...
4094  580453 Hash and equal functions for gint64 and gdouble
4095  580450 Reference counting and boxed types for arrays
4096  580194 gresolver doesn't build on Solaris
4097  580301 network: a few issues on old darwin
4098  580299 network: include sys/types.h before sys/socket.h to insur...
4099  572508 gmarkup speedup
4100  580546 g_strtoull() referenced in documentation...
4101  580656 g_key_file_set_string_list erroneously asserts list != NULL
4102  579272 leaks in g_simple_async_result_set_op_res_gpointer
4103
4104
4105 * Updated translations:
4106  Catalan (ca)
4107  Pashto (ps)
4108  Spanish (es)
4109
4110
4111 Overview of Changes from GLib 2.20.0 to GLib 2.20.1
4112 ===================================================
4113
4114 * Bug fixes:
4115  575555 Use fsync() when replacing files to avoid data loss on
4116  575708 runaway inotify madness
4117  575270 GVolumeMonitor::mount-pre-unmount not being emitted
4118  577128 glib make check Failed to execute child process...
4119  573673 Always show "backup" directories
4120  578369 g_time_val_from_iso8601() parses timezones incorrectly
4121  578002 Fix a small typo in GFile docs
4122  578017 G_DEFINE_TYPE_EXTENDED docs
4123
4124 * Updated translations:
4125  Arabic
4126  Assamese
4127  Basque
4128  Bularian
4129  Brazilian Portuguese
4130  British English
4131  Catalan
4132  Danish
4133  French
4134  Galician
4135  German
4136  Greek
4137  Hungarian
4138  Italian
4139  Japanese
4140  Kannada
4141  Lithuanian
4142  Malayalam
4143  Norwegian bokmål
4144  Oriya
4145  Polish
4146  Punjabi
4147  Russian
4148  Simplified Chinese
4149  Slovenian
4150  Spanish
4151  Swedish
4152  Tamil
4153
4154
4155 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
4156 ===================================================
4157
4158 * Base64 support: Avoid integer overflows. CVE-2008-4316
4159
4160 * Bugs fixed:
4161  574019 GChecksum: document and guarantee hex characters in lower case
4162  573454 Unable copy/move files to directories symlinked to gvfs share
4163  561172 gnome-open fails on local URIs with anchors
4164  573970 crash in gunixvolumemonitor:update_mounts when unmounting
4165  573843 g_get_current_dir returns non-absolute path
4166
4167 * Updated translations:
4168  Assamese (as)
4169  Bengali (bn_IN)
4170  Czech (cs)
4171  Hindi (hi)
4172  Italian (it)
4173  Japanese (ja)
4174  Lithuanian (lt)
4175  Malayalam (ml)
4176  Marathi (mr)
4177  Oriya (or)
4178  Polish (pl)
4179  Romanian (ro)
4180  Telugu (te)
4181
4182
4183 Overview of Changes from GLib 2.19.8 to GLib 2.19.9
4184 ===================================================
4185
4186 * GMarkup:
4187  - Considerable speedup
4188
4189 * GIO
4190  - Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing
4191    the destination of a copying operation as if it did not exit before.
4192  - Be more careful when classifying files as desktop files
4193  - Support desktop file key X-GIO-NoFuse which disables the use
4194    of fuse pathnames for %u and %U arguments
4195
4196 * Bugs fixed:
4197  572672 glib/gthread.c: argument is different type
4198  572464 Doc for g_file_get_contents
4199  572151 “it's” and “its” confused in docs and comments
4200  570501 g_win32_get_system_data_dirs uses invalid conversion...
4201  167569 g_string_append_printf crashes on win32 when used...
4202  572508 gmarkup speedup
4203  560564 Replacing a symlink with its linked file truncates... 
4204  549298 impossible to copy files with p (pipe) flag
4205  543183 Clarify docs for g_file_has_prefix
4206  540461 g_memory_output_stream_get_data_size() doesn't behave...
4207  573462 GEmblemedIcon leak
4208  573421 Clarify message format in GMountOperation
4209  573658 Deadlock in giomodule.c
4210  556706 Inconsistent help arguments -h, -?
4211  573527 Wrong shell to run config.status in Makefile.in.in
4212  573128 A couple of typos in GObject documentation
4213
4214 * Updated translations:
4215  Catalan (ca)
4216  British English (en_GB)
4217  Spanish (es)
4218  Basque (eu)
4219  Finnish (fi)
4220  French (fr)
4221  Gujarati (gu)
4222  Hebrew (he)
4223  Hungarian (hu)
4224  Korean (ko)
4225  Maithili (mai)
4226  Norwegian bokmål (nb)
4227  Dutch (nl)
4228  Portugese (pt)
4229  Swedish (sv)
4230  Thai (th)
4231  Traditional Chinese (zh_HK)
4232  Traditional Chinese (zh_TW)
4233
4234
4235 Overview of Changes from GLib 2.19.7 to GLib 2.19.8
4236 ===================================================
4237
4238 * GIO: Fix missing exports of new API
4239
4240 * Fix strict aliasing warnings and violations to make Glib work
4241   with gcc 4.4
4242
4243
4244 Overview of Changes from GLib 2.19.6 to GLib 2.19.7
4245 ===================================================
4246
4247 * GIO
4248  - GFile gained an attribute for the actual file size in bytes
4249  - GMountOperation gained an "aborted' signal that allows to abort
4250    a mount operation from the backend side
4251
4252 * Bugs fixed:
4253  523742 Use noinst for non-installable libraries
4254  566747 URIs opened with firefox %u load as local files
4255  541225 Can't compile gio on AIX duplicate case value in gioerror.c
4256  571598 GAsyncResult with NULL gobject
4257  505042 add file attribute for actually used file size in bytes
4258
4259 * Updates translations:
4260  Basque (eu)
4261  Gujarati (gu)
4262  Italian (it)
4263  Japanese (ja)
4264  Norwegian bokmål (nb)
4265  Dutch (nl)
4266  Portugese (pt)
4267  Thai (th)
4268  Vietnamese (vi)
4269
4270
4271 Overview of Changes from GLib 2.19.5 to GLib 2.19.6
4272 ===================================================
4273
4274 * New format macro to print goffset data: G_OFFSET_FORMAT
4275
4276 * GIO: 
4277  - Add a GFilter{Input,Output}Stream::close-base-stream properties which
4278    determine whether the base stream will be closed when the filter stream
4279    is finalized.
4280  - g_data_input_stream_read_line and ..._read_until have asynchronous
4281    variants now.
4282
4283 * Bugs fixed:
4284  568294 A wrong reference in the description of g_bookmark_file_...
4285  563141 RFE: define G_OFFSET_FORMAT
4286  569105 g_time_val_to_iso8601() assumes time_t==long
4287  568394 dropping the last reference to a stream filter closes...
4288  568741 g_buffered_input_stream_fill_async doesn't work
4289  568723 g_buffered_input_stream_fill_async doesn't take count == -1
4290  568575 _async functions for GDataInputStream
4291
4292 * Updated translations:
4293  Bulgarian (bg)
4294  Finnish (fi)
4295  Hungarian (hu)
4296  Oriya (or)
4297  Swedish (sv)
4298  Traditional Chinese (zh_HK)
4299  Traditional Chinese (zy_TW)
4300
4301
4302 Overview of Changes from GLib 2.19.4 to GLib 2.19.5
4303 ===================================================
4304
4305 * Update included PCRE to 7.8
4306
4307 * g_base64_decode_inplace: New function to do base64 decoding in place
4308
4309 * Bugs fixed:
4310  567138 get_package_directory_from_module() does not free ...
4311  566569 gregex docs clarification
4312  566573 g_match_info_fetch_pos docs
4313  564728 Add function to decode base64 encoded data in place
4314  567838 G_STRUCT_OFFSETOF fails to compile under icc 9.1
4315  567977 textdomain() macro should not return NULL ...
4316  512779 --disable-regex breaks compilation
4317  566770 error code 0 for Too many open files is useless
4318  565484 g_content_type_guess passes non-UTF8 text to XDG ...
4319
4320 * Updated translations:
4321  Catalan (ca)
4322  Spanish (es)
4323  Italian (it)
4324  Swedish (sv)
4325
4326  
4327 Overview of Changes from GLib 2.19.3 to GLib 2.19.4
4328 ===================================================
4329
4330 * GIO:
4331   - Use O_NOATIME when sniffing mimetypes
4332   - Add a convenience method to check if a GSimpleAsyncResult
4333     is valid
4334
4335 * Bugs fixed:
4336  560676 function access for g_threads_supported
4337  565905 There is no g_context_group_set_translation_domain
4338  564210 SUN Studio 12 has supported visibility attribute
4339  565136 GObject's "notify" signal parameters are wrong in gtk-doc
4340  565831 error in interface creation sample
4341  566348 g_file_open_tmp uses the wrong g_mkstemp on win32
4342  566064 Add NOATIME flag to query_info_flags
4343  566170 g_async_result_verify_source_object
4344
4345 * Updated translations:
4346  Spanish (es)
4347  Norwegian bokmål (nb)
4348  Brazilian Portugese (pt_BR)
4349  Simplified Chinese (zh_CN)
4350
4351
4352 Overview of Changes from GLib 2.19.1 to GLib 2.19.3
4353 ===================================================
4354
4355 * Bugs fixed:
4356  508021 Add support for the CRIS and CRISv32 architectures
4357  526320 should not list mounts that the user doesn't have permission to use
4358  558458 Cannot build gio tests on Solaris using SUN cc
4359  555465 GUnix{Input,Output}Stream lacks fd/close_fd_at_close property
4360  558298 Hide ecryptfs mounts
4361  515777 incorrect date&time on copy
4362  562452 Ensure we return G_IO_ERROR_CANCELLED if cancelling
4363         g_simple_async_result_run_in_thread
4364  473150 g_type_module_use inconsistently increases the use
4365         counter in case of error
4366  563150 G_GU?INT*_MODIFIER/FORMAT docs
4367  563156 Document printing and scanning gunichar values
4368
4369 * Updated translations:
4370  Hebrew (he)
4371  Italian (it)
4372  
4373
4374 Overview of Changes from GLib 2.19.0 to GLib 2.19.1
4375 ===================================================
4376
4377 * GIO: 
4378   - g_icon_to_string, g_icon_new_for_string: GIcon serialization support
4379   - G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
4380   - g_app_info_get_commandline: new function to get the full commandline
4381   - g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New functions 
4382     to 'shadow' mounts (i.e. hide them from the UI when they already
4383     have a different representation, like a bookmark) 
4384
4385 * Bugs fixed:
4386  556186 gpoll.h breaks gmain.h inclusion
4387  557087 mem leak in g_content_types_get_registered
4388  556921 gpoll.h breaks hal compilation
4389  557210 g_compute_checksum_for_* asserts with less than 2 bytes
4390  558381 Add support for compile time assertions
4391  558185 'parent' variable in g_local_file_get_child_for_display_name()
4392         hits g_object_unref(NULL) assertion
4393  558513 g_warn_if_fail FIXME in gtestutils
4394  558672 NULL key lookup using g_hash_table_lookup_extended() 
4395  555740 gicon serialization
4396  557182 preview functionality
4397  528320 Incorrect icons displayed for files with custom mimetype icons
4398  556910 Memory leak: sub
4399  557592 Missing include in gwinhttpfile.c
4400  556415 Crash on Windows 2000 in g_winhttp_vfs_init()
4401  555935 Clarify the mechanism of overwriting properties
4402  552776 ac_cv_func_posix_getgrgid_r not mentioned
4403  559448 GObject Reference Manual (typo)
4404  561212 GFileReadMoreCallback API doc refers to non-existant function
4405  560569 gkeyfile doesn't use the set list_separator in some cases
4406  560568 gkeyfile docs buglet
4407  559413 g_option_group_set_error_hook docs buglet
4408  562378 callback return value not respected for callback option
4409         with no arg
4410  559110 Do not include libintl.h after glibintl.h
4411  557603 carbon check output misplaced
4412  562544 g_key_file_get_string and g_key_file_get_value
4413         documentation does not explain the difference
4414  547264 Missing "no flags" flag
4415  562638 GDebugKey key member should be const
4416  562639 g_parse_debug_flags() parsing "help"
4417  562549 g_byte_array_free should tell how free data
4418  559452 GObject Reference Manual (typo)
4419  559462 GObject Reference Manual (typo)
4420  559517 GObject Reference Manual (typo)
4421  562538 GObject interface tutorial shouldn't finalise with
4422         "Please forget everything"
4423  561352 Leak of icon description
4424  561375 Leaks mountpoint description
4425  561807 inotify_sub.c: dup_dirname() fails to remove trailing '/'
4426  562393 g_buffered_input_stream_read_byte broken if data available
4427  541715 win32 : patch for warnings and signature problems in recent code
4428  547481 g_data_input_stream_read_line behaves not as stated in the docs
4429  548163 Nautilus displays wrong error message for too long file names
4430  559633 gtk_image_new_from_gicon does not always work for .desktop files
4431  555486 – No way to recover command line from GAppInfo
4432
4433 * Translation updates:
4434  Spanish (es)
4435  Ukrainian (uk)
4436
4437
4438 Overview of Changes from GLib 2.18.1 to GLib 2.19.0
4439 ===================================================
4440
4441 * Rewrite GHashTable to use open addressing with quadratic probing instead 
4442   of chaining. This has the potential to reduce memory fragmentation 
4443   significantly, while being slightly faster due to better locality and 
4444   no need to call alloc/free functions for nodes. Benchmarks suggest it 
4445   also uses less memory overall.
4446
4447 * Make g_poll available as public api
4448
4449 * New macros g_assert_error and g_assert_no_error to assert 
4450   that a GError is set or unset
4451
4452 * g_cancellable_make_pollfd: New method to make a GPollFD for a cancellable
4453
4454 * g_app_info_can_delete, g_app_info_delete, g_app_info_reset_type_associations:
4455   New functions to clean up app infos and content types
4456
4457 * When launching applications, always pass fuse file:// uris when possible,
4458   and let gio convert such uris back to gio uris.
4459
4460 * Bugs fixed:
4461  505361 gunixinputstream.c assumes poll() available
4462  509446 portable blocking gio cancellation
4463  553820 gpoll.c: undeclared identifier
4464  553724 python interpretter path not patched in correctly
4465  553857 gbacktrace.h requires signal.h
4466  553447 g_assert_no_error()
4467  554092 glib doesn't return G_FILE_ERROR_NOENT et al on OS X
4468  528670 Always pass file:/// uri's in GAppLaunchContext
4469  555224 Improve g_format_size_for_display doc
4470  555309 giochannel breaks on error
4471  554790 g_convert() misbehaves with winiconv versions
4472  555314 mem leak in gmarkup
4473  555313 GFileAttribute boxed type get_type function should...
4474  552861 glib-2.0.m4 calls system(3) without storing its result
4475  554557 Patch to fix gcc warnings about missing format specifiers
4476  552107 Small libtool fixes
4477  551355 Make glib build with libtool 2.2
4478  555311 format not a string literal and no format arguments
4479  556101 static mutex yields warnings with g++
4480  556186 gpoll.h breaks gmain.h inclusion
4481  526456 Open addressing in GHashTable
4482  553426 cancellable clarifications
4483  545350 GAppInfo deletion
4484  545351 Reset associations for content type
4485  552168 volume's mount not mounted after g_volume_mount_finish
4486  554970 segfault when update-desktop-database is not available...
4487  554745 GFileAttributeInfoList should be boxed
4488  555121 Improved build-time handling of gio module-dir
4489  555711 Wrong fallback order of mimetype icons
4490  555331 Deprecate adoption of mounts
4491  556335 make check fails in abicheck.sh
4492  556334 Warning when building without selinux support
4493  556422 g_file_enumerator_next_file: unclear...
4494
4495 * Updated translations:
4496  Arabic (ar)
4497  Danish (da)
4498  Polish (pl)
4499  Brazilian Portugese (pt_BR)
4500  Romanian (ro)
4501  Russian (ru)
4502
4503
4504 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
4505 ===================================================
4506
4507 * Bugs fixed:
4508  550433 g_test_init doesn't recognize --help
4509  523463 Core dump in gmain.c:2482:IA__g_main_context_check
4510  551228 G_STRFUNC on recent Sun compiler should be expanded...
4511  551410 gtestutils.c: using printf without prototype
4512  551731 g_date_set_time[_t] docs should mention what timezone
4513  548321 <string.h> is not included in gi18n-lib.h
4514  551149 xdgmime mem leak
4515  550647 synchronous pipe I/O when reading mount reply
4516  551887 Docs for g_desktop_app_info_new_from_filename aren't...
4517  551681 g_content_type_guess() too naive with filenames
4518  552352 g_app_info_launch doesn't work if "Path" key...
4519  551408 gmodule.def generated to builddir...
4520  552359 g_file_info_get_icon should return GThemedIcon, and...
4521
4522 * Updated translations:
4523  Arabic (ar)
4524  Bengali India (bn_IN)
4525  British English (en_GB)
4526  Hindi (hi)
4527  Croatian (hr)
4528  Korean (ko)
4529  Oriya (or)
4530  Turkish (tr)
4531  Telugu (te)
4532
4533
4534 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
4535 ===================================================
4536
4537 * Win32:
4538   - rework the g_poll() implementation to match poll() semantics more closely
4539
4540 * Bugs fixed:
4541  324234 Using g_io_add_watch_full() to wait for connect() to return...
4542  548278 Async GETs connections are always terminated unexpectedly...
4543  500246 Bug fixes for giowin32
4544  523939 Example program for GValue
4545  550096 GBookmarkFile parser is not forward compatible
4546  550040 Move GString, rand and printf tests to the unit test framework
4547  550104 trivial documentation fix for g_get_home_dir
4548  548988 g_file_replace fails on Windows when the target file exists
4549  550059 Wrong docs for g_emblemed_icon_add_emblem
4550  548800 Missing a g_object_get_type function
4551  550056 Missing documentation for g_emblemed_icon_get_emblems
4552
4553 * Updated translations:
4554  Bulgarian (bg)
4555  Czech (cs)
4556  German (de)
4557  Estonian (et)
4558  Basque (eu)
4559  French (fr)
4560  Hebrew (he)
4561  Hungarian (hu)
4562  Italian (it)
4563  Japanese (ja)
4564  Lithuanian (lt)
4565  Maithili (mai)
4566  Dutch (nl)
4567  Swedish (sv)
4568  Thai (th)
4569  Ukrainian (uk)
4570  Vietnamese (vi)
4571
4572
4573 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
4574 ===================================================
4575
4576 * More fixes for 64-bit Windows
4577
4578 * GIO
4579  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
4580
4581 * Bugs fixed:
4582  546329 API docs for g_utf8_normalize() are incorrect
4583  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
4584  547200 g_utf8_find_next_char() issues
4585  547637 unconditional #include of sys/statfs.h in configure
4586  547337 G_DISABLE_DEPRECATED breaks tests build
4587  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
4588  502498 Test framework assertion failures should follow gcc
4589  546371 Improve docs re g_file_monitor
4590  546483 GThemedIcon:use-default-fallbacks is not readable without...
4591  546132 GFileIcon is bindings-unfriendly
4592  542156 zfs mount in home directory shown on nautilus desktop 
4593  535124 umask 002 not being applied for new directories...
4594  547080 g_file_copy leaks expected errors
4595  546582 Callbacks from GFileMonitor present a GFile...
4596  547262 Missing link in the docs
4597
4598 * Updated translations:
4599  Arabic (ar)
4600  Catalan (ca)
4601  Spanish (es)
4602  Basque (eu)
4603  Finnish (fi)
4604  Galician (gl)
4605  Hebrew (he)
4606  Marathi (mr)
4607  Norwegian bokmål (nb)
4608  Portugese (pt)
4609  Brazilian Portugese (pt_BR)
4610  Swedish (sv)
4611  Thai (th)
4612
4613
4614 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
4615 ===================================================
4616
4617 * Fix problems on 64-bit Windows
4618
4619 * g_markup_context_get_user_data: New function to access
4620   the user_data outside of callbacks
4621
4622 * GIO
4623  - g_mount_guess_content_type_sync: synchronous version of
4624    g_mount_guess_content_type
4625  - GEmblem: A GIcon implementation that adds emblem-related
4626    metadata to icons
4627  - GEmblemedIcon: A GIcon implementation that can add emblems
4628    to icons
4629
4630 * Bugs fixed:
4631  544088 option_test_LDADD is left in tests/Makefile.am
4632  544465 gmarkup makes it hard to use pre-rolled parsers
4633  545485 Implicit declaration of utime()
4634  545798 "Since: 2.18" mark is missing in g_set_error_literal...
4635  544140 fam-helper 64-bit issue
4636  529694 SELinux context setting support
4637  545157 wrong/no list of "open with" applications for .cc...
4638  545203 gfile.c: argument is different type
4639  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
4640  544177 Fix trivial cut and paste error in documentation
4641  545395 Language tweak for g_value_set_string* docs
4642  541036 Gnumeric crashes when trying to open Desktop...
4643  546079 leak in xdgmime
4644  545395 Language tweak for g_value_set_string* docs
4645  546017 Don't copy attributes when copying a symlink
4646
4647 * Updated translations:
4648  Arabic (ar)
4649  Estonian (et)
4650  Galician (gl)
4651  Italian (it)
4652  Japanese (ja)
4653  Korean (ko)
4654  Norwegian bokmål (nb)
4655  Pashto (ps)
4656  Portugese (pt)
4657
4658
4659 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
4660 ===================================================
4661
4662 * GIO:
4663  - New API to handle content types: g_mount_guess_content_type,
4664    g_content_type_guess_for_tree.
4665  - Export the eject-button signal on the volume monitor class
4666  - New API to enable out-of-process volume monitors: 
4667    g_volume_get_activation_root
4668
4669 * GObject:
4670  - New API to handle signals without slots in the class structure:
4671    g_signal_new_class_handler, g_signal_override_class_handler   
4672
4673 * Internationalization:
4674  - Add an NC_ macro that is a no-op equivalent of C_
4675
4676 * GMarkup:
4677  - Add two new functions g_markup_parse_context_push,
4678    g_markup_parse_context_pop to support "subparsers"
4679
4680 * Bugs fixed:
4681  541208 Functions to easily install and use signals without...
4682  541507 Ambiguous description of assigned characters in the...
4683  543040 async reading on dummy file will crash on GIO_USE_VFS=local
4684  543560 enable gio-FEN back-end warnings on Solaris will crash...
4685  528317 GRegex does not allow recursion limit
4686  337518 GMarkup: Subparser support
4687  541794 drive-eject-button signal
4688  541793 activation root for volumes
4689  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
4690  428048 2 of 51 tests fail on Solaris
4691  542332 small fix for error message in GMarkup
4692  482413 get_contents_stdio -- overflow and memory corruption
4693  406120 g_ascii_strtod
4694  334234 "printf" format error
4695  536996 Missing noop i18n macro equivalent to C_
4696  540616 mem leak in filechooser button
4697  539229 gobject-query calls itself query
4698  521589 [RFC] gobject documentation should mention Vala
4699  543168 Description of G_SLICE=debug-blocks discourages its use
4700  543220 Case collision on gio-extension-points.html
4701  530759 update the gobject tutorial to the XXI century
4702  535223 gbookmark file inefficiency ...
4703  543504 crash in Epiphany Web Browser: Opening local file
4704
4705 * Updated translation:
4706  German (de)
4707  Estonian (et)
4708  Pashto (ps)
4709  Albanian (sq)
4710  Thai (th)
4711  Traditional Chinese (zh_HK)
4712  Traditional Chinese (zh_TW)
4713
4714
4715 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
4716 ===================================================
4717
4718 * PCRE
4719  - fix for CVE-2008-2371 
4720
4721 * Bugs fixed:
4722  538119 glib's mainloop leaks a pipe to sub-processes
4723  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
4724  539067 The document g_io_channel_win32_new_fd() says...
4725  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
4726  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
4727  539074 Cannot get exit status with g_spawn_command_line_sync
4728  316221 G_LOCK warns about breaking strict-aliasing rules
4729  539770 migrate gstrfunc unit tests to gtest
4730  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
4731  538044 unconditional use of LC_MESSAGES
4732  540545 Monotonic time and timer offset
4733  535947 want g_set_error_literal
4734  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
4735  536252 GFileEnumerator should allow access to the containing GFile
4736  538362 Get Win32 icons back in the file chooser
4737  540802 g_list_prepend doesn't concat lists
4738  540423 unrecoverable error after g_seekable_truncate
4739  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
4740  539090 g_content_type_from_mime_type() should unalias
4741  540331 g_file_append_to () documentation: can return NULL
4742  534639 add g_desktop_app_info_new_from_keyfile
4743  536733 gio build failure on Irix
4744  536160 Add g_file_monitor()
4745  538127 FileChooser broken on win32
4746  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
4747  538564 gio should have gio-types.h
4748  540047 glib-genmarshal.c: '#include <io.h>' is too before
4749
4750 Updated translations:
4751  Korean (ko)
4752  Occitan (oc)
4753
4754
4755 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
4756 ===================================================
4757
4758 * New function: g_utime(), a gstdio wrapper for utime()
4759
4760 * New functions: g_dgettext() and g_dngettext(), wrappers
4761   for corresponding gettext functions with added functionaliy
4762
4763 * Support the latest version of the shared-mime spec, including
4764   icons for mime types 
4765
4766 * New function: g_themed_icon_prepend_name()
4767
4768 * Bugs fixed: 
4769  535418 Please document which glib version defines goffset
4770  528715 Misprint in the description of the interface g_type_class_add_private
4771  528714 Misprint in the description of the interface g_param_spec_flags
4772  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
4773  530527 Misprint in the description of the interface 
4774         g_cclosure_marshal_VOID__FLAGS
4775  530526 Misprint in the description of the fields 'class_init' and 
4776         'class_finalize' of the structure GTypeInfo
4777  528719 Improvement to the documentation of the "g_object_connect" interface
4778  528172 gtk_signal_handlers_unblock_* functions return value
4779         amount of matched signals, not amount of actually unblocked
4780  528717 Misprint in the description of the parameter 'type_id' for 
4781         the interface g_type_register_fundamental
4782  528716 Misprint in the description of the parameter 'iface_data' for 
4783         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
4784  537555 GObject instantiation not thread safe
4785  537546 'desktop' shortcut in file chooser looks like a generic folder
4786  537392 Additional colon in xattr name
4787  536641 Filesystem querying in gio does not list AFS and autofs file systems
4788  528600 g_dummy_file_get_parent("scheme://example.com/")
4789  503071 Application direction changes to right to left even if theres no 
4790         translation
4791  502511 g_assert_cmphex prints invalid message
4792  338162 Use po/LINGUAS
4793  314453 Nautilus crashes in Solaris when browsing the attached file
4794  529321 make check fails in glib/pcre
4795  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
4796         fallback to $HOME/Desktop if xdg-user-dirs is not in use
4797  498732 g_key_file_to_data cannot fail
4798  511367 add g_file_make_directory_with_parents
4799  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
4800         gcc 4.0 or newer
4801  536158 also bump GHashTable version when a node is removed via
4802         g_hash_table_iter_remove()/g_hash_table_iter_steal()
4803  531403 g_utf8_collate broken on Mac
4804  535628 test/patterntest.c still includes gpattern.h directly
4805  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
4806
4807 * Translation updates:
4808  Arabic (ar)
4809  German (de)
4810  Italian (it)
4811  Norwegian bokmål (nb)
4812  Thai (th)
4813
4814
4815 Overview of Changes from GLib 2.16.x to GLib 2.17.0
4816 ===================================================
4817
4818 * Update to Unicode 5.1
4819
4820 * Update included libcharset to the one shipped with libiconv 0.12
4821
4822 * Update included PCRE to 7.7
4823
4824 * Enforce that only toplevel headers are directly included.
4825   This is turned on by default for GObject and GIO. To turn
4826   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
4827
4828 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
4829
4830 * On Solaris, use FEN for file monitoring in GIO
4831
4832 * Use the GIO_EXTRA_MODULES environment variable to find
4833   additional GIO modules 
4834
4835 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
4836   function attribute
4837
4838 * g_checksum_reset: New function to reset the state of a GChecksum 
4839
4840 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
4841   rate at which events are reported
4842
4843 * g_file_query_file_type: New utility function to query the type of
4844   a file
4845
4846 * g_memory_output_stream_get_data_size: New function to obtain the
4847   size of the written data.
4848
4849 * Bugs fixed:
4850  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
4851  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
4852  518160 replace two g_strdup_printf calls in GBookmarkFile
4853  523877 gbookmarkfile: avoid using g_string_append_printf() and
4854         other optimizations 
4855  525192 100% CPU if run main loop with no IO sources
4856  315437 extern inline -> static inline
4857  524314 g_convert() on Win32 implicitly converts full width
4858         alphanumerics into half width
4859  525732 Error in documentation for g_list_first
4860  525674 A typo in gmarkup.c
4861  448943 g_timeout_add_seconds() problems
4862  525972 UCS-4 not in the new win_iconv implementation
4863  526619 make test-report crash
4864  491554 Update to Unicode 5.1.0
4865  519137 g_slice_dup macro needs cast for 64-bit platform
4866  528752 Win32 build and SSL not working
4867  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
4868  528667 Typos in testing module documentation
4869  459905 Bug in wcwidth data
4870  534085 g_unichar_iswide_cjk() has a totally wrong table
4871  501651 Update glib/libcharset
4872  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
4873  534319 GLib's .pc files could use Libs.private
4874  534137 Typo in g_spawn_async_with_pipes doc
4875  517419 gio win32 directory monitor
4876  526796 Wrong order of arguments in g_file_copy's fallback
4877  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
4878  532965 Should not return filesystem::free for certain file systems
4879  525553 fix typo and nitpicking in GArray documentation
4880  526572 Missing * in declaration of parent_class in Object
4881         Destruction section of GObject Reference Manual
4882  528648 Extra >s in Object Construction section
4883  535021 g_param_spec_internal documentation should
4884         describe purpose of nick and blurb
4885  521513 Firefox crash when using file picker
4886  528433 gdesktopappinfo snafu ...
4887  533369 API g_file_info_get_attribute_string () unables to get "...
4888  521045 glib f_fstypename miscellany
4889  521672 compile error
4890  521946 control rate limit on GUnixMountMonitor
4891  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
4892  523015 Implement sliding window based upload operation
4893  523019 Use new GCC 4 feature
4894  523338 list nfs4 as a nfs mount type
4895  524350 Make glib build without NLS again
4896  524579 g_file_copy reports wrong total on progress callback for ...
4897  524742 A typo in gtestutils.c.
4898  524950 Minor documentation typos.
4899  525866 the user directory should not be considered as a mount to...
4900  526320 should not list mounts that the user doesn't have permiss...
4901  527132 nautilus crash when making ftp connection
4902  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
4903  534759 Build failure in gio
4904  534764 Typo in error produced by g_file_make_directory
4905  521851 Redudant tests in gunixmounts.c
4906  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
4907  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
4908  534177 Invalid description of the interface g_cclosure_marshal_S...
4909  520715 Add GFile method g_file_query_file_type
4910  523039 nautilus can't access to trash/computer/network if gvfs i...
4911  
4912 * Updated translations:
4913  Arabic (ar)
4914  Bulgarian (bg)
4915  Catalan (ca) 
4916  Czech (cs)
4917  Greek (el)
4918  Candian English (en_CA)
4919  British English (en_GB)
4920  Spanish (es)
4921  Estonian (et)
4922  Basque (eu)
4923  Galician (gl)
4924  Hebrew (he)
4925  Hungarian (hu)
4926  Japanese (ja)
4927  Lithuanian (lt)
4928  Norwegian bokmål (nb)
4929  Dutch (nl)
4930  Occitan (oc)
4931  Portugese (pt)
4932  Russian (ru)
4933  Slovak (sk)
4934  Albanian (sq)
4935  Swedish (sv)
4936  Turkish (tr)
4937  Vietnamese (vi)
4938
4939
4940 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
4941 ===================================================
4942
4943 * Fix a crash in g_themed_icon_new
4944
4945 * Update the included PCRE to 7.6
4946
4947
4948 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
4949 ===================================================
4950
4951 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
4952
4953 * GIO:
4954  - Add missing GMountMountFlags argument to g_unix_volume_mount
4955  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
4956    reference
4957  - Add properties to GThemedIcon for bindings sake
4958
4959 * Bugs fixed:
4960  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
4961  510855 g_checksum_update(): Take -1 for length.
4962  517676 g_themed_icon_new*() do more than call g_object_new().
4963  518816 should handle rmdir returning EEXIST correctly
4964  519352 g_[s]list_delete_link() docs
4965  519489 Fixes for sparse warnings in gio
4966  520169 add monitor argument to vfunc for GVolumeMonitor
4967  520700 Add type check in g_file_query_exists
4968  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
4969  518720 No MIME type for empty files
4970  521013 in documentation, goffset doesn't say "Since 2.x"
4971  521028 Missleading error messages from g_io_channel_set_encoding()
4972  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
4973
4974 * Updated translations:
4975  Assamese (as)
4976  Bengali India (bn_IN)
4977  Czech (cs)
4978  German (de)
4979  Spanish (es)
4980  Estonian (et)
4981  Finnish (fi)
4982  French (fr)
4983  Gujarati (gu)
4984  Italian (it)
4985  Lithuanian (lt)
4986  Malayalam (ml)
4987  Marathi (mr)
4988  Norwegian bokmål (nb)
4989  Romanian (ro)
4990  Russian (ru)
4991  Slovak (sk)
4992  Ukrainian (uk)
4993
4994  
4995 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
4996 ===================================================
4997
4998 * GIO:
4999  - New file attributes: trash::item-count, filesystem::use-preview
5000  - Rename g_file_contains_file to g_file_has_prefix
5001  - g_file_query_filesystem_info grew async variants
5002  - g_themed_icon_append_name: new convenience function
5003  - g_content_type_get_icon is implemented now
5004  - Only show mounts in /media and ~
5005  - g_file_contains_file has been renamed to g_file_has_prefix
5006
5007 * Win32:
5008  - g_win32_get_package_installation_directory_of_module: new function
5009    which supersedes g_win32_get_package_installation_directory
5010  - Use alertable wait functions so that I/O completion routines or 
5011    user-mode Asynchronous Procedure Calls can be run
5012  - Fix race conditions in g_spawn implementation on win32
5013
5014 * Other:
5015  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
5016
5017 * Updated translations:
5018  Arabic (ar)
5019  Belarusian Latin (be@latin)
5020  Catalan (ca) 
5021  British English (en_GB)
5022  Finnish (fi)
5023  Galician (gl)
5024  Hebrew (he)
5025  Italian (it)
5026  Kannada (kn)
5027  Norwegian bokmål (nb)
5028  Dutch (nl)
5029  Brazilian Portugese (pt_BR)
5030  Vietnamese (vi)
5031
5032
5033 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
5034 ===================================================
5035
5036 * Update the included PCRE to 7.6
5037
5038 * GIO:
5039  - g_volume_should_automount: new function to determine if a volume
5040    should be mounted automatically
5041  - g_file_query_default_handler: new convenience function to get
5042    the default handler for a file
5043  - g_app_info_launch_default_for_uri new convenience function to
5044    launch the default handler for a URI
5045  - Use mimeapps.list and defaults.list as discussed on xdg list
5046    recently
5047  - g_app_info_get_default_for_uri_scheme has a real implementation
5048    now (gvfs provides a GConf-based implementation)
5049  - There is the beginning of a test suite
5050  - standard::description:  new file attribute
5051  - GMountMountFlags flags argument added to mount calls
5052
5053 * GObject:
5054  - class initialization is now threadsafe
5055
5056 * Updated translations:
5057   Arabic (ar)
5058   Catalan (ca)
5059   Spanish (es)
5060   Basque (eu)
5061   Italian (it)
5062   Japanese (ja)
5063   Kannada (kn)
5064   Korean (ko)
5065   Macedonian (mk)
5066   Occitan (oc)
5067   Portugese (pt)
5068   Brazilian Portugese (pt_BR)
5069   Swedish (sv)
5070   Thai (th)
5071
5072
5073 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
5074 ===================================================
5075
5076 * G_GNUC_PRETTY_FUNCTION has been deprecated
5077
5078 * GIO:
5079  - g_file_copy has an async variant now
5080  - Drives and volumes now have API to get identifiers
5081    like Hal UDIs or UUIDs.
5082  - There is now a registration API to let modules register
5083    extensions they provide, such as volume monitor implementations
5084
5085 * Bugs fixed:
5086   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
5087   316260 [patch] Doc patches for gnode (2.8.1)
5088   385132 solaris gettext support fix
5089   484261 ./configure check for system PCRE unicode support fails w...
5090   510292 GOption main help not shown
5091   511580 Implement g_file_copy_async
5092   511654 Compile errors due to C99 constructs
5093   487909 g_utf8_strreverse and combining marks
5094   512381 unused variable 'is_main_group' 
5095
5096 * Updated translations:
5097   Arabic (ar)
5098   Belarusian (be)
5099   Czech (cz)
5100   Spanish (es)
5101   French (fr)
5102   Galician (gl)
5103   Portugese (pt)
5104   Russian (ru)
5105   Swedish (sv)
5106   Thai (th)
5107
5108
5109 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
5110 ===================================================
5111
5112 * GChecksum:
5113  - g_checksum_update can accept nul-terminated strings
5114  - The MD5 implementation works correctly on buffers 
5115    that are longer than 64 bytes
5116
5117 * GIO:
5118  - Don't include a copy of the inotify headers, rely on system headers
5119  - g_file_find_enclosing_mount has an async variant now
5120  - Reduntant seek API on file streams has been removed
5121
5122 * Bugs fixed:
5123   508602 gmemory{in|out}putstream.c: unknown pointer size
5124   508771 There is no g_file_test/exists() for GFile
5125   508773 g_uri_escape_string() documentation unclear.
5126   509465 AM_PATH_GLIB_2_0 doesn't support gio
5127   509626 async functions: Document allowed NULL callback?
5128   509990 GSeekable documentation unclear
5129   510448 No inotify support on ARM or SH5
5130   510855 g_checksum_update(): Take -1 for length. 
5131
5132 * Updated translations:
5133   Basque (eu)
5134   Marathi (mr)
5135   Swedish (sv)
5136   Ukrainian (uk)
5137
5138
5139 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
5140 ===================================================
5141
5142 * GIO:
5143  - Mount operation API change: unhandled methods get reported via 
5144    the reply, rather than by the signal emission return value
5145  - File monitor API change: Add a GError argument to g_file_monitor_file
5146  - g_unix_mount_guess_should_display(): new function
5147
5148 * Bugs fixed:
5149   508224 [PATCH] FAM backend crashes due to double free
5150   508074 GAsyncResult documentation suggests g_freeing it.
5151   508108 GFile documentation slightly unclear.
5152   508309 rpc_pipefs mount points should be hidden
5153   508378 GFileInfo documentation implies that it changes attribute...
5154   508719 g_file_get_relative_path fails if parent is root
5155   508773 g_uri_escape_string() documentation unclear.
5156
5157 * Updated translations:
5158   Arabic (ar)
5159   Spanish (es)
5160   Hebrew (he)
5161   Italian (it)
5162   Korean (ko)
5163   Turkish (tr)
5164
5165
5166 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
5167 ===================================================
5168
5169  * Portability fixes:
5170  - Assertion functions are marked as noreturn again
5171  - Handling of inline functions has been fixed to work with gcc 4.3
5172  - C99 comments have been removed from headers
5173  - The nonportable sed -i option is no longer used
5174
5175  * GIO:
5176   - Clarified the semantics of g_app_info_get_all()
5177   - API for memory input and output streams has been changed a bit
5178   - GDirectoryMonitor has been removed; GFileMonitor can monitor
5179     files and directories now
5180
5181  * Bugs fixed:
5182    504829 Invalid environment passed to g_spawn_async in g_desktop_...
5183    505258 crash in Users and Groups: Adding a user
5184    505815 g_content_types_get_registered should not g_free keys
5185    491218 g_timer_new() doesn't initialize timer->end
5186    315437 extern inline -> static inline
5187    476856 Inconsistency between standard and implementation of the ...
5188    480122 g_module_open fails to open modules with ".la" extension
5189    495589 gspawn.c failing to set FD_CLOEXEC
5190    500273 doesn't build with --disable-visibility
5191    504142 Do not show empty groups in --help output
5192    504879 giofam incorrectly linked
5193    505042 add file attribute for actually used file size in bytes
5194    505058 xattr namespace docs
5195    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
5196    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
5197    505887 older darwin lacks lchown
5198    506374 gmemoryinputstream api
5199    506461 Conversion of g_assert_not_reached() and friends into fun...
5200    503051 Small bug in glib interface
5201    506395 Updates to GIO documentation
5202    507628 Missing .pc entry for gio linking against glib
5203    505195 [patch] typo in g_try_new0 docs 
5204    507822 g{file,directory}monitor changes signal problem
5205    506377 gmemoryoutputstream write implementation
5206    507835 bug in gunixinputstream 
5207
5208  * Updated translations:
5209    Arabic (ar)
5210    Belarusian Latin (be@latin)
5211    Spanish (es)
5212    Basque (eu)
5213    Irish (ga)
5214    Hebrew (he)
5215    Occitan (oc)
5216    Vietnamese (vi)
5217
5218
5219 Overview of Changes from GLib 2.14.x to GLib 2.15.0
5220 ===================================================
5221
5222 Major new features:
5223
5224  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
5225    in GLib has support for local filesystems. The new, separate gvfs 
5226    module contains various backend implementations (cifs, ftp, sftp,
5227    http, ...)
5228
5229  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
5230    and SHA-256
5231  
5232  * GTest: a test framework 
5233  
5234 Smaller additions:
5235
5236  * GHash:
5237  - GHash has iterators, as an alternative to g_hash_table_foreach
5238
5239  * GMarkup: 
5240  - g_markup_parse_context_get_element_stack: New function to
5241    get the stack of open elements
5242  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
5243    reporting
5244  - g_markup_collect_attributes: Convenience function for handling
5245    attributes
5246
5247 * GKeyFile: 
5248  - Functions that take a GError now return a boolean to indicate 
5249    success, instead of void
5250  - Various performance improvements
5251
5252 * GAsyncQueue:
5253  - g_async_queue_new_full: new function that allows to specify
5254    a free function for leftover elements
5255  
5256 * GError:
5257  - g_prefix_error and g_propagate_prefixed_error: New functions
5258    to ease error propagation
5259
5260 * Internationalization:
5261  - C_: A new 2-argument variant of the Q_() macro 
5262  - Use native character set conversion API on Windows
5263
5264 * GLib builds with automake 1.10
5265
5266 * Bugs fixed:
5267  455725 specific combination of g_utf8_strlen and g_pattern_match...
5268  467537 g_convert_with_iconv() not resetting iconv() state correc...
5269  497033 Commandline option parser should warn about missing optio...
5270  504527 gchecksum: Conditional jump or move depends on uninitiali...
5271  445362 Non-numeric local labels in gatomic.c are causing linker ...
5272  482313 gregex: no way to tell why compilation failed
5273  317775 main loops continues to run after g_main_loop_quit() has ...
5274  418778 Insufficient pkg-config version requirement
5275  436293 g_option_context_new() doc should mention that the string...
5276  466557 glib-mkenums shifts ARGV[0] to undefined
5277  468882 GKeyFile doesn't accept "True" as a true boolean value
5278  469551 application --help messages are garbaged on none UTF-8 lo...
5279  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
5280  490061 outptrs uninitialized after g_parse_long_long
5281  490637 gobject documentation patch
5282  495294 glib-genmarshal prints warnings but returns 0
5283  496046 option to prefix location of errors for GMarkup
5284  498113 tests/regex-test fails on 64bit environment
5285  500506 Fails to build on OSX 10.4
5286  500638 gkeyfile speedup ...
5287  500875 Make check fails as there is no "test" target for "build"...
5288  502511 g_assert_cmphex prints invalid message
5289  502927 g_array_index triggers cast aligment warning
5290  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
5291  503222 Need context to translate
5292  503420 gkeyfile leaks a hash table
5293  503470 Fix build when builddir != srcdir
5294  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
5295  71704  file include order
5296  491957 Misprint in the specification of the interface "g_main_co...
5297  491959 Misprint in description of the structure "GThreadPool"
5298  491965 Mistype in the specification of the function "g_hook_list...
5299  491966 Misprint in the specification of the interface "g_main_co...
5300  491968 The documentation does not mention the restriction for th...
5301  491970 The documentation for the interface "g_date_clamp" is inc...
5302  491974 The documentation of the interface "g_main_context_iterat...
5303  491975 The documentation for the interfaces "g_io_channel_read_u...
5304  491979 Misprint in the description of the interfaces g_key_file_...
5305  491982 Misprint in the description of the interface "g_key_file_...
5306  501107 EXTRA_DIST automake warnings
5307  501997 g_utf8_normalize() returns NULL on invalid string
5308  502590 C_/g_dpgettext efficiency
5309  464259 g_set_application_name() docs should say "Since 2.2"
5310  496518 gbase64.c API doc clarification
5311  498728 g_key_file_get_*_list should set length to 0 when returni...
5312  500361 Improve docs for g_array_free() and g_ptr_array_free()
5313  501853 g_checksum_get_digest docs
5314  503862 Allow NULL strings in g_parse_debug_string()
5315  142676 Q_
5316  367550 Add g_async_queue_new_full() with GDestroyNotify function
5317  375651 Minor enhancements to GKeyFile API
5318  443648 MD5 digest support
5319  449937 Upgrade auto* sources to be clean under automake1.9
5320  452887 gmarkup context "get element" function is useless when ca...
5321  491549 [PATCH] Eliminate libiconv dependency on Windows
5322  500507 GHashTableIter API 
5323
5324 * Translation updates
5325  Belarusian Latin (be@latin)
5326  Czech (cs)
5327  German (de)
5328  Spanish (es)
5329  Esperanto (et)
5330  French (fr)
5331  Korean (ko)
5332  Marathi (mr)
5333  Norwegian bokmål (nb)
5334  Brazilian Portugese (pt_BR)
5335  Slovenian (sl)
5336  Swedish (sv)
5337
5338
5339 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
5340 ===================================================
5341
5342 * Update PCRE to 7.4
5343
5344 * Bugs fixed:
5345  487491 Fix some warnings from sparse
5346  488068 Small (one-time) memory leak in glib_gettext initialization
5347  493688 TYPE macro "_get_type ()" is documented wrong
5348
5349 * Updated translations:
5350  Arabic (ar)
5351  Belarusian Latin (be@latin)
5352  Estonian (et)
5353  Irish (ga)
5354  Slovenian (sl)
5355
5356  
5357 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
5358 ===================================================
5359
5360 * Bugs fixed:
5361  476849 Invocation of the interface "g_hook_free" fails in certai...
5362  359165 marshallers can throw warnings with -Wunused
5363  477957 more discussion on g_value_set_object vs. g_value_take_ob...
5364  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
5365  483337 inline is disabled for MSVC when compiling C code
5366  478349 Broken link to gettext website
5367  469231 g_spawn optimization for setting all open fds to CLOEXEC 
5368
5369 * Updated translations:
5370 Arabic (ar)
5371 Galician (gl)
5372 Hebrew (he)
5373 Korean (ko)
5374
5375
5376 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
5377 ===================================================
5378
5379 * Bugs fixed:
5380  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
5381  444765 Fix FIXME in gregex.c when new pcre is out
5382  464145 g_markup_escape_text Produces Invalid XML
5383  465625 g_type_default_interface_ref() does not ensure working g_...
5384  466768 Clearify that comments can be put anywhere in a Key-file.
5385  474229 The GError documentation should give convention for the G...
5386  474899 G_BREAKPOINT() docs inaccurate
5387  475854 Overuse of -lpcre when using system pcre
5388  473879 Incorrect includes in gregex.c
5389  468694 Typoes in documentation
5390  469051 g_snprintf () talks about characters where it probably me...
5391  457601 Missing arch specific atomic implementation
5392  475923 Missing pcre flags when static-linking against glib
5393  475619 glibthread-2.0.la does not list -lpthread
5394
5395 * Updated translations:
5396  Bulgarian (bg)
5397  Catalan (ca)
5398  Danish (da)
5399  German (de)
5400  Canadian English (en_CA)
5401  British English (en_GB)
5402  Spanish (es)
5403  Estonian (et)
5404  Finnish (fi)
5405  French (fr)
5406  Gujarati (gu)
5407  Hungarian (hu)
5408  Italian (it)
5409  Georgian (ka)
5410  Kannada (kn)
5411  Lithuanian (lt)
5412  Makedonian (mk)
5413  Norwegian (nb)
5414  Dutch (nl)
5415  Polish (pl)
5416  Portugese (pt)
5417  Brazilian Portugese (pt_BR)
5418  Romanian (ro)
5419  Russian (ru)
5420  Albanian (sq)
5421  Serbian (sr, sr@Latn)
5422  Swedish (sv)
5423  Tamil (ta)
5424  Thai (th)
5425  Ukrainian (uk)
5426  Vietnamese (vi)
5427
5428
5429 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
5430 ===================================================
5431
5432 * Last-minute API additions:
5433  - Make g_unichar_combining_class public
5434  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
5435
5436 * Update PCRE to 7.2
5437
5438 * Bugs fixed:
5439  453998 Make _g_unichar_combining_class() public
5440  462549 gregex.c: variable is declared at middle of block
5441  417068 g_file_test doc inconsistency
5442
5443 * Updated translations:
5444  Assamese (as)
5445  Basque (eu)
5446  Kannada (kn)
5447  Malayalam (ml)
5448  Dutch (nl)
5449  Polish (pl)
5450  Brazilian Portugese (pt_BR)
5451  Turkish (tr)
5452
5453
5454 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
5455 ===================================================
5456
5457 * The memory corruption warning from the slice allocator that
5458   occurred when threads were initialized after the slice allocator
5459   has been removed, as the slice allocator now works fine
5460   in this scenario.
5461
5462 * New functions g_once_init_enter() and g_once_init_leave() make
5463   it easier to write threadsafe one-time initialization functions 
5464  
5465 * Bugs fixed:
5466  454473 Simple XML Subset Parser terminates on invalid XML
5467  445813 g_module_open error, add file name
5468  453796 errno gets clobbered by g_filename_display_name
5469  341988 don't use "-c" with msgfmt in Makefile.in.in
5470  447048 Please produce slightly more output during long tests
5471  454785 GModule documentation lists same block of code twice.
5472  454786 GModule documentation lists same paragraph twice.
5473  383155 small docs quirks in gobject/closure API documentation
5474  65041  _get_type() functions aren't thread safe
5475
5476 * Updated translations
5477  Assamese (as)
5478  Spanish (es)
5479  Gujarati (gu)
5480  Japanese (ja)
5481  Korean (ko)
5482  Macedonian (mk)
5483
5484
5485 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
5486 ===================================================
5487
5488 * Reintroduce a GType typedef whose removal in 2.13.5
5489   caused trouble for C++ bindings
5490
5491 * Bugs fixed:
5492  450216 docs not explicit enough about g_free()
5493  451459 g_type_register_static_simple calls g_type_register_static
5494
5495 * Updated translations
5496  Norwegian bokmål (nb)
5497  Sinhala (si)
5498
5499
5500 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
5501 ===================================================
5502
5503 * xdg-user-dirs support: 
5504  - the Desktop directory is guaranteed to be defined
5505  - user-dirs.dirs is no longer reloaded on changes
5506
5507 * Slice allocator: 
5508  - new api to duplicate slices
5509
5510 * Regular expression support:
5511  - GRegex is a boxed type now
5512
5513 * Bugs fixed:
5514  44793 make check failing in trunk
5515  354522 Small problem with PLT hiding 6 symbols
5516  363986 glib 2.12.4 does not compile with SGI IDO cc
5517  443869 g_type_class_add_private doesn't warn when adding 0-sized...
5518  446859 Legitimately return 0 for g_quark_from_string(NULL)
5519  447534 Small typo in g_timeout_add_seconds() doc
5520  447583 GStaticRWLock
5521  447935 g_get_current_dir SIGSEGV on long path
5522  448260 CLAMP has surprising result if low > high
5523  57693  g_string_vprintf()
5524  442029 add g_slice_dup()
5525  445065 Add GRegex boxed type
5526  448819 Add full version of g_timeout_add_seconds()
5527
5528 * Updated translations: 
5529  Swedish (sv)
5530  Oriya (or)
5531  Hebrew (he)
5532  Spanish (es)
5533  Estonian (et)
5534
5535  
5536 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
5537 ===================================================
5538
5539 * Bugs fixed:
5540  444121 g_get_user_special_dir deadlocks
5541  444161 invalid UTF8 in key name shows up as valgrind error in g_...
5542  444130 g_option_context_get_help() is broken when there's a desc...
5543
5544
5545 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
5546 ===================================================
5547
5548 * GKeyFile:
5549  - Added defines for easier handling of desktop files
5550
5551 * Unicode support:
5552  - Update g_unichar_iswide_cjk for Unicode 5.0
5553
5554 * Regular expression support:
5555  - GRegex structs can now be ref-counted
5556  - Some new functions for dealing with incremental 
5557    replacement have been added
5558  - The GRegexEvalCallback signature has been changed
5559
5560 * g_get_user_special_dir() has been added to support
5561   xdg-user-dirs
5562
5563 * Bugs fixed:
5564  419376 Functions using named subpatterns behave inconsistently w...
5565  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
5566  423708 typo in the README.win32 file see patch below
5567  339225 Add new defines for easier handling of .desktop files 
5568  442265 API additions/changes for GRegex
5569  432651 Add a glib-ish xdg_user_dir_lookup
5570
5571 * Updated translations:
5572  Estonian (et)
5573  Norwegian bokmål (nb)
5574
5575
5576 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
5577 ===================================================
5578
5579 * Unicode support:
5580  - Add g_unichar_ismark()
5581
5582 * GOption:
5583  - Allow to use callbacks for remaining args
5584
5585 * Updated translations:
5586   Belarusian Latin (be@latin)
5587   British English (en_GB)
5588   Galician (gl)
5589   Norwegian bokmål (nb)
5590   Oriya (or)
5591   Spanish (es)
5592   Thai (th)
5593
5594
5595 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
5596 ===================================================
5597
5598 * GRegex:
5599  - Portability fixes
5600  - Split into immutable GRegex and GMatchInfo
5601  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
5602    to obtain information about the compiled regex
5603
5604 * GKeyFile:
5605  - Fix roundtrip problems
5606  - Add g_key_file_load_from_dirs()
5607
5608 * Unicode support:
5609  - Fix corner cases in case conversion routines
5610
5611 * GOption:
5612   - Add a function to get the formatted help string
5613
5614 * GHash:
5615  - Add new functions g_hash_table_get_keys() and
5616    g_hash_table_get_values() to retrieve the keys and
5617    values in list form
5618
5619 * Updated transations:
5620   Simplified Chinese (zh_CN)
5621   Arabic (ar)
5622
5623
5624 Overview of Changes from GLib 2.12 to GLib 2.13.0
5625 =================================================
5626
5627 * Add GSequence, a list that is implemented using
5628   a balanced binary tree.
5629
5630 * Add GRegex, an implementation of Perl regular expressions,
5631   based on PCRE.
5632  
5633 * Use Posix monotonic clocks instead of gettimeofday()
5634   for GTimer when available.
5635
5636 * Support static initialization of GQeues with G_QUEUE_INIT,
5637   g_queue_init() and g_queue_clear().
5638
5639 * Add g_string_chunk_clear() for clearing a 
5640   GStringChunk.
5641
5642 * Add g_unichar_get_script() to obtain Unicode
5643   script information.
5644
5645 * Add g_unichar_iszerowidth() to obtain information
5646   about zero-width characters.
5647
5648 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
5649   type attribute.
5650
5651 * G_GNUC_INTERNAL has a working definition for the
5652   Sun Studio compiler. This requires the macro to
5653   be positioned before the function declaration.
5654
5655 * The slice allocator can produce detailed debugging
5656   information with G_SLICE=debug-blocks.
5657
5658 * Modules support G_DEBUG flags resident-modules and
5659   bind-now-modules.
5660
5661 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
5662   to define types in modules.
5663
5664 * Bug fixes: too many to list them in detail here.
5665
5666 * New and updated translations (be,bg,bn,ca,cs,de,
5667   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
5668   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
5669   zh_HK,zh_TW)
5670
5671
5672 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
5673 ===================================================
5674
5675 * Unicode updates:
5676  - Normalization is following Unicode TR #29
5677  - g_unichar_isxdigit() only accept characters
5678    for which g_unichar_xdigit_value() returns a value
5679  - g_unichar_toupper and g_unichar_tolower leave
5680    unconvertable characters in place instead of
5681    replacing them by NUL
5682
5683 * Bugs fixed
5684  348491 g_utf8_strup() and g_utf8_strdown() returns 
5685         string with NUL bytes
5686  349825 GKeyFile always inserts a newline before a group
5687  347842 g_unichar_isxdigit() is too general about what 
5688         it considers a digit
5689  348694 g_utf8_normalize() hasn't been updated to PR #29
5690  348785 Hint about G_DEBUG in Message Logging docs
5691  349792 Wrong english string (UI)
5692  349952 gparamspecs.c uses gcc feature
5693
5694 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
5695   nl,pl,tr,uk,zh_HK,zh_TW)
5696
5697
5698 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
5699 ===================================================
5700
5701 * Update to final Unicode Character Database 5.0.0
5702
5703 * Bugs fixed:
5704  346660 issues with base64 api documentation / g_base64_decode_cl...
5705  348136 Coverity reports allocation of wrong size CID #2839
5706  336281 Update to UCD 5.0
5707  346197 g_date_strftime %F option doesnt work for win32
5708  348011 Small optimization to real_toupper()
5709  246494 prototype mismatch in glib/gconvert.c
5710
5711 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
5712   fr,he,it,ja,mk,or,pt)
5713
5714
5715 Overview of Changes from GLib 2.11.4 to GLib 2.12
5716 =================================================
5717
5718 * Bugs fixed:
5719  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
5720
5721 * Updated translations (cy,nb,nl)
5722
5723
5724 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
5725 ===================================================
5726
5727 * GBookmarkFile:
5728  - g_bookmark_file_remove_item returns a boolean
5729  
5730 * g_mkstemp accepts the XXXXXX in the middle of
5731   the template
5732  
5733 * Bugs fixed:
5734  344868 g_key_file_to_data should separate groups 
5735
5736 * Updated translations (de,es,fr,gu,hi,ko,th)
5737
5738
5739 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
5740 ===================================================
5741
5742 * GBookmarkFile:
5743   - g_bookmark_file_move_item: Return TRUE in case of
5744     an empty target
5745
5746 * Bugs fixed: 
5747  343919 gunicollate.c: strxfrm bug on VC8
5748
5749 * Updated translations (fi)
5750
5751 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
5752 ===================================================
5753
5754 * Add g_ascii_stroll to parse signed 64bit integers
5755
5756 * GMarkup: add a flag to treat CDATA as text
5757
5758 * GHashTable: add functions to remove all entries
5759
5760 * GMainLoop: add functions to find the currently
5761   running source, and determine if it is destroyed
5762
5763 * Bug fixes:
5764  342563  g_atomic_thread_init() needs to be called before 
5765          other _g_*_thread_init() functions
5766  343548  Potential use after free in callers of g_string_free() 
5767  168538  Wish: Clearing contents of GHashTables
5768  321886  GTK+ cannot be reliably used in multi-threaded 
5769          applications
5770  341826  goption.c: 'strtoll' is C99's function
5771  343899  g_ascii_formatd dosn't work as expected for all 
5772          format strings
5773  317793  Make GEnumValue strings const
5774  337129  Compile warnings in G_IMPLEMENT_INTERFACE
5775  303622  What is G_TYPE_CHAR?
5776
5777 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
5778  
5779
5780 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
5781 ===================================================
5782
5783 * GOption  
5784   - Support 64-bit integers 
5785   - Allow optional text before and after the options
5786     in help output
5787
5788 * Bug fixes:
5789  340538 gbase64-test writes OOB 
5790  340816 GKeyFile set_string_list invalid memory reads 
5791  339105 g_key_file_parse_value_as_double
5792  340434 convert-test.c fails (function test_one_half)
5793  311043 Memory leaks (and potential infinite loops) 
5794         when using G_ERRORCHECK_MUTEXES
5795  335198 Error checking mutexes are fubar  
5796  341237 Add a G_OPTION_ARG_INT64
5797  341192 g_io_channel_set_flags not implemented on win32
5798  336120 Allow adding description before/after GOption 
5799         --help output body
5800  341191 misplaced check in g_relation_delete
5801  340530 mismatched calloc / g_free in win32 threads
5802
5803 * Updated translation (es)
5804
5805 Overview of Changes from GLib 2.10.x to GLib 2.11.0
5806 ===================================================
5807
5808 * GBookmarkFile: a parser for files containing bookmarks
5809   stored using the Desktop Bookmark specification.
5810
5811 * Base64 encoding support
5812         
5813 * Unicode 5.0 support
5814
5815 * GOption supports floating point numbers 
5816
5817 * GKeyFile supports floating point numbers
5818
5819 * Bug fixes:
5820  155884 gatomic.c should be based on new SDK
5821  157877 update-desktop-database doesn't handle duplicate entries
5822  164719 keyfile parser doesn't support floats
5823  327662 Import BookmarkFile from libegg
5824  329548 Add G_OPTION_ARG_DOUBLE
5825  329789 option-test.c type confusion
5826  332841 Segmentation Fault when %llu is passed to vasnprintf and 
5827         HAVE_SNPRINTF is not defined
5828  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
5829         _WIN32_WINDOWS 0x0401'
5830  333916 g_timer_elapsed docs should mention that microseconds 
5831         may be NULL
5832  334440 dlerror() portability issue causes crash on (old) a.out 
5833         NetBSD platform
5834  334646 goption + error out params
5835  334799 g_remove() must check return value of remove()
5836  334943 make check FAIL: threadpool-test
5837  335215 Some breakages with GThreadPool
5838  336085 g_option_context_new parameter lacks better explanation
5839  336677 Documentation for g_object_ref_sink() is incorrect
5840  337027 gbookmarkfile.c: sys/time.h include error
5841  337553 Wrong escaping of URIs
5842  338572 Dereferencing NULL value in g_key_file_get_group_comment
5843  338845 g_completion_complete_utf8 crashes when NULL is passed to it
5844  339337 g_bookmark_file_set_description
5845  339338 gbookmarkfile.c, function expand_exec_line
5846  339340 gbookmarkfile.c, function bookmark_app_info_dump
5847
5848 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
5849                        or,pt_BR,ro,tr,vi,zh_CN)
5850
5851
5852 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
5853 ===================================================
5854
5855 * Bugs fixed:
5856  314794 Broken pthread detection on Darwin [Gregor Riepl]
5857  322476 Missing check for .dylib [Vladimir Panov]
5858  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
5859         M. Merino Vidal]
5860  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
5861
5862 * Win32 changes:
5863  - Fix g_listenv() implementation.
5864  - Allow up to 100 GPrivate structs
5865
5866 * Translation updates (fr,hu,lt,pl,sv)
5867
5868
5869 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
5870 ==================================================
5871
5872 * Bugs fixed:
5873  328997 64bit pointer trunction in glib slab-allocator
5874         [Pascal Hofstee]
5875  331110 g_cond_broadcast(inform_cond) without holding 
5876         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
5877  332093 Fix some leaks in the tests [Kjartan Maraas]
5878  332435 g_utf8_strlen returns wrong value if a maximum 
5879         number of bytes to check is specified 
5880         [Matthias Clasen]
5881  331367 gslice requires more POSIX-like semantics for 
5882         GPrivate destructors [Tor Lillqvist]
5883
5884 * Documentation improvements [Matthias, Kang Jeong-Hee,
5885   Tor Lillqvist, Stefan Kost]
5886
5887 * Translation updates (el,eu,ka,uk)
5888
5889 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
5890 =================================================
5891
5892 * Bugs fixed: 
5893  329124 distclean removes README [Kjartan Maraas, Tim Janik]
5894  317679 GRelation field type not documented [Behdad Esfahbod]
5895  329123 Typo in GTime docs [Kjartan Maraas]
5896
5897 * Documentation improvements [Sven Herzberg, David
5898   Schleef, Kjartan Maraas, Behdad Esfahbod]
5899
5900 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
5901
5902 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
5903 =================================================
5904
5905 * Memory management: 
5906   Runtime debugging support: The slice allocator
5907   can be turned off by setting G_SLICE=always-malloc
5908   in the environment. Zeroing of freed memory can
5909   now be turned on at runtime by setting
5910   G_DEBUG=gc-friendly in the environment. [Tim Janik]
5911
5912 * Bugs fixed:
5913  328253 HP-UX/IA-64 uses ".so" as default shared library 
5914         extension [Albert Chin]
5915  143380 unicode-encoding test fails converting to UTF-16 
5916         with libiconv [Marc Moorcroft]
5917  328254 Build breakage (GSlice) [Jens Ganseuer]
5918  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
5919
5920 * Translation updates (da,et,zh_CN)
5921
5922 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
5923 =================================================
5924
5925 * Type system:
5926   Fix a problem with g_object_compat_control() which 
5927   can lead to segfaults in GTK+ applications on 64bit 
5928   platforms. 
5929
5930 * Thread suppport: 
5931   Unused threads now fall back to the global pool after 
5932   500 milliseconds, where they wait for another 
5933   max-idle-time milliseconds. [Sebastian Wilhelmi]
5934
5935 * Fix a memory allocation problem in GKeyFile. [Morten 
5936   Welinder]
5937
5938
5939 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
5940 =================================================
5941
5942 * GTree:
5943  - Replace the simple recursive implementation by
5944    a nonrecursive, threaded one  [Maurizio Monge]
5945
5946 * Change g_filename_display_name and
5947   g_filename_display_basename to use the Unicode
5948   replacement character U+FFFD instead of a question
5949   mark, and don't append "(invalid encoding)"  [Matthias]
5950
5951 * Documentation improvements [Sven Herzberg, Federico
5952   Mena Quintero, Stefan Kost]
5953
5954 * Bugs fixed:
5955  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
5956         [Bogdan Nicula]
5957  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
5958  169285 "threaded" tree implementation for GTree 
5959         [Maurizio Monge]
5960  326747 g_filename_display_basename adds (invalid encoding) 
5961         [Alberto Ruiz]
5962
5963 Other contributors: Christian Kellner, Murray Cumming
5964
5965 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
5966
5967
5968 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
5969 =================================================
5970
5971 * Memory management:
5972  - Add tests for cache colorization [Tim Janik]
5973  - Minimize space consumption if small amounts of differently
5974    sized slices are allocated, at a small performance cost.  [Tim]
5975
5976 * Thread support:
5977  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
5978    Sebastian Wilhelmi]
5979  - Add g_thread_pool_set_sort_function() to allow sorting the 
5980    tasks of a threadpool.  [Martyn Russell]
5981  - Add g_thread_pool_set_idle_time() to allow unused threads
5982    to exit after a certain time.  [Martyn]
5983
5984 * Type system:
5985  - introduce a new type GInitiallyUnowned, which has an initial
5986    floating reference. [Tim]
5987  - Add support for GType parameters. [Matthias]
5988
5989 * Main loop:
5990  - Add g_main_context_is_owner() to determine if the current
5991    thread is the owner of the context.  [Michael Meeks]
5992
5993 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
5994   wrapper functions instead of macros.  [Manish Singh]
5995
5996 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
5997   Stefan Kasal, Dan Williams]
5998
5999 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
6000
6001 * Bugs fixed:
6002  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
6003         tries to modify [J. Ali Harlow]
6004  324332 g_option_context_parse() returns false without setting error 
6005         [Tim-Philipp Müller]
6006  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
6007  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
6008  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
6009         gpointer [Andrew Paprocki]
6010  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
6011         Stanislav Brabec]
6012  325273 Error in documentation for glib_check_version () [Declan Naughton]
6013  325310 g_spawn_sync hangs when catching both stdout and 
6014         stderr [Tor Lillqvist]
6015  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
6016  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
6017  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
6018  325438 a typo (compatability) [Stefan Kasal]
6019  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
6020
6021
6022 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
6023 =================================================
6024
6025 * Memory management
6026  - The slice allocator is implemented [Tim Janik]
6027  - g_slice_free_chain() has been renamed to 
6028    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
6029  - Mem chunks are deprecated [Matthias Clasen]
6030
6031 * Data structures
6032  - Hash tables are refcounted, and have a boxed type [Tim]
6033
6034 * Thread support
6035  - Support for Solaris threads has been removed 
6036    [Sebastian Wilhelmi, Andrew Paprocki]
6037  - g_async_queue_sort(), g_async_queue_push_sorted() have 
6038    been added to allow GAsyncQueue to be used as a priority 
6039    queue, together with the corresponding _unlocked 
6040    variants  [Martyn Russell]
6041
6042 * GObject:
6043  - The concept of a floating initial reference has been
6044    moved from GtkObject to GObject [Tim]
6045
6046 * Win32 changes:
6047  - Make g_rename() replace existing files [Tor Lillqvist]
6048
6049 * Misc new API:
6050  - G_GUINT64_CONSTANT macro to define guint64 
6051    constants [Andrew Paprocki]
6052  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
6053    compiler to emit a warning if the value returned
6054    by a function is ignored. [Arjan van de Ven, Alex Larsson]
6055  - GList and GSList now have sort functions which take an
6056    extra user data argument [Martyn Russell]
6057  - g_param_spec_ref_sink() has been added for consistency [Tim]
6058
6059 * $LOGNAME is respected when determining user data. [Laszlo Peter]
6060
6061 * Other changes and bug fixes [Tim, Matthias, Behdad, 
6062   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
6063   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
6064   Andreas Schwab, Kalle Vahlman]
6065
6066 * Documentation
6067  - Deprecation warnings carry version information [Matthias]
6068  - The slice allocator has been documented [Matthias, Tim]
6069  - Other improvements [Morten Welinder]
6070
6071 Overview of Changes from GLib 2.8.x to GLib 2.9.0
6072 =================================================
6073 * Unicode support:
6074  - The Unicode tables have been updated to Unicode 4.1, 
6075    adding several new values to the GUnicodeBreakType 
6076    enumeration. This breaks Pango <= 1.10 
6077    [Behdad Esfahbod]
6078  - The various Unicode character predicate functions 
6079    (g_unichar_isalpha, g_unichar_isdigit,...) have
6080    been optimized
6081    [Behdad]
6082  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
6083    These functions handle negative offsets now, and
6084    going backwards in g_utf8_offset_to_pointer uses
6085    "stutter stepping".
6086    [Larry Ewing, Matthias Clasen]
6087
6088 * Memory management:
6089  - Mem chunks are no longer used internally in GLib and
6090    GObject. GMemChunk will be deprecated in GLib 2.10
6091  - All APIs based on GAllocator (g_list_push/pop_allocator,
6092    and similar push/pop_allocator functions for other
6093    data structures) have been deprecated, since they
6094    never worked as intended.
6095  - The g_slice_* functions have been added as a 
6096    new API for fast allocation of small memory blocks. 
6097    The implementation in GLib 2.9.0 is just a simple 
6098    wrapper around malloc. GLib 2.10 will have an
6099    efficient and scalable implementation. 
6100    [Tim Janik, Matthias]
6101
6102 * Pattern matching:
6103  - g_pattern_match has been optimized to avoid
6104    unnecessary recursion.
6105    [Tim, Matthias]
6106
6107 * g_intern_string, g_intern_static_string: 
6108  - New functions to intern strings. These are now used 
6109    by GObject to avoid duplicating static strings 
6110    [Matthias]
6111
6112 * g_thread_foreach: 
6113  - New function to iterate over all GThreads 
6114    [Tim, Matthias]
6115
6116 * g_date_set_time_t, g_date_set_time_val:
6117  - New functions to set a GDate from a time_t or
6118    GTimeVal value. g_date_set_time has been deprecated 
6119    in favor of these.
6120    [Roger Leigh]
6121
6122 * g_snprintf and g_vsnprintf:
6123  - These functions are no longer declared in gprintf.h, 
6124    since they are in glib.h
6125    [Matthias]
6126
6127 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
6128 =================================================
6129 * Optimize single-character insertions in GString [Ross Burton]
6130 * Fix build problems on OS X
6131 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
6132 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
6133 * Documentation improvements [Tristan van Berkom, Behnam
6134   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
6135 * New and updated translations (ca,cy,ko,ro,uk)
6136
6137 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
6138 =================================================
6139 * Make g_value_transform() handle enum values
6140   correctly on ppc64.  [Michael Lorenz]
6141   (Third-party code accessing enumeration values 
6142   in GValues should also be changed to access 
6143   v_long, not v_int, in order to work on bigendian 
6144   64bit machines.)
6145 * Make g_flags_get_first_value() handle a value
6146   of 0 meaningfully. [Tim-Philipp Müller] 
6147
6148 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
6149 =================================================
6150 * Make atomic operations on s390 work [Matthias]
6151 * Fix C++ guards in gstdio.h [Tor Lillqvist]
6152
6153 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
6154 =================================================
6155 * Add native implementations of atomic operations 
6156   on s390 [Matthias]
6157 * Make atomic reference counting of closures
6158   work on s390 [Matthias]
6159 * Avoid an infinite loop in g_convert_with_iconv().
6160   [Sebastian Bacher]
6161 * Documentation improvements [Ross Burton]
6162
6163 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
6164 =================================================
6165 * Thread-related changes
6166  - Fix build issues on HP-UX [Paul Cornett]
6167  - Threadsafe access to flags stored in datasets [Tim Janik]
6168  - Fix several issues with atomic refcounting for 
6169    closures, objects and paramspecs [Tim]
6170  - Improve tests for atomic refcounting changes [Tim]
6171 * Fix handling of stateful encodings in g_convert_* [Matthias]
6172 * Fix translation of GOption help output [Dan Winship]
6173 * Catch format errors in translations. This may cause 
6174   "make check" to fail when using older versions
6175   of gettext [Matthias]
6176 * Win32 bug fixes [Tor Lillqvist]
6177 * Documentation improvements [Ross Burton, Jochen Baier, 
6178   Matthias, Tim]
6179 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
6180
6181 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
6182 =================================================
6183 * Fix g_atomic_pointer_compare_and_exchange 
6184   on Sparc64 [Gert Doering]
6185 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
6186 * Win32 bug fixes [Tor Lillquist]
6187 * Other bug fixes [Benoit Dejean, Manish Singh]
6188 * Documentation improvements [Bryan Silverthorn,
6189   Callum McKenzie] 
6190 * New and updated translations (de,lt,sq,zh_CN)
6191
6192 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
6193 =================================================
6194 * GOption
6195  - Allow callbacks with optional arguments [Pawel Sliwowski]
6196  - Allow to turn off the automatic long option name
6197    disambiguation  [Adam McLaurin]
6198  - Only allow printable ASCII as short option names [Matthias]
6199 * Win32
6200  - Build fixes [Tor Lillqvist]
6201  - Rewrite iochannel socket implementation [Tor]
6202 * GObject
6203  - Threadsafety improvements; in particular, refcounting
6204    of objects is done atomically now. [Wim Taymans, Tim Janik]
6205 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
6206 * Documentation improvements [Richard Laager, Matthias]
6207 * New and improved translations (bf,cs,hu,nb,nl,no)
6208
6209 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
6210 =================================================
6211 * Win32 build fixes [Hans Breuer]
6212 * Bug fixes [Mikael Magnusson]
6213 * Documentation improvements [Matthias Clasen]
6214 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
6215
6216 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
6217 =================================================
6218 * GOption 
6219  - Allow callback arguments without parameters [Dan Winship]
6220 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
6221 * Misc new functions:
6222  - g_get_host_name [Tor Lillqvist]
6223  - g_mkdir_with_parents [Tor]
6224  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
6225    Matthias Clasen]
6226 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
6227   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
6228 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
6229 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
6230   sk,th,zh_TW)
6231
6232 Overview of Changes from GLib 2.6.x to GLib 2.7.0
6233 =================================================
6234 * GKeyFile
6235  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
6236  - Accept \r\n as line end [Bastian Nocera]
6237  - Don't interpret leading zeros as octal numbers. [Matthias]
6238  - Make key and group removal work [David Hoover, Matthias Hasselmann]
6239 * GOption
6240  - Improve formatting of --help output [Matthias, Noah Levitt]
6241  - Accept -? [Matthias]
6242  - Warn about duplicate main groups [Jeff Franks]
6243  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
6244  - Report missing arguments as errors [Björn Lindqvist]
6245  - Add a boxed type for GDate [Tim-Philipp Müller]
6246 * GTree
6247  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
6248 * Stdio wrappers
6249  - Work regardless of large file support [Manish Singh]
6250  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
6251 * GObject
6252  - Implement "toggle references" to help language bindings [Owen Taylor]
6253  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
6254  - Make pspec lookup a bit faster [Morten Welinder]
6255 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
6256 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
6257   Sven Neumann, Manish, Alexis S. L. Carvalho]
6258 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
6259 * Add g_utf8_collate_key_for_filename() to sort filenames taking
6260   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
6261 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
6262   NULL-terminated argument lists. [Marc Meissner]
6263 * Win32 changes
6264  - Improved debugability [Ulf Lamping, Hans Breuer]
6265  - Make filename handling more robust [Tor, Billy Skaggs]
6266  - Improve g_get_system_data_dirs() [Tor]
6267  - Use more precise timers [Tor]
6268  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
6269 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
6270   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
6271   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
6272   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
6273   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
6274   Christian Biere, Noah, Benoît Carpentier]
6275 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
6276   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
6277   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
6278 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
6279   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
6280
6281 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
6282 =================================================
6283 * GOption
6284  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
6285  - Improve handling of -- [Matthias Clasen]
6286  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
6287 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
6288 * Add gmodule-export-2.0.pc [Matthias]
6289 * Win32 changes
6290  - Improve hangling of UNC paths [Tor Lillqvist]
6291  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
6292    take and return UTF-8 now [Tor] 
6293  - Make g_file_test() work more reliably, and use PATHEXT
6294    when check for executables [Tor]
6295  - Build and cross-compilation fixes [J. Ali Harlow]
6296 * Other bug fixes [Jens Hatlak, Morten Welinder, 
6297   Tor, Kalpesh Shah, Adrian Bunk]
6298 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
6299   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
6300   Vincent Untz, Bastien Nocera]
6301 * New and updated translations (cy,de,nl,ru,sq,sv)
6302
6303 Overview of Changes from GLib 2.4.x to GLib 2.6.0
6304 =================================================
6305
6306 * Major new APIs
6307   - GOption, a commandline option parser
6308   - GKeyFile, a parser/editor for the .ini like files 
6309   - Functions to support the XDG basedir specification
6310   - Wrappers for common POSIX pathname functions to handle filename
6311     encodings consistently. On Windows, these use UTF-8.
6312
6313 * Miscellaneous new functions
6314   - g_filename_display_name() converts filenames in displayable UTF-8 strings
6315   - g_uri_list_extract_uris() splits uri lists
6316   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
6317   - g_log_set_default_handler() installs an alternate default log handler
6318   - g_get_language_names() obtains a list of applicable locale names
6319   - g_strv_length() calculates the length of NULL-terminated string arrays
6320   - g_win32_get_windows_version() determines the Windows version 
6321   - G_GNUC_INTERNAL marks functions as non-exported
6322   - glib_check_version() checks the GLib version at runtime
6323   - g_debug() completes the family of logging functions
6324
6325 * Performance improvements
6326   - Optimize g_utf8_validate()
6327   - Optimize g_markup_parse_context_parse()
6328   - Reduce signal connection complexity from O(n) to O(1) 
6329   - Get rid of many PLT entries for internally used exported symbols
6330   - Reduce code size by removing literal strings from g_return_if_fail()
6331
6332 * Other changes
6333   - On Windows, GLib functions that take file name arguments now require
6334     those to be in UTF-8. Functions that return file names return UTF-8.
6335   - Use higher precision for mathematical constants
6336   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
6337   - Support ll as printf format modifier for long long on all platforms
6338   - Clean up the ABI and enforce the list of exported symbols
6339   - Add a .pc file for using gmodule in libraries
6340   - Require ngettext
6341
6342 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
6343 =================================================
6344 * GOption: Don't list help options if group-specific
6345   options have been requested [Glynn Foster]
6346 * Make g_get_language_names() track locale changes [Christian Persch]
6347 * Win32 bug fixes [Tor Lillqvist]
6348 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
6349 * New and updated translations (da,es,ja,lt,zh_CN)
6350 Bugs fixed: 159530,100697,160271,160645,157255
6351
6352 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
6353 =================================================
6354 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
6355 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
6356   Morten Welinder]
6357 * Reduce signal connection complexity from O(n) to O(1) 
6358   [Sven Neumann]
6359 * Add a .pc file for using gmodule in libraries [Owen]
6360 * Add G_GNUC_MALLOC to mark functions returning newly 
6361   allocated memory  [Matthias]
6362 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
6363   Bruce Hochstetler]
6364 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
6365   Frederic Crozat, Tor]
6366 * Documentation improvements [Matthias, Tor, Owen]
6367 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
6368
6369 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
6370 =================================================
6371 * GOption
6372   - Add G_OPTION_FLAG_REVERSE to allow options 
6373     which unset a  boolean variable [Tor Lillqvist]
6374 * GChildWatch
6375   - Use sigaction instead of signal [Jonas Jonnson, 
6376   Archana Shah]
6377   - Make the very first SIGCHLD work [Gustavo Carneiro]
6378 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
6379   Manish Singh, J. Ali Harlow]
6380 * Documentation improvements [Matthias Clasen, Tor]
6381 * Updated translations (da,ja,tr,zh_CN)
6382
6383 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
6384 =================================================
6385 * GKeyFile
6386   - Cleanups, add more error checking [Ray Strode]
6387   - Fall back to the untranslated string when getting 
6388     locale strings [Mark McLoughlin]
6389 * GOption
6390   - Document GOption [Matthias Clasen]
6391   - Better support for rest arguments [Owen Taylor, Matthias]
6392   - Handle conflicts between groups [Matthias]
6393 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
6394 * Add g_filename_display_name() to convert filenames
6395   in displayable UTF-8 strings  [Alex Larsson, Matthias]
6396 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
6397 * Bug fixes [Christophe Fergeau, Morten Welinder, 
6398   Owen, Kjartan Maraas, Mark]
6399 * Documentation improvements [Matthias, Tor]
6400
6401 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
6402 =================================================
6403 Add GKeyFile, a parser/editor for the .ini like files used in various
6404    freedesktop.org specifications. [Ray Strode]
6405 Make the handling of filename encodings consistent across all
6406    GLib functions, introduce wrappers for common POSIX 
6407    functions which accept the same filename encoding. [Tor Lillqvist, 
6408    Owen Taylor]
6409 GOption
6410  - Rename g_context_option_error_quark() to a more language-binding
6411    friendly name [Murray Cumming]
6412  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
6413 * Strip the internal aliasing prefix IA__ from function names in 
6414   assertions [Matthias Clasen]
6415 * Add a function to split uri lists. [Matthias]
6416 * Win32 bug fixes 
6417  - Don't open console windows [Tor]
6418 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
6419  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
6420   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
6421   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
6422 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
6423  Adam Hooper, Gustavo Carneiro]
6424 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
6425
6426 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
6427 =================================================
6428 * GOption
6429  - set the program name from argv[0] [Masatake YAMATO] 
6430  - make contexts work without a main group [Anders Carlsson]
6431 * Performance 
6432  - Get rid of many PLT entries for internally used exported symbols,
6433    and clean up the ABI at the same time and make make check check the
6434    list of exported symbols.  [Matthias Clasen]
6435 * Add API to get ISO 8601 week numbers [Niklas Lundell]
6436 * Add API to install an alternate default log handler [Darin Adler]
6437 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
6438 * Reduce code size bloat by removing literal strings from
6439  the g_return_if_fail() macros [Owen Taylor]
6440 * Add g_strv_length [Tim-Philipp Müller]
6441 * Win32 changes
6442  - Add API to determine the Windows version [Tor Lillqvist]
6443 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
6444   Manish Singh]
6445 * Documentation improvements [Morten Welinder, Matthias]
6446 * New and updated translations (es,nn,ro)
6447
6448 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
6449 =================================================
6450 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
6451 * Add GOption, a commandline option parser [Anders Carlsson]
6452 * Add glib_check_version [Michael Natterer]
6453 * Add XDG basedir API [Ray Strode]
6454 * Require ngettext [Danilo Segan]
6455 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
6456   Jon-Kare Hellan, Jody Goldberg]
6457 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
6458 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
6459 * New and updated translations (bs,eu,fi,gu,ne,pa)
6460
6461 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
6462 =================================================
6463
6464 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
6465   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
6466   Ögren, Tommi Komulainen]
6467 * Documentation improvements [Soeren Sandmann, 
6468   Christophe Fergeau, Danek Duvall]
6469 * New and updated translations (eu,hi)
6470   
6471 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
6472 =================================================
6473
6474 * New functions g_debug [Sven Herzberg]
6475 * Use higher precision for mathematical constants [Morten 
6476  Welinder]
6477 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
6478  [Federico Mena Quintero]
6479 * Win32
6480  - Handle empty digit string in printf() functions 
6481    correctly [Tor Lillqvist]
6482  - Support ll as format modifier for long long [Tor]
6483  - Be more careful about HOME [Tor, Ivan Wong]
6484  - Bug fixes [John Ehresman]
6485 * Miscellaneous bug and portability fixes [Danilo Segan, 
6486  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
6487  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
6488  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
6489 * Documentation updates [Matthias Clasen, Crispin Flowerday,
6490  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
6491 * New and updated translations (ja,ne,no,wa)
6492  
6493 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
6494 =================================================
6495
6496 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
6497 * Miscellaneous bug and portability fixes [Owen Taylor,
6498   Matthias Clasen, Jonas Jonsson, Christian Krause,
6499   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
6500   Piotr Klaban]
6501 * Documentation updates [Matthias]
6502 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
6503   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
6504
6505 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
6506 =================================================
6507
6508 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
6509 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
6510 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
6511   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
6512   Sebastian Wilhelmi]
6513 * Documentation updates [Owen]
6514 * Updated translations (hr,ro)
6515
6516 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
6517 =================================================
6518
6519 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
6520 * GMain threading fixes and improvements [Sebastian]
6521 * Win32 [Tor Lillqvist]
6522  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
6523  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
6524 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
6525 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
6526
6527 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
6528 =================================================
6529
6530 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
6531 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
6532 * Add atomic operations and use it for the async queue and
6533   gonce implementation. [Sebastian Wilhelmi]
6534 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
6535 * Add g_main_depth() for finding the recursion depth of the main
6536   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
6537 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
6538 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
6539 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
6540 * Updated translations (cy,et,ga,sq)
6541
6542 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
6543 =================================================
6544
6545 * Add a native AIX gmodule implementation. [Laurent Vivier]
6546 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
6547 * Extend GQueue API to match the GList API. [Soeren Sandmann]
6548 * Add g_hash_table_find().  [Tim Janik]
6549 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
6550 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
6551 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
6552 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
6553   Matthias]
6554 * Add g_strsplit_set(). [Soeren]
6555 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
6556   Soeren, Matthias]
6557 * Win32 build fixes. [Tor Lillqvist]
6558 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
6559   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
6560   Matthias]
6561 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
6562
6563 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
6564 =================================================
6565
6566 * Add G_MAXSIZE. [Manish Singh]
6567 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
6568   implementing the init-by-array functionality of the 
6569   original mersenne twister. Add g_rand_copy(). Improve seeding. 
6570   [George Lebl]
6571 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
6572 * Add g_ptr_array_foreach(). [Matthias Clasen]
6573 * Add g_timer_continue(). [Tim-Philipp Müller]
6574 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
6575 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
6576   g_file_test() there too [Hans Breuer] 
6577 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
6578 * Add G_DEFINE_TYPE() plus variants to ease the constuction
6579   of GObject boilerplate code.  [Tim Janik]
6580 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
6581 * Documentation improvements [Matthias, Manish]
6582 * Win32 build fixes [Hans]
6583 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
6584   Zack Rusin]
6585 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
6586
6587 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
6588 =================================================
6589
6590 * Add glib/gi18n.h and glib/gi18n-lib.h for common
6591   gettext support, including a Q_() macro for translation
6592   with context [Matthias Clasen]
6593 * Add a more flexible G_FILENAME_ENCODING variable
6594   as a replacement for G_BROKEN_FILENAMES [Matthias]
6595 * Fix the return value g_main_context_iterate() for
6596   newly ready sources [Padraig O'Briain]
6597 * Handle Hangul composition for normalization [Noah Levitt]
6598 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
6599 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
6600 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
6601 * Documentation improvements [Matthias]
6602 * GObject [Tim Janik]
6603  - Support '-' in g_signal_connect()/disconnect() names
6604    like 'swapped-signal'.
6605  - Add g_type_class_peek_static() and use to optimize
6606    g_object_new() for static types [Tim]
6607  - Allow setting construct-only properties from within
6608    init() implementations
6609  - Enforce readability/writeability in g_object_set/get()
6610 * Fix bug with g_ascii_strtod and multi-byte separator.
6611   [Behdad Esfahbod, Roozbeh Pournader]  
6612 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
6613   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
6614   Morten Welinder]
6615 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
6616
6617 Overview of Changes from GLib 2.2.x to GLib-2.3.0
6618 =================================================
6619
6620 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
6621 * Update Unicode data to Unicode 4.0 [Noah Levitt]
6622 * Support XML-safe formatted output with 
6623   g_markup_[v]printf_escaped [Owen Taylor]
6624 * Add g_file_read_link to read symbolic links [Matthias]
6625 * Add g_unichar_get_mirror_char to obtain the 
6626   mirrored variant of a character [Noah]
6627 * Support for one-time initialization functions. 
6628   [Sebastian Wilhelmi]
6629 * Miscellaneous API additions: g_vasprintf
6630   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
6631 * Docs improvements [Matthias]
6632 * Add support instance-private data on classed types
6633   [Mark McLoughlin, Tim Janik, Owen]
6634 * Optimize signal emissions [Soeren Sandmann, Tim]
6635 * Support a "default vtable" per interface [Tim]
6636 * Add support for properties on interfaces [Owen, Tim]
6637 * Miscellaneous API additions: g_value_take_string(),
6638   g_value_take_param(), g_value_take_object(), 
6639   g_value_take_boxed(). [Matthias]
6640 * Win32 build fixes [Tor Lillqvist]
6641
6642 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
6643 =================================================
6644
6645 * Fix a problem with g_thread_init() on 64-bit problems
6646   [Alceste Scalas, Sebastian Wilhelmi]
6647 * Add assembly implementations of byteswap macros
6648   for ia64 and x86_64. [Manish Singh]
6649 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
6650 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
6651
6652 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
6653 =================================================
6654
6655 * Win32 bug fixes [Tor Lillqvist]
6656 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
6657   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
6658 * Ensure we have a GUINT64_FORMAT by pulling in Trio
6659   if necessary [Manish Singh]
6660 * Further Trio build fixes [Matthias Clasen, Owen]
6661 * Hack around gcc, libtool issues with -pthread [Owen]
6662 * Docs improvements [Matthias]
6663 * Bug and portability fixes 
6664 * Updated and new translations (bg,de,fi,fr,sq,fr)
6665
6666 Other contributors: Kai Poitschke, Morten Welinder
6667
6668 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
6669 =================================================
6670
6671 * autoconf changes to make it possible to cross compile
6672   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
6673   Johannes Stezenbach]
6674 * Use libintl when it has bind_textdomain_codeset() and
6675   GLib doesn't. [Owen]
6676 * Improve generation of pseudo-random integers [Morten Welinder, 
6677   Sebastian Wilhelmi]
6678 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
6679 * Cleanup include order [Sven Neumann]
6680 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
6681 * Doc fixes and additions [Matthias]
6682
6683 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
6684   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
6685
6686 Overview of Changes from GLib 2.0.x to GLib-2.1.x
6687 =================================================
6688
6689 * Add copy of the Trio library to build and use for printf() when 
6690   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
6691 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
6692 * Add g_markup_parse_context_get_element() [Matthias]
6693 * Add g_utf8_strreverse [Matthias]
6694 * Add g_ascii_strtoull() [Tim Janik]
6695 * Support scanning of 64-bit values with GScanner [Tim]
6696 * Add g_set/get_application_name() [Havoc Pennington]
6697 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
6698   Use for g_return_if_fail(). [Matthias Clasen]
6699 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
6700 * Improve the seeding algorithm of GRandom to avoid problems
6701   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
6702   environment variable. [Sebastian Wilhelmi]
6703 * Improve thread configure checks, use -pthread where applicable
6704   [Sebastian]
6705 * Improve handlng of thread priorities [Sebastian]
6706 * Fix up parameter names that might shadow functions from
6707   system headers [Soeren Sandmann]
6708 * Clean up usage of deprecated functions [Manish Singh]
6709 * Docs fixes and improvements. In particular, include "Since" information.
6710   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
6711   Owen Taylor, Morten Welinder]. 
6712
6713 Overview of Changes in GLib 2.0.7
6714 =================================
6715
6716 * Fix C++ warnings in gtype.h [Dom Lachowicz]
6717 * Fix g_type_fundamental_next() [Tim Janik]
6718 * Fix various missing includes of config.h [Morten Welinder]
6719 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
6720 * Various 64-bit fixes [Manish Singh]
6721 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
6722 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
6723 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
6724      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
6725      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
6726 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
6727
6728 Overview of Changes in GLib 2.0.6
6729 =================================
6730
6731 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
6732 * Clean up debug spew from GObject [Anders Carlsson]
6733 * Compiler warning fixes [David L. Cooper II]
6734 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
6735 * Fixes for --disable-debug [Sebastian Wilhelmi]
6736 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
6737   Rajkumar Sivasamy, Laurent Vivier]
6738 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
6739   Sebastian Rittau, Linus Welleij]
6740 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
6741 * Updated translations (bg,ko,vi)
6742
6743 Overview of Changes in GLib 2.0.5
6744 =================================
6745
6746 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
6747 * Clean up debug spew from GObject [Anders Carlsson]
6748 * Compiler warning fixes [David L. Cooper II]
6749 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
6750 * Fixes for --disable-debug [Sebastian Wilhelmi]
6751 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
6752   Rajkumar Sivasamy, Laurent Vivier]
6753 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
6754   Sebastian Rittau, Linus Welleij]
6755 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
6756 * Updated translations (bg,ko,vi)
6757
6758 Overview of Changes in GLib 2.0.4
6759 =================================
6760
6761 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
6762 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
6763 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
6764 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
6765
6766 Overview of Changes in GLib 2.0.3
6767 =================================
6768
6769 * Handle sorting 0-length arrays (Ron Arts)
6770 * Threading fixes (Sebastian Wilhelmi)
6771 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
6772   Sebastian, Qingjiang Yuan)
6773 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
6774 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
6775 * Win32 fixes (Tor Lillqvist)
6776 * Try to fix g_get_charset() related segfaults. (Owen)
6777 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
6778   Andrew P. Lentvorski, Jr.)
6779 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
6780 * g_markup fixes. (Matthias Clasen.)
6781 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
6782   Wayne Schuller)
6783
6784 Overview of Changes in GLib 2.0.1
6785 =================================
6786
6787 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
6788 * Performance improvements for GObject parameter lookup, 
6789   g_filename_to/from_utf8() [Alex Larsson]
6790 * Actually check interface prerequisites [Matthias Clasen,
6791   Miroslaw Dobrzanski-Neumann]
6792 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
6793 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
6794 * Fixes for g_log() and threading.
6795   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
6796 * Make g_print(), g_printerr(), g_warning(), etc, convert from
6797   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
6798 * Fixes for GIOChannel on windows. [Tor Lillqvist]
6799 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
6800 * Fix file descriptor leak in g_file_get_contents() [Matthias]
6801 * Workaround iconv() problems on older Solaris [Lauri Alanko]
6802 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
6803 * Minor bug fixes.
6804
6805 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
6806   Akira Tagoh, Morten Welinder
6807
6808
6809 Overview of Changes in GLib 2.0.0
6810 =================================
6811
6812 * Thread portability fixes [Sebastian Wilhelmi]
6813 * Documentation updates [Owen Taylor]
6814 * Make g_strerror(), g_strsignal() properly return UTF-8,
6815   call bind_text_domain_codeset() so that error strings
6816   are in UTF-8 as well. [Owen, Tor Lillqvist]
6817
6818 Overview of Changes in GLib 2.0.0 rc1:
6819 ======================================
6820
6821 * Win32 fixes [Tor Lillqvist]
6822 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
6823 * Fix up g_date_strftime [Daniel Elstner]
6824 * Add some structure padding [Tim Janik]
6825 * Make g_get_homedir() prefer the users home directory to $HOME
6826
6827 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
6828
6829 Overview of Changes in GLib 1.3.15:
6830 ===================================
6831
6832 * Speed up marshalers by using private access to GValue 
6833   [Anders Carlsson, Tim Janik]
6834 * Reduce GValue to 2 elements [Tim]
6835 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
6836 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
6837 * Add padding to various structures [Owen Taylor, Tim]
6838 * Win32 fixes [Tor Lillqvist]
6839
6840 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
6841   Daniel Elstner
6842
6843 Overview of Changes in GLib 1.3.14:
6844 ===================================
6845
6846 * Register value transformations for gint64, guint64 [Andy Wingo]
6847 * Build with large-file support [Sven Neumann, Owen Taylor]
6848 * Fix handling of hostnames in URI's [Darin Adler]
6849 * Main loop bug fixes [Havoc Pennington, Owen]
6850 * Doc fixes and improvements [Manish Singh, Tim Janik]
6851 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
6852 * Win32 fixes [Hans Breuer, Tor Lillqvist]
6853 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
6854 * Miscellaneous bug fixes
6855
6856 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
6857   Morten Welinder.
6858
6859 Overview of Changes in GLib 1.3.13:
6860 ===================================
6861
6862 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
6863 * Miscellaneous win32 fixes [Tor, Hans Breuer]
6864 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
6865 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
6866 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
6867 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
6868   Laszlo Peter, Havoc Pennington, Tim Janik]
6869
6870 Overview of Changes in GLib 1.3.12:
6871 ===================================
6872
6873 * Implement closure chaining, fixing up API (Tim Janik)
6874 * Closure chaining test case (James Henstridge)
6875 * Make GType long not int where both are equal width (Tim)
6876 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
6877 * Fixes for NetBSD. (Dan Winship)
6878 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
6879 * Save space for GBSearchArray (Tim Janik)
6880 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
6881
6882 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
6883   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
6884   Sebastian Wilhelmi.
6885
6886
6887 Overview of Changes in GLib 1.3.11:
6888 ===================================
6889
6890 * Win32 fixes [Hans Breuer, Tor Lillqvist]
6891 * Documentation improvements [Matthias Clasen]
6892 * Portable directory handling API [Hans]
6893 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
6894 * Fix excess relocations in Unicode tables [Andrew Taylor]
6895 * Fix gpattern for UTF-8 [Matthias Clasen]
6896 * Support overriding class closures [Tim Janik]
6897 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
6898 * Hide pointers to type information inside GType to reduce locking
6899   [Alex Larsson, Tim]
6900 * Adds check for direct inclusion of gobject/*.h [Owen]
6901 * GObject API cleanups [Tim]
6902
6903 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
6904   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
6905
6906
6907 Overview of Changes in GLib 1.3.10:
6908 ===================================
6909
6910 * Many Win32 fixes and improvements [Tor Lillqvist]
6911 * Documentation improvements [Matthias Clasen]
6912 * g_string_printfa() renamed to g_string_append_printf()
6913 * Use libcharset from libiconv to implement charset detection
6914   more portably. [Owen Taylor, Hidetoshi Tajima]
6915 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
6916 * Make support for 64 bit integers a requirement [Joshua]
6917 * GPattern improvements [Tim Janik, Matthias]
6918 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
6919 * Many bug fixes and minor tweaks.
6920
6921 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
6922   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
6923   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
6924   Jacob Berkman
6925
6926
6927 Overview of Changes in GLib 1.3.9:
6928 ==================================
6929
6930 * Fixes for comparison of threads [Sebastian Wilhelmi]
6931 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
6932 * Win32 fixes [Tor Lillqvist, Hans Breuer]
6933 * Add a len argument to g_ascii_strup/strdown
6934 * Bug, portability fixes, cleanups.
6935
6936 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
6937
6938
6939 Overview of Changes in GLib 1.3.8:
6940 ==================================
6941
6942 * Documentation updates [Owen]
6943 * Made GType interfaces overridable in derived types
6944 * Many win32 fixes [Tor Lillqvist]
6945 * Miscellaneous cleanups and fixes
6946
6947 Other contributors:
6948   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
6949
6950
6951 Overview of Changes in GLib 1.3.7:
6952 ==================================
6953
6954 * Integrate GClosure support into the main loop [Owen Taylor]
6955 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
6956 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
6957 * Minor hash table optimizations
6958 * Main loop and threading improvements [Sebastian Wilhelmi]
6959 * Added g_ascii_* functions to be used for locale insensitive UTF-8
6960   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
6961 * Add functions for Unicode case-conversion, normalization, and 
6962   collation [Owen]* GString improvements [Owen]
6963 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
6964 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
6965 * Make code 64bit clean [Mark Murnane]
6966 * More G_CONST_RETURN fixes
6967 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
6968 * Miscellaneous bug and API fixes
6969
6970 Other contributors:
6971   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
6972   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
6973   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
6974   Peter Williams
6975
6976
6977 Overview of Changes in GLib 1.3.6:
6978 ==================================
6979
6980 * Threads have a "return value" from g_thread_join
6981 * Removed ability to adjust thread stack size
6982 * Prefix warnings with progname/PID by default, change toggle for this to 
6983   be an env variable G_MESSAGES_PREFIXED not a compile-time option
6984 * GMarkup speedups
6985 * GDate const, convenience fixups
6986 * Include test cases that headers are compilable by C++ compiler
6987 * Add ability to spawn processes with argv[0] != executable path.
6988 * g_strstr_len, g_strrstr, g_strrstr_len
6989 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
6990 * Misc bug fixes
6991
6992
6993 Overview of Changes in GLib 1.3.5:
6994 ==================================
6995
6996 * Added an installed glib-mkenums Perl program for parsing enumeration
6997   declarations from header files.
6998 * Mark some additional deprecated functions.
6999 * Bug and Portability fixes
7000
7001
7002 Overview of Changes in GLib 1.3.4:
7003 ==================================
7004
7005 * Efficiency improvements for GThreadPool
7006 * A few bug fixes
7007 * Build fixes
7008 * Documentation improvements
7009
7010
7011 Overview of Changes in GLib 1.3.3:
7012 ==================================
7013
7014 GLib:
7015
7016 * More user_data support in various functions.
7017 * Main loop API revamps to support per-thread main loops.
7018 * Unicode handling improvements.
7019 * Implemented debugging traps.
7020 * G_CONST_RETURN specification all over the place.
7021 * Various new small utility functions.
7022 * Random number generator precision improvements.
7023 * New configure option --disable-mem-pools.
7024 * Many Win32 improvements.
7025 * Added g_try_malloc() friends varinats.
7026 * Many documentation improvements.
7027 * Many threading improvements, support for dynamic allocation
7028   of static mutexes.
7029 * GHookLIst API cleanups.
7030 * Improved format support of GDate parser.
7031 * String function speed improvements with new g_stpcpy().
7032 * Hashtable API additions.
7033 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
7034 * Optimizations, cleanups, bug fixes.
7035
7036 GObject:
7037
7038 * Added many convenience functions.
7039 * GClosure and GParamSpec use float/sink ref-counting scheme now.
7040 * Reworked property change notification.
7041 * Binary searchable array cleanups, so it's widely usable now.
7042 * Added static content keeping for some GValue types.
7043 * Support for statically scoped signal parameters.
7044 * Extinguished property trailer args in set/get interface.
7045 * Added support for abstract types.
7046 * G_CONST_RETURN specification all over the place.
7047 * Split parameter exchange functionality into value transforms
7048   and parameter conversions.
7049 * Added signal emission hooks and signal accumulators.
7050 * Added interface prerequisites to support is_a (interface, object)
7051   relations.
7052 * Implemented GValueArray.
7053 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
7054   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
7055   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
7056 * Varrags value collection improvements.
7057 * Implemented debugging traps.
7058 * Made things thread-safe.
7059 * Many documentation improvements.
7060 * Many cleanups, optimizations and bug fixes.
7061
7062
7063 Overview of Changes in GLib 1.3.2:
7064 ==================================
7065
7066 GLib:
7067
7068 * Win32 build improvements  [Tor]
7069 * Improvements to error reporting  
7070   (g_critical(), g_return_if_reached()) [Darin]
7071 * Add g_strlcpy/g_strlcat  [David Wheeler]
7072 * New IO channel implementation for Win32  [Tor] 
7073 * Make g_array_free, g_string_free return pointer to memory requested
7074   not to be freed.  [Darin]
7075 * Added GError based error reporting for thread functions.  [Sebastian]
7076 * Moved reference docs into GLib distribution. [Owen]
7077 * Added g_convert() for doing convenient character set conversions based
7078   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
7079 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
7080   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
7081 * Portability fixes for threading.  [Sebastian]
7082 * Added convenient functions for launching new processes (g_spawn_*),
7083   and shell quoting/unquoting functions.  [Havoc]
7084 * Split glib.h into many headers.  [Sebastian]
7085 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
7086 * Fixed confusions between comparison functions that return <0, 0, >0
7087   and equaility functions that return FALSE,TRUE.  [Sebastian]
7088 * Added safe/portable temporary file manipulation functions.  [Tor]
7089 * autoconf improvements.  [Raja]
7090 * Many documentation improvements.
7091 * Bug fixes.
7092
7093 GObject:
7094
7095 * Added boxed and pointer types.  [Tim/Jonathan]
7096 * Added callback abstraction (GClosure)  [Tim]
7097 * Added signal system (GSignal)  [Tim]
7098 * Make GTypePlugin an interface  [Tim]
7099 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
7100 * Bug fixes.
7101
7102
7103 What's new in GLib 1.3.1:
7104 =========================
7105
7106 * New GObject library added including object system based on
7107   the GTK+ object system. 
7108 * Functions for getting the properties of Unicode characters, 
7109   computing the canonical decomposition and ordering combining
7110   characters aand manipulating UTF-8 string manipulation based
7111   on libunicode.
7112 * GString now properly handles embedded nuls.
7113 * Multiple fixes from the 1.2.x branch.
7114 * Upgrade to libtool 1.3.3
7115 * Full thread support (thread creation and destruction).
7116 * BeOS port, BeOS dynamic modules.
7117 * Many improvements to the Windows ports.
7118 * Improvements to the OS/2 port, OS/2 module support.
7119 * Double ended queue implementation.
7120 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
7121 * New configure option --enable-msg-prefix to prefix messages, warnings
7122   et ceteri with the program name and the process id.
7123 * New thread-safe random number generator Mersenne Twister.
7124 * g_strcompress() added, g_strescape() had a slight API change, and
7125   more tightly defined semantics.
7126 * the g_string(x) macro has been removed, #x may be used instead.
7127                                 
7128