Bug 553447 \e$(Q#|\e(B g_assert_no_error()
[platform/upstream/glib.git] / NEWS
1 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
2 ===================================================
3
4 * Bugs fixed:
5  550433 g_test_init doesn't recognize --help
6  523463 Core dump in gmain.c:2482:IA__g_main_context_check
7  551228 G_STRFUNC on recent Sun compiler should be expanded...
8  551410 gtestutils.c: using printf without prototype
9  551731 g_date_set_time[_t] docs should mention what timezone
10  548321 <string.h> is not included in gi18n-lib.h
11  551149 xdgmime mem leak
12  550647 synchronous pipe I/O when reading mount reply
13  551887 Docs for g_desktop_app_info_new_from_filename aren't...
14  551681 g_content_type_guess() too naive with filenames
15  552352 g_app_info_launch doesn't work if "Path" key...
16  551408 gmodule.def generated to builddir...
17  552359 g_file_info_get_icon should return GThemedIcon, and...
18
19 * Updated translations:
20  Arabic (ar)
21  Bengali India (bn_IN)
22  British English (en_GB)
23  Hindi (hi)
24  Croatian (hr)
25  Korean (ko)
26  Oriya (or)
27  Turkish (tr)
28  Telugu (te)
29
30
31 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
32 ===================================================
33
34 * Win32:
35   - rework the g_poll() implementation to match poll() semantics more closely
36
37 * Bugs fixed:
38  324234 Using g_io_add_watch_full() to wait for connect() to return...
39  548278 Async GETs connections are always terminated unexpectedly...
40  500246 Bug fixes for giowin32
41  523939 Example program for GValue
42  550096 GBookmarkFile parser is not forward compatible
43  550040 Move GString, rand and printf tests to the unit test framework
44  550104 trivial documentation fix for g_get_home_dir
45  548988 g_file_replace fails on Windows when the target file exists
46  550059 Wrong docs for g_emblemed_icon_add_emblem
47  548800 Missing a g_object_get_type function
48  550056 Missing documentation for g_emblemed_icon_get_emblems
49
50 * Updated translations:
51  Bulgarian (bg)
52  Czech (cs)
53  German (de)
54  Estonian (et)
55  Basque (eu)
56  French (fr)
57  Hebrew (he)
58  Hungarian (hu)
59  Italian (it)
60  Japanese (ja)
61  Lithuanian (lt)
62  Maithili (mai)
63  Dutch (nl)
64  Swedish (sv)
65  Thai (th)
66  Ukrainian (uk)
67  Vietnamese (vi)
68
69
70 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
71 ===================================================
72
73 * More fixes for 64-bit Windows
74
75 * GIO
76  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
77
78 * Bugs fixed:
79  546329 API docs for g_utf8_normalize() are incorrect
80  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
81  547200 g_utf8_find_next_char() issues
82  547637 unconditional #include of sys/statfs.h in configure
83  547337 G_DISABLE_DEPRECATED breaks tests build
84  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
85  502498 Test framework assertion failures should follow gcc
86  546371 Improve docs re g_file_monitor
87  546483 GThemedIcon:use-default-fallbacks is not readable without...
88  546132 GFileIcon is bindings-unfriendly
89  542156 zfs mount in home directory shown on nautilus desktop 
90  535124 umask 002 not being applied for new directories...
91  547080 g_file_copy leaks expected errors
92  546582 Callbacks from GFileMonitor present a GFile...
93  547262 Missing link in the docs
94
95 * Updated translations:
96  Arabic (ar)
97  Catalan (ca)
98  Spanish (es)
99  Basque (eu)
100  Finnish (fi)
101  Galician (gl)
102  Hebrew (he)
103  Marathi (mr)
104  Norwegian bokmål (nb)
105  Portugese (pt)
106  Brazilian Portugese (pt_BR)
107  Swedish (sv)
108  Thai (th)
109
110
111 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
112 ===================================================
113
114 * Fix problems on 64-bit Windows
115
116 * g_markup_context_get_user_data: New function to access
117   the user_data outside of callbacks
118
119 * GIO
120  - g_mount_guess_content_type_sync: synchronous version of
121    g_mount_guess_content_type
122  - GEmblem: A GIcon implementation that adds emblem-related
123    metadata to icons
124  - GEmblemedIcon: A GIcon implementation that can add emblems
125    to icons
126
127 * Bugs fixed:
128  544088 option_test_LDADD is left in tests/Makefile.am
129  544465 gmarkup makes it hard to use pre-rolled parsers
130  545485 Implicit declaration of utime()
131  545798 "Since: 2.18" mark is missing in g_set_error_literal...
132  544140 fam-helper 64-bit issue
133  529694 SELinux context setting support
134  545157 wrong/no list of "open with" applications for .cc...
135  545203 gfile.c: argument is different type
136  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
137  544177 Fix trivial cut and paste error in documentation
138  545395 Language tweak for g_value_set_string* docs
139  541036 Gnumeric crashes when trying to open Desktop...
140  546079 leak in xdgmime
141  545395 Language tweak for g_value_set_string* docs
142  546017 Don't copy attributes when copying a symlink
143
144 * Updated translations:
145  Arabic (ar)
146  Estonian (et)
147  Galician (gl)
148  Italian (it)
149  Japanese (ja)
150  Korean (ko)
151  Norwegian bokmål (nb)
152  Pashto (ps)
153  Portugese (pt)
154
155
156 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
157 ===================================================
158
159 * GIO:
160  - New API to handle content types: g_mount_guess_content_type,
161    g_content_type_guess_for_tree.
162  - Export the eject-button signal on the volume monitor class
163  - New API to enable out-of-process volume monitors: 
164    g_volume_get_activation_root
165
166 * GObject:
167  - New API to handle signals without slots in the class structure:
168    g_signal_new_class_handler, g_signal_override_class_handler   
169
170 * Internationalization:
171  - Add an NC_ macro that is a no-op equivalent of C_
172
173 * GMarkup:
174  - Add two new functions g_markup_parse_context_push,
175    g_markup_parse_context_pop to support "subparsers"
176
177 * Bugs fixed:
178  541208 Functions to easily install and use signals without...
179  541507 Ambiguous description of assigned characters in the...
180  543040 async reading on dummy file will crash on GIO_USE_VFS=local
181  543560 enable gio-FEN back-end warnings on Solaris will crash...
182  528317 GRegex does not allow recursion limit
183  337518 GMarkup: Subparser support
184  541794 drive-eject-button signal
185  541793 activation root for volumes
186  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
187  428048 2 of 51 tests fail on Solaris
188  542332 small fix for error message in GMarkup
189  482413 get_contents_stdio -- overflow and memory corruption
190  406120 g_ascii_strtod
191  334234 "printf" format error
192  536996 Missing noop i18n macro equivalent to C_
193  540616 mem leak in filechooser button
194  539229 gobject-query calls itself query
195  521589 [RFC] gobject documentation should mention Vala
196  543168 Description of G_SLICE=debug-blocks discourages its use
197  543220 Case collision on gio-extension-points.html
198  530759 update the gobject tutorial to the XXI century
199  535223 gbookmark file inefficiency ...
200  543504 crash in Epiphany Web Browser: Opening local file
201
202 * Updated translation:
203  German (de)
204  Estonian (et)
205  Pashto (ps)
206  Albanian (sq)
207  Thai (th)
208  Traditional Chinese (zh_HK)
209  Traditional Chinese (zh_TW)
210
211
212 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
213 ===================================================
214
215 * PCRE
216  - fix for CVE-2008-2371 
217
218 * Bugs fixed:
219  538119 glib's mainloop leaks a pipe to sub-processes
220  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
221  539067 The document g_io_channel_win32_new_fd() says...
222  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
223  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
224  539074 Cannot get exit status with g_spawn_command_line_sync
225  316221 G_LOCK warns about breaking strict-aliasing rules
226  539770 migrate gstrfunc unit tests to gtest
227  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
228  538044 unconditional use of LC_MESSAGES
229  540545 Monotonic time and timer offset
230  535947 want g_set_error_literal
231  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
232  536252 GFileEnumerator should allow access to the containing GFile
233  538362 Get Win32 icons back in the file chooser
234  540802 g_list_prepend doesn't concat lists
235  540423 unrecoverable error after g_seekable_truncate
236  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
237  539090 g_content_type_from_mime_type() should unalias
238  540331 g_file_append_to () documentation: can return NULL
239  534639 add g_desktop_app_info_new_from_keyfile
240  536733 gio build failure on Irix
241  536160 Add g_file_monitor()
242  538127 FileChooser broken on win32
243  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
244  538564 gio should have gio-types.h
245  540047 glib-genmarshal.c: '#include <io.h>' is too before
246
247 Updated translations:
248  Korean (ko)
249  Occitan (oc)
250
251
252 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
253 ===================================================
254
255 * New function: g_utime(), a gstdio wrapper for utime()
256
257 * New functions: g_dgettext() and g_dngettext(), wrappers
258   for corresponding gettext functions with added functionaliy
259
260 * Support the latest version of the shared-mime spec, including
261   icons for mime types 
262
263 * New function: g_themed_icon_prepend_name()
264
265 * Bugs fixed: 
266  535418 Please document which glib version defines goffset
267  528715 Misprint in the description of the interface g_type_class_add_private
268  528714 Misprint in the description of the interface g_param_spec_flags
269  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
270  530527 Misprint in the description of the interface 
271         g_cclosure_marshal_VOID__FLAGS
272  530526 Misprint in the description of the fields 'class_init' and 
273         'class_finalize' of the structure GTypeInfo
274  528719 Improvement to the documentation of the "g_object_connect" interface
275  528172 gtk_signal_handlers_unblock_* functions return value
276         amount of matched signals, not amount of actually unblocked
277  528717 Misprint in the description of the parameter 'type_id' for 
278         the interface g_type_register_fundamental
279  528716 Misprint in the description of the parameter 'iface_data' for 
280         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
281  537555 GObject instantiation not thread safe
282  537546 'desktop' shortcut in file chooser looks like a generic folder
283  537392 Additional colon in xattr name
284  536641 Filesystem querying in gio does not list AFS and autofs file systems
285  528600 g_dummy_file_get_parent("scheme://example.com/")
286  503071 Application direction changes to right to left even if theres no 
287         translation
288  502511 g_assert_cmphex prints invalid message
289  338162 Use po/LINGUAS
290  314453 Nautilus crashes in Solaris when browsing the attached file
291  529321 make check fails in glib/pcre
292  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
293         fallback to $HOME/Desktop if xdg-user-dirs is not in use
294  498732 g_key_file_to_data cannot fail
295  511367 add g_file_make_directory_with_parents
296  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
297         gcc 4.0 or newer
298  536158 also bump GHashTable version when a node is removed via
299         g_hash_table_iter_remove()/g_hash_table_iter_steal()
300  531403 g_utf8_collate broken on Mac
301  535628 test/patterntest.c still includes gpattern.h directly
302  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
303
304 * Translation updates:
305  Arabic (ar)
306  German (de)
307  Italian (it)
308  Norwegian bokmål (nb)
309  Thai (th)
310
311
312 Overview of Changes from GLib 2.16.x to GLib 2.17.0
313 ===================================================
314
315 * Update to Unicode 5.1
316
317 * Update included libcharset to the one shipped with libiconv 0.12
318
319 * Update included PCRE to 7.7
320
321 * Enforce that only toplevel headers are directly included.
322   This is turned on by default for GObject and GIO. To turn
323   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
324
325 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
326
327 * On Solaris, use FEN for file monitoring in GIO
328
329 * Use the GIO_EXTRA_MODULES environment variable to find
330   additional GIO modules 
331
332 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
333   function attribute
334
335 * g_checksum_reset: New function to reset the state of a GChecksum 
336
337 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
338   rate at which events are reported
339
340 * g_file_query_file_type: New utility function to query the type of
341   a file
342
343 * g_memory_output_stream_get_data_size: New function to obtain the
344   size of the written data.
345
346 * Bugs fixed:
347  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
348  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
349  518160 replace two g_strdup_printf calls in GBookmarkFile
350  523877 gbookmarkfile: avoid using g_string_append_printf() and
351         other optimizations 
352  525192 100% CPU if run main loop with no IO sources
353  315437 extern inline -> static inline
354  524314 g_convert() on Win32 implicitly converts full width
355         alphanumerics into half width
356  525732 Error in documentation for g_list_first
357  525674 A typo in gmarkup.c
358  448943 g_timeout_add_seconds() problems
359  525972 UCS-4 not in the new win_iconv implementation
360  526619 make test-report crash
361  491554 Update to Unicode 5.1.0
362  519137 g_slice_dup macro needs cast for 64-bit platform
363  528752 Win32 build and SSL not working
364  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
365  528667 Typos in testing module documentation
366  459905 Bug in wcwidth data
367  534085 g_unichar_iswide_cjk() has a totally wrong table
368  501651 Update glib/libcharset
369  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
370  534319 GLib's .pc files could use Libs.private
371  534137 Typo in g_spawn_async_with_pipes doc
372  517419 gio win32 directory monitor
373  526796 Wrong order of arguments in g_file_copy's fallback
374  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
375  532965 Should not return filesystem::free for certain file systems
376  525553 fix typo and nitpicking in GArray documentation
377  526572 Missing * in declaration of parent_class in Object
378         Destruction section of GObject Reference Manual
379  528648 Extra >s in Object Construction section
380  535021 g_param_spec_internal documentation should
381         describe purpose of nick and blurb
382  521513 Firefox crash when using file picker
383  528433 gdesktopappinfo snafu ...
384  533369 API g_file_info_get_attribute_string () unables to get "...
385  521045 glib f_fstypename miscellany
386  521672 compile error
387  521946 control rate limit on GUnixMountMonitor
388  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
389  523015 Implement sliding window based upload operation
390  523019 Use new GCC 4 feature
391  523338 list nfs4 as a nfs mount type
392  524350 Make glib build without NLS again
393  524579 g_file_copy reports wrong total on progress callback for ...
394  524742 A typo in gtestutils.c.
395  524950 Minor documentation typos.
396  525866 the user directory should not be considered as a mount to...
397  526320 should not list mounts that the user doesn't have permiss...
398  527132 nautilus crash when making ftp connection
399  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
400  534759 Build failure in gio
401  534764 Typo in error produced by g_file_make_directory
402  521851 Redudant tests in gunixmounts.c
403  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
404  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
405  534177 Invalid description of the interface g_cclosure_marshal_S...
406  520715 Add GFile method g_file_query_file_type
407  523039 nautilus can't access to trash/computer/network if gvfs i...
408  
409 * Updated translations:
410  Arabic (ar)
411  Bulgarian (bg)
412  Catalan (ca) 
413  Czech (cs)
414  Greek (el)
415  Candian English (en_CA)
416  British English (en_GB)
417  Spanish (es)
418  Estonian (et)
419  Basque (eu)
420  Galician (gl)
421  Hebrew (he)
422  Hungarian (hu)
423  Japanese (ja)
424  Lithuanian (lt)
425  Norwegian bokmål (nb)
426  Dutch (nl)
427  Occitan (oc)
428  Portugese (pt)
429  Russian (ru)
430  Slovak (sk)
431  Albanian (sq)
432  Swedish (sv)
433  Turkish (tr)
434  Vietnamese (vi)
435
436
437 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
438 ===================================================
439
440 * Fix a crash in g_themed_icon_new
441
442 * Update the included PCRE to 7.6
443
444
445 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
446 ===================================================
447
448 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
449
450 * GIO:
451  - Add missing GMountMountFlags argument to g_unix_volume_mount
452  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
453    reference
454  - Add properties to GThemedIcon for bindings sake
455
456 * Bugs fixed:
457  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
458  510855 g_checksum_update(): Take -1 for length.
459  517676 g_themed_icon_new*() do more than call g_object_new().
460  518816 should handle rmdir returning EEXIST correctly
461  519352 g_[s]list_delete_link() docs
462  519489 Fixes for sparse warnings in gio
463  520169 add monitor argument to vfunc for GVolumeMonitor
464  520700 Add type check in g_file_query_exists
465  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
466  518720 No MIME type for empty files
467  521013 in documentation, goffset doesn't say "Since 2.x"
468  521028 Missleading error messages from g_io_channel_set_encoding()
469  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
470
471 * Updated translations:
472  Assamese (as)
473  Bengali India (bn_IN)
474  Czech (cs)
475  German (de)
476  Spanish (es)
477  Estonian (et)
478  Finnish (fi)
479  French (fr)
480  Gujarati (gu)
481  Italian (it)
482  Lithuanian (lt)
483  Malayalam (ml)
484  Marathi (mr)
485  Norwegian bokmål (nb)
486  Romanian (ro)
487  Russian (ru)
488  Slovak (sk)
489  Ukrainian (uk)
490
491  
492 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
493 ===================================================
494
495 * GIO:
496  - New file attributes: trash::item-count, filesystem::use-preview
497  - Rename g_file_contains_file to g_file_has_prefix
498  - g_file_query_filesystem_info grew async variants
499  - g_themed_icon_append_name: new convenience function
500  - g_content_type_get_icon is implemented now
501  - Only show mounts in /media and ~
502  - g_file_contains_file has been renamed to g_file_has_prefix
503
504 * Win32:
505  - g_win32_get_package_installation_directory_of_module: new function
506    which supersedes g_win32_get_package_installation_directory
507  - Use alertable wait functions so that I/O completion routines or 
508    user-mode Asynchronous Procedure Calls can be run
509  - Fix race conditions in g_spawn implementation on win32
510
511 * Other:
512  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
513
514 * Updated translations:
515  Arabic (ar)
516  Belarusian Latin (be@latin)
517  Catalan (ca) 
518  British English (en_GB)
519  Finnish (fi)
520  Galician (gl)
521  Hebrew (he)
522  Italian (it)
523  Kannada (kn)
524  Norwegian bokmål (nb)
525  Dutch (nl)
526  Brazilian Portugese (pt_BR)
527  Vietnamese (vi)
528
529
530 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
531 ===================================================
532
533 * Update the included PCRE to 7.6
534
535 * GIO:
536  - g_volume_should_automount: new function to determine if a volume
537    should be mounted automatically
538  - g_file_query_default_handler: new convenience function to get
539    the default handler for a file
540  - g_app_info_launch_default_for_uri new convenience function to
541    launch the default handler for a URI
542  - Use mimeapps.list and defaults.list as discussed on xdg list
543    recently
544  - g_app_info_get_default_for_uri_scheme has a real implementation
545    now (gvfs provides a GConf-based implementation)
546  - There is the beginning of a test suite
547  - standard::description:  new file attribute
548  - GMountMountFlags flags argument added to mount calls
549
550 * GObject:
551  - class initialization is now threadsafe
552
553 * Updated translations:
554   Arabic (ar)
555   Catalan (ca)
556   Spanish (es)
557   Basque (eu)
558   Italian (it)
559   Japanese (ja)
560   Kannada (kn)
561   Korean (ko)
562   Macedonian (mk)
563   Occitan (oc)
564   Portugese (pt)
565   Brazilian Portugese (pt_BR)
566   Swedish (sv)
567   Thai (th)
568
569
570 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
571 ===================================================
572
573 * G_GNUC_PRETTY_FUNCTION has been deprecated
574
575 * GIO:
576  - g_file_copy has an async variant now
577  - Drives and volumes now have API to get identifiers
578    like Hal UDIs or UUIDs.
579  - There is now a registration API to let modules register
580    extensions they provide, such as volume monitor implementations
581
582 * Bugs fixed:
583   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
584   316260 [patch] Doc patches for gnode (2.8.1)
585   385132 solaris gettext support fix
586   484261 ./configure check for system PCRE unicode support fails w...
587   510292 GOption main help not shown
588   511580 Implement g_file_copy_async
589   511654 Compile errors due to C99 constructs
590   487909 g_utf8_strreverse and combining marks
591   512381 unused variable 'is_main_group' 
592
593 * Updated translations:
594   Arabic (ar)
595   Belarusian (be)
596   Czech (cz)
597   Spanish (es)
598   French (fr)
599   Galician (gl)
600   Portugese (pt)
601   Russian (ru)
602   Swedish (sv)
603   Thai (th)
604
605
606 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
607 ===================================================
608
609 * GChecksum:
610  - g_checksum_update can accept nul-terminated strings
611  - The MD5 implementation works correctly on buffers 
612    that are longer than 64 bytes
613
614 * GIO:
615  - Don't include a copy of the inotify headers, rely on system headers
616  - g_file_find_enclosing_mount has an async variant now
617  - Reduntant seek API on file streams has been removed
618
619 * Bugs fixed:
620   508602 gmemory{in|out}putstream.c: unknown pointer size
621   508771 There is no g_file_test/exists() for GFile
622   508773 g_uri_escape_string() documentation unclear.
623   509465 AM_PATH_GLIB_2_0 doesn't support gio
624   509626 async functions: Document allowed NULL callback?
625   509990 GSeekable documentation unclear
626   510448 No inotify support on ARM or SH5
627   510855 g_checksum_update(): Take -1 for length. 
628
629 * Updated translations:
630   Basque (eu)
631   Marathi (mr)
632   Swedish (sv)
633   Ukrainian (uk)
634
635
636 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
637 ===================================================
638
639 * GIO:
640  - Mount operation API change: unhandled methods get reported via 
641    the reply, rather than by the signal emission return value
642  - File monitor API change: Add a GError argument to g_file_monitor_file
643  - g_unix_mount_guess_should_display(): new function
644
645 * Bugs fixed:
646   508224 [PATCH] FAM backend crashes due to double free
647   508074 GAsyncResult documentation suggests g_freeing it.
648   508108 GFile documentation slightly unclear.
649   508309 rpc_pipefs mount points should be hidden
650   508378 GFileInfo documentation implies that it changes attribute...
651   508719 g_file_get_relative_path fails if parent is root
652   508773 g_uri_escape_string() documentation unclear.
653
654 * Updated translations:
655   Arabic (ar)
656   Spanish (es)
657   Hebrew (he)
658   Italian (it)
659   Korean (ko)
660   Turkish (tr)
661
662
663 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
664 ===================================================
665
666  * Portability fixes:
667  - Assertion functions are marked as noreturn again
668  - Handling of inline functions has been fixed to work with gcc 4.3
669  - C99 comments have been removed from headers
670  - The nonportable sed -i option is no longer used
671
672  * GIO:
673   - Clarified the semantics of g_app_info_get_all()
674   - API for memory input and output streams has been changed a bit
675   - GDirectoryMonitor has been removed; GFileMonitor can monitor
676     files and directories now
677
678  * Bugs fixed:
679    504829 Invalid environment passed to g_spawn_async in g_desktop_...
680    505258 crash in Users and Groups: Adding a user
681    505815 g_content_types_get_registered should not g_free keys
682    491218 g_timer_new() doesn't initialize timer->end
683    315437 extern inline -> static inline
684    476856 Inconsistency between standard and implementation of the ...
685    480122 g_module_open fails to open modules with ".la" extension
686    495589 gspawn.c failing to set FD_CLOEXEC
687    500273 doesn't build with --disable-visibility
688    504142 Do not show empty groups in --help output
689    504879 giofam incorrectly linked
690    505042 add file attribute for actually used file size in bytes
691    505058 xattr namespace docs
692    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
693    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
694    505887 older darwin lacks lchown
695    506374 gmemoryinputstream api
696    506461 Conversion of g_assert_not_reached() and friends into fun...
697    503051 Small bug in glib interface
698    506395 Updates to GIO documentation
699    507628 Missing .pc entry for gio linking against glib
700    505195 [patch] typo in g_try_new0 docs 
701    507822 g{file,directory}monitor changes signal problem
702    506377 gmemoryoutputstream write implementation
703    507835 bug in gunixinputstream 
704
705  * Updated translations:
706    Arabic (ar)
707    Belarusian Latin (be@latin)
708    Spanish (es)
709    Basque (eu)
710    Irish (ga)
711    Hebrew (he)
712    Occitan (oc)
713    Vietnamese (vi)
714
715
716 Overview of Changes from GLib 2.14.x to GLib 2.15.0
717 ===================================================
718
719 Major new features:
720
721  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
722    in GLib has support for local filesystems. The new, separate gvfs 
723    module contains various backend implementations (cifs, ftp, sftp,
724    http, ...)
725
726  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
727    and SHA-256
728  
729  * GTest: a test framework 
730  
731 Smaller additions:
732
733  * GHash:
734  - GHash has iterators, as an alternative to g_hash_table_foreach
735
736  * GMarkup: 
737  - g_markup_parse_context_get_element_stack: New function to
738    get the stack of open elements
739  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
740    reporting
741  - g_markup_collect_attributes: Convenience function for handling
742    attributes
743
744 * GKeyFile: 
745  - Functions that take a GError now return a boolean to indicate 
746    success, instead of void
747  - Various performance improvements
748
749 * GAsyncQueue:
750  - g_async_queue_new_full: new function that allows to specify
751    a free function for leftover elements
752  
753 * GError:
754  - g_prefix_error and g_propagate_prefixed_error: New functions
755    to ease error propagation
756
757 * Internationalization:
758  - C_: A new 2-argument variant of the Q_() macro 
759  - Use native character set conversion API on Windows
760
761 * GLib builds with automake 1.10
762
763 * Bugs fixed:
764  455725 specific combination of g_utf8_strlen and g_pattern_match...
765  467537 g_convert_with_iconv() not resetting iconv() state correc...
766  497033 Commandline option parser should warn about missing optio...
767  504527 gchecksum: Conditional jump or move depends on uninitiali...
768  445362 Non-numeric local labels in gatomic.c are causing linker ...
769  482313 gregex: no way to tell why compilation failed
770  317775 main loops continues to run after g_main_loop_quit() has ...
771  418778 Insufficient pkg-config version requirement
772  436293 g_option_context_new() doc should mention that the string...
773  466557 glib-mkenums shifts ARGV[0] to undefined
774  468882 GKeyFile doesn't accept "True" as a true boolean value
775  469551 application --help messages are garbaged on none UTF-8 lo...
776  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
777  490061 outptrs uninitialized after g_parse_long_long
778  490637 gobject documentation patch
779  495294 glib-genmarshal prints warnings but returns 0
780  496046 option to prefix location of errors for GMarkup
781  498113 tests/regex-test fails on 64bit environment
782  500506 Fails to build on OSX 10.4
783  500638 gkeyfile speedup ...
784  500875 Make check fails as there is no "test" target for "build"...
785  502511 g_assert_cmphex prints invalid message
786  502927 g_array_index triggers cast aligment warning
787  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
788  503222 Need context to translate
789  503420 gkeyfile leaks a hash table
790  503470 Fix build when builddir != srcdir
791  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
792  71704  file include order
793  491957 Misprint in the specification of the interface "g_main_co...
794  491959 Misprint in description of the structure "GThreadPool"
795  491965 Mistype in the specification of the function "g_hook_list...
796  491966 Misprint in the specification of the interface "g_main_co...
797  491968 The documentation does not mention the restriction for th...
798  491970 The documentation for the interface "g_date_clamp" is inc...
799  491974 The documentation of the interface "g_main_context_iterat...
800  491975 The documentation for the interfaces "g_io_channel_read_u...
801  491979 Misprint in the description of the interfaces g_key_file_...
802  491982 Misprint in the description of the interface "g_key_file_...
803  501107 EXTRA_DIST automake warnings
804  501997 g_utf8_normalize() returns NULL on invalid string
805  502590 C_/g_dpgettext efficiency
806  464259 g_set_application_name() docs should say "Since 2.2"
807  496518 gbase64.c API doc clarification
808  498728 g_key_file_get_*_list should set length to 0 when returni...
809  500361 Improve docs for g_array_free() and g_ptr_array_free()
810  501853 g_checksum_get_digest docs
811  503862 Allow NULL strings in g_parse_debug_string()
812  142676 Q_
813  367550 Add g_async_queue_new_full() with GDestroyNotify function
814  375651 Minor enhancements to GKeyFile API
815  443648 MD5 digest support
816  449937 Upgrade auto* sources to be clean under automake1.9
817  452887 gmarkup context "get element" function is useless when ca...
818  491549 [PATCH] Eliminate libiconv dependency on Windows
819  500507 GHashTableIter API 
820
821 * Translation updates
822  Belarusian Latin (be@latin)
823  Czech (cs)
824  German (de)
825  Spanish (es)
826  Esperanto (et)
827  French (fr)
828  Korean (ko)
829  Marathi (mr)
830  Norwegian bokmål (nb)
831  Brazilian Portugese (pt_BR)
832  Slovenian (sl)
833  Swedish (sv)
834
835
836 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
837 ===================================================
838
839 * Update PCRE to 7.4
840
841 * Bugs fixed:
842  487491 Fix some warnings from sparse
843  488068 Small (one-time) memory leak in glib_gettext initialization
844  493688 TYPE macro "_get_type ()" is documented wrong
845
846 * Updated translations:
847  Arabic (ar)
848  Belarusian Latin (be@latin)
849  Estonian (et)
850  Irish (ga)
851  Slovenian (sl)
852
853  
854 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
855 ===================================================
856
857 * Bugs fixed:
858  476849 Invocation of the interface "g_hook_free" fails in certai...
859  359165 marshallers can throw warnings with -Wunused
860  477957 more discussion on g_value_set_object vs. g_value_take_ob...
861  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
862  483337 inline is disabled for MSVC when compiling C code
863  478349 Broken link to gettext website
864  469231 g_spawn optimization for setting all open fds to CLOEXEC 
865
866 * Updated translations:
867 Arabic (ar)
868 Galician (gl)
869 Hebrew (he)
870 Korean (ko)
871
872
873 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
874 ===================================================
875
876 * Bugs fixed:
877  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
878  444765 Fix FIXME in gregex.c when new pcre is out
879  464145 g_markup_escape_text Produces Invalid XML
880  465625 g_type_default_interface_ref() does not ensure working g_...
881  466768 Clearify that comments can be put anywhere in a Key-file.
882  474229 The GError documentation should give convention for the G...
883  474899 G_BREAKPOINT() docs inaccurate
884  475854 Overuse of -lpcre when using system pcre
885  473879 Incorrect includes in gregex.c
886  468694 Typoes in documentation
887  469051 g_snprintf () talks about characters where it probably me...
888  457601 Missing arch specific atomic implementation
889  475923 Missing pcre flags when static-linking against glib
890  475619 glibthread-2.0.la does not list -lpthread
891
892 * Updated translations:
893  Bulgarian (bg)
894  Catalan (ca)
895  Danish (da)
896  German (de)
897  Canadian English (en_CA)
898  British English (en_GB)
899  Spanish (es)
900  Estonian (et)
901  Finnish (fi)
902  French (fr)
903  Gujarati (gu)
904  Hungarian (hu)
905  Italian (it)
906  Georgian (ka)
907  Kannada (kn)
908  Lithuanian (lt)
909  Makedonian (mk)
910  Norwegian (nb)
911  Dutch (nl)
912  Polish (pl)
913  Portugese (pt)
914  Brazilian Portugese (pt_BR)
915  Romanian (ro)
916  Russian (ru)
917  Albanian (sq)
918  Serbian (sr, sr@Latn)
919  Swedish (sv)
920  Tamil (ta)
921  Thai (th)
922  Ukrainian (uk)
923  Vietnamese (vi)
924
925
926 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
927 ===================================================
928
929 * Last-minute API additions:
930  - Make g_unichar_combining_class public
931  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
932
933 * Update PCRE to 7.2
934
935 * Bugs fixed:
936  453998 Make _g_unichar_combining_class() public
937  462549 gregex.c: variable is declared at middle of block
938  417068 g_file_test doc inconsistency
939
940 * Updated translations:
941  Assamese (as)
942  Basque (eu)
943  Kannada (kn)
944  Malayalam (ml)
945  Dutch (nl)
946  Polish (pl)
947  Brazilian Portugese (pt_BR)
948  Turkish (tr)
949
950
951 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
952 ===================================================
953
954 * The memory corruption warning from the slice allocator that
955   occurred when threads were initialized after the slice allocator
956   has been removed, as the slice allocator now works fine
957   in this scenario.
958
959 * New functions g_once_init_enter() and g_once_init_leave() make
960   it easier to write threadsafe one-time initialization functions 
961  
962 * Bugs fixed:
963  454473 Simple XML Subset Parser terminates on invalid XML
964  445813 g_module_open error, add file name
965  453796 errno gets clobbered by g_filename_display_name
966  341988 don't use "-c" with msgfmt in Makefile.in.in
967  447048 Please produce slightly more output during long tests
968  454785 GModule documentation lists same block of code twice.
969  454786 GModule documentation lists same paragraph twice.
970  383155 small docs quirks in gobject/closure API documentation
971  65041  _get_type() functions aren't thread safe
972
973 * Updated translations
974  Assamese (as)
975  Spanish (es)
976  Gujarati (gu)
977  Japanese (ja)
978  Korean (ko)
979  Macedonian (mk)
980
981
982 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
983 ===================================================
984
985 * Reintroduce a GType typedef whose removal in 2.13.5
986   caused trouble for C++ bindings
987
988 * Bugs fixed:
989  450216 docs not explicit enough about g_free()
990  451459 g_type_register_static_simple calls g_type_register_static
991
992 * Updated translations
993  Norwegian bokmål (nb)
994  Sinhala (si)
995
996
997 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
998 ===================================================
999
1000 * xdg-user-dirs support: 
1001  - the Desktop directory is guaranteed to be defined
1002  - user-dirs.dirs is no longer reloaded on changes
1003
1004 * Slice allocator: 
1005  - new api to duplicate slices
1006
1007 * Regular expression support:
1008  - GRegex is a boxed type now
1009
1010 * Bugs fixed:
1011  44793 make check failing in trunk
1012  354522 Small problem with PLT hiding 6 symbols
1013  363986 glib 2.12.4 does not compile with SGI IDO cc
1014  443869 g_type_class_add_private doesn't warn when adding 0-sized...
1015  446859 Legitimately return 0 for g_quark_from_string(NULL)
1016  447534 Small typo in g_timeout_add_seconds() doc
1017  447583 GStaticRWLock
1018  447935 g_get_current_dir SIGSEGV on long path
1019  448260 CLAMP has surprising result if low > high
1020  57693  g_string_vprintf()
1021  442029 add g_slice_dup()
1022  445065 Add GRegex boxed type
1023  448819 Add full version of g_timeout_add_seconds()
1024
1025 * Updated translations: 
1026  Swedish (sv)
1027  Oriya (or)
1028  Hebrew (he)
1029  Spanish (es)
1030  Estonian (et)
1031
1032  
1033 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
1034 ===================================================
1035
1036 * Bugs fixed:
1037  444121 g_get_user_special_dir deadlocks
1038  444161 invalid UTF8 in key name shows up as valgrind error in g_...
1039  444130 g_option_context_get_help() is broken when there's a desc...
1040
1041
1042 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
1043 ===================================================
1044
1045 * GKeyFile:
1046  - Added defines for easier handling of desktop files
1047
1048 * Unicode support:
1049  - Update g_unichar_iswide_cjk for Unicode 5.0
1050
1051 * Regular expression support:
1052  - GRegex structs can now be ref-counted
1053  - Some new functions for dealing with incremental 
1054    replacement have been added
1055  - The GRegexEvalCallback signature has been changed
1056
1057 * g_get_user_special_dir() has been added to support
1058   xdg-user-dirs
1059
1060 * Bugs fixed:
1061  419376 Functions using named subpatterns behave inconsistently w...
1062  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
1063  423708 typo in the README.win32 file see patch below
1064  339225 Add new defines for easier handling of .desktop files 
1065  442265 API additions/changes for GRegex
1066  432651 Add a glib-ish xdg_user_dir_lookup
1067
1068 * Updated translations:
1069  Estonian (et)
1070  Norwegian bokmål (nb)
1071
1072
1073 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
1074 ===================================================
1075
1076 * Unicode support:
1077  - Add g_unichar_ismark()
1078
1079 * GOption:
1080  - Allow to use callbacks for remaining args
1081
1082 * Updated translations:
1083   Belarusian Latin (be@latin)
1084   British English (en_GB)
1085   Galician (gl)
1086   Norwegian bokmål (nb)
1087   Oriya (or)
1088   Spanish (es)
1089   Thai (th)
1090
1091
1092 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
1093 ===================================================
1094
1095 * GRegex:
1096  - Portability fixes
1097  - Split into immutable GRegex and GMatchInfo
1098  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
1099    to obtain information about the compiled regex
1100
1101 * GKeyFile:
1102  - Fix roundtrip problems
1103  - Add g_key_file_load_from_dirs()
1104
1105 * Unicode support:
1106  - Fix corner cases in case conversion routines
1107
1108 * GOption:
1109   - Add a function to get the formatted help string
1110
1111 * GHash:
1112  - Add new functions g_hash_table_get_keys() and
1113    g_hash_table_get_values() to retrieve the keys and
1114    values in list form
1115
1116 * Updated transations:
1117   Simplified Chinese (zh_CN)
1118   Arabic (ar)
1119
1120
1121 Overview of Changes from GLib 2.12 to GLib 2.13.0
1122 =================================================
1123
1124 * Add GSequence, a list that is implemented using
1125   a balanced binary tree.
1126
1127 * Add GRegex, an implementation of Perl regular expressions,
1128   based on PCRE.
1129  
1130 * Use Posix monotonic clocks instead of gettimeofday()
1131   for GTimer when available.
1132
1133 * Support static initialization of GQeues with G_QUEUE_INIT,
1134   g_queue_init() and g_queue_clear().
1135
1136 * Add g_string_chunk_clear() for clearing a 
1137   GStringChunk.
1138
1139 * Add g_unichar_get_script() to obtain Unicode
1140   script information.
1141
1142 * Add g_unichar_iszerowidth() to obtain information
1143   about zero-width characters.
1144
1145 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
1146   type attribute.
1147
1148 * G_GNUC_INTERNAL has a working definition for the
1149   Sun Studio compiler. This requires the macro to
1150   be positioned before the function declaration.
1151
1152 * The slice allocator can produce detailed debugging
1153   information with G_SLICE=debug-blocks.
1154
1155 * Modules support G_DEBUG flags resident-modules and
1156   bind-now-modules.
1157
1158 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
1159   to define types in modules.
1160
1161 * Bug fixes: too many to list them in detail here.
1162
1163 * New and updated translations (be,bg,bn,ca,cs,de,
1164   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
1165   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
1166   zh_HK,zh_TW)
1167
1168
1169 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
1170 ===================================================
1171
1172 * Unicode updates:
1173  - Normalization is following Unicode TR #29
1174  - g_unichar_isxdigit() only accept characters
1175    for which g_unichar_xdigit_value() returns a value
1176  - g_unichar_toupper and g_unichar_tolower leave
1177    unconvertable characters in place instead of
1178    replacing them by NUL
1179
1180 * Bugs fixed
1181  348491 g_utf8_strup() and g_utf8_strdown() returns 
1182         string with NUL bytes
1183  349825 GKeyFile always inserts a newline before a group
1184  347842 g_unichar_isxdigit() is too general about what 
1185         it considers a digit
1186  348694 g_utf8_normalize() hasn't been updated to PR #29
1187  348785 Hint about G_DEBUG in Message Logging docs
1188  349792 Wrong english string (UI)
1189  349952 gparamspecs.c uses gcc feature
1190
1191 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
1192   nl,pl,tr,uk,zh_HK,zh_TW)
1193
1194
1195 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
1196 ===================================================
1197
1198 * Update to final Unicode Character Database 5.0.0
1199
1200 * Bugs fixed:
1201  346660 issues with base64 api documentation / g_base64_decode_cl...
1202  348136 Coverity reports allocation of wrong size CID #2839
1203  336281 Update to UCD 5.0
1204  346197 g_date_strftime %F option doesnt work for win32
1205  348011 Small optimization to real_toupper()
1206  246494 prototype mismatch in glib/gconvert.c
1207
1208 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
1209   fr,he,it,ja,mk,or,pt)
1210
1211
1212 Overview of Changes from GLib 2.11.4 to GLib 2.12
1213 =================================================
1214
1215 * Bugs fixed:
1216  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
1217
1218 * Updated translations (cy,nb,nl)
1219
1220
1221 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
1222 ===================================================
1223
1224 * GBookmarkFile:
1225  - g_bookmark_file_remove_item returns a boolean
1226  
1227 * g_mkstemp accepts the XXXXXX in the middle of
1228   the template
1229  
1230 * Bugs fixed:
1231  344868 g_key_file_to_data should separate groups 
1232
1233 * Updated translations (de,es,fr,gu,hi,ko,th)
1234
1235
1236 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
1237 ===================================================
1238
1239 * GBookmarkFile:
1240   - g_bookmark_file_move_item: Return TRUE in case of
1241     an empty target
1242
1243 * Bugs fixed: 
1244  343919 gunicollate.c: strxfrm bug on VC8
1245
1246 * Updated translations (fi)
1247
1248 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
1249 ===================================================
1250
1251 * Add g_ascii_stroll to parse signed 64bit integers
1252
1253 * GMarkup: add a flag to treat CDATA as text
1254
1255 * GHashTable: add functions to remove all entries
1256
1257 * GMainLoop: add functions to find the currently
1258   running source, and determine if it is destroyed
1259
1260 * Bug fixes:
1261  342563  g_atomic_thread_init() needs to be called before 
1262          other _g_*_thread_init() functions
1263  343548  Potential use after free in callers of g_string_free() 
1264  168538  Wish: Clearing contents of GHashTables
1265  321886  GTK+ cannot be reliably used in multi-threaded 
1266          applications
1267  341826  goption.c: 'strtoll' is C99's function
1268  343899  g_ascii_formatd dosn't work as expected for all 
1269          format strings
1270  317793  Make GEnumValue strings const
1271  337129  Compile warnings in G_IMPLEMENT_INTERFACE
1272  303622  What is G_TYPE_CHAR?
1273
1274 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
1275  
1276
1277 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
1278 ===================================================
1279
1280 * GOption  
1281   - Support 64-bit integers 
1282   - Allow optional text before and after the options
1283     in help output
1284
1285 * Bug fixes:
1286  340538 gbase64-test writes OOB 
1287  340816 GKeyFile set_string_list invalid memory reads 
1288  339105 g_key_file_parse_value_as_double
1289  340434 convert-test.c fails (function test_one_half)
1290  311043 Memory leaks (and potential infinite loops) 
1291         when using G_ERRORCHECK_MUTEXES
1292  335198 Error checking mutexes are fubar  
1293  341237 Add a G_OPTION_ARG_INT64
1294  341192 g_io_channel_set_flags not implemented on win32
1295  336120 Allow adding description before/after GOption 
1296         --help output body
1297  341191 misplaced check in g_relation_delete
1298  340530 mismatched calloc / g_free in win32 threads
1299
1300 * Updated translation (es)
1301
1302 Overview of Changes from GLib 2.10.x to GLib 2.11.0
1303 ===================================================
1304
1305 * GBookmarkFile: a parser for files containing bookmarks
1306   stored using the Desktop Bookmark specification.
1307
1308 * Base64 encoding support
1309         
1310 * Unicode 5.0 support
1311
1312 * GOption supports floating point numbers 
1313
1314 * GKeyFile supports floating point numbers
1315
1316 * Bug fixes:
1317  155884 gatomic.c should be based on new SDK
1318  157877 update-desktop-database doesn't handle duplicate entries
1319  164719 keyfile parser doesn't support floats
1320  327662 Import BookmarkFile from libegg
1321  329548 Add G_OPTION_ARG_DOUBLE
1322  329789 option-test.c type confusion
1323  332841 Segmentation Fault when %llu is passed to vasnprintf and 
1324         HAVE_SNPRINTF is not defined
1325  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
1326         _WIN32_WINDOWS 0x0401'
1327  333916 g_timer_elapsed docs should mention that microseconds 
1328         may be NULL
1329  334440 dlerror() portability issue causes crash on (old) a.out 
1330         NetBSD platform
1331  334646 goption + error out params
1332  334799 g_remove() must check return value of remove()
1333  334943 make check FAIL: threadpool-test
1334  335215 Some breakages with GThreadPool
1335  336085 g_option_context_new parameter lacks better explanation
1336  336677 Documentation for g_object_ref_sink() is incorrect
1337  337027 gbookmarkfile.c: sys/time.h include error
1338  337553 Wrong escaping of URIs
1339  338572 Dereferencing NULL value in g_key_file_get_group_comment
1340  338845 g_completion_complete_utf8 crashes when NULL is passed to it
1341  339337 g_bookmark_file_set_description
1342  339338 gbookmarkfile.c, function expand_exec_line
1343  339340 gbookmarkfile.c, function bookmark_app_info_dump
1344
1345 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
1346                        or,pt_BR,ro,tr,vi,zh_CN)
1347
1348
1349 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
1350 ===================================================
1351
1352 * Bugs fixed:
1353  314794 Broken pthread detection on Darwin [Gregor Riepl]
1354  322476 Missing check for .dylib [Vladimir Panov]
1355  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
1356         M. Merino Vidal]
1357  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
1358
1359 * Win32 changes:
1360  - Fix g_listenv() implementation.
1361  - Allow up to 100 GPrivate structs
1362
1363 * Translation updates (fr,hu,lt,pl,sv)
1364
1365
1366 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
1367 ==================================================
1368
1369 * Bugs fixed:
1370  328997 64bit pointer trunction in glib slab-allocator
1371         [Pascal Hofstee]
1372  331110 g_cond_broadcast(inform_cond) without holding 
1373         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
1374  332093 Fix some leaks in the tests [Kjartan Maraas]
1375  332435 g_utf8_strlen returns wrong value if a maximum 
1376         number of bytes to check is specified 
1377         [Matthias Clasen]
1378  331367 gslice requires more POSIX-like semantics for 
1379         GPrivate destructors [Tor Lillqvist]
1380
1381 * Documentation improvements [Matthias, Kang Jeong-Hee,
1382   Tor Lillqvist, Stefan Kost]
1383
1384 * Translation updates (el,eu,ka,uk)
1385
1386 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
1387 =================================================
1388
1389 * Bugs fixed: 
1390  329124 distclean removes README [Kjartan Maraas, Tim Janik]
1391  317679 GRelation field type not documented [Behdad Esfahbod]
1392  329123 Typo in GTime docs [Kjartan Maraas]
1393
1394 * Documentation improvements [Sven Herzberg, David
1395   Schleef, Kjartan Maraas, Behdad Esfahbod]
1396
1397 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
1398
1399 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
1400 =================================================
1401
1402 * Memory management: 
1403   Runtime debugging support: The slice allocator
1404   can be turned off by setting G_SLICE=always-malloc
1405   in the environment. Zeroing of freed memory can
1406   now be turned on at runtime by setting
1407   G_DEBUG=gc-friendly in the environment. [Tim Janik]
1408
1409 * Bugs fixed:
1410  328253 HP-UX/IA-64 uses ".so" as default shared library 
1411         extension [Albert Chin]
1412  143380 unicode-encoding test fails converting to UTF-16 
1413         with libiconv [Marc Moorcroft]
1414  328254 Build breakage (GSlice) [Jens Ganseuer]
1415  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
1416
1417 * Translation updates (da,et,zh_CN)
1418
1419 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
1420 =================================================
1421
1422 * Type system:
1423   Fix a problem with g_object_compat_control() which 
1424   can lead to segfaults in GTK+ applications on 64bit 
1425   platforms. 
1426
1427 * Thread suppport: 
1428   Unused threads now fall back to the global pool after 
1429   500 milliseconds, where they wait for another 
1430   max-idle-time milliseconds. [Sebastian Wilhelmi]
1431
1432 * Fix a memory allocation problem in GKeyFile. [Morten 
1433   Welinder]
1434
1435
1436 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
1437 =================================================
1438
1439 * GTree:
1440  - Replace the simple recursive implementation by
1441    a nonrecursive, threaded one  [Maurizio Monge]
1442
1443 * Change g_filename_display_name and
1444   g_filename_display_basename to use the Unicode
1445   replacement character U+FFFD instead of a question
1446   mark, and don't append "(invalid encoding)"  [Matthias]
1447
1448 * Documentation improvements [Sven Herzberg, Federico
1449   Mena Quintero, Stefan Kost]
1450
1451 * Bugs fixed:
1452  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
1453         [Bogdan Nicula]
1454  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
1455  169285 "threaded" tree implementation for GTree 
1456         [Maurizio Monge]
1457  326747 g_filename_display_basename adds (invalid encoding) 
1458         [Alberto Ruiz]
1459
1460 Other contributors: Christian Kellner, Murray Cumming
1461
1462 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
1463
1464
1465 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
1466 =================================================
1467
1468 * Memory management:
1469  - Add tests for cache colorization [Tim Janik]
1470  - Minimize space consumption if small amounts of differently
1471    sized slices are allocated, at a small performance cost.  [Tim]
1472
1473 * Thread support:
1474  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
1475    Sebastian Wilhelmi]
1476  - Add g_thread_pool_set_sort_function() to allow sorting the 
1477    tasks of a threadpool.  [Martyn Russell]
1478  - Add g_thread_pool_set_idle_time() to allow unused threads
1479    to exit after a certain time.  [Martyn]
1480
1481 * Type system:
1482  - introduce a new type GInitiallyUnowned, which has an initial
1483    floating reference. [Tim]
1484  - Add support for GType parameters. [Matthias]
1485
1486 * Main loop:
1487  - Add g_main_context_is_owner() to determine if the current
1488    thread is the owner of the context.  [Michael Meeks]
1489
1490 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
1491   wrapper functions instead of macros.  [Manish Singh]
1492
1493 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
1494   Stefan Kasal, Dan Williams]
1495
1496 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
1497
1498 * Bugs fixed:
1499  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
1500         tries to modify [J. Ali Harlow]
1501  324332 g_option_context_parse() returns false without setting error 
1502         [Tim-Philipp Müller]
1503  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
1504  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
1505  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
1506         gpointer [Andrew Paprocki]
1507  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
1508         Stanislav Brabec]
1509  325273 Error in documentation for glib_check_version () [Declan Naughton]
1510  325310 g_spawn_sync hangs when catching both stdout and 
1511         stderr [Tor Lillqvist]
1512  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
1513  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
1514  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
1515  325438 a typo (compatability) [Stefan Kasal]
1516  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
1517
1518
1519 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
1520 =================================================
1521
1522 * Memory management
1523  - The slice allocator is implemented [Tim Janik]
1524  - g_slice_free_chain() has been renamed to 
1525    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
1526  - Mem chunks are deprecated [Matthias Clasen]
1527
1528 * Data structures
1529  - Hash tables are refcounted, and have a boxed type [Tim]
1530
1531 * Thread support
1532  - Support for Solaris threads has been removed 
1533    [Sebastian Wilhelmi, Andrew Paprocki]
1534  - g_async_queue_sort(), g_async_queue_push_sorted() have 
1535    been added to allow GAsyncQueue to be used as a priority 
1536    queue, together with the corresponding _unlocked 
1537    variants  [Martyn Russell]
1538
1539 * GObject:
1540  - The concept of a floating initial reference has been
1541    moved from GtkObject to GObject [Tim]
1542
1543 * Win32 changes:
1544  - Make g_rename() replace existing files [Tor Lillqvist]
1545
1546 * Misc new API:
1547  - G_GUINT64_CONSTANT macro to define guint64 
1548    constants [Andrew Paprocki]
1549  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
1550    compiler to emit a warning if the value returned
1551    by a function is ignored. [Arjan van de Ven, Alex Larsson]
1552  - GList and GSList now have sort functions which take an
1553    extra user data argument [Martyn Russell]
1554  - g_param_spec_ref_sink() has been added for consistency [Tim]
1555
1556 * $LOGNAME is respected when determining user data. [Laszlo Peter]
1557
1558 * Other changes and bug fixes [Tim, Matthias, Behdad, 
1559   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
1560   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
1561   Andreas Schwab, Kalle Vahlman]
1562
1563 * Documentation
1564  - Deprecation warnings carry version information [Matthias]
1565  - The slice allocator has been documented [Matthias, Tim]
1566  - Other improvements [Morten Welinder]
1567
1568 Overview of Changes from GLib 2.8.x to GLib 2.9.0
1569 =================================================
1570 * Unicode support:
1571  - The Unicode tables have been updated to Unicode 4.1, 
1572    adding several new values to the GUnicodeBreakType 
1573    enumeration. This breaks Pango <= 1.10 
1574    [Behdad Esfahbod]
1575  - The various Unicode character predicate functions 
1576    (g_unichar_isalpha, g_unichar_isdigit,...) have
1577    been optimized
1578    [Behdad]
1579  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
1580    These functions handle negative offsets now, and
1581    going backwards in g_utf8_offset_to_pointer uses
1582    "stutter stepping".
1583    [Larry Ewing, Matthias Clasen]
1584
1585 * Memory management:
1586  - Mem chunks are no longer used internally in GLib and
1587    GObject. GMemChunk will be deprecated in GLib 2.10
1588  - All APIs based on GAllocator (g_list_push/pop_allocator,
1589    and similar push/pop_allocator functions for other
1590    data structures) have been deprecated, since they
1591    never worked as intended.
1592  - The g_slice_* functions have been added as a 
1593    new API for fast allocation of small memory blocks. 
1594    The implementation in GLib 2.9.0 is just a simple 
1595    wrapper around malloc. GLib 2.10 will have an
1596    efficient and scalable implementation. 
1597    [Tim Janik, Matthias]
1598
1599 * Pattern matching:
1600  - g_pattern_match has been optimized to avoid
1601    unnecessary recursion.
1602    [Tim, Matthias]
1603
1604 * g_intern_string, g_intern_static_string: 
1605  - New functions to intern strings. These are now used 
1606    by GObject to avoid duplicating static strings 
1607    [Matthias]
1608
1609 * g_thread_foreach: 
1610  - New function to iterate over all GThreads 
1611    [Tim, Matthias]
1612
1613 * g_date_set_time_t, g_date_set_time_val:
1614  - New functions to set a GDate from a time_t or
1615    GTimeVal value. g_date_set_time has been deprecated 
1616    in favor of these.
1617    [Roger Leigh]
1618
1619 * g_snprintf and g_vsnprintf:
1620  - These functions are no longer declared in gprintf.h, 
1621    since they are in glib.h
1622    [Matthias]
1623
1624 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
1625 =================================================
1626 * Optimize single-character insertions in GString [Ross Burton]
1627 * Fix build problems on OS X
1628 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
1629 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
1630 * Documentation improvements [Tristan van Berkom, Behnam
1631   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
1632 * New and updated translations (ca,cy,ko,ro,uk)
1633
1634 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
1635 =================================================
1636 * Make g_value_transform() handle enum values
1637   correctly on ppc64.  [Michael Lorenz]
1638   (Third-party code accessing enumeration values 
1639   in GValues should also be changed to access 
1640   v_long, not v_int, in order to work on bigendian 
1641   64bit machines.)
1642 * Make g_flags_get_first_value() handle a value
1643   of 0 meaningfully. [Tim-Philipp Müller] 
1644
1645 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
1646 =================================================
1647 * Make atomic operations on s390 work [Matthias]
1648 * Fix C++ guards in gstdio.h [Tor Lillqvist]
1649
1650 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
1651 =================================================
1652 * Add native implementations of atomic operations 
1653   on s390 [Matthias]
1654 * Make atomic reference counting of closures
1655   work on s390 [Matthias]
1656 * Avoid an infinite loop in g_convert_with_iconv().
1657   [Sebastian Bacher]
1658 * Documentation improvements [Ross Burton]
1659
1660 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
1661 =================================================
1662 * Thread-related changes
1663  - Fix build issues on HP-UX [Paul Cornett]
1664  - Threadsafe access to flags stored in datasets [Tim Janik]
1665  - Fix several issues with atomic refcounting for 
1666    closures, objects and paramspecs [Tim]
1667  - Improve tests for atomic refcounting changes [Tim]
1668 * Fix handling of stateful encodings in g_convert_* [Matthias]
1669 * Fix translation of GOption help output [Dan Winship]
1670 * Catch format errors in translations. This may cause 
1671   "make check" to fail when using older versions
1672   of gettext [Matthias]
1673 * Win32 bug fixes [Tor Lillqvist]
1674 * Documentation improvements [Ross Burton, Jochen Baier, 
1675   Matthias, Tim]
1676 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
1677
1678 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
1679 =================================================
1680 * Fix g_atomic_pointer_compare_and_exchange 
1681   on Sparc64 [Gert Doering]
1682 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
1683 * Win32 bug fixes [Tor Lillquist]
1684 * Other bug fixes [Benoit Dejean, Manish Singh]
1685 * Documentation improvements [Bryan Silverthorn,
1686   Callum McKenzie] 
1687 * New and updated translations (de,lt,sq,zh_CN)
1688
1689 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
1690 =================================================
1691 * GOption
1692  - Allow callbacks with optional arguments [Pawel Sliwowski]
1693  - Allow to turn off the automatic long option name
1694    disambiguation  [Adam McLaurin]
1695  - Only allow printable ASCII as short option names [Matthias]
1696 * Win32
1697  - Build fixes [Tor Lillqvist]
1698  - Rewrite iochannel socket implementation [Tor]
1699 * GObject
1700  - Threadsafety improvements; in particular, refcounting
1701    of objects is done atomically now. [Wim Taymans, Tim Janik]
1702 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
1703 * Documentation improvements [Richard Laager, Matthias]
1704 * New and improved translations (bf,cs,hu,nb,nl,no)
1705
1706 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
1707 =================================================
1708 * Win32 build fixes [Hans Breuer]
1709 * Bug fixes [Mikael Magnusson]
1710 * Documentation improvements [Matthias Clasen]
1711 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
1712
1713 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
1714 =================================================
1715 * GOption 
1716  - Allow callback arguments without parameters [Dan Winship]
1717 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
1718 * Misc new functions:
1719  - g_get_host_name [Tor Lillqvist]
1720  - g_mkdir_with_parents [Tor]
1721  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
1722    Matthias Clasen]
1723 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
1724   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
1725 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
1726 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
1727   sk,th,zh_TW)
1728
1729 Overview of Changes from GLib 2.6.x to GLib 2.7.0
1730 =================================================
1731 * GKeyFile
1732  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
1733  - Accept \r\n as line end [Bastian Nocera]
1734  - Don't interpret leading zeros as octal numbers. [Matthias]
1735  - Make key and group removal work [David Hoover, Matthias Hasselmann]
1736 * GOption
1737  - Improve formatting of --help output [Matthias, Noah Levitt]
1738  - Accept -? [Matthias]
1739  - Warn about duplicate main groups [Jeff Franks]
1740  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
1741  - Report missing arguments as errors [Björn Lindqvist]
1742  - Add a boxed type for GDate [Tim-Philipp Müller]
1743 * GTree
1744  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
1745 * Stdio wrappers
1746  - Work regardless of large file support [Manish Singh]
1747  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
1748 * GObject
1749  - Implement "toggle references" to help language bindings [Owen Taylor]
1750  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
1751  - Make pspec lookup a bit faster [Morten Welinder]
1752 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
1753 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
1754   Sven Neumann, Manish, Alexis S. L. Carvalho]
1755 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
1756 * Add g_utf8_collate_key_for_filename() to sort filenames taking
1757   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
1758 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
1759   NULL-terminated argument lists. [Marc Meissner]
1760 * Win32 changes
1761  - Improved debugability [Ulf Lamping, Hans Breuer]
1762  - Make filename handling more robust [Tor, Billy Skaggs]
1763  - Improve g_get_system_data_dirs() [Tor]
1764  - Use more precise timers [Tor]
1765  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
1766 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
1767   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
1768   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
1769   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
1770   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
1771   Christian Biere, Noah, Benoît Carpentier]
1772 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
1773   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
1774   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
1775 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
1776   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
1777
1778 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
1779 =================================================
1780 * GOption
1781  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
1782  - Improve handling of -- [Matthias Clasen]
1783  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
1784 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
1785 * Add gmodule-export-2.0.pc [Matthias]
1786 * Win32 changes
1787  - Improve hangling of UNC paths [Tor Lillqvist]
1788  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
1789    take and return UTF-8 now [Tor] 
1790  - Make g_file_test() work more reliably, and use PATHEXT
1791    when check for executables [Tor]
1792  - Build and cross-compilation fixes [J. Ali Harlow]
1793 * Other bug fixes [Jens Hatlak, Morten Welinder, 
1794   Tor, Kalpesh Shah, Adrian Bunk]
1795 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
1796   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
1797   Vincent Untz, Bastien Nocera]
1798 * New and updated translations (cy,de,nl,ru,sq,sv)
1799
1800 Overview of Changes from GLib 2.4.x to GLib 2.6.0
1801 =================================================
1802
1803 * Major new APIs
1804   - GOption, a commandline option parser
1805   - GKeyFile, a parser/editor for the .ini like files 
1806   - Functions to support the XDG basedir specification
1807   - Wrappers for common POSIX pathname functions to handle filename
1808     encodings consistently. On Windows, these use UTF-8.
1809
1810 * Miscellaneous new functions
1811   - g_filename_display_name() converts filenames in displayable UTF-8 strings
1812   - g_uri_list_extract_uris() splits uri lists
1813   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
1814   - g_log_set_default_handler() installs an alternate default log handler
1815   - g_get_language_names() obtains a list of applicable locale names
1816   - g_strv_length() calculates the length of NULL-terminated string arrays
1817   - g_win32_get_windows_version() determines the Windows version 
1818   - G_GNUC_INTERNAL marks functions as non-exported
1819   - glib_check_version() checks the GLib version at runtime
1820   - g_debug() completes the family of logging functions
1821
1822 * Performance improvements
1823   - Optimize g_utf8_validate()
1824   - Optimize g_markup_parse_context_parse()
1825   - Reduce signal connection complexity from O(n) to O(1) 
1826   - Get rid of many PLT entries for internally used exported symbols
1827   - Reduce code size by removing literal strings from g_return_if_fail()
1828
1829 * Other changes
1830   - On Windows, GLib functions that take file name arguments now require
1831     those to be in UTF-8. Functions that return file names return UTF-8.
1832   - Use higher precision for mathematical constants
1833   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
1834   - Support ll as printf format modifier for long long on all platforms
1835   - Clean up the ABI and enforce the list of exported symbols
1836   - Add a .pc file for using gmodule in libraries
1837   - Require ngettext
1838
1839 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
1840 =================================================
1841 * GOption: Don't list help options if group-specific
1842   options have been requested [Glynn Foster]
1843 * Make g_get_language_names() track locale changes [Christian Persch]
1844 * Win32 bug fixes [Tor Lillqvist]
1845 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
1846 * New and updated translations (da,es,ja,lt,zh_CN)
1847 Bugs fixed: 159530,100697,160271,160645,157255
1848
1849 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
1850 =================================================
1851 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
1852 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
1853   Morten Welinder]
1854 * Reduce signal connection complexity from O(n) to O(1) 
1855   [Sven Neumann]
1856 * Add a .pc file for using gmodule in libraries [Owen]
1857 * Add G_GNUC_MALLOC to mark functions returning newly 
1858   allocated memory  [Matthias]
1859 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
1860   Bruce Hochstetler]
1861 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
1862   Frederic Crozat, Tor]
1863 * Documentation improvements [Matthias, Tor, Owen]
1864 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
1865
1866 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
1867 =================================================
1868 * GOption
1869   - Add G_OPTION_FLAG_REVERSE to allow options 
1870     which unset a  boolean variable [Tor Lillqvist]
1871 * GChildWatch
1872   - Use sigaction instead of signal [Jonas Jonnson, 
1873   Archana Shah]
1874   - Make the very first SIGCHLD work [Gustavo Carneiro]
1875 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
1876   Manish Singh, J. Ali Harlow]
1877 * Documentation improvements [Matthias Clasen, Tor]
1878 * Updated translations (da,ja,tr,zh_CN)
1879
1880 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
1881 =================================================
1882 * GKeyFile
1883   - Cleanups, add more error checking [Ray Strode]
1884   - Fall back to the untranslated string when getting 
1885     locale strings [Mark McLoughlin]
1886 * GOption
1887   - Document GOption [Matthias Clasen]
1888   - Better support for rest arguments [Owen Taylor, Matthias]
1889   - Handle conflicts between groups [Matthias]
1890 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
1891 * Add g_filename_display_name() to convert filenames
1892   in displayable UTF-8 strings  [Alex Larsson, Matthias]
1893 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
1894 * Bug fixes [Christophe Fergeau, Morten Welinder, 
1895   Owen, Kjartan Maraas, Mark]
1896 * Documentation improvements [Matthias, Tor]
1897
1898 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
1899 =================================================
1900 Add GKeyFile, a parser/editor for the .ini like files used in various
1901    freedesktop.org specifications. [Ray Strode]
1902 Make the handling of filename encodings consistent across all
1903    GLib functions, introduce wrappers for common POSIX 
1904    functions which accept the same filename encoding. [Tor Lillqvist, 
1905    Owen Taylor]
1906 GOption
1907  - Rename g_context_option_error_quark() to a more language-binding
1908    friendly name [Murray Cumming]
1909  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
1910 * Strip the internal aliasing prefix IA__ from function names in 
1911   assertions [Matthias Clasen]
1912 * Add a function to split uri lists. [Matthias]
1913 * Win32 bug fixes 
1914  - Don't open console windows [Tor]
1915 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
1916  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
1917   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
1918   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
1919 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
1920  Adam Hooper, Gustavo Carneiro]
1921 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
1922
1923 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
1924 =================================================
1925 * GOption
1926  - set the program name from argv[0] [Masatake YAMATO] 
1927  - make contexts work without a main group [Anders Carlsson]
1928 * Performance 
1929  - Get rid of many PLT entries for internally used exported symbols,
1930    and clean up the ABI at the same time and make make check check the
1931    list of exported symbols.  [Matthias Clasen]
1932 * Add API to get ISO 8601 week numbers [Niklas Lundell]
1933 * Add API to install an alternate default log handler [Darin Adler]
1934 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
1935 * Reduce code size bloat by removing literal strings from
1936  the g_return_if_fail() macros [Owen Taylor]
1937 * Add g_strv_length [Tim-Philipp Müller]
1938 * Win32 changes
1939  - Add API to determine the Windows version [Tor Lillqvist]
1940 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
1941   Manish Singh]
1942 * Documentation improvements [Morten Welinder, Matthias]
1943 * New and updated translations (es,nn,ro)
1944
1945 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
1946 =================================================
1947 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
1948 * Add GOption, a commandline option parser [Anders Carlsson]
1949 * Add glib_check_version [Michael Natterer]
1950 * Add XDG basedir API [Ray Strode]
1951 * Require ngettext [Danilo Segan]
1952 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
1953   Jon-Kare Hellan, Jody Goldberg]
1954 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
1955 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
1956 * New and updated translations (bs,eu,fi,gu,ne,pa)
1957
1958 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
1959 =================================================
1960
1961 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
1962   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
1963   Ögren, Tommi Komulainen]
1964 * Documentation improvements [Soeren Sandmann, 
1965   Christophe Fergeau, Danek Duvall]
1966 * New and updated translations (eu,hi)
1967   
1968 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
1969 =================================================
1970
1971 * New functions g_debug [Sven Herzberg]
1972 * Use higher precision for mathematical constants [Morten 
1973  Welinder]
1974 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
1975  [Federico Mena Quintero]
1976 * Win32
1977  - Handle empty digit string in printf() functions 
1978    correctly [Tor Lillqvist]
1979  - Support ll as format modifier for long long [Tor]
1980  - Be more careful about HOME [Tor, Ivan Wong]
1981  - Bug fixes [John Ehresman]
1982 * Miscellaneous bug and portability fixes [Danilo Segan, 
1983  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
1984  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
1985  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
1986 * Documentation updates [Matthias Clasen, Crispin Flowerday,
1987  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
1988 * New and updated translations (ja,ne,no,wa)
1989  
1990 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
1991 =================================================
1992
1993 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
1994 * Miscellaneous bug and portability fixes [Owen Taylor,
1995   Matthias Clasen, Jonas Jonsson, Christian Krause,
1996   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
1997   Piotr Klaban]
1998 * Documentation updates [Matthias]
1999 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
2000   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
2001
2002 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
2003 =================================================
2004
2005 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
2006 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
2007 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
2008   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
2009   Sebastian Wilhelmi]
2010 * Documentation updates [Owen]
2011 * Updated translations (hr,ro)
2012
2013 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
2014 =================================================
2015
2016 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
2017 * GMain threading fixes and improvements [Sebastian]
2018 * Win32 [Tor Lillqvist]
2019  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
2020  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
2021 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
2022 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
2023
2024 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
2025 =================================================
2026
2027 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
2028 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
2029 * Add atomic operations and use it for the async queue and
2030   gonce implementation. [Sebastian Wilhelmi]
2031 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
2032 * Add g_main_depth() for finding the recursion depth of the main
2033   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
2034 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
2035 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
2036 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
2037 * Updated translations (cy,et,ga,sq)
2038
2039 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
2040 =================================================
2041
2042 * Add a native AIX gmodule implementation. [Laurent Vivier]
2043 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
2044 * Extend GQueue API to match the GList API. [Soeren Sandmann]
2045 * Add g_hash_table_find().  [Tim Janik]
2046 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
2047 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
2048 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
2049 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
2050   Matthias]
2051 * Add g_strsplit_set(). [Soeren]
2052 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
2053   Soeren, Matthias]
2054 * Win32 build fixes. [Tor Lillqvist]
2055 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
2056   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
2057   Matthias]
2058 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
2059
2060 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
2061 =================================================
2062
2063 * Add G_MAXSIZE. [Manish Singh]
2064 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
2065   implementing the init-by-array functionality of the 
2066   original mersenne twister. Add g_rand_copy(). Improve seeding. 
2067   [George Lebl]
2068 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
2069 * Add g_ptr_array_foreach(). [Matthias Clasen]
2070 * Add g_timer_continue(). [Tim-Philipp Müller]
2071 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
2072 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
2073   g_file_test() there too [Hans Breuer] 
2074 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
2075 * Add G_DEFINE_TYPE() plus variants to ease the constuction
2076   of GObject boilerplate code.  [Tim Janik]
2077 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
2078 * Documentation improvements [Matthias, Manish]
2079 * Win32 build fixes [Hans]
2080 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
2081   Zack Rusin]
2082 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
2083
2084 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
2085 =================================================
2086
2087 * Add glib/gi18n.h and glib/gi18n-lib.h for common
2088   gettext support, including a Q_() macro for translation
2089   with context [Matthias Clasen]
2090 * Add a more flexible G_FILENAME_ENCODING variable
2091   as a replacement for G_BROKEN_FILENAMES [Matthias]
2092 * Fix the return value g_main_context_iterate() for
2093   newly ready sources [Padraig O'Briain]
2094 * Handle Hangul composition for normalization [Noah Levitt]
2095 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
2096 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
2097 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
2098 * Documentation improvements [Matthias]
2099 * GObject [Tim Janik]
2100  - Support '-' in g_signal_connect()/disconnect() names
2101    like 'swapped-signal'.
2102  - Add g_type_class_peek_static() and use to optimize
2103    g_object_new() for static types [Tim]
2104  - Allow setting construct-only properties from within
2105    init() implementations
2106  - Enforce readability/writeability in g_object_set/get()
2107 * Fix bug with g_ascii_strtod and multi-byte separator.
2108   [Behdad Esfahbod, Roozbeh Pournader]  
2109 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
2110   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
2111   Morten Welinder]
2112 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
2113
2114 Overview of Changes from GLib 2.2.x to GLib-2.3.0
2115 =================================================
2116
2117 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
2118 * Update Unicode data to Unicode 4.0 [Noah Levitt]
2119 * Support XML-safe formatted output with 
2120   g_markup_[v]printf_escaped [Owen Taylor]
2121 * Add g_file_read_link to read symbolic links [Matthias]
2122 * Add g_unichar_get_mirror_char to obtain the 
2123   mirrored variant of a character [Noah]
2124 * Support for one-time initialization functions. 
2125   [Sebastian Wilhelmi]
2126 * Miscellaneous API additions: g_vasprintf
2127   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
2128 * Docs improvements [Matthias]
2129 * Add support instance-private data on classed types
2130   [Mark McLoughlin, Tim Janik, Owen]
2131 * Optimize signal emissions [Soeren Sandmann, Tim]
2132 * Support a "default vtable" per interface [Tim]
2133 * Add support for properties on interfaces [Owen, Tim]
2134 * Miscellaneous API additions: g_value_take_string(),
2135   g_value_take_param(), g_value_take_object(), 
2136   g_value_take_boxed(). [Matthias]
2137 * Win32 build fixes [Tor Lillqvist]
2138
2139 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
2140 =================================================
2141
2142 * Fix a problem with g_thread_init() on 64-bit problems
2143   [Alceste Scalas, Sebastian Wilhelmi]
2144 * Add assembly implementations of byteswap macros
2145   for ia64 and x86_64. [Manish Singh]
2146 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
2147 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
2148
2149 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
2150 =================================================
2151
2152 * Win32 bug fixes [Tor Lillqvist]
2153 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
2154   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
2155 * Ensure we have a GUINT64_FORMAT by pulling in Trio
2156   if necessary [Manish Singh]
2157 * Further Trio build fixes [Matthias Clasen, Owen]
2158 * Hack around gcc, libtool issues with -pthread [Owen]
2159 * Docs improvements [Matthias]
2160 * Bug and portability fixes 
2161 * Updated and new translations (bg,de,fi,fr,sq,fr)
2162
2163 Other contributors: Kai Poitschke, Morten Welinder
2164
2165 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
2166 =================================================
2167
2168 * autoconf changes to make it possible to cross compile
2169   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
2170   Johannes Stezenbach]
2171 * Use libintl when it has bind_textdomain_codeset() and
2172   GLib doesn't. [Owen]
2173 * Improve generation of pseudo-random integers [Morten Welinder, 
2174   Sebastian Wilhelmi]
2175 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
2176 * Cleanup include order [Sven Neumann]
2177 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
2178 * Doc fixes and additions [Matthias]
2179
2180 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
2181   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
2182
2183 Overview of Changes from GLib 2.0.x to GLib-2.1.x
2184 =================================================
2185
2186 * Add copy of the Trio library to build and use for printf() when 
2187   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
2188 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
2189 * Add g_markup_parse_context_get_element() [Matthias]
2190 * Add g_utf8_strreverse [Matthias]
2191 * Add g_ascii_strtoull() [Tim Janik]
2192 * Support scanning of 64-bit values with GScanner [Tim]
2193 * Add g_set/get_application_name() [Havoc Pennington]
2194 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
2195   Use for g_return_if_fail(). [Matthias Clasen]
2196 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
2197 * Improve the seeding algorithm of GRandom to avoid problems
2198   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
2199   environment variable. [Sebastian Wilhelmi]
2200 * Improve thread configure checks, use -pthread where applicable
2201   [Sebastian]
2202 * Improve handlng of thread priorities [Sebastian]
2203 * Fix up parameter names that might shadow functions from
2204   system headers [Soeren Sandmann]
2205 * Clean up usage of deprecated functions [Manish Singh]
2206 * Docs fixes and improvements. In particular, include "Since" information.
2207   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
2208   Owen Taylor, Morten Welinder]. 
2209
2210 Overview of Changes in GLib 2.0.7
2211 =================================
2212
2213 * Fix C++ warnings in gtype.h [Dom Lachowicz]
2214 * Fix g_type_fundamental_next() [Tim Janik]
2215 * Fix various missing includes of config.h [Morten Welinder]
2216 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
2217 * Various 64-bit fixes [Manish Singh]
2218 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
2219 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
2220 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
2221      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
2222      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
2223 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
2224
2225 Overview of Changes in GLib 2.0.6
2226 =================================
2227
2228 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
2229 * Clean up debug spew from GObject [Anders Carlsson]
2230 * Compiler warning fixes [David L. Cooper II]
2231 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
2232 * Fixes for --disable-debug [Sebastian Wilhelmi]
2233 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
2234   Rajkumar Sivasamy, Laurent Vivier]
2235 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
2236   Sebastian Rittau, Linus Welleij]
2237 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
2238 * Updated translations (bg,ko,vi)
2239
2240 Overview of Changes in GLib 2.0.5
2241 =================================
2242
2243 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
2244 * Clean up debug spew from GObject [Anders Carlsson]
2245 * Compiler warning fixes [David L. Cooper II]
2246 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
2247 * Fixes for --disable-debug [Sebastian Wilhelmi]
2248 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
2249   Rajkumar Sivasamy, Laurent Vivier]
2250 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
2251   Sebastian Rittau, Linus Welleij]
2252 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
2253 * Updated translations (bg,ko,vi)
2254
2255 Overview of Changes in GLib 2.0.4
2256 =================================
2257
2258 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
2259 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
2260 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
2261 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
2262
2263 Overview of Changes in GLib 2.0.3
2264 =================================
2265
2266 * Handle sorting 0-length arrays (Ron Arts)
2267 * Threading fixes (Sebastian Wilhelmi)
2268 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
2269   Sebastian, Qingjiang Yuan)
2270 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
2271 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
2272 * Win32 fixes (Tor Lillqvist)
2273 * Try to fix g_get_charset() related segfaults. (Owen)
2274 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
2275   Andrew P. Lentvorski, Jr.)
2276 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
2277 * g_markup fixes. (Matthias Clasen.)
2278 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
2279   Wayne Schuller)
2280
2281 Overview of Changes in GLib 2.0.1
2282 =================================
2283
2284 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
2285 * Performance improvements for GObject parameter lookup, 
2286   g_filename_to/from_utf8() [Alex Larsson]
2287 * Actually check interface prerequisites [Matthias Clasen,
2288   Miroslaw Dobrzanski-Neumann]
2289 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
2290 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
2291 * Fixes for g_log() and threading.
2292   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
2293 * Make g_print(), g_printerr(), g_warning(), etc, convert from
2294   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
2295 * Fixes for GIOChannel on windows. [Tor Lillqvist]
2296 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
2297 * Fix file descriptor leak in g_file_get_contents() [Matthias]
2298 * Workaround iconv() problems on older Solaris [Lauri Alanko]
2299 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
2300 * Minor bug fixes.
2301
2302 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
2303   Akira Tagoh, Morten Welinder
2304
2305
2306 Overview of Changes in GLib 2.0.0
2307 =================================
2308
2309 * Thread portability fixes [Sebastian Wilhelmi]
2310 * Documentation updates [Owen Taylor]
2311 * Make g_strerror(), g_strsignal() properly return UTF-8,
2312   call bind_text_domain_codeset() so that error strings
2313   are in UTF-8 as well. [Owen, Tor Lillqvist]
2314
2315 Overview of Changes in GLib 2.0.0 rc1:
2316 ======================================
2317
2318 * Win32 fixes [Tor Lillqvist]
2319 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
2320 * Fix up g_date_strftime [Daniel Elstner]
2321 * Add some structure padding [Tim Janik]
2322 * Make g_get_homedir() prefer the users home directory to $HOME
2323
2324 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
2325
2326 Overview of Changes in GLib 1.3.15:
2327 ===================================
2328
2329 * Speed up marshalers by using private access to GValue 
2330   [Anders Carlsson, Tim Janik]
2331 * Reduce GValue to 2 elements [Tim]
2332 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
2333 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
2334 * Add padding to various structures [Owen Taylor, Tim]
2335 * Win32 fixes [Tor Lillqvist]
2336
2337 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
2338   Daniel Elstner
2339
2340 Overview of Changes in GLib 1.3.14:
2341 ===================================
2342
2343 * Register value transformations for gint64, guint64 [Andy Wingo]
2344 * Build with large-file support [Sven Neumann, Owen Taylor]
2345 * Fix handling of hostnames in URI's [Darin Adler]
2346 * Main loop bug fixes [Havoc Pennington, Owen]
2347 * Doc fixes and improvements [Manish Singh, Tim Janik]
2348 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
2349 * Win32 fixes [Hans Breuer, Tor Lillqvist]
2350 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
2351 * Miscellaneous bug fixes
2352
2353 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
2354   Morten Welinder.
2355
2356 Overview of Changes in GLib 1.3.13:
2357 ===================================
2358
2359 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
2360 * Miscellaneous win32 fixes [Tor, Hans Breuer]
2361 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
2362 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
2363 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
2364 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
2365   Laszlo Peter, Havoc Pennington, Tim Janik]
2366
2367 Overview of Changes in GLib 1.3.12:
2368 ===================================
2369
2370 * Implement closure chaining, fixing up API (Tim Janik)
2371 * Closure chaining test case (James Henstridge)
2372 * Make GType long not int where both are equal width (Tim)
2373 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
2374 * Fixes for NetBSD. (Dan Winship)
2375 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
2376 * Save space for GBSearchArray (Tim Janik)
2377 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
2378
2379 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
2380   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
2381   Sebastian Wilhelmi.
2382
2383
2384 Overview of Changes in GLib 1.3.11:
2385 ===================================
2386
2387 * Win32 fixes [Hans Breuer, Tor Lillqvist]
2388 * Documentation improvements [Matthias Clasen]
2389 * Portable directory handling API [Hans]
2390 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
2391 * Fix excess relocations in Unicode tables [Andrew Taylor]
2392 * Fix gpattern for UTF-8 [Matthias Clasen]
2393 * Support overriding class closures [Tim Janik]
2394 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
2395 * Hide pointers to type information inside GType to reduce locking
2396   [Alex Larsson, Tim]
2397 * Adds check for direct inclusion of gobject/*.h [Owen]
2398 * GObject API cleanups [Tim]
2399
2400 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
2401   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
2402
2403
2404 Overview of Changes in GLib 1.3.10:
2405 ===================================
2406
2407 * Many Win32 fixes and improvements [Tor Lillqvist]
2408 * Documentation improvements [Matthias Clasen]
2409 * g_string_printfa() renamed to g_string_append_printf()
2410 * Use libcharset from libiconv to implement charset detection
2411   more portably. [Owen Taylor, Hidetoshi Tajima]
2412 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
2413 * Make support for 64 bit integers a requirement [Joshua]
2414 * GPattern improvements [Tim Janik, Matthias]
2415 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
2416 * Many bug fixes and minor tweaks.
2417
2418 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
2419   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
2420   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
2421   Jacob Berkman
2422
2423
2424 Overview of Changes in GLib 1.3.9:
2425 ==================================
2426
2427 * Fixes for comparison of threads [Sebastian Wilhelmi]
2428 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
2429 * Win32 fixes [Tor Lillqvist, Hans Breuer]
2430 * Add a len argument to g_ascii_strup/strdown
2431 * Bug, portability fixes, cleanups.
2432
2433 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
2434
2435
2436 Overview of Changes in GLib 1.3.8:
2437 ==================================
2438
2439 * Documentation updates [Owen]
2440 * Made GType interfaces overridable in derived types
2441 * Many win32 fixes [Tor Lillqvist]
2442 * Miscellaneous cleanups and fixes
2443
2444 Other contributors:
2445   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
2446
2447
2448 Overview of Changes in GLib 1.3.7:
2449 ==================================
2450
2451 * Integrate GClosure support into the main loop [Owen Taylor]
2452 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
2453 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
2454 * Minor hash table optimizations
2455 * Main loop and threading improvements [Sebastian Wilhelmi]
2456 * Added g_ascii_* functions to be used for locale insensitive UTF-8
2457   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
2458 * Add functions for Unicode case-conversion, normalization, and 
2459   collation [Owen]* GString improvements [Owen]
2460 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
2461 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
2462 * Make code 64bit clean [Mark Murnane]
2463 * More G_CONST_RETURN fixes
2464 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
2465 * Miscellaneous bug and API fixes
2466
2467 Other contributors:
2468   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
2469   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
2470   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
2471   Peter Williams
2472
2473
2474 Overview of Changes in GLib 1.3.6:
2475 ==================================
2476
2477 * Threads have a "return value" from g_thread_join
2478 * Removed ability to adjust thread stack size
2479 * Prefix warnings with progname/PID by default, change toggle for this to 
2480   be an env variable G_MESSAGES_PREFIXED not a compile-time option
2481 * GMarkup speedups
2482 * GDate const, convenience fixups
2483 * Include test cases that headers are compilable by C++ compiler
2484 * Add ability to spawn processes with argv[0] != executable path.
2485 * g_strstr_len, g_strrstr, g_strrstr_len
2486 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
2487 * Misc bug fixes
2488
2489
2490 Overview of Changes in GLib 1.3.5:
2491 ==================================
2492
2493 * Added an installed glib-mkenums Perl program for parsing enumeration
2494   declarations from header files.
2495 * Mark some additional deprecated functions.
2496 * Bug and Portability fixes
2497
2498
2499 Overview of Changes in GLib 1.3.4:
2500 ==================================
2501
2502 * Efficiency improvements for GThreadPool
2503 * A few bug fixes
2504 * Build fixes
2505 * Documentation improvements
2506
2507
2508 Overview of Changes in GLib 1.3.3:
2509 ==================================
2510
2511 GLib:
2512
2513 * More user_data support in various functions.
2514 * Main loop API revamps to support per-thread main loops.
2515 * Unicode handling improvements.
2516 * Implemented debugging traps.
2517 * G_CONST_RETURN specification all over the place.
2518 * Various new small utility functions.
2519 * Random number generator precision improvements.
2520 * New configure option --disable-mem-pools.
2521 * Many Win32 improvements.
2522 * Added g_try_malloc() friends varinats.
2523 * Many documentation improvements.
2524 * Many threading improvements, support for dynamic allocation
2525   of static mutexes.
2526 * GHookLIst API cleanups.
2527 * Improved format support of GDate parser.
2528 * String function speed improvements with new g_stpcpy().
2529 * Hashtable API additions.
2530 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
2531 * Optimizations, cleanups, bug fixes.
2532
2533 GObject:
2534
2535 * Added many convenience functions.
2536 * GClosure and GParamSpec use float/sink ref-counting scheme now.
2537 * Reworked property change notification.
2538 * Binary searchable array cleanups, so it's widely usable now.
2539 * Added static content keeping for some GValue types.
2540 * Support for statically scoped signal parameters.
2541 * Extinguished property trailer args in set/get interface.
2542 * Added support for abstract types.
2543 * G_CONST_RETURN specification all over the place.
2544 * Split parameter exchange functionality into value transforms
2545   and parameter conversions.
2546 * Added signal emission hooks and signal accumulators.
2547 * Added interface prerequisites to support is_a (interface, object)
2548   relations.
2549 * Implemented GValueArray.
2550 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
2551   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
2552   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
2553 * Varrags value collection improvements.
2554 * Implemented debugging traps.
2555 * Made things thread-safe.
2556 * Many documentation improvements.
2557 * Many cleanups, optimizations and bug fixes.
2558
2559
2560 Overview of Changes in GLib 1.3.2:
2561 ==================================
2562
2563 GLib:
2564
2565 * Win32 build improvements  [Tor]
2566 * Improvements to error reporting  
2567   (g_critical(), g_return_if_reached()) [Darin]
2568 * Add g_strlcpy/g_strlcat  [David Wheeler]
2569 * New IO channel implementation for Win32  [Tor] 
2570 * Make g_array_free, g_string_free return pointer to memory requested
2571   not to be freed.  [Darin]
2572 * Added GError based error reporting for thread functions.  [Sebastian]
2573 * Moved reference docs into GLib distribution. [Owen]
2574 * Added g_convert() for doing convenient character set conversions based
2575   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
2576 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
2577   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
2578 * Portability fixes for threading.  [Sebastian]
2579 * Added convenient functions for launching new processes (g_spawn_*),
2580   and shell quoting/unquoting functions.  [Havoc]
2581 * Split glib.h into many headers.  [Sebastian]
2582 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
2583 * Fixed confusions between comparison functions that return <0, 0, >0
2584   and equaility functions that return FALSE,TRUE.  [Sebastian]
2585 * Added safe/portable temporary file manipulation functions.  [Tor]
2586 * autoconf improvements.  [Raja]
2587 * Many documentation improvements.
2588 * Bug fixes.
2589
2590 GObject:
2591
2592 * Added boxed and pointer types.  [Tim/Jonathan]
2593 * Added callback abstraction (GClosure)  [Tim]
2594 * Added signal system (GSignal)  [Tim]
2595 * Make GTypePlugin an interface  [Tim]
2596 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
2597 * Bug fixes.
2598
2599
2600 What's new in GLib 1.3.1:
2601 =========================
2602
2603 * New GObject library added including object system based on
2604   the GTK+ object system. 
2605 * Functions for getting the properties of Unicode characters, 
2606   computing the canonical decomposition and ordering combining
2607   characters aand manipulating UTF-8 string manipulation based
2608   on libunicode.
2609 * GString now properly handles embedded nuls.
2610 * Multiple fixes from the 1.2.x branch.
2611 * Upgrade to libtool 1.3.3
2612 * Full thread support (thread creation and destruction).
2613 * BeOS port, BeOS dynamic modules.
2614 * Many improvements to the Windows ports.
2615 * Improvements to the OS/2 port, OS/2 module support.
2616 * Double ended queue implementation.
2617 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
2618 * New configure option --enable-msg-prefix to prefix messages, warnings
2619   et ceteri with the program name and the process id.
2620 * New thread-safe random number generator Mersenne Twister.
2621 * g_strcompress() added, g_strescape() had a slight API change, and
2622   more tightly defined semantics.
2623 * the g_string(x) macro has been removed, #x may be used instead.
2624                                 
2625 * bugs fixed: