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