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