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