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