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