More updates
[platform/upstream/glib.git] / NEWS
1 Overview of Changes from GLib 2.23.3 to GLib 2.23.4
2 ===================================================
3
4 * GVariant: The core of GVariant has been merged now, with some
5  API still to follow.
6
7 * GIO:
8  - There is a new interface GFileDescriptorBased for file descriptor
9    based IO. GLocalFile{Input,Output}Stream implement it
10  - Use splice(2) to transfer data between file descriptors without
11    extraneous copies
12  - Add a way to request move events from file monitors
13
14 * Bugs fixed:
15  609143 *result_uncertain is never assigned in g_content_type_guess
16  604086 Use splice(2) when doing local file copies
17  547890 No move events for GFileMonitorEvent?
18  568760 nautilus freezes due to a bug in garray.c:322
19  609962 Add info about the use of G_DEFINE_INTERFACE
20  609564 g_base64_encode_close docs should mention outbuf size...
21  610484 g_variant_equal bug
22  610131 libasyncns does not compile on Solaris 8
23  609530 missing single header include guards
24
25 * Updated translations:
26  Czech
27  Estonian
28  Galician
29  German
30  Korean
31  Polish
32  Slovenian
33  Spanish
34  Traditional Chinese
35
36
37 Overview of Changes from GLib 2.23.2 to GLib 2.23.3
38 ===================================================
39
40 * GLib now has a facility for locks that consume only one bit of
41   storage inside an integer: g_bit_lock()
42
43 * GVariant: The serializer has been merged, with more API to follow
44
45 * Bugs fixed
46  548967 1 bit mutex lock
47  604967 2.22.3 libasyncns build fails on HP-UX 11.11
48  608602 G_VALUE_COLLECT_INIT variables shadow those in G_VALUE_COLLECT
49  608743 Crash in g_hostname_to_ascii visiting certain website in epiphany
50  599197 array ref and unref functions crash on NULL array.
51  608159 mem leak in g_io_modules_scan_all_in_directory
52
53 * Translation updates
54  Brazilian Portuguese
55  Czech
56  French
57  Norwegian bokmål
58  Slovenian
59  Spanish
60  Thai
61
62
63 Overview of Changes from GLib 2.23.1 to GLib 2.23.2
64 ===================================================
65
66 * We are now using gcc builtins for atomic operations when available
67
68 * g_assert() grew the ability to store assertions in core dumps
69
70 * GIO supports lazy loading of GIO modules, and there is a new
71   gio-querymodule utility that goes along with this.
72   Packagers will need to adapt to this.
73
74 * Threading changes:
75  - The requirements for g_thread_init() have been relaxed slightly,
76    it can be called multiple times, and does not have to be the first
77    call.
78  - GObject now links to GThread and threads are enabled automatically
79    when g_type_init() is called.
80  - Thread-safety issues with boxed types in GObject have been fixed.
81
82 * GObject:
83  - Another bunch of performance work has landed
84
85 * GVariant:
86  - GVariantType has been merged, with the rest of the GVariant
87    API to follow.
88
89 * Bugs fixed:
90  568760 nautilus freezes due to a bug in garray.c:322
91  602417 Document lifecycles of GSimpleAsyncResult and friends
92  604824 crash in Epiphany: Selecting my Slashdot bo...
93  448888 don't init g_slice for always-malloc
94  531902 Use GCC atomic buildins for g_atomic*
95  554887 boxed type registration is not thread safe
96  586150 unresolved symbols when building glib 2.21.2 on OS X Tiger
97  589176 row gvalue transform array exponentially
98  594872 Support storing assertion messages into core dump
99  602240 Upgrade libasyncns to 0.8
100  603590 Speed up G_VALUE_COLLECT
101  604457 gutf8inputstream.c: increasing unknown size pointer
102  605686 GCharsetConverter doesn't flush
103  605733 g_memory_output_stream_new violates GObject standards
104  605883 g_object_new() processes varargs even when there are none
105  605977 invalid utf-8 conversion in g_local_file_get_parse_name(...
106  606775 Enable threads by default in gobject
107
108 * Translation updates:
109  Asturian
110  Basque
111  Bengali
112  Bulgarian
113  Estonian
114  Norwegian bokmål
115  Spanish
116  Thai
117  Ukrainian
118
119
120 Overview of Changes from GLib 2.23.0 to GLib 2.23.1
121 ===================================================
122
123 * GObject performance work has landed:
124  - Construction of simple objects is much faster
125  - Interface lookup is lock-free and constant-time now
126  - Reduced locking overhead when dealing with types
127
128 * GType now has a G_DEFINE_INTERFACE convenience macro
129
130 * GIO gained GUtf8InputStream, an input stream that
131   performs utf-8 validation
132
133 * GLib now has byte-swap macros for gsize and gssize
134
135 * Bugs fixed:
136 557151 Determining the newly_constructed boolean in gobject.c...
137 557100 Performance improvements for GObjectClasses that don't...
138 501166 Warning message says IA__g_type_init instead of g_type_init
139 585375 Performance and Contention problems with g_type_class_ref...
140 587892 Race in GType when instantiating the same class for the...
141 603270 Input Stream validating utf8
142 603476 gioenums.h:62: error: comma at end of enumerator list
143 603540 g_time_val_from_iso8601 uses uninitialised variable
144 603982 Stack overflow when reading file async with filter
145 604645 G_DEFINE_INTERFACE_* documentation is not generated
146 604875 Use of sa_len conflicts with system header
147 320482 provide G_DEFINE_TYPE like macros for interfaces
148
149 * Updated translations:
150  Estonian
151  Hebrew
152  Norwegian bokmål
153  Vietnamese
154  Welsh
155
156
157 Overview of Changes from GLib 2.22.x to GLib 2.23.0
158 ===================================================
159
160 * GIO:
161  - GConverter: a generic interface for stateful conversions of data,
162    suitable for charset conversion, compression, decompression, regexp
163    replacement. Concrete implementations are GCharsetConverter,
164    GZlibCompressor and GZlibDecompressor. GConverterInputStream,
165    GConverterOutputStream are stream implementations that convert data
166    while loading or saving it.
167  - GMounts can now have a 'default location': a path that reflects
168    the main entry point for the user (e.g. the home directory).
169  - As a consequence of the compression support, GIO depends on zlib now.
170
171 * GObject:
172  - G_IMPLEMENT_INTERFACE_DYNAMIC: a convenience macro for adding
173    interfaces to dynamic types.
174
175 * GModule:
176  - The -pthread flag has been added to all gmodule .pc files, because
177    it is not generally permissible to load modules that are linked
178    against libpthread if the program has not been compiled with threading
179    support.
180
181 * Bugs fixed:
182  601637 GUnixFDMessage should contain a GUnixFDList
183  585566 GSocketListener API issues
184  572252 Bug in g_file_test() function.
185  600550 g_app_info_create_from_commandline doesn't treat arguments properly
186  541236 not detecting exact content type
187  350200 [PATCH] GTypeModule derived class unref does not unload plugin
188  589631 Please enclose literal values with double quotes
189  577711 cross compile check for g++ broken
190  600620 Support X-GNOME-FullName in GAppInfo
191  598899 GWin32DirectoryMonitor is broken
192  593809 Nautilus does not restore the position of the icons on the desktop...
193  563627 g_get_prgname() threadsafety
194  600141 Add -pthread to gmodule pkg-config
195  593856 file and directory monitors don't work when glib is compiled...
196  324930 Nautilus should disallow copying of symlink to FAT drive early
197  587300 Deadlock when calling g_cancellable_disconnect in a...
198  595138 GFile not robust with invalid input
199  591216 Warning building resolver.o
200  590016 Does not compile under MinGW32 + Wine
201  591214 Warnings building gcancellable.o
202  561998 Have specific entry points (paths) for mounts...
203  508157 Add G_IMPLEMENT_INTERFACE_DYNAMIC
204  535159 g_file_has_parent
205
206 * Updated translations:
207  Brazilian Portuguese
208  Catalan
209  Estonian
210  Galician
211  Norwegian bokmål
212  Shavian
213  Slovenian
214  Spanish
215  Swedish
216
217
218 Overview of Changes from GLib 2.22.1 to GLib 2.22.2
219 ===================================================
220
221 * GIO:
222  - Support case-sensitive globs in the shared mime database,
223    including support for the newer cache format that allows these.
224    Case-sensitive globs have been introduced in shared-mime-info
225    version 0.70
226
227 * GObject:
228  - Speed up creation of simple objects
229
230 * Bugs fixed:
231  597194 Typo in _G_TYPE_CVH macro
232
233 * Updated translations:
234  Russian
235
236
237 Overview of Changes from GLib 2.22.0 to GLib 2.22.1
238 ===================================================
239
240 * Bugs fixed:
241  596064 Test file marked for translation
242  595972 possibly invalid search in mime_info_cache_dir_add_...
243  596561 C99 style of declaration of variable in gmessages.c
244  596314 g_utf16_to_utf8 returns an invalid UTF8 string
245  596748 g_async_result_get_source_object returns a new ref
246  593809 Nautilus does not restore the position of the icons...
247  593775 uses inotify_init1 unconditionally
248
249 * Updated translations:
250  Bengali
251  Hebrew
252
253
254 Overview of Changes from GLib 2.21.6 to GLib 2.22.0
255 ===================================================
256
257 * Add gdb python macros to make gobject debugging more pleasant
258
259 * Bugs fixed:
260  579050 Allow making selected critical and warning messages non-fatal
261  594759 g_socket_send_message fails due to invalid sendmsg params
262  593941 GNetworkAddress skipping addresses when enumerating
263  594597 Fix build with srcdir != builddir
264  595619 Include gdb pretty printers
265
266 * Changes that might affect bindings:
267  - The error parameter of g_simple_async_result_set_from_error has been
268    made const.
269
270 * Updated translations:
271  Assamese
272  Bengali India
273  British English
274  Bulgarian
275  Catalan
276  Czech
277  Danish
278  Finnish
279  Galician
280  Greek
281  Gujarati
282  Hindi
283  Japanese
284  Kannada
285  Malayalam
286  Marathi
287  Norwegian bokmål
288  Oriya
289  Polish
290  Punjabi
291  Romanian
292  Serbian
293  Simplified Chinese
294  Slovenian
295  Spanish
296  Tamil
297  Telugu
298  Thai
299  Traditional Chinese
300  Ukrainian
301  Vietnamese
302
303
304 Overview of Changes from GLib 2.21.5 to GLib 2.21.6
305 ===================================================
306
307 * Minor API additions:
308   g_mkstemp_full is a variant of g_mkstemp that allows to specify flags
309   and permissions
310
311 * Bugs fixed:
312  593232 g_rand_new: read no more than requested from /dev/urandom
313  591995 use saved errno
314  589491 g_time_val_from_iso8601 doesn't handle some cases
315  593406 Permissions set to 777 after copying via Nautilus
316  594034 Add g_mkstemp_full()
317
318 * Updated translations:
319  Assamese
320  Basque
321  Brazilian Portuguese
322  Czech
323  Estonian
324  French
325  German
326  Hungarian
327  Italian
328  Kannada
329  Malayalam
330  Marathi
331  Norwegian bokmål
332  Oriya
333  Portuguese
334  Swedish
335  Tamil
336  Turkish
337
338
339 Overview of Changes from GLib 2.21.4 to GLib 2.21.5
340 ===================================================
341
342 * A performance problem with trashing of many files has been fixed
343
344 * GResolver now invalidates the libc resolv.conf cache as needed
345
346 * Minor api additions:
347  - g_cancellable_make_pollfd returns a boolean now. And there is a
348    new function g_cancellable_release_fd that can be used to released
349    the resources used by a GCancellable.
350
351 * Bugs fixed:
352  589988 Compilation error on Solaris 9 (missing stdint.h)
353  588901 gtcpconnection.c won't compile
354  584246 GResolver needs to call res_init() when network state changes
355  591714 Figure out failure handling for g_cancellable_make_pollfd()
356  591532 redundent '/' returned from g_file_resolve_relative_path
357  591378 Use MSG_NOSIGNAL in GSocket if it's available
358  589649 API documentation migration for Base64 Encoding
359  591840 configure fails with autoconf 2.64
360
361 * Updated translations:
362  Basque
363  Brazilian Portuguese
364  Bulgarian
365  Danish
366  Estonian
367  Finnish
368  Galician
369  Gujarati
370  Hndi
371  Irish
372  Japanese
373  Korean
374  Norwegian bokmål
375  Polish
376  Portuguese
377  Punjabi
378  Spanish
379  Swedish
380  Telugu
381  Traditional Chinese
382  Thai
383
384
385 Overview of Changes from GLib 2.21.3 to GLib 2.21.4
386 ===================================================
387
388 * GTree is now refcounted
389
390 * Bugs fixed:
391  587938 Undocumented limitation for g_str_equal
392  587773 refcounts for GTree
393
394 * Updated translations:
395  French
396  Hebrew
397  Norwegian bokmål
398  Spanish
399  Swedish
400  Traditional Chinese
401  Ukrainian
402
403
404 Overview of Changes from GLib 2.21.2 to GLib 2.21.3
405 ===================================================
406
407 * GMappedFile is refcounted now
408
409 * Mainloop: It is now possible to set per-thread default contexts,
410   with g_main_context_push_thread_default.
411
412 * glib-mkenums supports a @basename@ substitution, in addition
413   to @filename@.
414
415 * GIO:
416  - Vfs implementations can support storing of per-file metadata.
417  - GCancellable can now be subclassed.
418  - Unmount and eject methods now optionally allow interaction, via
419    variants that take a GMountOperation object.
420
421 * Bugs fixed:
422  556706 Inconsistent help arguments -h, -?
423  579449 FileChoosers no longer work if an idle handler is active
424  579933 mainloop FD_CLOEXEC has a race condition
425  579984 alternate GMainContext support
426  585937 gio/gsocket.c (glib 2.21.2) does not compile (Windows/mingw)
427  586675 Runtime library location
428  586797 Add GCancellables to GSocket ops
429  586868 g_filename_complete_get_completions doesn't always return...
430  587415 g_resolver_lookup_by_name_finish returns a freed list
431  587434 regression tests fail, at least on x86_64
432  586928 Avoid g++ warning in g_error()
433
434 * Updated translations:
435  Estonian
436  Hebrew
437
438
439 Overview of Changes from GLib 2.21.1 to GLib 2.21.2
440 ===================================================
441
442 * GIO:
443   - g_socket_speaks_ipv4 is a new function to check if a socket can
444     speak IPv4.
445   - g_socket_listener_add_address gained a new effective_address out
446     parameter.
447   - GIO now returns special icons for XDG user directories, by the
448     name folder-music, folder-documents, etc.
449   - GIO gained support for starting/stopping of drives, which can be used
450     in connection with external hard disk enclosures, disk arrays, iSCSI
451     devices, etc. See g_file_start/stop_mountable.
452
453 * GLib:
454  - g_reload_user_special_dirs_cache is a new function to force GLib to
455    reload the XDG user directory mapping from disk.
456
457 * Bug fixes:
458  584574 glib compile failure on Mac OS X with gunixresolver.c and...
459  585566 GSocketListener API issues
460  584255 Incorrect freeing of thread pool in GThreadedSocketService
461  585088 g_string_chunk_insert_len stops at nul bytes
462  585360 Monitor fontconfig configuration files using gio causes m...
463  580103 Terminal starts on Display :0.0 when started on :0.1 in D...
464  580301 network: a few issues on old darwin
465  583398 SRV weight sorting is incorrect
466  584176 build fixes on FreeBSD
467  585189 g_cancellable_reset() must be called in same thread as g_...
468  585280 compilation dies on gio/gsocket.c, needs sys/uio.h to con...
469  585281 gio/gunixfdmessage.c needs sys/types.h for platforms that...
470  585478 don't leak the inotify fd
471  585575 g_socket_listener_add_inet_port() doesn't do the right thing
472  585599 g_socket_listener_add_socket() consumes the socket
473  585676 GEmblem doesn't reference its 'icon' if that is set as a ...
474  585717 "bytes" nautilus translation to french is not shown in th...
475  541276 XDG directories should have their own icons
476  585726 Grammatical error in GList documentation
477  585520 Wrong warning option in documentation
478  585673 GNOME Goal: Remove deprecated glib symbols
479  585591 Starting/stopping drives
480
481 * Updated translations:
482  Bengali India
483  Norwegian bokmål
484
485
486 Overview of Changes from GLib 2.21.0 to GLib 2.21.1
487 ===================================================
488
489 * GIO:
490  - Support for network IO has been added, including a low-level
491    socket API and a high-level API for network connections and
492    services.
493  - Support for read-write access with GIOStream and its subclasses.
494  - GMount gained a pre-unmount signal.
495
496 * Bug fixes:
497  576104Implement GMount::pre-unmount
498  578769 implement GWinHttpFileInputStream::close_fn
499  582856 gsocket.c doesn't compile on Solaris
500  569375 g[u]intptr undocumented
501  573246 [FIX] g_desktop_app_info_dup() can access NULL pointer
502  575013 g_cancellable_push_current() does not allow NULL
503  577884 live-g-file.c:461: error: format ‘%d’ expects type ...
504  578499 g_output_stream_splice and stream closing with gnio strea...
505  579558 Application employing gvfs crashes with only libgvfscommo...
506  583001 SIGPIPE (grr!)
507  583061 Please add convenience function to connect to machines by...
508  583198 typo in error message
509  583206 use g_set_error_literal where appropriate
510  583229 void function g_async_initable_init_async returns value
511  583324 locking problem in g_main_context_iterate()
512  583408 void function g_socket_control_message_serialize returns ...
513  578786 wrong and confusing error message
514  583205 g_inet_address_to_bytes has no length outparam
515  583196 mem leak in keyfile test
516  583663 GSocketType enum ends with a comma
517  569024 Make g_error_new_valist public
518  569376 missing G_G[U]INTPTR_FORMAT
519  580347 off-by-1 bug in GWinHttpFile
520
521 * Updated translations:
522  Oriya
523  Spanish
524  Valencian-Catalan
525
526
527 Overview of Changes from GLib 2.20.x to GLib 2.21.0
528 ===================================================
529
530 * GIO:
531  - New helper functions g_cancellable_connect/disconnect to avoid
532    race conditions when connecting to the "cancelled" signal on
533    GCancellable.
534  - New types and methods for dealing with IPv4 and IPv6 addresses (and
535    UNIX domain socket addresses under UNIX). This does not include code
536    for actual socket I/O.
537  - GResolver provides asynchronous and cancellable APIs for resolving
538    hostnames, reverse lookup of IP addresses and resolving SRV records.
539
540 * Glib now provides hash and comparison functions for int64 and double
541   types, suitable for use with GHashTable.
542
543 * GArray, GPtrArray and GByteArray can be ref counted now, and have
544   boxed types.
545
546 * Bugs fixed:
547  572844 Helper for GCancellable::cancelled connect/disconnect
548  578363 goption docs should be improved
549  548466 async/cancellable DNS resolver
550  579830 param spec strings should use P_()
551  579862 requesting xattr::foo ends up calling getxattr(..., user...
552  580453 Hash and equal functions for gint64 and gdouble
553  580450 Reference counting and boxed types for arrays
554  580194 gresolver doesn't build on Solaris
555  580301 network: a few issues on old darwin
556  580299 network: include sys/types.h before sys/socket.h to insur...
557  572508 gmarkup speedup
558  580546 g_strtoull() referenced in documentation...
559  580656 g_key_file_set_string_list erroneously asserts list != NULL
560  579272 leaks in g_simple_async_result_set_op_res_gpointer
561
562
563 * Updated translations:
564  Catalan (ca)
565  Pashto (ps)
566  Spanish (es)
567
568
569 Overview of Changes from GLib 2.20.0 to GLib 2.20.1
570 ===================================================
571
572 * Bug fixes:
573  575555 Use fsync() when replacing files to avoid data loss on
574  575708 runaway inotify madness
575  575270 GVolumeMonitor::mount-pre-unmount not being emitted
576  577128 glib make check Failed to execute child process...
577  573673 Always show "backup" directories
578  578369 g_time_val_from_iso8601() parses timezones incorrectly
579  578002 Fix a small typo in GFile docs
580  578017 G_DEFINE_TYPE_EXTENDED docs
581
582 * Updated translations:
583  Arabic
584  Assamese
585  Basque
586  Bularian
587  Brazilian Portuguese
588  British English
589  Catalan
590  Danish
591  French
592  Galician
593  German
594  Greek
595  Hungarian
596  Italian
597  Japanese
598  Kannada
599  Lithuanian
600  Malayalam
601  Norwegian bokmål
602  Oriya
603  Polish
604  Punjabi
605  Russian
606  Simplified Chinese
607  Slovenian
608  Spanish
609  Swedish
610  Tamil
611
612
613 Overview of Changes from GLib 2.19.9 to GLib 2.20.0
614 ===================================================
615
616 * Base64 support: Avoid integer overflows. CVE-2008-4316
617
618 * Bugs fixed:
619  574019 GChecksum: document and guarantee hex characters in lower case
620  573454 Unable copy/move files to directories symlinked to gvfs share
621  561172 gnome-open fails on local URIs with anchors
622  573970 crash in gunixvolumemonitor:update_mounts when unmounting
623  573843 g_get_current_dir returns non-absolute path
624
625 * Updated translations:
626  Assamese (as)
627  Bengali (bn_IN)
628  Czech (cs)
629  Hindi (hi)
630  Italian (it)
631  Japanese (ja)
632  Lithuanian (lt)
633  Malayalam (ml)
634  Marathi (mr)
635  Oriya (or)
636  Polish (pl)
637  Romanian (ro)
638  Telugu (te)
639
640
641 Overview of Changes from GLib 2.19.8 to GLib 2.19.9
642 ===================================================
643
644 * GMarkup:
645  - Considerable speedup
646
647 * GIO
648  - Add G_FILE_CREATE_REPLACE_DESTINATION flag to allow replacing
649    the destination of a copying operation as if it did not exit before.
650  - Be more careful when classifying files as desktop files
651  - Support desktop file key X-GIO-NoFuse which disables the use
652    of fuse pathnames for %u and %U arguments
653
654 * Bugs fixed:
655  572672 glib/gthread.c: argument is different type
656  572464 Doc for g_file_get_contents
657  572151 “it's” and “its” confused in docs and comments
658  570501 g_win32_get_system_data_dirs uses invalid conversion...
659  167569 g_string_append_printf crashes on win32 when used...
660  572508 gmarkup speedup
661  560564 Replacing a symlink with its linked file truncates... 
662  549298 impossible to copy files with p (pipe) flag
663  543183 Clarify docs for g_file_has_prefix
664  540461 g_memory_output_stream_get_data_size() doesn't behave...
665  573462 GEmblemedIcon leak
666  573421 Clarify message format in GMountOperation
667  573658 Deadlock in giomodule.c
668  556706 Inconsistent help arguments -h, -?
669  573527 Wrong shell to run config.status in Makefile.in.in
670  573128 A couple of typos in GObject documentation
671
672 * Updated translations:
673  Catalan (ca)
674  British English (en_GB)
675  Spanish (es)
676  Basque (eu)
677  Finnish (fi)
678  French (fr)
679  Gujarati (gu)
680  Hebrew (he)
681  Hungarian (hu)
682  Korean (ko)
683  Maithili (mai)
684  Norwegian bokmål (nb)
685  Dutch (nl)
686  Portugese (pt)
687  Swedish (sv)
688  Thai (th)
689  Traditional Chinese (zh_HK)
690  Traditional Chinese (zh_TW)
691
692
693 Overview of Changes from GLib 2.19.7 to GLib 2.19.8
694 ===================================================
695
696 * GIO: Fix missing exports of new API
697
698 * Fix strict aliasing warnings and violations to make Glib work
699   with gcc 4.4
700
701
702 Overview of Changes from GLib 2.19.6 to GLib 2.19.7
703 ===================================================
704
705 * GIO
706  - GFile gained an attribute for the actual file size in bytes
707  - GMountOperation gained an "aborted' signal that allows to abort
708    a mount operation from the backend side
709
710 * Bugs fixed:
711  523742 Use noinst for non-installable libraries
712  566747 URIs opened with firefox %u load as local files
713  541225 Can't compile gio on AIX duplicate case value in gioerror.c
714  571598 GAsyncResult with NULL gobject
715  505042 add file attribute for actually used file size in bytes
716
717 * Updates translations:
718  Basque (eu)
719  Gujarati (gu)
720  Italian (it)
721  Japanese (ja)
722  Norwegian bokmål (nb)
723  Dutch (nl)
724  Portugese (pt)
725  Thai (th)
726  Vietnamese (vi)
727
728
729 Overview of Changes from GLib 2.19.5 to GLib 2.19.6
730 ===================================================
731
732 * New format macro to print goffset data: G_OFFSET_FORMAT
733
734 * GIO: 
735  - Add a GFilter{Input,Output}Stream::close-base-stream properties which
736    determine whether the base stream will be closed when the filter stream
737    is finalized.
738  - g_data_input_stream_read_line and ..._read_until have asynchronous
739    variants now.
740
741 * Bugs fixed:
742  568294 A wrong reference in the description of g_bookmark_file_...
743  563141 RFE: define G_OFFSET_FORMAT
744  569105 g_time_val_to_iso8601() assumes time_t==long
745  568394 dropping the last reference to a stream filter closes...
746  568741 g_buffered_input_stream_fill_async doesn't work
747  568723 g_buffered_input_stream_fill_async doesn't take count == -1
748  568575 _async functions for GDataInputStream
749
750 * Updated translations:
751  Bulgarian (bg)
752  Finnish (fi)
753  Hungarian (hu)
754  Oriya (or)
755  Swedish (sv)
756  Traditional Chinese (zh_HK)
757  Traditional Chinese (zy_TW)
758
759
760 Overview of Changes from GLib 2.19.4 to GLib 2.19.5
761 ===================================================
762
763 * Update included PCRE to 7.8
764
765 * g_base64_decode_inplace: New function to do base64 decoding in place
766
767 * Bugs fixed:
768  567138 get_package_directory_from_module() does not free ...
769  566569 gregex docs clarification
770  566573 g_match_info_fetch_pos docs
771  564728 Add function to decode base64 encoded data in place
772  567838 G_STRUCT_OFFSETOF fails to compile under icc 9.1
773  567977 textdomain() macro should not return NULL ...
774  512779 --disable-regex breaks compilation
775  566770 error code 0 for Too many open files is useless
776  565484 g_content_type_guess passes non-UTF8 text to XDG ...
777
778 * Updated translations:
779  Catalan (ca)
780  Spanish (es)
781  Italian (it)
782  Swedish (sv)
783
784  
785 Overview of Changes from GLib 2.19.3 to GLib 2.19.4
786 ===================================================
787
788 * GIO:
789   - Use O_NOATIME when sniffing mimetypes
790   - Add a convenience method to check if a GSimpleAsyncResult
791     is valid
792
793 * Bugs fixed:
794  560676 function access for g_threads_supported
795  565905 There is no g_context_group_set_translation_domain
796  564210 SUN Studio 12 has supported visibility attribute
797  565136 GObject's "notify" signal parameters are wrong in gtk-doc
798  565831 error in interface creation sample
799  566348 g_file_open_tmp uses the wrong g_mkstemp on win32
800  566064 Add NOATIME flag to query_info_flags
801  566170 g_async_result_verify_source_object
802
803 * Updated translations:
804  Spanish (es)
805  Norwegian bokmål (nb)
806  Brazilian Portugese (pt_BR)
807  Simplified Chinese (zh_CN)
808
809
810 Overview of Changes from GLib 2.19.1 to GLib 2.19.3
811 ===================================================
812
813 * Bugs fixed:
814  508021 Add support for the CRIS and CRISv32 architectures
815  526320 should not list mounts that the user doesn't have permission to use
816  558458 Cannot build gio tests on Solaris using SUN cc
817  555465 GUnix{Input,Output}Stream lacks fd/close_fd_at_close property
818  558298 Hide ecryptfs mounts
819  515777 incorrect date&time on copy
820  562452 Ensure we return G_IO_ERROR_CANCELLED if cancelling
821         g_simple_async_result_run_in_thread
822  473150 g_type_module_use inconsistently increases the use
823         counter in case of error
824  563150 G_GU?INT*_MODIFIER/FORMAT docs
825  563156 Document printing and scanning gunichar values
826
827 * Updated translations:
828  Hebrew (he)
829  Italian (it)
830  
831
832 Overview of Changes from GLib 2.19.0 to GLib 2.19.1
833 ===================================================
834
835 * GIO: 
836   - g_icon_to_string, g_icon_new_for_string: GIcon serialization support
837   - G_FILE_ATTRIBUTE_PREVIEW_ICON: new file attribute for preview images
838   - g_app_info_get_commandline: new function to get the full commandline
839   - g_mount_shadow, g_mount_unshadow, g_mount_is_shadowed: New functions 
840     to 'shadow' mounts (i.e. hide them from the UI when they already
841     have a different representation, like a bookmark) 
842
843 * Bugs fixed:
844  556186 gpoll.h breaks gmain.h inclusion
845  557087 mem leak in g_content_types_get_registered
846  556921 gpoll.h breaks hal compilation
847  557210 g_compute_checksum_for_* asserts with less than 2 bytes
848  558381 Add support for compile time assertions
849  558185 'parent' variable in g_local_file_get_child_for_display_name()
850         hits g_object_unref(NULL) assertion
851  558513 g_warn_if_fail FIXME in gtestutils
852  558672 NULL key lookup using g_hash_table_lookup_extended() 
853  555740 gicon serialization
854  557182 preview functionality
855  528320 Incorrect icons displayed for files with custom mimetype icons
856  556910 Memory leak: sub
857  557592 Missing include in gwinhttpfile.c
858  556415 Crash on Windows 2000 in g_winhttp_vfs_init()
859  555935 Clarify the mechanism of overwriting properties
860  552776 ac_cv_func_posix_getgrgid_r not mentioned
861  559448 GObject Reference Manual (typo)
862  561212 GFileReadMoreCallback API doc refers to non-existant function
863  560569 gkeyfile doesn't use the set list_separator in some cases
864  560568 gkeyfile docs buglet
865  559413 g_option_group_set_error_hook docs buglet
866  562378 callback return value not respected for callback option
867         with no arg
868  559110 Do not include libintl.h after glibintl.h
869  557603 carbon check output misplaced
870  562544 g_key_file_get_string and g_key_file_get_value
871         documentation does not explain the difference
872  547264 Missing "no flags" flag
873  562638 GDebugKey key member should be const
874  562639 g_parse_debug_flags() parsing "help"
875  562549 g_byte_array_free should tell how free data
876  559452 GObject Reference Manual (typo)
877  559462 GObject Reference Manual (typo)
878  559517 GObject Reference Manual (typo)
879  562538 GObject interface tutorial shouldn't finalise with
880         "Please forget everything"
881  561352 Leak of icon description
882  561375 Leaks mountpoint description
883  561807 inotify_sub.c: dup_dirname() fails to remove trailing '/'
884  562393 g_buffered_input_stream_read_byte broken if data available
885  541715 win32 : patch for warnings and signature problems in recent code
886  547481 g_data_input_stream_read_line behaves not as stated in the docs
887  548163 Nautilus displays wrong error message for too long file names
888  559633 gtk_image_new_from_gicon does not always work for .desktop files
889  555486 – No way to recover command line from GAppInfo
890
891 * Translation updates:
892  Spanish (es)
893  Ukrainian (uk)
894
895
896 Overview of Changes from GLib 2.18.1 to GLib 2.19.0
897 ===================================================
898
899 * Rewrite GHashTable to use open addressing with quadratic probing instead 
900   of chaining. This has the potential to reduce memory fragmentation 
901   significantly, while being slightly faster due to better locality and 
902   no need to call alloc/free functions for nodes. Benchmarks suggest it 
903   also uses less memory overall.
904
905 * Make g_poll available as public api
906
907 * New macros g_assert_error and g_assert_no_error to assert 
908   that a GError is set or unset
909
910 * g_cancellable_make_pollfd: New method to make a GPollFD for a cancellable
911
912 * g_app_info_can_delete, g_app_info_delete, g_app_info_reset_type_associations:
913   New functions to clean up app infos and content types
914
915 * When launching applications, always pass fuse file:// uris when possible,
916   and let gio convert such uris back to gio uris.
917
918 * Bugs fixed:
919  505361 gunixinputstream.c assumes poll() available
920  509446 portable blocking gio cancellation
921  553820 gpoll.c: undeclared identifier
922  553724 python interpretter path not patched in correctly
923  553857 gbacktrace.h requires signal.h
924  553447 g_assert_no_error()
925  554092 glib doesn't return G_FILE_ERROR_NOENT et al on OS X
926  528670 Always pass file:/// uri's in GAppLaunchContext
927  555224 Improve g_format_size_for_display doc
928  555309 giochannel breaks on error
929  554790 g_convert() misbehaves with winiconv versions
930  555314 mem leak in gmarkup
931  555313 GFileAttribute boxed type get_type function should...
932  552861 glib-2.0.m4 calls system(3) without storing its result
933  554557 Patch to fix gcc warnings about missing format specifiers
934  552107 Small libtool fixes
935  551355 Make glib build with libtool 2.2
936  555311 format not a string literal and no format arguments
937  556101 static mutex yields warnings with g++
938  556186 gpoll.h breaks gmain.h inclusion
939  526456 Open addressing in GHashTable
940  553426 cancellable clarifications
941  545350 GAppInfo deletion
942  545351 Reset associations for content type
943  552168 volume's mount not mounted after g_volume_mount_finish
944  554970 segfault when update-desktop-database is not available...
945  554745 GFileAttributeInfoList should be boxed
946  555121 Improved build-time handling of gio module-dir
947  555711 Wrong fallback order of mimetype icons
948  555331 Deprecate adoption of mounts
949  556335 make check fails in abicheck.sh
950  556334 Warning when building without selinux support
951  556422 g_file_enumerator_next_file: unclear...
952
953 * Updated translations:
954  Arabic (ar)
955  Danish (da)
956  Polish (pl)
957  Brazilian Portugese (pt_BR)
958  Romanian (ro)
959  Russian (ru)
960
961
962 Overview of Changes from GLib 2.18.0 to GLib 2.18.1
963 ===================================================
964
965 * Bugs fixed:
966  550433 g_test_init doesn't recognize --help
967  523463 Core dump in gmain.c:2482:IA__g_main_context_check
968  551228 G_STRFUNC on recent Sun compiler should be expanded...
969  551410 gtestutils.c: using printf without prototype
970  551731 g_date_set_time[_t] docs should mention what timezone
971  548321 <string.h> is not included in gi18n-lib.h
972  551149 xdgmime mem leak
973  550647 synchronous pipe I/O when reading mount reply
974  551887 Docs for g_desktop_app_info_new_from_filename aren't...
975  551681 g_content_type_guess() too naive with filenames
976  552352 g_app_info_launch doesn't work if "Path" key...
977  551408 gmodule.def generated to builddir...
978  552359 g_file_info_get_icon should return GThemedIcon, and...
979
980 * Updated translations:
981  Arabic (ar)
982  Bengali India (bn_IN)
983  British English (en_GB)
984  Hindi (hi)
985  Croatian (hr)
986  Korean (ko)
987  Oriya (or)
988  Turkish (tr)
989  Telugu (te)
990
991
992 Overview of Changes from GLib 2.17.7 to GLib 2.18.0
993 ===================================================
994
995 * Win32:
996   - rework the g_poll() implementation to match poll() semantics more closely
997
998 * Bugs fixed:
999  324234 Using g_io_add_watch_full() to wait for connect() to return...
1000  548278 Async GETs connections are always terminated unexpectedly...
1001  500246 Bug fixes for giowin32
1002  523939 Example program for GValue
1003  550096 GBookmarkFile parser is not forward compatible
1004  550040 Move GString, rand and printf tests to the unit test framework
1005  550104 trivial documentation fix for g_get_home_dir
1006  548988 g_file_replace fails on Windows when the target file exists
1007  550059 Wrong docs for g_emblemed_icon_add_emblem
1008  548800 Missing a g_object_get_type function
1009  550056 Missing documentation for g_emblemed_icon_get_emblems
1010
1011 * Updated translations:
1012  Bulgarian (bg)
1013  Czech (cs)
1014  German (de)
1015  Estonian (et)
1016  Basque (eu)
1017  French (fr)
1018  Hebrew (he)
1019  Hungarian (hu)
1020  Italian (it)
1021  Japanese (ja)
1022  Lithuanian (lt)
1023  Maithili (mai)
1024  Dutch (nl)
1025  Swedish (sv)
1026  Thai (th)
1027  Ukrainian (uk)
1028  Vietnamese (vi)
1029
1030
1031 Overview of Changes from GLib 2.17.6 to GLib 2.17.7
1032 ===================================================
1033
1034 * More fixes for 64-bit Windows
1035
1036 * GIO
1037  - Add a vfs implementation for HTTP and HTTPS URIs on Windows
1038
1039 * Bugs fixed:
1040  546329 API docs for g_utf8_normalize() are incorrect
1041  546876 Modify GMarkup parser to accept &#x1; .. &#x1f;
1042  547200 g_utf8_find_next_char() issues
1043  547637 unconditional #include of sys/statfs.h in configure
1044  547337 G_DISABLE_DEPRECATED breaks tests build
1045  547832 gtk+-2.12.11 fails to build - AC_PROG_MMAP too strict
1046  502498 Test framework assertion failures should follow gcc
1047  546371 Improve docs re g_file_monitor
1048  546483 GThemedIcon:use-default-fallbacks is not readable without...
1049  546132 GFileIcon is bindings-unfriendly
1050  542156 zfs mount in home directory shown on nautilus desktop 
1051  535124 umask 002 not being applied for new directories...
1052  547080 g_file_copy leaks expected errors
1053  546582 Callbacks from GFileMonitor present a GFile...
1054  547262 Missing link in the docs
1055
1056 * Updated translations:
1057  Arabic (ar)
1058  Catalan (ca)
1059  Spanish (es)
1060  Basque (eu)
1061  Finnish (fi)
1062  Galician (gl)
1063  Hebrew (he)
1064  Marathi (mr)
1065  Norwegian bokmål (nb)
1066  Portugese (pt)
1067  Brazilian Portugese (pt_BR)
1068  Swedish (sv)
1069  Thai (th)
1070
1071
1072 Overview of Changes from GLib 2.17.4 to GLib 2.17.6
1073 ===================================================
1074
1075 * Fix problems on 64-bit Windows
1076
1077 * g_markup_context_get_user_data: New function to access
1078   the user_data outside of callbacks
1079
1080 * GIO
1081  - g_mount_guess_content_type_sync: synchronous version of
1082    g_mount_guess_content_type
1083  - GEmblem: A GIcon implementation that adds emblem-related
1084    metadata to icons
1085  - GEmblemedIcon: A GIcon implementation that can add emblems
1086    to icons
1087
1088 * Bugs fixed:
1089  544088 option_test_LDADD is left in tests/Makefile.am
1090  544465 gmarkup makes it hard to use pre-rolled parsers
1091  545485 Implicit declaration of utime()
1092  545798 "Since: 2.18" mark is missing in g_set_error_literal...
1093  544140 fam-helper 64-bit issue
1094  529694 SELinux context setting support
1095  545157 wrong/no list of "open with" applications for .cc...
1096  545203 gfile.c: argument is different type
1097  545457 gdmsetup crashed with SIGSEGV in g_unix_mount_guess...
1098  544177 Fix trivial cut and paste error in documentation
1099  545395 Language tweak for g_value_set_string* docs
1100  541036 Gnumeric crashes when trying to open Desktop...
1101  546079 leak in xdgmime
1102  545395 Language tweak for g_value_set_string* docs
1103  546017 Don't copy attributes when copying a symlink
1104
1105 * Updated translations:
1106  Arabic (ar)
1107  Estonian (et)
1108  Galician (gl)
1109  Italian (it)
1110  Japanese (ja)
1111  Korean (ko)
1112  Norwegian bokmål (nb)
1113  Pashto (ps)
1114  Portugese (pt)
1115
1116
1117 Overview of Changes from GLib 2.17.3 to GLib 2.17.4
1118 ===================================================
1119
1120 * GIO:
1121  - New API to handle content types: g_mount_guess_content_type,
1122    g_content_type_guess_for_tree.
1123  - Export the eject-button signal on the volume monitor class
1124  - New API to enable out-of-process volume monitors: 
1125    g_volume_get_activation_root
1126
1127 * GObject:
1128  - New API to handle signals without slots in the class structure:
1129    g_signal_new_class_handler, g_signal_override_class_handler   
1130
1131 * Internationalization:
1132  - Add an NC_ macro that is a no-op equivalent of C_
1133
1134 * GMarkup:
1135  - Add two new functions g_markup_parse_context_push,
1136    g_markup_parse_context_pop to support "subparsers"
1137
1138 * Bugs fixed:
1139  541208 Functions to easily install and use signals without...
1140  541507 Ambiguous description of assigned characters in the...
1141  543040 async reading on dummy file will crash on GIO_USE_VFS=local
1142  543560 enable gio-FEN back-end warnings on Solaris will crash...
1143  528317 GRegex does not allow recursion limit
1144  337518 GMarkup: Subparser support
1145  541794 drive-eject-button signal
1146  541793 activation root for volumes
1147  467707 test_iconv_state() in tests/convert-test.c fails on AIX 5.3
1148  428048 2 of 51 tests fail on Solaris
1149  542332 small fix for error message in GMarkup
1150  482413 get_contents_stdio -- overflow and memory corruption
1151  406120 g_ascii_strtod
1152  334234 "printf" format error
1153  536996 Missing noop i18n macro equivalent to C_
1154  540616 mem leak in filechooser button
1155  539229 gobject-query calls itself query
1156  521589 [RFC] gobject documentation should mention Vala
1157  543168 Description of G_SLICE=debug-blocks discourages its use
1158  543220 Case collision on gio-extension-points.html
1159  530759 update the gobject tutorial to the XXI century
1160  535223 gbookmark file inefficiency ...
1161  543504 crash in Epiphany Web Browser: Opening local file
1162
1163 * Updated translation:
1164  German (de)
1165  Estonian (et)
1166  Pashto (ps)
1167  Albanian (sq)
1168  Thai (th)
1169  Traditional Chinese (zh_HK)
1170  Traditional Chinese (zh_TW)
1171
1172
1173 Overview of Changes from GLib 2.17.1 to GLib 2.17.3
1174 ===================================================
1175
1176 * PCRE
1177  - fix for CVE-2008-2371 
1178
1179 * Bugs fixed:
1180  538119 glib's mainloop leaks a pipe to sub-processes
1181  537635 Corrections and improvements to g_time_val_{to,from}_iso8601
1182  539067 The document g_io_channel_win32_new_fd() says...
1183  535949 annotate g_strip_context and g_dpgettext with G_GNUC_FORMAT
1184  539123 annotate g_d[n]gettext with G_GNUC_FORMAT
1185  539074 Cannot get exit status with g_spawn_command_line_sync
1186  316221 G_LOCK warns about breaking strict-aliasing rules
1187  539770 migrate gstrfunc unit tests to gtest
1188  539626 Update docstrings for g_object_freeze_notify and g_object_thaw_notify
1189  538044 unconditional use of LC_MESSAGES
1190  540545 Monotonic time and timer offset
1191  535947 want g_set_error_literal
1192  539999 glibconfig.h: add GLIB_USING_SYSTEM_PRINTF 
1193  536252 GFileEnumerator should allow access to the containing GFile
1194  538362 Get Win32 icons back in the file chooser
1195  540802 g_list_prepend doesn't concat lists
1196  540423 unrecoverable error after g_seekable_truncate
1197  538836 make check failure on PPC and ALPHA: pltcheck.sh on g_atomic_pointer_get
1198  539090 g_content_type_from_mime_type() should unalias
1199  540331 g_file_append_to () documentation: can return NULL
1200  534639 add g_desktop_app_info_new_from_keyfile
1201  536733 gio build failure on Irix
1202  536160 Add g_file_monitor()
1203  538127 FileChooser broken on win32
1204  531476 /live-g-file/test_traverse_structure test fails on Mac HFS+
1205  538564 gio should have gio-types.h
1206  540047 glib-genmarshal.c: '#include <io.h>' is too before
1207
1208 Updated translations:
1209  Korean (ko)
1210  Occitan (oc)
1211
1212
1213 Overview of Changes from GLib 2.17.0 to GLib 2.17.1
1214 ===================================================
1215
1216 * New function: g_utime(), a gstdio wrapper for utime()
1217
1218 * New functions: g_dgettext() and g_dngettext(), wrappers
1219   for corresponding gettext functions with added functionaliy
1220
1221 * Support the latest version of the shared-mime spec, including
1222   icons for mime types 
1223
1224 * New function: g_themed_icon_prepend_name()
1225
1226 * Bugs fixed: 
1227  535418 Please document which glib version defines goffset
1228  528715 Misprint in the description of the interface g_type_class_add_private
1229  528714 Misprint in the description of the interface g_param_spec_flags
1230  537260 Doc bug in G_TYPE_INSTANCE_GET_CLASS()
1231  530527 Misprint in the description of the interface 
1232         g_cclosure_marshal_VOID__FLAGS
1233  530526 Misprint in the description of the fields 'class_init' and 
1234         'class_finalize' of the structure GTypeInfo
1235  528719 Improvement to the documentation of the "g_object_connect" interface
1236  528172 gtk_signal_handlers_unblock_* functions return value
1237         amount of matched signals, not amount of actually unblocked
1238  528717 Misprint in the description of the parameter 'type_id' for 
1239         the interface g_type_register_fundamental
1240  528716 Misprint in the description of the parameter 'iface_data' for 
1241         the callback types GInterfaceInitFunc and GInterfaceFinalizeFunc 
1242  537555 GObject instantiation not thread safe
1243  537546 'desktop' shortcut in file chooser looks like a generic folder
1244  537392 Additional colon in xattr name
1245  536641 Filesystem querying in gio does not list AFS and autofs file systems
1246  528600 g_dummy_file_get_parent("scheme://example.com/")
1247  503071 Application direction changes to right to left even if theres no 
1248         translation
1249  502511 g_assert_cmphex prints invalid message
1250  338162 Use po/LINGUAS
1251  314453 Nautilus crashes in Solaris when browsing the attached file
1252  529321 make check fails in glib/pcre
1253  455215 g_get_user_special_dir: no reference about G_USER_DIRECTORY_DOWNLOAD 
1254         fallback to $HOME/Desktop if xdg-user-dirs is not in use
1255  498732 g_key_file_to_data cannot fail
1256  511367 add g_file_make_directory_with_parents
1257  531900 Use __builtin_offsetof for G_STRUCT_OFFSET if building with 
1258         gcc 4.0 or newer
1259  536158 also bump GHashTable version when a node is removed via
1260         g_hash_table_iter_remove()/g_hash_table_iter_steal()
1261  531403 g_utf8_collate broken on Mac
1262  535628 test/patterntest.c still includes gpattern.h directly
1263  535625 alias.h:2648: error: 'utime' undeclared here (not in a function)
1264
1265 * Translation updates:
1266  Arabic (ar)
1267  German (de)
1268  Italian (it)
1269  Norwegian bokmål (nb)
1270  Thai (th)
1271
1272
1273 Overview of Changes from GLib 2.16.x to GLib 2.17.0
1274 ===================================================
1275
1276 * Update to Unicode 5.1
1277
1278 * Update included libcharset to the one shipped with libiconv 0.12
1279
1280 * Update included PCRE to 7.7
1281
1282 * Enforce that only toplevel headers are directly included.
1283   This is turned on by default for GObject and GIO. To turn
1284   it on for GLib, define G_DISABLE_SINGLE_INCLUDES.
1285
1286 * Fix library version of GIO.  GLib 2.16 shipped with libgio-2.0.so.0.0.0
1287
1288 * On Solaris, use FEN for file monitoring in GIO
1289
1290 * Use the GIO_EXTRA_MODULES environment variable to find
1291   additional GIO modules 
1292
1293 * G_GNUC_ALLOC_SIZE: New macro that wraps the gcc alloc_size
1294   function attribute
1295
1296 * g_checksum_reset: New function to reset the state of a GChecksum 
1297
1298 * g_unix_mount_monitor_set_rate_limit: New function to limit the 
1299   rate at which events are reported
1300
1301 * g_file_query_file_type: New utility function to query the type of
1302   a file
1303
1304 * g_memory_output_stream_get_data_size: New function to obtain the
1305   size of the written data.
1306
1307 * Bugs fixed:
1308  522292 Gives warnings in glib/gutils.h with GCC in C99 mode
1309  523298 win_iconv can't convert from UTF-8 to GB18030 (or vice versa)
1310  518160 replace two g_strdup_printf calls in GBookmarkFile
1311  523877 gbookmarkfile: avoid using g_string_append_printf() and
1312         other optimizations 
1313  525192 100% CPU if run main loop with no IO sources
1314  315437 extern inline -> static inline
1315  524314 g_convert() on Win32 implicitly converts full width
1316         alphanumerics into half width
1317  525732 Error in documentation for g_list_first
1318  525674 A typo in gmarkup.c
1319  448943 g_timeout_add_seconds() problems
1320  525972 UCS-4 not in the new win_iconv implementation
1321  526619 make test-report crash
1322  491554 Update to Unicode 5.1.0
1323  519137 g_slice_dup macro needs cast for 64-bit platform
1324  528752 Win32 build and SSL not working
1325  530457 G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
1326  528667 Typos in testing module documentation
1327  459905 Bug in wcwidth data
1328  534085 g_unichar_iswide_cjk() has a totally wrong table
1329  501651 Update glib/libcharset
1330  519026 G_STMT_START/G_STMT_END test a non-existent preprocessor symbol
1331  534319 GLib's .pc files could use Libs.private
1332  534137 Typo in g_spawn_async_with_pipes doc
1333  517419 gio win32 directory monitor
1334  526796 Wrong order of arguments in g_file_copy's fallback
1335  530196 _g_local_file_has_trash_dir() doesn't handle st_dev == 0
1336  532965 Should not return filesystem::free for certain file systems
1337  525553 fix typo and nitpicking in GArray documentation
1338  526572 Missing * in declaration of parent_class in Object
1339         Destruction section of GObject Reference Manual
1340  528648 Extra >s in Object Construction section
1341  535021 g_param_spec_internal documentation should
1342         describe purpose of nick and blurb
1343  521513 Firefox crash when using file picker
1344  528433 gdesktopappinfo snafu ...
1345  533369 API g_file_info_get_attribute_string () unables to get "...
1346  521045 glib f_fstypename miscellany
1347  521672 compile error
1348  521946 control rate limit on GUnixMountMonitor
1349  522335 Fails to build: glib/gtester.c:276: error: 'ARG_MAX' unde...
1350  523015 Implement sliding window based upload operation
1351  523019 Use new GCC 4 feature
1352  523338 list nfs4 as a nfs mount type
1353  524350 Make glib build without NLS again
1354  524579 g_file_copy reports wrong total on progress callback for ...
1355  524742 A typo in gtestutils.c.
1356  524950 Minor documentation typos.
1357  525866 the user directory should not be considered as a mount to...
1358  526320 should not list mounts that the user doesn't have permiss...
1359  527132 nautilus crash when making ftp connection
1360  532852 CRITICAL **: totem_pl_parser_parse_with_base: assertion `...
1361  534759 Build failure in gio
1362  534764 Typo in error produced by g_file_make_directory
1363  521851 Redudant tests in gunixmounts.c
1364  524344 glib/gthread.h still use G_GNUC_PRETTY_FUNCTION
1365  525060 glib fails to build with -DG_DISABLE_ASSERT in CPPFLAGS o...
1366  534177 Invalid description of the interface g_cclosure_marshal_S...
1367  520715 Add GFile method g_file_query_file_type
1368  523039 nautilus can't access to trash/computer/network if gvfs i...
1369  
1370 * Updated translations:
1371  Arabic (ar)
1372  Bulgarian (bg)
1373  Catalan (ca) 
1374  Czech (cs)
1375  Greek (el)
1376  Candian English (en_CA)
1377  British English (en_GB)
1378  Spanish (es)
1379  Estonian (et)
1380  Basque (eu)
1381  Galician (gl)
1382  Hebrew (he)
1383  Hungarian (hu)
1384  Japanese (ja)
1385  Lithuanian (lt)
1386  Norwegian bokmål (nb)
1387  Dutch (nl)
1388  Occitan (oc)
1389  Portugese (pt)
1390  Russian (ru)
1391  Slovak (sk)
1392  Albanian (sq)
1393  Swedish (sv)
1394  Turkish (tr)
1395  Vietnamese (vi)
1396
1397
1398 Overview of Changes from GLib 2.16.0 to GLib 2.16.1
1399 ===================================================
1400
1401 * Fix a crash in g_themed_icon_new
1402
1403 * Update the included PCRE to 7.6
1404
1405
1406 Overview of Changes from GLib 2.15.6 to GLib 2.16.0
1407 ===================================================
1408
1409 * Fix the definition of G_INLINE_FUNC to work with gcc 4.3.0
1410
1411 * GIO:
1412  - Add missing GMountMountFlags argument to g_unix_volume_mount
1413  - Fix the adopt_orphan_mount vfunc to take a volume monitor 
1414    reference
1415  - Add properties to GThemedIcon for bindings sake
1416
1417 * Bugs fixed:
1418  520484 gvfsd-trash crashed with SIGSEGV in g_path_is_absolute()
1419  510855 g_checksum_update(): Take -1 for length.
1420  517676 g_themed_icon_new*() do more than call g_object_new().
1421  518816 should handle rmdir returning EEXIST correctly
1422  519352 g_[s]list_delete_link() docs
1423  519489 Fixes for sparse warnings in gio
1424  520169 add monitor argument to vfunc for GVolumeMonitor
1425  520700 Add type check in g_file_query_exists
1426  521145 FILE_READ_ONLY_VOLUME not present on Mingw32
1427  518720 No MIME type for empty files
1428  521013 in documentation, goffset doesn't say "Since 2.x"
1429  521028 Missleading error messages from g_io_channel_set_encoding()
1430  517484 GMainLoop could set the thread "Alertable" for APCs to be... 
1431
1432 * Updated translations:
1433  Assamese (as)
1434  Bengali India (bn_IN)
1435  Czech (cs)
1436  German (de)
1437  Spanish (es)
1438  Estonian (et)
1439  Finnish (fi)
1440  French (fr)
1441  Gujarati (gu)
1442  Italian (it)
1443  Lithuanian (lt)
1444  Malayalam (ml)
1445  Marathi (mr)
1446  Norwegian bokmål (nb)
1447  Romanian (ro)
1448  Russian (ru)
1449  Slovak (sk)
1450  Ukrainian (uk)
1451
1452  
1453 Overview of Changes from GLib 2.15.5 to GLib 2.15.6
1454 ===================================================
1455
1456 * GIO:
1457  - New file attributes: trash::item-count, filesystem::use-preview
1458  - Rename g_file_contains_file to g_file_has_prefix
1459  - g_file_query_filesystem_info grew async variants
1460  - g_themed_icon_append_name: new convenience function
1461  - g_content_type_get_icon is implemented now
1462  - Only show mounts in /media and ~
1463  - g_file_contains_file has been renamed to g_file_has_prefix
1464
1465 * Win32:
1466  - g_win32_get_package_installation_directory_of_module: new function
1467    which supersedes g_win32_get_package_installation_directory
1468  - Use alertable wait functions so that I/O completion routines or 
1469    user-mode Asynchronous Procedure Calls can be run
1470  - Fix race conditions in g_spawn implementation on win32
1471
1472 * Other:
1473  - g_uri_get_scheme has been renamed go g_uri_parse_scheme
1474
1475 * Updated translations:
1476  Arabic (ar)
1477  Belarusian Latin (be@latin)
1478  Catalan (ca) 
1479  British English (en_GB)
1480  Finnish (fi)
1481  Galician (gl)
1482  Hebrew (he)
1483  Italian (it)
1484  Kannada (kn)
1485  Norwegian bokmål (nb)
1486  Dutch (nl)
1487  Brazilian Portugese (pt_BR)
1488  Vietnamese (vi)
1489
1490
1491 Overview of Changes from GLib 2.15.4 to GLib 2.15.5
1492 ===================================================
1493
1494 * Update the included PCRE to 7.6
1495
1496 * GIO:
1497  - g_volume_should_automount: new function to determine if a volume
1498    should be mounted automatically
1499  - g_file_query_default_handler: new convenience function to get
1500    the default handler for a file
1501  - g_app_info_launch_default_for_uri new convenience function to
1502    launch the default handler for a URI
1503  - Use mimeapps.list and defaults.list as discussed on xdg list
1504    recently
1505  - g_app_info_get_default_for_uri_scheme has a real implementation
1506    now (gvfs provides a GConf-based implementation)
1507  - There is the beginning of a test suite
1508  - standard::description:  new file attribute
1509  - GMountMountFlags flags argument added to mount calls
1510
1511 * GObject:
1512  - class initialization is now threadsafe
1513
1514 * Updated translations:
1515   Arabic (ar)
1516   Catalan (ca)
1517   Spanish (es)
1518   Basque (eu)
1519   Italian (it)
1520   Japanese (ja)
1521   Kannada (kn)
1522   Korean (ko)
1523   Macedonian (mk)
1524   Occitan (oc)
1525   Portugese (pt)
1526   Brazilian Portugese (pt_BR)
1527   Swedish (sv)
1528   Thai (th)
1529
1530
1531 Overview of Changes from GLib 2.15.3 to GLib 2.15.4
1532 ===================================================
1533
1534 * G_GNUC_PRETTY_FUNCTION has been deprecated
1535
1536 * GIO:
1537  - g_file_copy has an async variant now
1538  - Drives and volumes now have API to get identifiers
1539    like Hal UDIs or UUIDs.
1540  - There is now a registration API to let modules register
1541    extensions they provide, such as volume monitor implementations
1542
1543 * Bugs fixed:
1544   511807 g_time_val_to_iso8601() uses MT-unsafe gmtime() function
1545   316260 [patch] Doc patches for gnode (2.8.1)
1546   385132 solaris gettext support fix
1547   484261 ./configure check for system PCRE unicode support fails w...
1548   510292 GOption main help not shown
1549   511580 Implement g_file_copy_async
1550   511654 Compile errors due to C99 constructs
1551   487909 g_utf8_strreverse and combining marks
1552   512381 unused variable 'is_main_group' 
1553
1554 * Updated translations:
1555   Arabic (ar)
1556   Belarusian (be)
1557   Czech (cz)
1558   Spanish (es)
1559   French (fr)
1560   Galician (gl)
1561   Portugese (pt)
1562   Russian (ru)
1563   Swedish (sv)
1564   Thai (th)
1565
1566
1567 Overview of Changes from GLib 2.15.2 to GLib 2.15.3
1568 ===================================================
1569
1570 * GChecksum:
1571  - g_checksum_update can accept nul-terminated strings
1572  - The MD5 implementation works correctly on buffers 
1573    that are longer than 64 bytes
1574
1575 * GIO:
1576  - Don't include a copy of the inotify headers, rely on system headers
1577  - g_file_find_enclosing_mount has an async variant now
1578  - Reduntant seek API on file streams has been removed
1579
1580 * Bugs fixed:
1581   508602 gmemory{in|out}putstream.c: unknown pointer size
1582   508771 There is no g_file_test/exists() for GFile
1583   508773 g_uri_escape_string() documentation unclear.
1584   509465 AM_PATH_GLIB_2_0 doesn't support gio
1585   509626 async functions: Document allowed NULL callback?
1586   509990 GSeekable documentation unclear
1587   510448 No inotify support on ARM or SH5
1588   510855 g_checksum_update(): Take -1 for length. 
1589
1590 * Updated translations:
1591   Basque (eu)
1592   Marathi (mr)
1593   Swedish (sv)
1594   Ukrainian (uk)
1595
1596
1597 Overview of Changes from GLib 2.15.1 to GLib 2.15.2
1598 ===================================================
1599
1600 * GIO:
1601  - Mount operation API change: unhandled methods get reported via 
1602    the reply, rather than by the signal emission return value
1603  - File monitor API change: Add a GError argument to g_file_monitor_file
1604  - g_unix_mount_guess_should_display(): new function
1605
1606 * Bugs fixed:
1607   508224 [PATCH] FAM backend crashes due to double free
1608   508074 GAsyncResult documentation suggests g_freeing it.
1609   508108 GFile documentation slightly unclear.
1610   508309 rpc_pipefs mount points should be hidden
1611   508378 GFileInfo documentation implies that it changes attribute...
1612   508719 g_file_get_relative_path fails if parent is root
1613   508773 g_uri_escape_string() documentation unclear.
1614
1615 * Updated translations:
1616   Arabic (ar)
1617   Spanish (es)
1618   Hebrew (he)
1619   Italian (it)
1620   Korean (ko)
1621   Turkish (tr)
1622
1623
1624 Overview of Changes from GLib 2.15.0 to GLib 2.15.1
1625 ===================================================
1626
1627  * Portability fixes:
1628  - Assertion functions are marked as noreturn again
1629  - Handling of inline functions has been fixed to work with gcc 4.3
1630  - C99 comments have been removed from headers
1631  - The nonportable sed -i option is no longer used
1632
1633  * GIO:
1634   - Clarified the semantics of g_app_info_get_all()
1635   - API for memory input and output streams has been changed a bit
1636   - GDirectoryMonitor has been removed; GFileMonitor can monitor
1637     files and directories now
1638
1639  * Bugs fixed:
1640    504829 Invalid environment passed to g_spawn_async in g_desktop_...
1641    505258 crash in Users and Groups: Adding a user
1642    505815 g_content_types_get_registered should not g_free keys
1643    491218 g_timer_new() doesn't initialize timer->end
1644    315437 extern inline -> static inline
1645    476856 Inconsistency between standard and implementation of the ...
1646    480122 g_module_open fails to open modules with ".la" extension
1647    495589 gspawn.c failing to set FD_CLOEXEC
1648    500273 doesn't build with --disable-visibility
1649    504142 Do not show empty groups in --help output
1650    504879 giofam incorrectly linked
1651    505042 add file attribute for actually used file size in bytes
1652    505058 xattr namespace docs
1653    505674 Misprint in the definition of the macro G_CCLOSURE_SWAP_DATA
1654    505730 Fails to build on OSX 10.4: _NSGetEnviron not declared
1655    505887 older darwin lacks lchown
1656    506374 gmemoryinputstream api
1657    506461 Conversion of g_assert_not_reached() and friends into fun...
1658    503051 Small bug in glib interface
1659    506395 Updates to GIO documentation
1660    507628 Missing .pc entry for gio linking against glib
1661    505195 [patch] typo in g_try_new0 docs 
1662    507822 g{file,directory}monitor changes signal problem
1663    506377 gmemoryoutputstream write implementation
1664    507835 bug in gunixinputstream 
1665
1666  * Updated translations:
1667    Arabic (ar)
1668    Belarusian Latin (be@latin)
1669    Spanish (es)
1670    Basque (eu)
1671    Irish (ga)
1672    Hebrew (he)
1673    Occitan (oc)
1674    Vietnamese (vi)
1675
1676
1677 Overview of Changes from GLib 2.14.x to GLib 2.15.0
1678 ===================================================
1679
1680 Major new features:
1681
1682  * GIO: a VFS API, designed to replace GnomeVFS. The GIO implementation 
1683    in GLib has support for local filesystems. The new, separate gvfs 
1684    module contains various backend implementations (cifs, ftp, sftp,
1685    http, ...)
1686
1687  * GChecksum: provides various hash algorithms, such as MD5, SHA-1
1688    and SHA-256
1689  
1690  * GTest: a test framework 
1691  
1692 Smaller additions:
1693
1694  * GHash:
1695  - GHash has iterators, as an alternative to g_hash_table_foreach
1696
1697  * GMarkup: 
1698  - g_markup_parse_context_get_element_stack: New function to
1699    get the stack of open elements
1700  - G_MARKUP_PREFIX_ERROR_POSITION: New flag to improve error
1701    reporting
1702  - g_markup_collect_attributes: Convenience function for handling
1703    attributes
1704
1705 * GKeyFile: 
1706  - Functions that take a GError now return a boolean to indicate 
1707    success, instead of void
1708  - Various performance improvements
1709
1710 * GAsyncQueue:
1711  - g_async_queue_new_full: new function that allows to specify
1712    a free function for leftover elements
1713  
1714 * GError:
1715  - g_prefix_error and g_propagate_prefixed_error: New functions
1716    to ease error propagation
1717
1718 * Internationalization:
1719  - C_: A new 2-argument variant of the Q_() macro 
1720  - Use native character set conversion API on Windows
1721
1722 * GLib builds with automake 1.10
1723
1724 * Bugs fixed:
1725  455725 specific combination of g_utf8_strlen and g_pattern_match...
1726  467537 g_convert_with_iconv() not resetting iconv() state correc...
1727  497033 Commandline option parser should warn about missing optio...
1728  504527 gchecksum: Conditional jump or move depends on uninitiali...
1729  445362 Non-numeric local labels in gatomic.c are causing linker ...
1730  482313 gregex: no way to tell why compilation failed
1731  317775 main loops continues to run after g_main_loop_quit() has ...
1732  418778 Insufficient pkg-config version requirement
1733  436293 g_option_context_new() doc should mention that the string...
1734  466557 glib-mkenums shifts ARGV[0] to undefined
1735  468882 GKeyFile doesn't accept "True" as a true boolean value
1736  469551 application --help messages are garbaged on none UTF-8 lo...
1737  479724 Memory leak upon calling "g_main_loop_run" in the seconda...
1738  490061 outptrs uninitialized after g_parse_long_long
1739  490637 gobject documentation patch
1740  495294 glib-genmarshal prints warnings but returns 0
1741  496046 option to prefix location of errors for GMarkup
1742  498113 tests/regex-test fails on 64bit environment
1743  500506 Fails to build on OSX 10.4
1744  500638 gkeyfile speedup ...
1745  500875 Make check fails as there is no "test" target for "build"...
1746  502511 g_assert_cmphex prints invalid message
1747  502927 g_array_index triggers cast aligment warning
1748  503029 g_time_val_from_iso8601 parse non-ISO8601 dates
1749  503222 Need context to translate
1750  503420 gkeyfile leaks a hash table
1751  503470 Fix build when builddir != srcdir
1752  504227 Inverse variant for g_test_trap_assert_stdout, g_test_tra...
1753  71704  file include order
1754  491957 Misprint in the specification of the interface "g_main_co...
1755  491959 Misprint in description of the structure "GThreadPool"
1756  491965 Mistype in the specification of the function "g_hook_list...
1757  491966 Misprint in the specification of the interface "g_main_co...
1758  491968 The documentation does not mention the restriction for th...
1759  491970 The documentation for the interface "g_date_clamp" is inc...
1760  491974 The documentation of the interface "g_main_context_iterat...
1761  491975 The documentation for the interfaces "g_io_channel_read_u...
1762  491979 Misprint in the description of the interfaces g_key_file_...
1763  491982 Misprint in the description of the interface "g_key_file_...
1764  501107 EXTRA_DIST automake warnings
1765  501997 g_utf8_normalize() returns NULL on invalid string
1766  502590 C_/g_dpgettext efficiency
1767  464259 g_set_application_name() docs should say "Since 2.2"
1768  496518 gbase64.c API doc clarification
1769  498728 g_key_file_get_*_list should set length to 0 when returni...
1770  500361 Improve docs for g_array_free() and g_ptr_array_free()
1771  501853 g_checksum_get_digest docs
1772  503862 Allow NULL strings in g_parse_debug_string()
1773  142676 Q_
1774  367550 Add g_async_queue_new_full() with GDestroyNotify function
1775  375651 Minor enhancements to GKeyFile API
1776  443648 MD5 digest support
1777  449937 Upgrade auto* sources to be clean under automake1.9
1778  452887 gmarkup context "get element" function is useless when ca...
1779  491549 [PATCH] Eliminate libiconv dependency on Windows
1780  500507 GHashTableIter API 
1781
1782 * Translation updates
1783  Belarusian Latin (be@latin)
1784  Czech (cs)
1785  German (de)
1786  Spanish (es)
1787  Esperanto (et)
1788  French (fr)
1789  Korean (ko)
1790  Marathi (mr)
1791  Norwegian bokmål (nb)
1792  Brazilian Portugese (pt_BR)
1793  Slovenian (sl)
1794  Swedish (sv)
1795
1796
1797 Overview of Changes from GLib 2.14.2 to GLib 2.14.3
1798 ===================================================
1799
1800 * Update PCRE to 7.4
1801
1802 * Bugs fixed:
1803  487491 Fix some warnings from sparse
1804  488068 Small (one-time) memory leak in glib_gettext initialization
1805  493688 TYPE macro "_get_type ()" is documented wrong
1806
1807 * Updated translations:
1808  Arabic (ar)
1809  Belarusian Latin (be@latin)
1810  Estonian (et)
1811  Irish (ga)
1812  Slovenian (sl)
1813
1814  
1815 Overview of Changes from GLib 2.14.1 to GLib 2.14.2
1816 ===================================================
1817
1818 * Bugs fixed:
1819  476849 Invocation of the interface "g_hook_free" fails in certai...
1820  359165 marshallers can throw warnings with -Wunused
1821  477957 more discussion on g_value_set_object vs. g_value_take_ob...
1822  478459 G_DEFINE_DYNAMIC_TYPE_EXTENDED doesn't work with G_IMPLEM...
1823  483337 inline is disabled for MSVC when compiling C code
1824  478349 Broken link to gettext website
1825  469231 g_spawn optimization for setting all open fds to CLOEXEC 
1826
1827 * Updated translations:
1828 Arabic (ar)
1829 Galician (gl)
1830 Hebrew (he)
1831 Korean (ko)
1832
1833
1834 Overview of Changes from GLib 2.14.0 to GLib 2.14.1
1835 ===================================================
1836
1837 * Bugs fixed:
1838  476840 Invocation of the interface "g_utf8_strreverse" crashes f...
1839  444765 Fix FIXME in gregex.c when new pcre is out
1840  464145 g_markup_escape_text Produces Invalid XML
1841  465625 g_type_default_interface_ref() does not ensure working g_...
1842  466768 Clearify that comments can be put anywhere in a Key-file.
1843  474229 The GError documentation should give convention for the G...
1844  474899 G_BREAKPOINT() docs inaccurate
1845  475854 Overuse of -lpcre when using system pcre
1846  473879 Incorrect includes in gregex.c
1847  468694 Typoes in documentation
1848  469051 g_snprintf () talks about characters where it probably me...
1849  457601 Missing arch specific atomic implementation
1850  475923 Missing pcre flags when static-linking against glib
1851  475619 glibthread-2.0.la does not list -lpthread
1852
1853 * Updated translations:
1854  Bulgarian (bg)
1855  Catalan (ca)
1856  Danish (da)
1857  German (de)
1858  Canadian English (en_CA)
1859  British English (en_GB)
1860  Spanish (es)
1861  Estonian (et)
1862  Finnish (fi)
1863  French (fr)
1864  Gujarati (gu)
1865  Hungarian (hu)
1866  Italian (it)
1867  Georgian (ka)
1868  Kannada (kn)
1869  Lithuanian (lt)
1870  Makedonian (mk)
1871  Norwegian (nb)
1872  Dutch (nl)
1873  Polish (pl)
1874  Portugese (pt)
1875  Brazilian Portugese (pt_BR)
1876  Romanian (ro)
1877  Russian (ru)
1878  Albanian (sq)
1879  Serbian (sr, sr@Latn)
1880  Swedish (sv)
1881  Tamil (ta)
1882  Thai (th)
1883  Ukrainian (uk)
1884  Vietnamese (vi)
1885
1886
1887 Overview of Changes from GLib 2.13.7 to GLib 2.14.0
1888 ===================================================
1889
1890 * Last-minute API additions:
1891  - Make g_unichar_combining_class public
1892  - Add goffset type, add G_MAXSSIZE and G_MINSSIZE
1893
1894 * Update PCRE to 7.2
1895
1896 * Bugs fixed:
1897  453998 Make _g_unichar_combining_class() public
1898  462549 gregex.c: variable is declared at middle of block
1899  417068 g_file_test doc inconsistency
1900
1901 * Updated translations:
1902  Assamese (as)
1903  Basque (eu)
1904  Kannada (kn)
1905  Malayalam (ml)
1906  Dutch (nl)
1907  Polish (pl)
1908  Brazilian Portugese (pt_BR)
1909  Turkish (tr)
1910
1911
1912 Overview of Changes from GLib 2.13.6 to GLib 2.13.7
1913 ===================================================
1914
1915 * The memory corruption warning from the slice allocator that
1916   occurred when threads were initialized after the slice allocator
1917   has been removed, as the slice allocator now works fine
1918   in this scenario.
1919
1920 * New functions g_once_init_enter() and g_once_init_leave() make
1921   it easier to write threadsafe one-time initialization functions 
1922  
1923 * Bugs fixed:
1924  454473 Simple XML Subset Parser terminates on invalid XML
1925  445813 g_module_open error, add file name
1926  453796 errno gets clobbered by g_filename_display_name
1927  341988 don't use "-c" with msgfmt in Makefile.in.in
1928  447048 Please produce slightly more output during long tests
1929  454785 GModule documentation lists same block of code twice.
1930  454786 GModule documentation lists same paragraph twice.
1931  383155 small docs quirks in gobject/closure API documentation
1932  65041  _get_type() functions aren't thread safe
1933
1934 * Updated translations
1935  Assamese (as)
1936  Spanish (es)
1937  Gujarati (gu)
1938  Japanese (ja)
1939  Korean (ko)
1940  Macedonian (mk)
1941
1942
1943 Overview of Changes from GLib 2.13.5 to GLib 2.13.6
1944 ===================================================
1945
1946 * Reintroduce a GType typedef whose removal in 2.13.5
1947   caused trouble for C++ bindings
1948
1949 * Bugs fixed:
1950  450216 docs not explicit enough about g_free()
1951  451459 g_type_register_static_simple calls g_type_register_static
1952
1953 * Updated translations
1954  Norwegian bokmål (nb)
1955  Sinhala (si)
1956
1957
1958 Overview of Changes from GLib 2.13.4 to GLib 2.13.5
1959 ===================================================
1960
1961 * xdg-user-dirs support: 
1962  - the Desktop directory is guaranteed to be defined
1963  - user-dirs.dirs is no longer reloaded on changes
1964
1965 * Slice allocator: 
1966  - new api to duplicate slices
1967
1968 * Regular expression support:
1969  - GRegex is a boxed type now
1970
1971 * Bugs fixed:
1972  44793 make check failing in trunk
1973  354522 Small problem with PLT hiding 6 symbols
1974  363986 glib 2.12.4 does not compile with SGI IDO cc
1975  443869 g_type_class_add_private doesn't warn when adding 0-sized...
1976  446859 Legitimately return 0 for g_quark_from_string(NULL)
1977  447534 Small typo in g_timeout_add_seconds() doc
1978  447583 GStaticRWLock
1979  447935 g_get_current_dir SIGSEGV on long path
1980  448260 CLAMP has surprising result if low > high
1981  57693  g_string_vprintf()
1982  442029 add g_slice_dup()
1983  445065 Add GRegex boxed type
1984  448819 Add full version of g_timeout_add_seconds()
1985
1986 * Updated translations: 
1987  Swedish (sv)
1988  Oriya (or)
1989  Hebrew (he)
1990  Spanish (es)
1991  Estonian (et)
1992
1993  
1994 Overview of Changes from GLib 2.13.3 to GLib 2.13.4
1995 ===================================================
1996
1997 * Bugs fixed:
1998  444121 g_get_user_special_dir deadlocks
1999  444161 invalid UTF8 in key name shows up as valgrind error in g_...
2000  444130 g_option_context_get_help() is broken when there's a desc...
2001
2002
2003 Overview of Changes from GLib 2.13.2 to GLib 2.13.3
2004 ===================================================
2005
2006 * GKeyFile:
2007  - Added defines for easier handling of desktop files
2008
2009 * Unicode support:
2010  - Update g_unichar_iswide_cjk for Unicode 5.0
2011
2012 * Regular expression support:
2013  - GRegex structs can now be ref-counted
2014  - Some new functions for dealing with incremental 
2015    replacement have been added
2016  - The GRegexEvalCallback signature has been changed
2017
2018 * g_get_user_special_dir() has been added to support
2019   xdg-user-dirs
2020
2021 * Bugs fixed:
2022  419376 Functions using named subpatterns behave inconsistently w...
2023  434358 g_regex_fetch_named() and g_regex_fetch_named_pos() are b...
2024  423708 typo in the README.win32 file see patch below
2025  339225 Add new defines for easier handling of .desktop files 
2026  442265 API additions/changes for GRegex
2027  432651 Add a glib-ish xdg_user_dir_lookup
2028
2029 * Updated translations:
2030  Estonian (et)
2031  Norwegian bokmål (nb)
2032
2033
2034 Overview of Changes from GLib 2.13.1 to GLib 2.13.2
2035 ===================================================
2036
2037 * Unicode support:
2038  - Add g_unichar_ismark()
2039
2040 * GOption:
2041  - Allow to use callbacks for remaining args
2042
2043 * Updated translations:
2044   Belarusian Latin (be@latin)
2045   British English (en_GB)
2046   Galician (gl)
2047   Norwegian bokmål (nb)
2048   Oriya (or)
2049   Spanish (es)
2050   Thai (th)
2051
2052
2053 Overview of Changes from GLib 2.13.0 to GLib 2.13.1
2054 ===================================================
2055
2056 * GRegex:
2057  - Portability fixes
2058  - Split into immutable GRegex and GMatchInfo
2059  - Add g_regex_get_max_backref() and g_regex_get_capture_count()
2060    to obtain information about the compiled regex
2061
2062 * GKeyFile:
2063  - Fix roundtrip problems
2064  - Add g_key_file_load_from_dirs()
2065
2066 * Unicode support:
2067  - Fix corner cases in case conversion routines
2068
2069 * GOption:
2070   - Add a function to get the formatted help string
2071
2072 * GHash:
2073  - Add new functions g_hash_table_get_keys() and
2074    g_hash_table_get_values() to retrieve the keys and
2075    values in list form
2076
2077 * Updated transations:
2078   Simplified Chinese (zh_CN)
2079   Arabic (ar)
2080
2081
2082 Overview of Changes from GLib 2.12 to GLib 2.13.0
2083 =================================================
2084
2085 * Add GSequence, a list that is implemented using
2086   a balanced binary tree.
2087
2088 * Add GRegex, an implementation of Perl regular expressions,
2089   based on PCRE.
2090  
2091 * Use Posix monotonic clocks instead of gettimeofday()
2092   for GTimer when available.
2093
2094 * Support static initialization of GQeues with G_QUEUE_INIT,
2095   g_queue_init() and g_queue_clear().
2096
2097 * Add g_string_chunk_clear() for clearing a 
2098   GStringChunk.
2099
2100 * Add g_unichar_get_script() to obtain Unicode
2101   script information.
2102
2103 * Add g_unichar_iszerowidth() to obtain information
2104   about zero-width characters.
2105
2106 * Add G_GNUC_MAY_ALIAS which wraps the gcc may_alias 
2107   type attribute.
2108
2109 * G_GNUC_INTERNAL has a working definition for the
2110   Sun Studio compiler. This requires the macro to
2111   be positioned before the function declaration.
2112
2113 * The slice allocator can produce detailed debugging
2114   information with G_SLICE=debug-blocks.
2115
2116 * Modules support G_DEBUG flags resident-modules and
2117   bind-now-modules.
2118
2119 * Add G_DEFINE_DYNAMIC_TYPE() to make it easier
2120   to define types in modules.
2121
2122 * Bug fixes: too many to list them in detail here.
2123
2124 * New and updated translations (be,bg,bn,ca,cs,de,
2125   en_CA,en_GB,et,fa,fr,he,hu,it,ja,ku,lt,mg,mk,ml,
2126   nb,ne,nn,pt,pt_BR,ro,sr,sr@Latn,sv,ta,uk,vi,zh_CN,
2127   zh_HK,zh_TW)
2128
2129
2130 Overview of Changes from GLib 2.12.1 to GLib 2.12.2
2131 ===================================================
2132
2133 * Unicode updates:
2134  - Normalization is following Unicode TR #29
2135  - g_unichar_isxdigit() only accept characters
2136    for which g_unichar_xdigit_value() returns a value
2137  - g_unichar_toupper and g_unichar_tolower leave
2138    unconvertable characters in place instead of
2139    replacing them by NUL
2140
2141 * Bugs fixed
2142  348491 g_utf8_strup() and g_utf8_strdown() returns 
2143         string with NUL bytes
2144  349825 GKeyFile always inserts a newline before a group
2145  347842 g_unichar_isxdigit() is too general about what 
2146         it considers a digit
2147  348694 g_utf8_normalize() hasn't been updated to PR #29
2148  348785 Hint about G_DEBUG in Message Logging docs
2149  349792 Wrong english string (UI)
2150  349952 gparamspecs.c uses gcc feature
2151
2152 * Translation updates (ca,cs,de,dz,es,eu,fi,gu,ko,
2153   nl,pl,tr,uk,zh_HK,zh_TW)
2154
2155
2156 Overview of Changes from GLib 2.12.0 to GLib 2.12.1
2157 ===================================================
2158
2159 * Update to final Unicode Character Database 5.0.0
2160
2161 * Bugs fixed:
2162  346660 issues with base64 api documentation / g_base64_decode_cl...
2163  348136 Coverity reports allocation of wrong size CID #2839
2164  336281 Update to UCD 5.0
2165  346197 g_date_strftime %F option doesnt work for win32
2166  348011 Small optimization to real_toupper()
2167  246494 prototype mismatch in glib/gconvert.c
2168
2169 * New and updated translations (bg,bn_IN,ca,dz,eu,fi,
2170   fr,he,it,ja,mk,or,pt)
2171
2172
2173 Overview of Changes from GLib 2.11.4 to GLib 2.12
2174 =================================================
2175
2176 * Bugs fixed:
2177  344905 leap-year bug in g_time_val_from_iso8601 w/o HAVE_TIMEGM
2178
2179 * Updated translations (cy,nb,nl)
2180
2181
2182 Overview of Changes from GLib 2.11.3 to GLib 2.11.4
2183 ===================================================
2184
2185 * GBookmarkFile:
2186  - g_bookmark_file_remove_item returns a boolean
2187  
2188 * g_mkstemp accepts the XXXXXX in the middle of
2189   the template
2190  
2191 * Bugs fixed:
2192  344868 g_key_file_to_data should separate groups 
2193
2194 * Updated translations (de,es,fr,gu,hi,ko,th)
2195
2196
2197 Overview of Changes from GLib 2.11.2 to GLib 2.11.3
2198 ===================================================
2199
2200 * GBookmarkFile:
2201   - g_bookmark_file_move_item: Return TRUE in case of
2202     an empty target
2203
2204 * Bugs fixed: 
2205  343919 gunicollate.c: strxfrm bug on VC8
2206
2207 * Updated translations (fi)
2208
2209 Overview of Changes from GLib 2.11.1 to GLib 2.11.2
2210 ===================================================
2211
2212 * Add g_ascii_stroll to parse signed 64bit integers
2213
2214 * GMarkup: add a flag to treat CDATA as text
2215
2216 * GHashTable: add functions to remove all entries
2217
2218 * GMainLoop: add functions to find the currently
2219   running source, and determine if it is destroyed
2220
2221 * Bug fixes:
2222  342563  g_atomic_thread_init() needs to be called before 
2223          other _g_*_thread_init() functions
2224  343548  Potential use after free in callers of g_string_free() 
2225  168538  Wish: Clearing contents of GHashTables
2226  321886  GTK+ cannot be reliably used in multi-threaded 
2227          applications
2228  341826  goption.c: 'strtoll' is C99's function
2229  343899  g_ascii_formatd dosn't work as expected for all 
2230          format strings
2231  317793  Make GEnumValue strings const
2232  337129  Compile warnings in G_IMPLEMENT_INTERFACE
2233  303622  What is G_TYPE_CHAR?
2234
2235 * Updated translations (bg,dz,eu,gl,ja,ko,nl,th,vi)
2236  
2237
2238 Overview of Changes from GLib 2.11.0 to GLib 2.11.1
2239 ===================================================
2240
2241 * GOption  
2242   - Support 64-bit integers 
2243   - Allow optional text before and after the options
2244     in help output
2245
2246 * Bug fixes:
2247  340538 gbase64-test writes OOB 
2248  340816 GKeyFile set_string_list invalid memory reads 
2249  339105 g_key_file_parse_value_as_double
2250  340434 convert-test.c fails (function test_one_half)
2251  311043 Memory leaks (and potential infinite loops) 
2252         when using G_ERRORCHECK_MUTEXES
2253  335198 Error checking mutexes are fubar  
2254  341237 Add a G_OPTION_ARG_INT64
2255  341192 g_io_channel_set_flags not implemented on win32
2256  336120 Allow adding description before/after GOption 
2257         --help output body
2258  341191 misplaced check in g_relation_delete
2259  340530 mismatched calloc / g_free in win32 threads
2260
2261 * Updated translation (es)
2262
2263 Overview of Changes from GLib 2.10.x to GLib 2.11.0
2264 ===================================================
2265
2266 * GBookmarkFile: a parser for files containing bookmarks
2267   stored using the Desktop Bookmark specification.
2268
2269 * Base64 encoding support
2270         
2271 * Unicode 5.0 support
2272
2273 * GOption supports floating point numbers 
2274
2275 * GKeyFile supports floating point numbers
2276
2277 * Bug fixes:
2278  155884 gatomic.c should be based on new SDK
2279  157877 update-desktop-database doesn't handle duplicate entries
2280  164719 keyfile parser doesn't support floats
2281  327662 Import BookmarkFile from libegg
2282  329548 Add G_OPTION_ARG_DOUBLE
2283  329789 option-test.c type confusion
2284  332841 Segmentation Fault when %llu is passed to vasnprintf and 
2285         HAVE_SNPRINTF is not defined
2286  333879 gthread/gthread-win32.c: IsDebuggerPresent needs '#define 
2287         _WIN32_WINDOWS 0x0401'
2288  333916 g_timer_elapsed docs should mention that microseconds 
2289         may be NULL
2290  334440 dlerror() portability issue causes crash on (old) a.out 
2291         NetBSD platform
2292  334646 goption + error out params
2293  334799 g_remove() must check return value of remove()
2294  334943 make check FAIL: threadpool-test
2295  335215 Some breakages with GThreadPool
2296  336085 g_option_context_new parameter lacks better explanation
2297  336677 Documentation for g_object_ref_sink() is incorrect
2298  337027 gbookmarkfile.c: sys/time.h include error
2299  337553 Wrong escaping of URIs
2300  338572 Dereferencing NULL value in g_key_file_get_group_comment
2301  338845 g_completion_complete_utf8 crashes when NULL is passed to it
2302  339337 g_bookmark_file_set_description
2303  339338 gbookmarkfile.c, function expand_exec_line
2304  339340 gbookmarkfile.c, function bookmark_app_info_dump
2305
2306 * Translation updates (bg,en_GB,et,gl,gu,he,hi,ka,nb,nl,nn,
2307                        or,pt_BR,ro,tr,vi,zh_CN)
2308
2309
2310 Overview of Changes from GLib 2.10.0 to GLib 2.10.1
2311 ===================================================
2312
2313 * Bugs fixed:
2314  314794 Broken pthread detection on Darwin [Gregor Riepl]
2315  322476 Missing check for .dylib [Vladimir Panov]
2316  333651 Inconsistent _g_charset_get_aliases prototype [Julio 
2317         M. Merino Vidal]
2318  333761 GInitiallyUnowned breaks application code [Sven Herzberg]
2319
2320 * Win32 changes:
2321  - Fix g_listenv() implementation.
2322  - Allow up to 100 GPrivate structs
2323
2324 * Translation updates (fr,hu,lt,pl,sv)
2325
2326
2327 Overview of Changes from GLib 2.9.6 to GLib 2.10.0
2328 ==================================================
2329
2330 * Bugs fixed:
2331  328997 64bit pointer trunction in glib slab-allocator
2332         [Pascal Hofstee]
2333  331110 g_cond_broadcast(inform_cond) without holding 
2334         inform_mutex [Chris Wilson, Sebastian Wilhelmi]
2335  332093 Fix some leaks in the tests [Kjartan Maraas]
2336  332435 g_utf8_strlen returns wrong value if a maximum 
2337         number of bytes to check is specified 
2338         [Matthias Clasen]
2339  331367 gslice requires more POSIX-like semantics for 
2340         GPrivate destructors [Tor Lillqvist]
2341
2342 * Documentation improvements [Matthias, Kang Jeong-Hee,
2343   Tor Lillqvist, Stefan Kost]
2344
2345 * Translation updates (el,eu,ka,uk)
2346
2347 Overview of Changes from GLib 2.9.5 to GLib 2.9.6
2348 =================================================
2349
2350 * Bugs fixed: 
2351  329124 distclean removes README [Kjartan Maraas, Tim Janik]
2352  317679 GRelation field type not documented [Behdad Esfahbod]
2353  329123 Typo in GTime docs [Kjartan Maraas]
2354
2355 * Documentation improvements [Sven Herzberg, David
2356   Schleef, Kjartan Maraas, Behdad Esfahbod]
2357
2358 * Translation updates (cs,cy,it,ko,pt,sq,sr,sr@Latn,ru
2359
2360 Overview of Changes from GLib 2.9.4 to GLib 2.9.5
2361 =================================================
2362
2363 * Memory management: 
2364   Runtime debugging support: The slice allocator
2365   can be turned off by setting G_SLICE=always-malloc
2366   in the environment. Zeroing of freed memory can
2367   now be turned on at runtime by setting
2368   G_DEBUG=gc-friendly in the environment. [Tim Janik]
2369
2370 * Bugs fixed:
2371  328253 HP-UX/IA-64 uses ".so" as default shared library 
2372         extension [Albert Chin]
2373  143380 unicode-encoding test fails converting to UTF-16 
2374         with libiconv [Marc Moorcroft]
2375  328254 Build breakage (GSlice) [Jens Ganseuer]
2376  328705 C99ism in glib/gmem.c [Kazuki Iwamoto]
2377
2378 * Translation updates (da,et,zh_CN)
2379
2380 Overview of Changes from GLib 2.9.3 to GLib 2.9.4
2381 =================================================
2382
2383 * Type system:
2384   Fix a problem with g_object_compat_control() which 
2385   can lead to segfaults in GTK+ applications on 64bit 
2386   platforms. 
2387
2388 * Thread suppport: 
2389   Unused threads now fall back to the global pool after 
2390   500 milliseconds, where they wait for another 
2391   max-idle-time milliseconds. [Sebastian Wilhelmi]
2392
2393 * Fix a memory allocation problem in GKeyFile. [Morten 
2394   Welinder]
2395
2396
2397 Overview of Changes from GLib 2.9.2 to GLib 2.9.3
2398 =================================================
2399
2400 * GTree:
2401  - Replace the simple recursive implementation by
2402    a nonrecursive, threaded one  [Maurizio Monge]
2403
2404 * Change g_filename_display_name and
2405   g_filename_display_basename to use the Unicode
2406   replacement character U+FFFD instead of a question
2407   mark, and don't append "(invalid encoding)"  [Matthias]
2408
2409 * Documentation improvements [Sven Herzberg, Federico
2410   Mena Quintero, Stefan Kost]
2411
2412 * Bugs fixed:
2413  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X 
2414         [Bogdan Nicula]
2415  326558 Some test failures on IRIX 6.5 [Daichi Kawahata]
2416  169285 "threaded" tree implementation for GTree 
2417         [Maurizio Monge]
2418  326747 g_filename_display_basename adds (invalid encoding) 
2419         [Alberto Ruiz]
2420
2421 Other contributors: Christian Kellner, Murray Cumming
2422
2423 New and updated translations (bg,ca,de,es,et,gu,ja,nl,th,vi)
2424
2425
2426 Overview of Changes from GLib 2.9.1 to GLib 2.9.2
2427 =================================================
2428
2429 * Memory management:
2430  - Add tests for cache colorization [Tim Janik]
2431  - Minimize space consumption if small amounts of differently
2432    sized slices are allocated, at a small performance cost.  [Tim]
2433
2434 * Thread support:
2435  - Add g_atomic_pointer_set() and g_atomic_int_set() [Tim Janik,
2436    Sebastian Wilhelmi]
2437  - Add g_thread_pool_set_sort_function() to allow sorting the 
2438    tasks of a threadpool.  [Martyn Russell]
2439  - Add g_thread_pool_set_idle_time() to allow unused threads
2440    to exit after a certain time.  [Martyn]
2441
2442 * Type system:
2443  - introduce a new type GInitiallyUnowned, which has an initial
2444    floating reference. [Tim]
2445  - Add support for GType parameters. [Matthias]
2446
2447 * Main loop:
2448  - Add g_main_context_is_owner() to determine if the current
2449    thread is the owner of the context.  [Michael Meeks]
2450
2451 * Provide g_access(), g_chdir(), g_unlink(), g_rmdir() as 
2452   wrapper functions instead of macros.  [Manish Singh]
2453
2454 * Documentation improvements [Tim, Matthias, Federico Mena Quintero,
2455   Stefan Kasal, Dan Williams]
2456
2457 * New and updated translations (en_CA,fi,fr,gl,ml,nb,no,zh_HK,zh_TW)
2458
2459 * Bugs fixed:
2460  324179 g_allocator_new() returns pointer to const dummy which Gtk+ 2.8 
2461         tries to modify [J. Ali Harlow]
2462  324332 g_option_context_parse() returns false without setting error 
2463         [Tim-Philipp Müller]
2464  324950 GLIB 2.9.1 testcase errors [Dan Yefimov]
2465  325015 gslice.c: process.h is needed on Windows [Kazuki Iwamoto]
2466  321978 G_DATALIST_GET_FLAGS() macro is not casting datalist to 
2467         gpointer [Andrew Paprocki]
2468  316221 G_LOCK warns about breaking strict-aliasing [Michal Benes, 
2469         Stanislav Brabec]
2470  325273 Error in documentation for glib_check_version () [Declan Naughton]
2471  325310 g_spawn_sync hangs when catching both stdout and 
2472         stderr [Tor Lillqvist]
2473  325249 gcc warning when using g_rmdir from <glib/gstdio.h> [Jani Monoses]
2474  325864 glib/gthreadpool.c:"#define debug(...)" is C99 [Kazuki Iwamoto]
2475  325874 Should say somewhere that source IDs are > 0 [Dan Williams]
2476  325438 a typo (compatability) [Stefan Kasal]
2477  323937 gslice.c in glib 2.9.1 doesn't build on Mac OS X [Bogdan Nicula]
2478
2479
2480 Overview of Changes from GLib 2.9.0 to GLib 2.9.1
2481 =================================================
2482
2483 * Memory management
2484  - The slice allocator is implemented [Tim Janik]
2485  - g_slice_free_chain() has been renamed to 
2486    g_slice_free_chain_with_offset()  [Tim, Behdad Esfahbod]
2487  - Mem chunks are deprecated [Matthias Clasen]
2488
2489 * Data structures
2490  - Hash tables are refcounted, and have a boxed type [Tim]
2491
2492 * Thread support
2493  - Support for Solaris threads has been removed 
2494    [Sebastian Wilhelmi, Andrew Paprocki]
2495  - g_async_queue_sort(), g_async_queue_push_sorted() have 
2496    been added to allow GAsyncQueue to be used as a priority 
2497    queue, together with the corresponding _unlocked 
2498    variants  [Martyn Russell]
2499
2500 * GObject:
2501  - The concept of a floating initial reference has been
2502    moved from GtkObject to GObject [Tim]
2503
2504 * Win32 changes:
2505  - Make g_rename() replace existing files [Tor Lillqvist]
2506
2507 * Misc new API:
2508  - G_GUINT64_CONSTANT macro to define guint64 
2509    constants [Andrew Paprocki]
2510  - G_GNUC_WARN_UNUSED_RESULT macro to instruct the 
2511    compiler to emit a warning if the value returned
2512    by a function is ignored. [Arjan van de Ven, Alex Larsson]
2513  - GList and GSList now have sort functions which take an
2514    extra user data argument [Martyn Russell]
2515  - g_param_spec_ref_sink() has been added for consistency [Tim]
2516
2517 * $LOGNAME is respected when determining user data. [Laszlo Peter]
2518
2519 * Other changes and bug fixes [Tim, Matthias, Behdad, 
2520   Christian Persch, Benedikt Meurer, Andrew Paprocki, 
2521   Kazuki Iwamoto, Alexis S. L. Carvalho, Stanislav Brabec,
2522   Andreas Schwab, Kalle Vahlman]
2523
2524 * Documentation
2525  - Deprecation warnings carry version information [Matthias]
2526  - The slice allocator has been documented [Matthias, Tim]
2527  - Other improvements [Morten Welinder]
2528
2529 Overview of Changes from GLib 2.8.x to GLib 2.9.0
2530 =================================================
2531 * Unicode support:
2532  - The Unicode tables have been updated to Unicode 4.1, 
2533    adding several new values to the GUnicodeBreakType 
2534    enumeration. This breaks Pango <= 1.10 
2535    [Behdad Esfahbod]
2536  - The various Unicode character predicate functions 
2537    (g_unichar_isalpha, g_unichar_isdigit,...) have
2538    been optimized
2539    [Behdad]
2540  - g_utf8_pointer_to_offset, g_utf8_offset_to_pointer:
2541    These functions handle negative offsets now, and
2542    going backwards in g_utf8_offset_to_pointer uses
2543    "stutter stepping".
2544    [Larry Ewing, Matthias Clasen]
2545
2546 * Memory management:
2547  - Mem chunks are no longer used internally in GLib and
2548    GObject. GMemChunk will be deprecated in GLib 2.10
2549  - All APIs based on GAllocator (g_list_push/pop_allocator,
2550    and similar push/pop_allocator functions for other
2551    data structures) have been deprecated, since they
2552    never worked as intended.
2553  - The g_slice_* functions have been added as a 
2554    new API for fast allocation of small memory blocks. 
2555    The implementation in GLib 2.9.0 is just a simple 
2556    wrapper around malloc. GLib 2.10 will have an
2557    efficient and scalable implementation. 
2558    [Tim Janik, Matthias]
2559
2560 * Pattern matching:
2561  - g_pattern_match has been optimized to avoid
2562    unnecessary recursion.
2563    [Tim, Matthias]
2564
2565 * g_intern_string, g_intern_static_string: 
2566  - New functions to intern strings. These are now used 
2567    by GObject to avoid duplicating static strings 
2568    [Matthias]
2569
2570 * g_thread_foreach: 
2571  - New function to iterate over all GThreads 
2572    [Tim, Matthias]
2573
2574 * g_date_set_time_t, g_date_set_time_val:
2575  - New functions to set a GDate from a time_t or
2576    GTimeVal value. g_date_set_time has been deprecated 
2577    in favor of these.
2578    [Roger Leigh]
2579
2580 * g_snprintf and g_vsnprintf:
2581  - These functions are no longer declared in gprintf.h, 
2582    since they are in glib.h
2583    [Matthias]
2584
2585 Overview of Changes from GLib 2.8.0 to GLib 2.8.1
2586 =================================================
2587 * Optimize single-character insertions in GString [Ross Burton]
2588 * Fix build problems on OS X
2589 * Fix build problems on Win32 [Tor Lillqvist, Hans Breuer]
2590 * Other bug fixes [Matthew F. Barnes, Stepan Kasal] 
2591 * Documentation improvements [Tristan van Berkom, Behnam
2592   Esfahbod, Gustavo Carneiro, Stepan Kasal, Matthias]
2593 * New and updated translations (ca,cy,ko,ro,uk)
2594
2595 Overview of Changes from GLib 2.7.7 to GLib 2.8.0
2596 =================================================
2597 * Make g_value_transform() handle enum values
2598   correctly on ppc64.  [Michael Lorenz]
2599   (Third-party code accessing enumeration values 
2600   in GValues should also be changed to access 
2601   v_long, not v_int, in order to work on bigendian 
2602   64bit machines.)
2603 * Make g_flags_get_first_value() handle a value
2604   of 0 meaningfully. [Tim-Philipp Müller] 
2605
2606 Overview of Changes from GLib 2.7.6 to GLib 2.7.7
2607 =================================================
2608 * Make atomic operations on s390 work [Matthias]
2609 * Fix C++ guards in gstdio.h [Tor Lillqvist]
2610
2611 Overview of Changes from GLib 2.7.5 to GLib 2.7.6
2612 =================================================
2613 * Add native implementations of atomic operations 
2614   on s390 [Matthias]
2615 * Make atomic reference counting of closures
2616   work on s390 [Matthias]
2617 * Avoid an infinite loop in g_convert_with_iconv().
2618   [Sebastian Bacher]
2619 * Documentation improvements [Ross Burton]
2620
2621 Overview of Changes from GLib 2.7.4 to GLib 2.7.5
2622 =================================================
2623 * Thread-related changes
2624  - Fix build issues on HP-UX [Paul Cornett]
2625  - Threadsafe access to flags stored in datasets [Tim Janik]
2626  - Fix several issues with atomic refcounting for 
2627    closures, objects and paramspecs [Tim]
2628  - Improve tests for atomic refcounting changes [Tim]
2629 * Fix handling of stateful encodings in g_convert_* [Matthias]
2630 * Fix translation of GOption help output [Dan Winship]
2631 * Catch format errors in translations. This may cause 
2632   "make check" to fail when using older versions
2633   of gettext [Matthias]
2634 * Win32 bug fixes [Tor Lillqvist]
2635 * Documentation improvements [Ross Burton, Jochen Baier, 
2636   Matthias, Tim]
2637 * New and updated translations (de,fi,gu,pl,pt,tr,zh_TW)
2638
2639 Overview of Changes from GLib 2.7.3 to GLib 2.7.4
2640 =================================================
2641 * Fix g_atomic_pointer_compare_and_exchange 
2642   on Sparc64 [Gert Doering]
2643 * Fix a hang in g_thread_pool_free. [Hong Jen Yee]
2644 * Win32 bug fixes [Tor Lillquist]
2645 * Other bug fixes [Benoit Dejean, Manish Singh]
2646 * Documentation improvements [Bryan Silverthorn,
2647   Callum McKenzie] 
2648 * New and updated translations (de,lt,sq,zh_CN)
2649
2650 Overview of Changes from GLib 2.7.2 to GLib 2.7.3
2651 =================================================
2652 * GOption
2653  - Allow callbacks with optional arguments [Pawel Sliwowski]
2654  - Allow to turn off the automatic long option name
2655    disambiguation  [Adam McLaurin]
2656  - Only allow printable ASCII as short option names [Matthias]
2657 * Win32
2658  - Build fixes [Tor Lillqvist]
2659  - Rewrite iochannel socket implementation [Tor]
2660 * GObject
2661  - Threadsafety improvements; in particular, refcounting
2662    of objects is done atomically now. [Wim Taymans, Tim Janik]
2663 * Bug fixes [Morten Welinder, Matthias, Wim Taymans]
2664 * Documentation improvements [Richard Laager, Matthias]
2665 * New and improved translations (bf,cs,hu,nb,nl,no)
2666
2667 Overview of Changes from GLib 2.7.1 to GLib 2.7.2
2668 =================================================
2669 * Win32 build fixes [Hans Breuer]
2670 * Bug fixes [Mikael Magnusson]
2671 * Documentation improvements [Matthias Clasen]
2672 * New and updated translations (en_CA,es,et,ja,sr,sr@Latn,zh_TW)
2673
2674 Overview of Changes from GLib 2.7.0 to GLib 2.7.1
2675 =================================================
2676 * GOption 
2677  - Allow callback arguments without parameters [Dan Winship]
2678 * GMappedFile: an mmap wrapper [David Schleef, Behdad Esfahbod]
2679 * Misc new functions:
2680  - g_get_host_name [Tor Lillqvist]
2681  - g_mkdir_with_parents [Tor]
2682  - g_build_pathv, g_build_filenamev [Todd A. Fisher, 
2683    Matthias Clasen]
2684 * Bug fixes [Roger Leigh, Masatake YAMATO, Kjartan Maraas,
2685   Manish Singh, Tor, Murray Cumming, Kian Duffy, Morten Welinder]
2686 * Documentation improvements [Hong Gang XU, Dan Winship, Matthias]
2687 * New and updated translations (bg,cs,da,en_CA,es,et,nb,nl,no,
2688   sk,th,zh_TW)
2689
2690 Overview of Changes from GLib 2.6.x to GLib 2.7.0
2691 =================================================
2692 * GKeyFile
2693  - Add unit tests [Matthias Clasen, Suren A. Chilingaryan]
2694  - Accept \r\n as line end [Bastian Nocera]
2695  - Don't interpret leading zeros as octal numbers. [Matthias]
2696  - Make key and group removal work [David Hoover, Matthias Hasselmann]
2697 * GOption
2698  - Improve formatting of --help output [Matthias, Noah Levitt]
2699  - Accept -? [Matthias]
2700  - Warn about duplicate main groups [Jeff Franks]
2701  - Treat '-' as non-option argument [Tim Musson, Thomas Leonard]
2702  - Report missing arguments as errors [Björn Lindqvist]
2703  - Add a boxed type for GDate [Tim-Philipp Müller]
2704 * GTree
2705  - g_tree_remove() and g_tree_steal() return status information [Matthew F. Barnes]
2706 * Stdio wrappers
2707  - Work regardless of large file support [Manish Singh]
2708  - Add g_access(), g_chmod(), g_creat(), g_chdir [Tor Lillqvist]
2709 * GObject
2710  - Implement "toggle references" to help language bindings [Owen Taylor]
2711  - Allow to mark names, nicks and blurbs of pspecs as static [Ben Maurer, Matthias]
2712  - Make pspec lookup a bit faster [Morten Welinder]
2713 * Add g_listenv() to list all set environment variables [Hans Petter Jansson]
2714 * Add g_file_set_contents() to atomically write a file.  [Søren Sandmann,
2715   Sven Neumann, Manish, Alexis S. L. Carvalho]
2716 * Add g_try_malloc(), g_try_new(), g_try_new0() and g_try_renew() [Stefan Kost]
2717 * Add g_utf8_collate_key_for_filename() to sort filenames taking
2718   extensions and numeric suffixes into account.  [Ole Laursen, Alex Larsson]
2719 * Add G_GNUC_NULL_TERMINATED to mark varargs function with 
2720   NULL-terminated argument lists. [Marc Meissner]
2721 * Win32 changes
2722  - Improved debugability [Ulf Lamping, Hans Breuer]
2723  - Make filename handling more robust [Tor, Billy Skaggs]
2724  - Improve g_get_system_data_dirs() [Tor]
2725  - Use more precise timers [Tor]
2726  - Build fixes [Kazuki Iwamoto, Hans, Tor, Robert Ögren]
2727 * Other bug fixes [Roger Leigh, Owen, Matthias, Morten, Kjartan Maraas, 
2728   Pawel Sakowski, Tor, Simon Budig, Ed Avis, Manish, Nicolas Laurent, 
2729   Bastien, Fabrício Barros Cabral, Michael Banck, Daniel Atallah, 
2730   J. Ali Harlow, Tim Janik, Hazael Maldonado Torres, Sven, Jon-Kare Hellan,
2731   Dave Benson, Tommi Komulainen, Benjamin Otte, Brian Cameron, Changwoo Ryu, 
2732   Christian Biere, Noah, Benoît Carpentier]
2733 * Documentation improvements [Vincent Untz, Matthias, Tim-Philipp Müller,
2734   Morten, Matthew, Federico Mena Quintero, Sebastian Bacher, Oliver Sessink, 
2735   Stefan, Jared Lash, Tor, Owen, Daniel Vaillard, Mathieu Lacage]
2736 * New and updated translations (ca,cs,da,el,en_CA,en_GB,es,et,eu,fa,fr,gl,
2737   hu,id,it,lt,mn,ne,nl,pl,pt,pt_BR,ro,rw,sk,sq,sr,sr@Latn,tl,uk,xh,zh_CN)
2738
2739 Overview of Changes from GLib 2.6.0 to GLib 2.6.1
2740 =================================================
2741 * GOption
2742  - Make gtk_init(NULL, NULL) work again [Marcin Krzyzanowski]
2743  - Improve handling of -- [Matthias Clasen]
2744  - Don't show G_OPTION_REMAINING in --help output [Matthew F. Barnes]
2745 * g_find_program_in_path() doesn't return directories [Tommi Komulainen]
2746 * Add gmodule-export-2.0.pc [Matthias]
2747 * Win32 changes
2748  - Improve hangling of UNC paths [Tor Lillqvist]
2749  - g_getenv(), g_setenv(), g_unsetenv(), g_find_program_in_path()
2750    take and return UTF-8 now [Tor] 
2751  - Make g_file_test() work more reliably, and use PATHEXT
2752    when check for executables [Tor]
2753  - Build and cross-compilation fixes [J. Ali Harlow]
2754 * Other bug fixes [Jens Hatlak, Morten Welinder, 
2755   Tor, Kalpesh Shah, Adrian Bunk]
2756 * Documentation improvements [Marcin Krzyzanowski, Tor, Crispin
2757   Flowerday, Mariano Suárez-Alvarez, Christian Biere, Danny Milo,
2758   Vincent Untz, Bastien Nocera]
2759 * New and updated translations (cy,de,nl,ru,sq,sv)
2760
2761 Overview of Changes from GLib 2.4.x to GLib 2.6.0
2762 =================================================
2763
2764 * Major new APIs
2765   - GOption, a commandline option parser
2766   - GKeyFile, a parser/editor for the .ini like files 
2767   - Functions to support the XDG basedir specification
2768   - Wrappers for common POSIX pathname functions to handle filename
2769     encodings consistently. On Windows, these use UTF-8.
2770
2771 * Miscellaneous new functions
2772   - g_filename_display_name() converts filenames in displayable UTF-8 strings
2773   - g_uri_list_extract_uris() splits uri lists
2774   - g_date_get_iso8601_week_of_year() gets ISO 8601 week numbers
2775   - g_log_set_default_handler() installs an alternate default log handler
2776   - g_get_language_names() obtains a list of applicable locale names
2777   - g_strv_length() calculates the length of NULL-terminated string arrays
2778   - g_win32_get_windows_version() determines the Windows version 
2779   - G_GNUC_INTERNAL marks functions as non-exported
2780   - glib_check_version() checks the GLib version at runtime
2781   - g_debug() completes the family of logging functions
2782
2783 * Performance improvements
2784   - Optimize g_utf8_validate()
2785   - Optimize g_markup_parse_context_parse()
2786   - Reduce signal connection complexity from O(n) to O(1) 
2787   - Get rid of many PLT entries for internally used exported symbols
2788   - Reduce code size by removing literal strings from g_return_if_fail()
2789
2790 * Other changes
2791   - On Windows, GLib functions that take file name arguments now require
2792     those to be in UTF-8. Functions that return file names return UTF-8.
2793   - Use higher precision for mathematical constants
2794   - Don't convert to/from UTF-8 in g_filename_to_uri/g_filename_from_uri
2795   - Support ll as printf format modifier for long long on all platforms
2796   - Clean up the ABI and enforce the list of exported symbols
2797   - Add a .pc file for using gmodule in libraries
2798   - Require ngettext
2799
2800 Overview of Changes from GLib 2.5.7 to GLib 2.6.0
2801 =================================================
2802 * GOption: Don't list help options if group-specific
2803   options have been requested [Glynn Foster]
2804 * Make g_get_language_names() track locale changes [Christian Persch]
2805 * Win32 bug fixes [Tor Lillqvist]
2806 * Bug fixes [Philippe Blain, Owen Taylor, Sebastian Wilhelmi]
2807 * New and updated translations (da,es,ja,lt,zh_CN)
2808 Bugs fixed: 159530,100697,160271,160645,157255
2809
2810 Overview of Changes from GLib 2.5.6 to GLib 2.5.7
2811 =================================================
2812 * Optimize g_utf8_validate() [Owen Taylor, Matthias Clasen]
2813 * Optimize g_markup_parse_context_parse() [Havoc Pennington, 
2814   Morten Welinder]
2815 * Reduce signal connection complexity from O(n) to O(1) 
2816   [Sven Neumann]
2817 * Add a .pc file for using gmodule in libraries [Owen]
2818 * Add G_GNUC_MALLOC to mark functions returning newly 
2819   allocated memory  [Matthias]
2820 * Win32 bug fixes [Hans Breuer, Tor Lillqvist, Robert Ögren,
2821   Bruce Hochstetler]
2822 * Bug fixes [Kazuki IWAMOTO, Matthias, Manish Singh, Morten,
2823   Frederic Crozat, Tor]
2824 * Documentation improvements [Matthias, Tor, Owen]
2825 * New and updated translations (cs,da,de,en_CA,en_GB,es,nb,nl,sq,zh_CN)
2826
2827 Overview of Changes from GLib 2.5.5 to GLib 2.5.6
2828 =================================================
2829 * GOption
2830   - Add G_OPTION_FLAG_REVERSE to allow options 
2831     which unset a  boolean variable [Tor Lillqvist]
2832 * GChildWatch
2833   - Use sigaction instead of signal [Jonas Jonnson, 
2834   Archana Shah]
2835   - Make the very first SIGCHLD work [Gustavo Carneiro]
2836 * Bug fixes [Morten Welinder, Tor, David MacLachlan,
2837   Manish Singh, J. Ali Harlow]
2838 * Documentation improvements [Matthias Clasen, Tor]
2839 * Updated translations (da,ja,tr,zh_CN)
2840
2841 Overview of Changes from GLib 2.5.4 to GLib 2.5.5
2842 =================================================
2843 * GKeyFile
2844   - Cleanups, add more error checking [Ray Strode]
2845   - Fall back to the untranslated string when getting 
2846     locale strings [Mark McLoughlin]
2847 * GOption
2848   - Document GOption [Matthias Clasen]
2849   - Better support for rest arguments [Owen Taylor, Matthias]
2850   - Handle conflicts between groups [Matthias]
2851 * Add g_lstat() to the stdio wrappers [Tor Lillqvist]
2852 * Add g_filename_display_name() to convert filenames
2853   in displayable UTF-8 strings  [Alex Larsson, Matthias]
2854 * Win32 bug fixes [Kazuki IWAMOTO, Hans Breuer, Tor]
2855 * Bug fixes [Christophe Fergeau, Morten Welinder, 
2856   Owen, Kjartan Maraas, Mark]
2857 * Documentation improvements [Matthias, Tor]
2858
2859 Overview of Changes from GLib 2.5.3 to GLib 2.5.4
2860 =================================================
2861 Add GKeyFile, a parser/editor for the .ini like files used in various
2862    freedesktop.org specifications. [Ray Strode]
2863 Make the handling of filename encodings consistent across all
2864    GLib functions, introduce wrappers for common POSIX 
2865    functions which accept the same filename encoding. [Tor Lillqvist, 
2866    Owen Taylor]
2867 GOption
2868  - Rename g_context_option_error_quark() to a more language-binding
2869    friendly name [Murray Cumming]
2870  - Accept backslashes in filenames on Win32 [Tor Lillqvist]
2871 * Strip the internal aliasing prefix IA__ from function names in 
2872   assertions [Matthias Clasen]
2873 * Add a function to split uri lists. [Matthias]
2874 * Win32 bug fixes 
2875  - Don't open console windows [Tor]
2876 * Other bug fixes [Philippe Blain, Robert Ögren, Hidetaka Iwai, Matthias,
2877  Morten Welinder, Mats-Ola Persson, Tor, Nickolay V. Shmyrev, Kjartan Maraas,
2878   Anders Carlsson, Tim-Philipp Müller, Lucas Rocha, Andrea Campi, Manish
2879   Singh, Thomas Fitzsimmons, Kazuki IWAMOTO]
2880 * Documentation improvements [Matthias, Linus Walleij, Nickolay, Philippe, 
2881  Adam Hooper, Gustavo Carneiro]
2882 * New and updated translations (cs,en_CA,en_GB,ja,nb,nl,or,sr,sr@Latn,sq)
2883
2884 Overview of Changes from GLib 2.5.2 to GLib 2.5.3
2885 =================================================
2886 * GOption
2887  - set the program name from argv[0] [Masatake YAMATO] 
2888  - make contexts work without a main group [Anders Carlsson]
2889 * Performance 
2890  - Get rid of many PLT entries for internally used exported symbols,
2891    and clean up the ABI at the same time and make make check check the
2892    list of exported symbols.  [Matthias Clasen]
2893 * Add API to get ISO 8601 week numbers [Niklas Lundell]
2894 * Add API to install an alternate default log handler [Darin Adler]
2895 * Add API to obtain a list of applicable locale names [Hidetoshi Tajima]
2896 * Reduce code size bloat by removing literal strings from
2897  the g_return_if_fail() macros [Owen Taylor]
2898 * Add g_strv_length [Tim-Philipp Müller]
2899 * Win32 changes
2900  - Add API to determine the Windows version [Tor Lillqvist]
2901 * Other bug fixes [Stepan Kasal, Anders, Tor, Kazuki Iwamoto,
2902   Manish Singh]
2903 * Documentation improvements [Morten Welinder, Matthias]
2904 * New and updated translations (es,nn,ro)
2905
2906 Overview of Changes from GLib 2.5.1 to GLib 2.5.2
2907 =================================================
2908 * Add G_GNUC_INTERNAL macro [Arjan van de Ven]
2909 * Add GOption, a commandline option parser [Anders Carlsson]
2910 * Add glib_check_version [Michael Natterer]
2911 * Add XDG basedir API [Ray Strode]
2912 * Require ngettext [Danilo Segan]
2913 * Bug fixes [Manish Singh, Ray Strode, Vincent Noel, 
2914   Jon-Kare Hellan, Jody Goldberg]
2915 * Win32 bug fixes [Tor Lillqvist, Hans Breuer, Peter Zelezny]
2916 * Documentation improvements [Matthias Clasen, Vincent Untz, Christian Persch]
2917 * New and updated translations (bs,eu,fi,gu,ne,pa)
2918
2919 Overview of Changes from GLib 2.5.0 to GLib 2.5.1
2920 =================================================
2921
2922 * Bug fixes [Oliver Guntermann, Sven Neumann, James 
2923   Henstridge, Hiroyuki Ikezoe, Matthias Clasen, Robert 
2924   Ögren, Tommi Komulainen]
2925 * Documentation improvements [Soeren Sandmann, 
2926   Christophe Fergeau, Danek Duvall]
2927 * New and updated translations (eu,hi)
2928   
2929 Overview of Changes from GLib 2.4.1 to GLib 2.5.0
2930 =================================================
2931
2932 * New functions g_debug [Sven Herzberg]
2933 * Use higher precision for mathematical constants [Morten 
2934  Welinder]
2935 * Don't convert to/from UTF-8 in g_filename_{to,from}_uri 
2936  [Federico Mena Quintero]
2937 * Win32
2938  - Handle empty digit string in printf() functions 
2939    correctly [Tor Lillqvist]
2940  - Support ll as format modifier for long long [Tor]
2941  - Be more careful about HOME [Tor, Ivan Wong]
2942  - Bug fixes [John Ehresman]
2943 * Miscellaneous bug and portability fixes [Danilo Segan, 
2944  Owen Taylor, Nikolai Weibull, Benoît Carpentier, Morten 
2945  Welinder, Manish Singh, Sven Neumann, Julio M. Merino Vidal,
2946  Kaz Sasayama, Murray Cumming, Federico, Mariano Suarez-Alvarez]
2947 * Documentation updates [Matthias Clasen, Crispin Flowerday,
2948  Tommi Komulainen, Federico Mena Quintero, Ed Griffiths]
2949 * New and updated translations (ja,ne,no,wa)
2950  
2951 Overview of Changes from GLib 2.4.0 to GLib 2.4.1
2952 =================================================
2953
2954 * Win32 bug fixes [Tor Lillqvist, Roger Leigh, John Ehresman]
2955 * Miscellaneous bug and portability fixes [Owen Taylor,
2956   Matthias Clasen, Jonas Jonsson, Christian Krause,
2957   Nickolay V. Shmyrev, Christophe Saout, Philippe Blain,
2958   Piotr Klaban]
2959 * Documentation updates [Matthias]
2960 * New and updated translations (ca,cs,cy,el,en_CA,en_GB,es,eu,fi,
2961   fr,gu,he,id,nl,pt,pl,ru,sr,sr@ije,sr@Latn,sv,uk)
2962
2963 Overview of Changes from GLib 2.3.6 to GLib 2.4.0
2964 =================================================
2965
2966 * Handle invalid-UTF-8 in g_log() properly [Matthias Clasen]
2967 * Win32 bug fixes [Tor Lillqvist, Bruce Hochstetler]
2968 * Miscellaneous bug and portability fixes [Olivier Biot, David L. Cooper II, 
2969   Kjartan Maraas, Frédéric L. W. Meunier, Christof Petig, Manish Singh, 
2970   Sebastian Wilhelmi]
2971 * Documentation updates [Owen]
2972 * Updated translations (hr,ro)
2973
2974 Overview of Changes from GLib 2.3.5 to GLib 2.3.6
2975 =================================================
2976
2977 * GAtomic bug fixes [Sebastian Wilhelmi, Mark McLoughlin]
2978 * GMain threading fixes and improvements [Sebastian]
2979 * Win32 [Tor Lillqvist]
2980  - restore some symbols extraneously exported from gobject to maintain ABI compatibility
2981  - Misc build improvements and fixes [Tor, Cedric Gustin, Hans Breuer]
2982 * Documentation updates [Sebastian, Takeshi AIHANA, Matthias, Sven Herzberg]
2983 * New and updated translations (be,es,fi,ga,pa,sr@ije,zh_CN)
2984
2985 Overview of Changes from GLib 2.3.3 to GLib 2.3.5
2986 =================================================
2987
2988 * Make glib-mkenums parse initializers with macros. [Matthias Clasen, muppet]
2989 * Respect locale era in g_date_set_parse(). [Theppitak Karoonboonyanan] 
2990 * Add atomic operations and use it for the async queue and
2991   gonce implementation. [Sebastian Wilhelmi]
2992 * Documentation improvements [Sebastian, Matthias, Sven Herzberg]
2993 * Add g_main_depth() for finding the recursion depth of the main
2994   loop [Owen Taylor, Tim Janik, Stefan Westerfeld]
2995 * Add g_spawn_close_pid(), needed on win32 [J. Ali]
2996 * Win32 fixes. [Hans Breuer, J. Ali Harlow]
2997 * Misc bugfixes [Sebastian, Matthias, Balazs Scheidler, Owen]
2998 * Updated translations (cy,et,ga,sq)
2999
3000 Overview of Changes from GLib 2.3.2 to GLib 2.3.3
3001 =================================================
3002
3003 * Add a native AIX gmodule implementation. [Laurent Vivier]
3004 * Add g_node_copy_deep().  [James M. Cape, Matthias Clasen]
3005 * Extend GQueue API to match the GList API. [Soeren Sandmann]
3006 * Add g_hash_table_find().  [Tim Janik]
3007 * Add a G_MODULE_BIND_LOCAL flag. [David Schleef]
3008 * Inline g_string_append_c() when possible. [Owen Taylor, Tim]
3009 * Wrap waitpid() as a GSource. [Jonathan R. Blandford]
3010 * Add g_completion_complete_utf8(). [Theppitak Karoonboonyanan, 
3011   Matthias]
3012 * Add g_strsplit_set(). [Soeren]
3013 * Documentation improvements. [Vincent Untz, Sebastian Wilhelmi, 
3014   Soeren, Matthias]
3015 * Win32 build fixes. [Tor Lillqvist]
3016 * Misc bugfixes [Manish Singh, Noah Levitt, Simon Josefsson, 
3017   Morten Welinder, Damien Carbery, Julio M. Merino Vidal, Sebastian, 
3018   Matthias]
3019 * Updated translations (nn,cs,it,ko,sq,ms,az,hr,uk,sr,sr@Latn,sq,ta)
3020
3021 Overview of Changes from GLib 2.3.1 to GLib 2.3.2
3022 =================================================
3023
3024 * Add G_MAXSIZE. [Manish Singh]
3025 * Add g_rand_new_with_seed_array(), g_rand_set_seed_array(),
3026   implementing the init-by-array functionality of the 
3027   original mersenne twister. Add g_rand_copy(). Improve seeding. 
3028   [George Lebl]
3029 * Add a lowercase_name option to glib-mkenums. [Murray Cumming]
3030 * Add g_ptr_array_foreach(). [Matthias Clasen]
3031 * Add g_timer_continue(). [Tim-Philipp Müller]
3032 * Fix a threadsafety issue in mem chunks. [Matthias, Balazs Scheidler]
3033 * Fix g_filename_{to,from}_utf8() on Win32 and improve 
3034   g_file_test() there too [Hans Breuer] 
3035 * Add a boxed type for NULL-terminated string arrays.  [Matthias]
3036 * Add G_DEFINE_TYPE() plus variants to ease the constuction
3037   of GObject boilerplate code.  [Tim Janik]
3038 * Support & in password GECOS field [Matthias, Soeren Boll Overgaard]
3039 * Documentation improvements [Matthias, Manish]
3040 * Win32 build fixes [Hans]
3041 * Misc bug fixes [Damien Carbery, Matthias, Manish, Olivier Poncet, 
3042   Zack Rusin]
3043 * Updated translations (ar,de,fa,ga,mn,nn,no,sq)
3044
3045 Overview of Changes from GLib 2.3.0 to GLib-2.3.1
3046 =================================================
3047
3048 * Add glib/gi18n.h and glib/gi18n-lib.h for common
3049   gettext support, including a Q_() macro for translation
3050   with context [Matthias Clasen]
3051 * Add a more flexible G_FILENAME_ENCODING variable
3052   as a replacement for G_BROKEN_FILENAMES [Matthias]
3053 * Fix the return value g_main_context_iterate() for
3054   newly ready sources [Padraig O'Briain]
3055 * Handle Hangul composition for normalization [Noah Levitt]
3056 * Add G_{MIN,MAX,MAXU}INT{8,16,32}. [Mark Jones, Matthias]
3057 * Add G_GSIZE_FORMAT/G_SSIZE_FORMAT [Manish Singh]
3058 * Add G_STRFUNC as a portable wrapper for __func__ [Tim Janik]
3059 * Documentation improvements [Matthias]
3060 * GObject [Tim Janik]
3061  - Support '-' in g_signal_connect()/disconnect() names
3062    like 'swapped-signal'.
3063  - Add g_type_class_peek_static() and use to optimize
3064    g_object_new() for static types [Tim]
3065  - Allow setting construct-only properties from within
3066    init() implementations
3067  - Enforce readability/writeability in g_object_set/get()
3068 * Fix bug with g_ascii_strtod and multi-byte separator.
3069   [Behdad Esfahbod, Roozbeh Pournader]  
3070 * Misc bug fixes [Matthias, John Ehresman, Andrew Lanoix,
3071   Tor Lillqvist, Mark McLoughlin, Tim-Philipp Müller, Manish, 
3072   Morten Welinder]
3073 * Updated translations (ca,cs,da,es,fr,ja,nn,no,pt,ru)
3074
3075 Overview of Changes from GLib 2.2.x to GLib-2.3.0
3076 =================================================
3077
3078 * Replace Trio printf by gnulib vasnprintf [Matthias Clasen]
3079 * Update Unicode data to Unicode 4.0 [Noah Levitt]
3080 * Support XML-safe formatted output with 
3081   g_markup_[v]printf_escaped [Owen Taylor]
3082 * Add g_file_read_link to read symbolic links [Matthias]
3083 * Add g_unichar_get_mirror_char to obtain the 
3084   mirrored variant of a character [Noah]
3085 * Support for one-time initialization functions. 
3086   [Sebastian Wilhelmi]
3087 * Miscellaneous API additions: g_vasprintf
3088   g_string_chunk_insert_len, g_setenv, g_unsetenv [Matthias]
3089 * Docs improvements [Matthias]
3090 * Add support instance-private data on classed types
3091   [Mark McLoughlin, Tim Janik, Owen]
3092 * Optimize signal emissions [Soeren Sandmann, Tim]
3093 * Support a "default vtable" per interface [Tim]
3094 * Add support for properties on interfaces [Owen, Tim]
3095 * Miscellaneous API additions: g_value_take_string(),
3096   g_value_take_param(), g_value_take_object(), 
3097   g_value_take_boxed(). [Matthias]
3098 * Win32 build fixes [Tor Lillqvist]
3099
3100 Overview of Changes from GLib 2.1.5 to GLib-2.2.0
3101 =================================================
3102
3103 * Fix a problem with g_thread_init() on 64-bit problems
3104   [Alceste Scalas, Sebastian Wilhelmi]
3105 * Add assembly implementations of byteswap macros
3106   for ia64 and x86_64. [Manish Singh]
3107 * IOChannel fixes for Win32 [Tor Lillqvist, Thorsten Maerz]
3108 * Updated translations (bg,ca,es,da,fi,lv,ru,sk)
3109
3110 Overview of Changes from GLib 2.1.4 to GLib-2.1.5
3111 =================================================
3112
3113 * Win32 bug fixes [Tor Lillqvist]
3114 * Various post-rewrite fixes for glib-gettext.m4 [Owen Taylor,
3115   Jody Goldberg, Kjartan Maraas, Johannes Stezenbach]
3116 * Ensure we have a GUINT64_FORMAT by pulling in Trio
3117   if necessary [Manish Singh]
3118 * Further Trio build fixes [Matthias Clasen, Owen]
3119 * Hack around gcc, libtool issues with -pthread [Owen]
3120 * Docs improvements [Matthias]
3121 * Bug and portability fixes 
3122 * Updated and new translations (bg,de,fi,fr,sq,fr)
3123
3124 Other contributors: Kai Poitschke, Morten Welinder
3125
3126 Overview of Changes from GLib 2.1.3 to GLib-2.1.4
3127 =================================================
3128
3129 * autoconf changes to make it possible to cross compile
3130   GLib. [Owen Taylor, Dan Kegel, Amy Lin, Dimi Shahbaz, 
3131   Johannes Stezenbach]
3132 * Use libintl when it has bind_textdomain_codeset() and
3133   GLib doesn't. [Owen]
3134 * Improve generation of pseudo-random integers [Morten Welinder, 
3135   Sebastian Wilhelmi]
3136 * Avoid literal UTF-8 in favor of octal escapes [Owen, Tomas Ogren]
3137 * Cleanup include order [Sven Neumann]
3138 * autoconf cleanups and bug fixes [Daniel, Matthias Clasen, Owen]
3139 * Doc fixes and additions [Matthias]
3140
3141 Other contributors: James M. Cape, Frederic Crozat, Martin Gansser,
3142   Phuc LeHong, Manish Singh, Joshua Weage, Morten Welinder
3143
3144 Overview of Changes from GLib 2.0.x to GLib-2.1.x
3145 =================================================
3146
3147 * Add copy of the Trio library to build and use for printf() when 
3148   system printf isn't good enough. Add g_printf()/etc. [Matthias Clasen]
3149 * Add g_str_has_suffix()/g_str_has_prefix() [Alex Larsson]
3150 * Add g_markup_parse_context_get_element() [Matthias]
3151 * Add g_utf8_strreverse [Matthias]
3152 * Add g_ascii_strtoull() [Tim Janik]
3153 * Support scanning of 64-bit values with GScanner [Tim]
3154 * Add g_set/get_application_name() [Havoc Pennington]
3155 * Add G_LIKELY()/G_UNLIKELY() macros for hinting branch probabilities. 
3156   Use for g_return_if_fail(). [Matthias Clasen]
3157 * Add G_GNUC_DEPRECATED macro [Tom Tromey]
3158 * Improve the seeding algorithm of GRandom to avoid problems
3159   with certain pathological seeds. Support G_RANDOM_VERSION=2.0
3160   environment variable. [Sebastian Wilhelmi]
3161 * Improve thread configure checks, use -pthread where applicable
3162   [Sebastian]
3163 * Improve handlng of thread priorities [Sebastian]
3164 * Fix up parameter names that might shadow functions from
3165   system headers [Soeren Sandmann]
3166 * Clean up usage of deprecated functions [Manish Singh]
3167 * Docs fixes and improvements. In particular, include "Since" information.
3168   [Matthias, Soeren, Martin Schulze, Daryll Strauss, Bill Janssen, 
3169   Owen Taylor, Morten Welinder]. 
3170
3171 Overview of Changes in GLib 2.0.7
3172 =================================
3173
3174 * Fix C++ warnings in gtype.h [Dom Lachowicz]
3175 * Fix g_type_fundamental_next() [Tim Janik]
3176 * Fix various missing includes of config.h [Morten Welinder]
3177 * Handle main loop initialization before g_thread_init [Sebastian Wilhelmi]
3178 * Various 64-bit fixes [Manish Singh]
3179 * Fix GPoll on Win32 [Tor Lillqvist, Herman Bloggs]
3180 * Fix bug with buffering on UTF-8 IOChannels [Daniel Elstner]
3181 * Misc bug and build fixes [Soren Andersen, Gustavo Carneiro, Tor,
3182      Tim, Havoc Pennington,  Matthias Clasen, Sebastian Rittau,
3183      Masahiro Sakai, Arvind Samptur, HideToshi Tajima, Owen Taylor]
3184 * Updated and new translations (be,cs,de,*fa,it,lv,pt_BR,tr)
3185
3186 Overview of Changes in GLib 2.0.6
3187 =================================
3188
3189 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
3190 * Clean up debug spew from GObject [Anders Carlsson]
3191 * Compiler warning fixes [David L. Cooper II]
3192 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
3193 * Fixes for --disable-debug [Sebastian Wilhelmi]
3194 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
3195   Rajkumar Sivasamy, Laurent Vivier]
3196 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
3197   Sebastian Rittau, Linus Welleij]
3198 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
3199 * Updated translations (bg,ko,vi)
3200
3201 Overview of Changes in GLib 2.0.5
3202 =================================
3203
3204 * Fix problem with interface prerequisites [Jon Trowbridge, Dave Camp]
3205 * Clean up debug spew from GObject [Anders Carlsson]
3206 * Compiler warning fixes [David L. Cooper II]
3207 * Fix some problems with g_build_path() [Guillaume Chazarain, Owen Taylor]
3208 * Fixes for --disable-debug [Sebastian Wilhelmi]
3209 * Threading fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, 
3210   Rajkumar Sivasamy, Laurent Vivier]
3211 * Documentation fixes [Jacob Berkman, Manuel Clos, Jared Dukat, 
3212   Sebastian Rittau, Linus Welleij]
3213 * Misc bug fixes [Anders Carlsson, Sam Couter, Morten Welinder, Owen]
3214 * Updated translations (bg,ko,vi)
3215
3216 Overview of Changes in GLib 2.0.4
3217 =================================
3218
3219 * Fix some 64-bit problems. (George Lebl, David L. Cooper II)
3220 * Add note about Tru64 iconv to INSTALL. (Manuel Op de Coul)
3221 * Fix problem with timouts > MAXINT. (Tim Janik, Owen Taylor)
3222 * Updated translations (ca,es,fr,ja,gl,ms,nl,pl,pt,ru)
3223
3224 Overview of Changes in GLib 2.0.3
3225 =================================
3226
3227 * Handle sorting 0-length arrays (Ron Arts)
3228 * Threading fixes (Sebastian Wilhelmi)
3229 * Portability fixes (Miroslaw Dobrzanski-Neumann, Jacob Berkman, Gareth Pierce, 
3230   Sebastian, Qingjiang Yuan)
3231 * Various fixes for glib-2.0.m4. (Jim Gettys, others.)
3232 * Locate right glib-genmarshal when cross-compiling. (Mitch Natterer)
3233 * Win32 fixes (Tor Lillqvist)
3234 * Try to fix g_get_charset() related segfaults. (Owen)
3235 * Fixes for gettext detection. (Dan Winship, HideToshi Tajima, Boyd Lynn Gerber,
3236   Andrew P. Lentvorski, Jr.)
3237 * Fix g_scanner_unexp_token() (Tim Janik, Sven Neumann)
3238 * g_markup fixes. (Matthias Clasen.)
3239 * Bug fixes and cleanups (Daniel Elstner, Matthias, Laszlo Peter, Morten Welinder,
3240   Wayne Schuller)
3241
3242 Overview of Changes in GLib 2.0.1
3243 =================================
3244
3245 * Portability fixes for Sun's Forte compiler [Erwann Chenede]
3246 * Performance improvements for GObject parameter lookup, 
3247   g_filename_to/from_utf8() [Alex Larsson]
3248 * Actually check interface prerequisites [Matthias Clasen,
3249   Miroslaw Dobrzanski-Neumann]
3250 * Fix problem with glib-mkenums taking huge amounts of stack. [Owen Taylor]
3251 * Fix g_signal_handlers_disconnect_by_func() for C++ [Damien Sandras]
3252 * Fixes for g_log() and threading.
3253   [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann, Tim Janik]
3254 * Make g_print(), g_printerr(), g_warning(), etc, convert from
3255   UTF-8 to the encoding of the locale [Sebastian Wilhelmi, Tim]
3256 * Fixes for GIOChannel on windows. [Tor Lillqvist]
3257 * Fix gsize/gint mismatches in giochannel.c [Miroslaw Dobrzanski-Neumann]
3258 * Fix file descriptor leak in g_file_get_contents() [Matthias]
3259 * Workaround iconv() problems on older Solaris [Lauri Alanko]
3260 * Fix warnings with gcc-3.1 about asm const [Cody Russel]
3261 * Minor bug fixes.
3262
3263 Other contributors: Hans Breuer, LEE Sau Dan, Sven Neumann, Salmaso Raffaele,
3264   Akira Tagoh, Morten Welinder
3265
3266
3267 Overview of Changes in GLib 2.0.0
3268 =================================
3269
3270 * Thread portability fixes [Sebastian Wilhelmi]
3271 * Documentation updates [Owen Taylor]
3272 * Make g_strerror(), g_strsignal() properly return UTF-8,
3273   call bind_text_domain_codeset() so that error strings
3274   are in UTF-8 as well. [Owen, Tor Lillqvist]
3275
3276 Overview of Changes in GLib 2.0.0 rc1:
3277 ======================================
3278
3279 * Win32 fixes [Tor Lillqvist]
3280 * Portability fixes [Finlay Dobbie, Miroslaw Dobrzanski-Neumann]
3281 * Fix up g_date_strftime [Daniel Elstner]
3282 * Add some structure padding [Tim Janik]
3283 * Make g_get_homedir() prefer the users home directory to $HOME
3284
3285 Other contributors: Matthias Clasen, Paolo Maggi, Christian Rose
3286
3287 Overview of Changes in GLib 1.3.15:
3288 ===================================
3289
3290 * Speed up marshalers by using private access to GValue 
3291   [Anders Carlsson, Tim Janik]
3292 * Reduce GValue to 2 elements [Tim]
3293 * Add G_DEBUG environment variable, G_DEBUG=fatal_warnings [Matthias Clasen]
3294 * Fixes for AIX compilation [Miroslaw Dobrzanski-Neumann]
3295 * Add padding to various structures [Owen Taylor, Tim]
3296 * Win32 fixes [Tor Lillqvist]
3297
3298 Other contributors: James Henstridge, Ryan Lovett, Morten Welinder,
3299   Daniel Elstner
3300
3301 Overview of Changes in GLib 1.3.14:
3302 ===================================
3303
3304 * Register value transformations for gint64, guint64 [Andy Wingo]
3305 * Build with large-file support [Sven Neumann, Owen Taylor]
3306 * Fix handling of hostnames in URI's [Darin Adler]
3307 * Main loop bug fixes [Havoc Pennington, Owen]
3308 * Doc fixes and improvements [Manish Singh, Tim Janik]
3309 * Support ' as attribute delimiters in GMarkup [Matthias Clasen]
3310 * Win32 fixes [Hans Breuer, Tor Lillqvist]
3311 * Threading bug and build fixes [Sebastian Wilhelmi, Miroslaw Dobrzanski-Neumann]
3312 * Miscellaneous bug fixes
3313
3314 Other contributors: Matthias Clasen, James Henstridge, Mitch Natterer, 
3315   Morten Welinder.
3316
3317 Overview of Changes in GLib 1.3.13:
3318 ===================================
3319
3320 * Fix g_filename_to/from_uri for Win32 [Tor Lillqvist, Darin Adler]
3321 * Miscellaneous win32 fixes [Tor, Hans Breuer]
3322 * Fix thread options for gcc on AIX [Jerome Zago, Sebastian Wilhelmi]
3323 * Documentation improvements [Ron Steinke, Matthias, Sebastian]
3324 * Cache iconv converters as used by g_convert() [Jeffrey Stedfast]
3325 * Bug fixes [Sven Neumann, Owen Taylor, Matthias Clasen, Jeffrey,
3326   Laszlo Peter, Havoc Pennington, Tim Janik]
3327
3328 Overview of Changes in GLib 1.3.12:
3329 ===================================
3330
3331 * Implement closure chaining, fixing up API (Tim Janik)
3332 * Closure chaining test case (James Henstridge)
3333 * Make GType long not int where both are equal width (Tim)
3334 * Win32 fixes and improvements (Hans Breuer, Tor Lillqvist)
3335 * Fixes for NetBSD. (Dan Winship)
3336 * Use snprintf() for g_printf_string_upper_bound() where possible. (Matthias Clasen)
3337 * Save space for GBSearchArray (Tim Janik)
3338 * Documentation improvements. (Matthias, Sven Neumann, Havoc Pennington)
3339
3340 Other contributors: Darin Adler, Chris Blizzard, Anders Carlson, Daniel Elstner, Michael Meeks, 
3341   Mark McLoughlin, Dave Neary, Manish Singh, Owen Taylor, HideToshi Tajima, 
3342   Sebastian Wilhelmi.
3343
3344
3345 Overview of Changes in GLib 1.3.11:
3346 ===================================
3347
3348 * Win32 fixes [Hans Breuer, Tor Lillqvist]
3349 * Documentation improvements [Matthias Clasen]
3350 * Portable directory handling API [Hans]
3351 * Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
3352 * Fix excess relocations in Unicode tables [Andrew Taylor]
3353 * Fix gpattern for UTF-8 [Matthias Clasen]
3354 * Support overriding class closures [Tim Janik]
3355 * Support for derivation from G_TYPE_POINTER [Owen Taylor]
3356 * Hide pointers to type information inside GType to reduce locking
3357   [Alex Larsson, Tim]
3358 * Adds check for direct inclusion of gobject/*.h [Owen]
3359 * GObject API cleanups [Tim]
3360
3361 Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings, 
3362   Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
3363
3364
3365 Overview of Changes in GLib 1.3.10:
3366 ===================================
3367
3368 * Many Win32 fixes and improvements [Tor Lillqvist]
3369 * Documentation improvements [Matthias Clasen]
3370 * g_string_printfa() renamed to g_string_append_printf()
3371 * Use libcharset from libiconv to implement charset detection
3372   more portably. [Owen Taylor, Hidetoshi Tajima]
3373 * Add 64 bit type support to GObject [Joshua Pritikin, Mathieu Lacage, Owen]
3374 * Make support for 64 bit integers a requirement [Joshua]
3375 * GPattern improvements [Tim Janik, Matthias]
3376 * Locale independent g_ascii_strtod / g_ascii_dtostr [Alex Larsson]
3377 * Many bug fixes and minor tweaks.
3378
3379 Other Contributors: Darin Adler, Jakub Jelinek, James Antill, Andrew Taylor,
3380   Ben Gertzfield, Elliot Lee, Manish Singh, Abel Cheung, Laszlo Peter,
3381   Sven Neumann, George Lebl, Raja Harinath, Sebastian Wilhelmi,
3382   Jacob Berkman
3383
3384
3385 Overview of Changes in GLib 1.3.9:
3386 ==================================
3387
3388 * Fixes for comparison of threads [Sebastian Wilhelmi]
3389 * Use vasprintf() when possible for g_strdup_printf [Matthias Clasen]
3390 * Win32 fixes [Tor Lillqvist, Hans Breuer]
3391 * Add a len argument to g_ascii_strup/strdown
3392 * Bug, portability fixes, cleanups.
3393
3394 Other Contributors: Darin Adler, Katsuhiro Okuno, Joshua N. Pritikin
3395
3396
3397 Overview of Changes in GLib 1.3.8:
3398 ==================================
3399
3400 * Documentation updates [Owen]
3401 * Made GType interfaces overridable in derived types
3402 * Many win32 fixes [Tor Lillqvist]
3403 * Miscellaneous cleanups and fixes
3404
3405 Other contributors:
3406   Darin Adler, Matthias Clasen, Ron Steinke, Hans Breuer, Alex Larsson
3407
3408
3409 Overview of Changes in GLib 1.3.7:
3410 ==================================
3411
3412 * Integrate GClosure support into the main loop [Owen Taylor]
3413 * More GSignal convenience functions (macros) [Sven Neumann, Tim Janik]
3414 * Introduced weak references for GObject [James Henstridge, Sven, Tim] 
3415 * Minor hash table optimizations
3416 * Main loop and threading improvements [Sebastian Wilhelmi]
3417 * Added g_ascii_* functions to be used for locale insensitive UTF-8
3418   compliant code instead of old string functions  [Darin Adler, Alex Larsson]
3419 * Add functions for Unicode case-conversion, normalization, and 
3420   collation [Owen]* GString improvements [Owen]
3421 * Reworked the GIOChannel code [Hidetoshi Tajima, Ron Steinke]
3422 * Removed glib-config-2.0 in favour of pkgconfig [Sebastian]
3423 * Make code 64bit clean [Mark Murnane]
3424 * More G_CONST_RETURN fixes
3425 * Many improvements to the win32 code [Tor Lillqvist, Hans Breuer]
3426 * Miscellaneous bug and API fixes
3427
3428 Other contributors:
3429   Michael Natterer, Christopher James Lahey, Padraig O'Briain,
3430   Matthias Clasen, Josh Pritikin, Steve Baker, Cesar Rincon, Garry R. Osgood,
3431   Michael Meeks, Laszlo Peter,  Martin Baulig, Kjartan Maraas, Andrew Lanoix,
3432   Peter Williams
3433
3434
3435 Overview of Changes in GLib 1.3.6:
3436 ==================================
3437
3438 * Threads have a "return value" from g_thread_join
3439 * Removed ability to adjust thread stack size
3440 * Prefix warnings with progname/PID by default, change toggle for this to 
3441   be an env variable G_MESSAGES_PREFIXED not a compile-time option
3442 * GMarkup speedups
3443 * GDate const, convenience fixups
3444 * Include test cases that headers are compilable by C++ compiler
3445 * Add ability to spawn processes with argv[0] != executable path.
3446 * g_strstr_len, g_strrstr, g_strrstr_len
3447 * Add length argument to g_utf8_strchr and g_utf8_strrchr.
3448 * Misc bug fixes
3449
3450
3451 Overview of Changes in GLib 1.3.5:
3452 ==================================
3453
3454 * Added an installed glib-mkenums Perl program for parsing enumeration
3455   declarations from header files.
3456 * Mark some additional deprecated functions.
3457 * Bug and Portability fixes
3458
3459
3460 Overview of Changes in GLib 1.3.4:
3461 ==================================
3462
3463 * Efficiency improvements for GThreadPool
3464 * A few bug fixes
3465 * Build fixes
3466 * Documentation improvements
3467
3468
3469 Overview of Changes in GLib 1.3.3:
3470 ==================================
3471
3472 GLib:
3473
3474 * More user_data support in various functions.
3475 * Main loop API revamps to support per-thread main loops.
3476 * Unicode handling improvements.
3477 * Implemented debugging traps.
3478 * G_CONST_RETURN specification all over the place.
3479 * Various new small utility functions.
3480 * Random number generator precision improvements.
3481 * New configure option --disable-mem-pools.
3482 * Many Win32 improvements.
3483 * Added g_try_malloc() friends varinats.
3484 * Many documentation improvements.
3485 * Many threading improvements, support for dynamic allocation
3486   of static mutexes.
3487 * GHookLIst API cleanups.
3488 * Improved format support of GDate parser.
3489 * String function speed improvements with new g_stpcpy().
3490 * Hashtable API additions.
3491 * New GPatternSpec for shell-style pattern matching (from GtkPatternSpec).
3492 * Optimizations, cleanups, bug fixes.
3493
3494 GObject:
3495
3496 * Added many convenience functions.
3497 * GClosure and GParamSpec use float/sink ref-counting scheme now.
3498 * Reworked property change notification.
3499 * Binary searchable array cleanups, so it's widely usable now.
3500 * Added static content keeping for some GValue types.
3501 * Support for statically scoped signal parameters.
3502 * Extinguished property trailer args in set/get interface.
3503 * Added support for abstract types.
3504 * G_CONST_RETURN specification all over the place.
3505 * Split parameter exchange functionality into value transforms
3506   and parameter conversions.
3507 * Added signal emission hooks and signal accumulators.
3508 * Added interface prerequisites to support is_a (interface, object)
3509   relations.
3510 * Implemented GValueArray.
3511 * New types, boxed: G_TYPE_VALUE, G_TYPE_CLOSURE, G_TYPE_GSTRING
3512   GParamSpecs: G_TYPE_PARAM_PARAM, G_TYPE_PARAM_POINTER, G_TYPE_PARAM_CLOSURE,
3513   G_TYPE_VALUE_ARRAY, G_TYPE_PARAM_UNICHAR, G_TYPE_PARAM_VALUE_ARRAY.
3514 * Varrags value collection improvements.
3515 * Implemented debugging traps.
3516 * Made things thread-safe.
3517 * Many documentation improvements.
3518 * Many cleanups, optimizations and bug fixes.
3519
3520
3521 Overview of Changes in GLib 1.3.2:
3522 ==================================
3523
3524 GLib:
3525
3526 * Win32 build improvements  [Tor]
3527 * Improvements to error reporting  
3528   (g_critical(), g_return_if_reached()) [Darin]
3529 * Add g_strlcpy/g_strlcat  [David Wheeler]
3530 * New IO channel implementation for Win32  [Tor] 
3531 * Make g_array_free, g_string_free return pointer to memory requested
3532   not to be freed.  [Darin]
3533 * Added GError based error reporting for thread functions.  [Sebastian]
3534 * Moved reference docs into GLib distribution. [Owen]
3535 * Added g_convert() for doing convenient character set conversions based
3536   on iconv. (GLib now requires libiconv or a native iconv.) [Havoc/Owen]
3537 * Various Unicode handling additions (g_ucs4_to_utf8, g_utf8_validate(),
3538   g_{locale,filename}_{to,from}_utf8)  [Robert/Havoc/Owen]
3539 * Portability fixes for threading.  [Sebastian]
3540 * Added convenient functions for launching new processes (g_spawn_*),
3541   and shell quoting/unquoting functions.  [Havoc]
3542 * Split glib.h into many headers.  [Sebastian]
3543 * Added a simple callback-based parser for XML-like files (GMarkup).  [Havoc]
3544 * Fixed confusions between comparison functions that return <0, 0, >0
3545   and equaility functions that return FALSE,TRUE.  [Sebastian]
3546 * Added safe/portable temporary file manipulation functions.  [Tor]
3547 * autoconf improvements.  [Raja]
3548 * Many documentation improvements.
3549 * Bug fixes.
3550
3551 GObject:
3552
3553 * Added boxed and pointer types.  [Tim/Jonathan]
3554 * Added callback abstraction (GClosure)  [Tim]
3555 * Added signal system (GSignal)  [Tim]
3556 * Make GTypePlugin an interface  [Tim]
3557 * Added GTypeModule - a simple GTypePlugin instantiation  [Owen]
3558 * Bug fixes.
3559
3560
3561 What's new in GLib 1.3.1:
3562 =========================
3563
3564 * New GObject library added including object system based on
3565   the GTK+ object system. 
3566 * Functions for getting the properties of Unicode characters, 
3567   computing the canonical decomposition and ordering combining
3568   characters aand manipulating UTF-8 string manipulation based
3569   on libunicode.
3570 * GString now properly handles embedded nuls.
3571 * Multiple fixes from the 1.2.x branch.
3572 * Upgrade to libtool 1.3.3
3573 * Full thread support (thread creation and destruction).
3574 * BeOS port, BeOS dynamic modules.
3575 * Many improvements to the Windows ports.
3576 * Improvements to the OS/2 port, OS/2 module support.
3577 * Double ended queue implementation.
3578 * GLib macros for printf() formatting, e.g. G_GULONG_FORMAT = "lu"
3579 * New configure option --enable-msg-prefix to prefix messages, warnings
3580   et ceteri with the program name and the process id.
3581 * New thread-safe random number generator Mersenne Twister.
3582 * g_strcompress() added, g_strescape() had a slight API change, and
3583   more tightly defined semantics.
3584 * the g_string(x) macro has been removed, #x may be used instead.
3585                                 
3586 * bugs fixed: