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