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