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