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