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