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